From 3cfccc983e0059ccc65f7571a5624a1376e718ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dar=C3=ADo=20Lodeiros?= Date: Sat, 3 Oct 2020 20:17:46 +0200 Subject: [PATCH] [IMP] Channel Type Sale --- pms/i18n/es.po | 8 ++++---- pms/models/pms_folio.py | 18 ++++++------------ pms/models/pms_reservation.py | 16 ++++------------ pms/models/res_partner.py | 2 +- pms/views/pms_folio_views.xml | 8 ++++---- pms/views/pms_reservation_views.xml | 4 ++-- pms/views/res_partner_views.xml | 2 +- pms/wizard/folio_make_invoice_advance.py | 4 ++-- pms/wizard/wizard_reservation.py | 23 ++--------------------- pms/wizard/wizard_reservation.xml | 1 - 10 files changed, 26 insertions(+), 60 deletions(-) diff --git a/pms/i18n/es.po b/pms/i18n/es.po index f32aa8511..9c289a761 100644 --- a/pms/i18n/es.po +++ b/pms/i18n/es.po @@ -6435,8 +6435,8 @@ msgid "Is Staff" msgstr "Es Staff" #. module: hotel -#: model:ir.model.fields,field_description:hotel.field_res_partner_is_tour_operator -#: model:ir.model.fields,field_description:hotel.field_res_users_is_tour_operator +#: model:ir.model.fields,field_description:hotel.field_res_partner_is_agency +#: model:ir.model.fields,field_description:hotel.field_res_users_is_agency msgid "Is Tour Operator" msgstr "Es Operadora TuĂ­stica" @@ -8670,8 +8670,8 @@ msgid "Total debt" msgstr "Total debt" #. module: hotel -#: model:ir.model.fields,field_description:hotel.field_hotel_folio_tour_operator_id -#: model:ir.model.fields,field_description:hotel.field_hotel_reservation_tour_operator_id +#: model:ir.model.fields,field_description:hotel.field_hotel_folio_agency +#: model:ir.model.fields,field_description:hotel.field_hotel_reservation_agency #: model:ir.ui.view,arch_db:hotel.hotel_folio_view_search msgid "Tour Operator" msgstr "Operadora TurĂ­stica" diff --git a/pms/models/pms_folio.py b/pms/models/pms_folio.py index a73d80141..1cbdd13a9 100644 --- a/pms/models/pms_folio.py +++ b/pms/models/pms_folio.py @@ -95,11 +95,11 @@ class PmsFolio(models.Model): store=True, readonly=False, ) - tour_operator_id = fields.Many2one( + agency_id = fields.Many2one( "res.partner", - "Tour Operator", + "Agency", ondelete="restrict", - domain=[("is_tour_operator", "=", True)], + domain=[("is_agency", "=", True)], ) payment_ids = fields.One2many("account.payment", "folio_id", readonly=True) return_ids = fields.One2many("payment.return", "folio_id", readonly=True) @@ -155,17 +155,11 @@ class PmsFolio(models.Model): ) channel_type = fields.Selection( [ - ("door", "Door"), - ("mail", "Mail"), - ("phone", "Phone"), - ("call", "Call Center"), - ("web", "Web"), - ("agency", "Agencia"), - ("operator", "Tour operador"), - ("virtualdoor", "Virtual Door"), + ("direct", "Direct"), + ("agency", "Agency"), ], "Sales Channel", - default="door", + default="direct", ) date_order = fields.Datetime( string="Order Date", diff --git a/pms/models/pms_reservation.py b/pms/models/pms_reservation.py index 81e919c0a..26aff4992 100644 --- a/pms/models/pms_reservation.py +++ b/pms/models/pms_reservation.py @@ -129,7 +129,7 @@ class PmsReservation(models.Model): store=True, readonly=False, ) - tour_operator_id = fields.Many2one(related="folio_id.tour_operator_id") + agency_id = fields.Many2one(related="folio_id.agency_id") partner_invoice_id = fields.Many2one( "res.partner", string="Invoice Address", @@ -294,17 +294,11 @@ class PmsReservation(models.Model): nights = fields.Integer("Nights", compute="_computed_nights", store=True) channel_type = fields.Selection( [ - ("door", "Door"), - ("mail", "Mail"), - ("phone", "Phone"), - ("call", "Call Center"), - ("web", "Web"), - ("agency", "Agencia"), - ("operator", "Tour operador"), - ("virtualdoor", "Virtual Door"), + ("direct", "Direct"), + ("agency", "Agency"), ], string="Sales Channel", - default="door", + default="direct", ) # TODO: Review functionality of last_update_res last_updated_res = fields.Datetime( @@ -938,8 +932,6 @@ class PmsReservation(models.Model): user = self.env["res.users"].browse(self.env.uid) for record in self: vals = {} - if user.has_group("pms.group_pms_call"): - vals.update({"channel_type": "call"}) if record.checkin_partner_ids: vals.update({"state": "booking"}) else: diff --git a/pms/models/res_partner.py b/pms/models/res_partner.py index 9f12eb3f3..5eae343e5 100644 --- a/pms/models/res_partner.py +++ b/pms/models/res_partner.py @@ -20,7 +20,7 @@ class ResPartner(models.Model): ) folios_count = fields.Integer("Folios", compute="_compute_folios_count") unconfirmed = fields.Boolean("Unconfirmed", default=True) - is_tour_operator = fields.Boolean("Is Tour Operator") + is_agency = fields.Boolean("Is Agency") # Compute and Search methods def _compute_reservations_count(self): diff --git a/pms/views/pms_folio_views.xml b/pms/views/pms_folio_views.xml index 65dc55f26..60383318a 100644 --- a/pms/views/pms_folio_views.xml +++ b/pms/views/pms_folio_views.xml @@ -148,7 +148,7 @@ attrs="{'required':[('reservation_type','=','normal')]}" /> @@ -437,7 +437,7 @@ - + diff --git a/pms/views/pms_reservation_views.xml b/pms/views/pms_reservation_views.xml index 1c3338158..20fb16498 100644 --- a/pms/views/pms_reservation_views.xml +++ b/pms/views/pms_reservation_views.xml @@ -389,7 +389,7 @@ attrs="{'invisible': [('reservation_type','in',('out'))]}" /> - + diff --git a/pms/wizard/folio_make_invoice_advance.py b/pms/wizard/folio_make_invoice_advance.py index 8cd594147..9200a3aa3 100644 --- a/pms/wizard/folio_make_invoice_advance.py +++ b/pms/wizard/folio_make_invoice_advance.py @@ -51,8 +51,8 @@ class FolioAdvancePaymentInv(models.TransientModel): @api.model def _get_default_partner_invoice(self): folios = self._get_default_folio() - if folios[0].tour_operator_id: - return folios[0].tour_operator_id + if folios[0].agency: + return folios[0].agency return folios[0].partner_invoice_id @api.model diff --git a/pms/wizard/wizard_reservation.py b/pms/wizard/wizard_reservation.py index db2d19bea..04fa4a76d 100644 --- a/pms/wizard/wizard_reservation.py +++ b/pms/wizard/wizard_reservation.py @@ -16,11 +16,6 @@ class FolioWizard(models.TransientModel): _name = "pms.folio.wizard" _description = "Wizard for reservation groups" - @api.model - def _get_default_center_user(self): - user = self.env["res.users"].browse(self.env.uid) - return user.has_group("pms.group_pms_call") - @api.model def _get_default_checkin(self): folio = False @@ -43,12 +38,6 @@ class FolioWizard(models.TransientModel): return folio.reservation_ids[0].checkout return fields.Date.today() - @api.model - def _get_default_channel_type(self): - user = self.env["res.users"].browse(self.env.uid) - if user.has_group("pms.group_pms_call"): - return "phone" - @api.model def _get_default_pricelist(self): return self.env.user.pms_property_id.default_pricelist_id.id @@ -82,9 +71,8 @@ class FolioWizard(models.TransientModel): "res.company", "Company", default=lambda self: self.env.company ) channel_type = fields.Selection( - [("door", "Door"), ("mail", "Mail"), ("phone", "Phone"), ("call", "Call")], + [("direct", "Direct"), ("ota", "Ota"), ("agency", "Agency")], string="Sales Channel", - default=_get_default_channel_type, ) room_type_wizard_ids = fields.One2many( "pms.room.type.wizard", "folio_wizard_id", string="Room Types" @@ -402,7 +390,7 @@ class PmsRoomTypeWizards(models.TransientModel): ).min_stay if date_min_days > min_stay: min_stay = date_min_days - if user.has_group("pms.group_pms_call"): + if not user.has_group("pms.group_pms_manager"): max_avail = real_max restriction = False if avail_restrictions: @@ -507,18 +495,11 @@ class ReservationWizard(models.TransientModel): price = fields.Float(string="Total") partner_id = fields.Many2one(related="folio_wizard_id.partner_id") discount = fields.Float("discount") - to_assign = fields.Boolean(compute="_compute_assign") product_ids = fields.Many2many("product.product", string="Products") board_service_room_id = fields.Many2one( "pms.board.service.room.type", string="Board Service" ) - def _compute_assign(self): - for rec in self: - user = self.env["res.users"].browse(self.env.uid) - if user.has_group("pms.group_pms_call"): - rec.to_assign = True - @api.onchange("room_id") def onchange_room_id(self): for line in self: diff --git a/pms/wizard/wizard_reservation.xml b/pms/wizard/wizard_reservation.xml index dd81e9f91..c5c47fd6d 100644 --- a/pms/wizard/wizard_reservation.xml +++ b/pms/wizard/wizard_reservation.xml @@ -126,7 +126,6 @@ -