diff --git a/pms/models/pms_reservation_line.py b/pms/models/pms_reservation_line.py
index 19a7d1fcc..c1be88987 100644
--- a/pms/models/pms_reservation_line.py
+++ b/pms/models/pms_reservation_line.py
@@ -88,13 +88,18 @@ class PmsReservationLine(models.Model):
compute="_compute_avail_id",
check_pms_properties=True,
)
-
discount = fields.Float(
string="Discount (%)",
help="",
default=0.0,
digits=("Discount"),
)
+ price_day_total = fields.Float(
+ string="Final price",
+ help="Get the price with discount applied",
+ store=True,
+ compute="_compute_price_day_total",
+ )
occupies_availability = fields.Boolean(
string="Occupies",
help="This record is taken into account to calculate availability",
@@ -473,6 +478,15 @@ class PmsReservationLine(models.Model):
else:
record.avail_id = False
+ @api.depends("price", "discount", "cancel_discount")
+ def _compute_price_day_total(self):
+ for line in self:
+ first_discount = line.price * ((line.discount or 0.0) * 0.01)
+ price = line.price - first_discount
+ cancel_discount = price * ((line.cancel_discount or 0.0) * 0.01)
+ discount = first_discount + cancel_discount
+ line.price_day_total = line.price - discount
+
@api.depends("reservation_id.overbooking")
def _compute_overbooking(self):
for record in self:
diff --git a/pms/views/pms_reservation_views.xml b/pms/views/pms_reservation_views.xml
index a273e7d42..5b630d6b0 100644
--- a/pms/views/pms_reservation_views.xml
+++ b/pms/views/pms_reservation_views.xml
@@ -498,6 +498,7 @@
+