From d1f0f016011adfa1eee9da5a400d0e8fa5b33fd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cao=20Ti=E1=BA=BFn=20Thanh?= Date: Tue, 24 Dec 2024 23:27:14 +0700 Subject: [PATCH] up --- app/__pycache__/views.cpython-312.pyc | Bin 13421 -> 13415 bytes app/static/css/booking.css | 223 ++++++++++---------------- app/static/js/booking.js | 50 ++++++ app/templates/booking.html | 52 ++++-- app/templates/promotion.html | 32 ++-- db.sqlite3 | Bin 212992 -> 212992 bytes 6 files changed, 188 insertions(+), 169 deletions(-) diff --git a/app/__pycache__/views.cpython-312.pyc b/app/__pycache__/views.cpython-312.pyc index abb9521b021299f611e6d649cee2772fc7433495..8007552556f29a0876c9dde2fc3aec2f6b5dfb86 100644 GIT binary patch delta 36 lcmaEx@jQd;G%qg~0}v#aZRGmH#4YY(6_X4Bo5h*K3<25w3pD@$ delta 42 wcmaE!@iv3&G%qg~0}!wmY~=dGBq-}*6%$aDpOuQ!^k)O9&kU7i{03rPieE' + voucherCode + ' - ' + voucherDiscount + ''); + + // Thêm sự kiện click cho nút voucher + voucherButton.click(function() { + // Áp dụng mã voucher vào input + $('#voucher-code').val(voucherCode); + + // Tính toán giá trị giảm giá + var totalPrice = parseFloat($('#total-price').text().replace(/\./g, '').replace(' VNĐ', '')); // Lấy tổng giá tiền và chuyển đổi sang số + var discountPercentage = parseFloat(voucherDiscount.replace('Giảm ', '').replace('%', '')); // Lấy phần trăm giảm giá và chuyển đổi sang số + var discountAmount = totalPrice * (discountPercentage / 100); // Tính giá trị giảm giá + + // Hiển thị số tiền giảm + $('#discount-amount').text('Voucher: ' + -(discountAmount.toLocaleString('vi-VN')) + ' VNĐ'); + + // Tính và hiển thị "Thành tiền" + var finalPrice = totalPrice - discountAmount; // Tính tổng giá tiền sau khi giảm giá + $('#final-price').text('Thành tiền: ' + finalPrice.toLocaleString('vi-VN') + ' VNĐ'); + + // Ẩn modal + $('#voucherModal').modal('hide'); + }); + + // Thêm nút voucher vào danh sách + $('#voucher-list-container').append(voucherButton); + }); + } + }); + }); + // Form submission handler $(".submit-btn").click(function() { // Validate required fields diff --git a/app/templates/booking.html b/app/templates/booking.html index 660b9d2..a02d860 100644 --- a/app/templates/booking.html +++ b/app/templates/booking.html @@ -206,20 +206,44 @@

{{ room.name }}

-
-

Chi tiết giá

-
- Giá phòng: {{ room.formatted_price }} -
-
- Thuế và phí: 31.664 VNĐ -
-
- Tổng giá: 267.960 VNĐ -
-
- - +
+

Chi tiết giá

+
+ Giá phòng: {{ room.formatted_price }} +
+
+ Thuế và phí: 31.664 VNĐ +
+
+ Tổng giá: 267.960 VNĐ +
+
Voucher: 0 VNĐ
+
+ Thành tiền: 0 VNĐ +
+
+ + +
+ + diff --git a/app/templates/promotion.html b/app/templates/promotion.html index 6d3d0e1..c14fdd4 100644 --- a/app/templates/promotion.html +++ b/app/templates/promotion.html @@ -192,25 +192,19 @@

Khuyến Mãi

- {% for promo in promotion %} -
-
- {{ promo.code }} -
-
{{ promo.code }}
-
Giảm {{ promo.discount_percentage|floatformat:2 }}%
- {% comment %}

{{ promo.description|truncatechars:100 }}

{% endcomment %} -

- {{ promo.start_date|date:"d/m/Y" }} - - {{ promo.end_date|date:"d/m/Y" }} -

-
- -
-
-
-
- {% endfor %} + {% for promo in promotion %} +
+ {{ promo.code }} +
+
{{ promo.code }}
+
Giảm {{ promo.discount_percentage|floatformat:2 }}%
+

+ {{ promo.start_date|date:"d/m/Y" }} - + {{ promo.end_date|date:"d/m/Y" }} +

+
+
+ {% endfor %} {% comment %}
diff --git a/db.sqlite3 b/db.sqlite3 index b0a997a400a23374d176912a0651f7bcadfe80a7..9204e0b04731d6f7baffbb572786010361770c5a 100644 GIT binary patch delta 1644 zcmcJPTZkKF6vtP~tQO38L^xkBwu(lpt0XVcB5*=&oXb4ez%+00Cm z$t2lQc4;X-DALPAU#wLu2wGTbWEVCMtE|4X4@D@5*a}e}ENIn&_|QH$>2{%3O7+2E z_`Z*C&iT$czxmF8VZpJm;5fY*)y`}QquQ0Dmxf*#fISG@1{T_2z?*Ox1b7#|fjuo3 z=7Lw9PU|)sr)gPURg1DBJ!i4HQE`S-BsI&4C0WVNs*?Sjuv>q&*XDFQG!|4v=LEfV zdpGl%=p%9S*>0pYEn1(}`FJCe;pZmUUhU2iIcROAl)R5;envXAEZ3P9)h9*RO@ZUa1Hj@i-=>{d2{fL zy=bO?#6EvwTVF4G@(@!l5xIh|rb$h_RMm}I-BY9jGxZrUC(w137Kd~3MtUYvO)zp~ zB9zO9$wG+XqH@Mp6WGE5J`_z&P0U5bSz}C3u#zDfWz9R*h^2JZ)0pzBLcB4ZQH6{q zdJ~6Y-i$6K+#1EtS6G9i=8~~^#uJHT5}AqGoZBd53na@WOIbZXHZ_&5CBssLlLFJ_ zdX-_KDb|EIXd#_c46vm%TR)| z5No+KKkV3UWznZyvc7Yr#T`4lmQTan+ci43dI4*FySVeWm+Y|GZP6d#7JLm~!Iy9k z{(xWM8mzW9ExZqdy;c;p+q+}`!1-&7Xu$NiiokvN6Yjz<@RRBJo!Qbi;5uA2JubsQ zkJX0SyTicw8>=Wjh{8LF`EEfFWV2b&TQJX~&mcpDE6ms?xn>Ou7dWMAE(CKPkxHCA zJ1nTBF?sDH1uJygZ=}{fl`)~S@}YuNJMAl&Ug@+yz$AHXMSG-c2|S47LE1a)BS{}Y zI?Ql(hbccT$is`ypPj4Dv(B8;@3`ZzUUYO7Xvi^t)NVr{XWNC^7~+f5ot0%B(+X>! zC=zyXeM-x@Iu?>U?UM?|ciII^c zmFDAmo ztjm~^m6(^FAD@_#o0%7%lb_BxIa$9%NR$&@eDh0vN4v@Q^VnnEJxfwb9W5PG-7Ss7 za-71_!@?_aa#f5yLPAn9Tr>2ef}Jw5T-}*g10(X>-Ca{N z@@EGUaK0XoK1*T7KMz+Az= z$jZpf%GgrRz{JqNaPzjgK1@857?}8T8ThyJ=kn(Q!!4eFa_)LnP5wI!s)Ss_s>1Bc zIC=kEh0V9uYkm;pCJ)-8~LZ7Ue9O=RB(lX{}2Cn z{!jdG`CkAP-s8W?e+8&u7ytAt`xy;*7z7wVKn94Vw+lKjec+!ofkljy_Z