[IMP]pms: improvement control in blocked reservation lines changes

This commit is contained in:
Darío Lodeiros
2023-02-05 16:57:33 +01:00
parent 7c51618df5
commit 8aabb130f8

View File

@@ -506,10 +506,27 @@ class PmsReservationLine(models.Model):
record.default_invoice_to = False record.default_invoice_to = False
def write(self, vals): def write(self, vals):
if ( if not self.env.context.get("force_write_blocked") and (
any([record.reservation_id.blocked for record in self]) (
and not self.env.context.get("force_write_blocked") "price" in vals
and ("date" in vals or "price" in vals) and any(
[
vals["date"] != record.date
for record in self
if record.reservation_id.blocked
]
)
)
or (
"price" in vals
and any(
[
round(vals["price"], 2) != round(record.price, 2)
for record in self
if record.reservation_id.blocked
]
)
)
): ):
raise ValidationError(_("Blocked reservations can't be modified")) raise ValidationError(_("Blocked reservations can't be modified"))
res = super().write(vals) res = super().write(vals)