diff --git a/pms/models/pms_checkin_partner.py b/pms/models/pms_checkin_partner.py
index e5b52a40d..da999918f 100644
--- a/pms/models/pms_checkin_partner.py
+++ b/pms/models/pms_checkin_partner.py
@@ -76,6 +76,13 @@ class PmsCheckinPartner(models.Model):
store=True,
compute="_compute_mobile",
)
+ phone = fields.Char(
+ string="Phone",
+ help="Checkin Partner Phone",
+ readonly=False,
+ store=True,
+ compute="_compute_phone",
+ )
image_128 = fields.Image(
string="Image",
help="Checkin Partner Image, it corresponds with Partner Image associated",
@@ -148,6 +155,52 @@ class PmsCheckinPartner(models.Model):
compute="_compute_state_id",
comodel_name="res.country.state",
)
+ residence_street = fields.Char(
+ string="Street",
+ help="Street of the guest's residence",
+ readonly=False,
+ store=True,
+ compute="_compute_residence_street",
+ )
+ residence_street2 = fields.Char(
+ string="Street2",
+ help="Second street of the guest's residence",
+ readonly=False,
+ store=True,
+ compute="_compute_residence_street2",
+ )
+ residence_zip = fields.Char(
+ string="Zip",
+ help="Zip of the guest's residence",
+ readonly=False,
+ store=True,
+ compute="_compute_residence_zip",
+ change_default=True,
+ )
+ residence_city = fields.Char(
+ string="City",
+ help="City of the guest's residence",
+ readonly=False,
+ store=True,
+ compute="_compute_residence_city",
+ )
+ residence_country_id = fields.Many2one(
+ string="Country of residence",
+ help="Country of the guest's residence",
+ readonly=False,
+ store=True,
+ compute="_compute_residence_country_id",
+ comodel_name="res.country",
+ )
+ residence_state_id = fields.Many2one(
+ string="State of residence",
+ help="State of the guest's residence",
+ readonly=False,
+ store=True,
+ compute="_compute_residence_state_id",
+ comodel_name="res.country.state",
+ )
+
firstname = fields.Char(
string="First Name",
help="host firstname",
@@ -224,6 +277,10 @@ class PmsCheckinPartner(models.Model):
inverse_name="checkin_partner_possible_customer_id",
)
+ partner_relationship = fields.Char(
+ string="Partner relationship", help="Family relationship between travelers"
+ )
+
@api.depends("partner_id")
def _compute_document_number(self):
for record in self:
@@ -311,6 +368,57 @@ class PmsCheckinPartner(models.Model):
elif not record.state_id:
record.state_id = False
+ @api.depends("partner_id")
+ def _compute_residence_street(self):
+ for record in self:
+ if not record.residence_street and record.partner_id.residence_street:
+ record.residence_street = record.partner_id.residence_street
+ elif not record.residence_street:
+ record.residence_street = False
+
+ @api.depends("partner_id")
+ def _compute_residence_street2(self):
+ for record in self:
+ if not record.residence_street2 and record.partner_id.residence_street2:
+ record.residence_street2 = record.partner_id.residence_street2
+ elif not record.residence_street2:
+ record.residence_street2 = False
+
+ @api.depends("partner_id")
+ def _compute_residence_zip(self):
+ for record in self:
+ if not record.residence_zip and record.partner_id.residence_zip:
+ record.residence_zip = record.partner_id.residence_zip
+ elif not record.residence_zip:
+ record.residence_zip = False
+
+ @api.depends("partner_id")
+ def _compute_residence_city(self):
+ for record in self:
+ if not record.residence_city and record.partner_id.residence_city:
+ record.residence_city = record.partner_id.residence_city
+ elif not record.residence_city:
+ record.residence_city = False
+
+ @api.depends("partner_id")
+ def _compute_residence_country_id(self):
+ for record in self:
+ if (
+ not record.residence_country_id
+ and record.partner_id.residence_country_id
+ ):
+ record.residence_country_id = record.partner_id.residence_country_id
+ elif not record.residence_country_id:
+ record.residence_country_id = False
+
+ @api.depends("partner_id")
+ def _compute_residence_state_id(self):
+ for record in self:
+ if not record.residence_state_id and record.partner_id.residence_state_id:
+ record.residence_state_id = record.partner_id.residence_state_id
+ elif not record.residence_state_id:
+ record.residence_state_id = False
+
@api.depends("reservation_id", "reservation_id.folio_id")
def _compute_folio_id(self):
for record in self.filtered("reservation_id"):
@@ -348,14 +456,26 @@ class PmsCheckinPartner(models.Model):
@api.depends("partner_id")
def _compute_email(self):
for record in self:
- if not record.email or record.partner_id.email:
+ if not record.email and record.partner_id.email:
record.email = record.partner_id.email
+ elif not record.email:
+ record.email = False
@api.depends("partner_id")
def _compute_mobile(self):
for record in self:
- if not record.mobile or record.partner_id.mobile:
+ if not record.mobile and record.partner_id.mobile:
record.mobile = record.partner_id.mobile
+ elif not record.mobile:
+ record.mobile = False
+
+ @api.depends("partner_id")
+ def _compute_phone(self):
+ for record in self:
+ if not record.phone and record.partner_id.phone:
+ record.phone = record.partner_id.phone
+ elif not record.phone:
+ record.phone = False
@api.depends("partner_id")
def _compute_document_id(self):
diff --git a/pms/views/pms_checkin_partner_views.xml b/pms/views/pms_checkin_partner_views.xml
index eee4a1467..bd6325ad7 100644
--- a/pms/views/pms_checkin_partner_views.xml
+++ b/pms/views/pms_checkin_partner_views.xml
@@ -70,8 +70,44 @@