mirror of
https://github.com/OCA/pms.git
synced 2025-01-29 00:17:45 +02:00
[FIX]pms_api_rest: Add DELETE reservation line service
This commit is contained in:
@@ -10,7 +10,7 @@ from odoo.addons.component.core import Component
|
||||
|
||||
class PmsReservationLineService(Component):
|
||||
_inherit = "base.rest.service"
|
||||
_name = "pms.reservation.line.service"
|
||||
_name = "pms.reservationline.service"
|
||||
_usage = "reservation-lines"
|
||||
_collection = "pms.services"
|
||||
|
||||
|
||||
@@ -248,6 +248,30 @@ class PmsReservationService(Component):
|
||||
)
|
||||
return result_lines
|
||||
|
||||
@restapi.method(
|
||||
[
|
||||
(
|
||||
[
|
||||
"/<int:reservation_id>/reservation-lines/<int:reservation_line_id>",
|
||||
],
|
||||
"DELETE",
|
||||
)
|
||||
],
|
||||
auth="jwt_api_pms",
|
||||
)
|
||||
def delete_reservation_line(self, reservation_id, reservation_line_id):
|
||||
reservation = self.env["pms.reservation"].search([("id", "=", reservation_id)])
|
||||
line = reservation.reservation_line_ids.filtered(lambda l: l.id == reservation_line_id)
|
||||
if (
|
||||
line
|
||||
and len(reservation.reservation_line_ids) == 1
|
||||
and line.date > min(reservation.reservation_line_ids.mapped("date"))
|
||||
and line.date < max(reservation.reservation_line_ids.mapped("date"))
|
||||
):
|
||||
line.unlink()
|
||||
else:
|
||||
raise MissingError(_("It was not possible to remove the reservation line"))
|
||||
|
||||
@restapi.method(
|
||||
[
|
||||
(
|
||||
|
||||
Reference in New Issue
Block a user