diff --git a/__manifest__.py b/__manifest__.py index 7400045..a3069fe 100644 --- a/__manifest__.py +++ b/__manifest__.py @@ -49,7 +49,7 @@ 'assets': { 'web.assets_tests': [ 'bemade_fsm/static/tests/tours/task_template_tour.js', - 'bemade_fsm/static/tests/tours/task_equipment_tour.js', + 'bemade_fsm/static/tests/tours/equipment_tour.js', ], }, 'installable': True, diff --git a/models/equipment.py b/models/equipment.py index bdc2e0b..2cbb096 100644 --- a/models/equipment.py +++ b/models/equipment.py @@ -49,7 +49,6 @@ class Equipment(models.Model): partner_location_id = fields.Many2one('res.partner', string="Physical Address", tracking=True, - required=True, ondelete='cascade') location_notes = fields.Text(string="Physical Location Notes", diff --git a/models/sale_order.py b/models/sale_order.py index 8a1f792..d0842b6 100644 --- a/models/sale_order.py +++ b/models/sale_order.py @@ -22,13 +22,14 @@ class SaleOrder(models.Model): compute='_compute_equipment', inverse='_inverse_equipment', string='Equipment to Service', - store=True) + store=True, + ondelete='restrict') @api.depends('partner_id') def _compute_default_contacts(self): for rec in self: - rec.site_contacts = rec.partner_id.site_contacts - rec.work_order_contacts = rec.partner_id.work_order_contacts + rec.site_contacts = rec.partner_shipping_id.site_contacts + rec.work_order_contacts = rec.partner_shipping_id.work_order_contacts def _inverse_default_contacts(self): pass @@ -36,7 +37,8 @@ class SaleOrder(models.Model): @api.depends('partner_id') def _compute_equipment(self): for rec in self: - rec.equipment_ids = self.partner_id.equipment_ids if len(self.partner_id.equipment_ids) <= 1 else False + rec.equipment_ids = self.partner_shipping_id.equipment_ids if len( + self.partner_shipping_id.equipment_ids) <= 1 else False def _inverse_equipment(self): pass diff --git a/static/tests/tours/task_equipment_tour.js b/static/tests/tours/equipment_tour.js similarity index 85% rename from static/tests/tours/task_equipment_tour.js rename to static/tests/tours/equipment_tour.js index c196d7b..8a6bf49 100644 --- a/static/tests/tours/task_equipment_tour.js +++ b/static/tests/tours/equipment_tour.js @@ -101,6 +101,26 @@ tour.register('equipment_sale_order_tour', { trigger: 'a.nav-link[role="tab"]:contains(Field Service)' }, { content: 'Check that default equipment shows up.', - trigger: `tr:has(label.o_form_label:contains(Site Equipment)) td.o_field_cell:contains(${TEST_EQPT1})` -}, + trigger: `.o_field_cell:contains(${TEST_EQPT1})`, +}, { + content: 'Add test equipment 2', + trigger: `div[name="equipment_ids"] a:contains(Add a line)`, +}, { + content: 'Click create', + trigger: '.modal-footer > button:has(span:contains(Create))', +}, { + content: 'Name the new equipment', + trigger: 'input.o_field_widget[name="name"]', + run: `text ${TEST_EQPT2}`, +}, { + content: 'Save & Close', + trigger: 'button:has(span:contains(Save & Close))', +}, { + content: 'Save', + trigger: 'button.o_form_button_save', +}, { + content: 'Check that the new equipment was added', + trigger: `.o_field_cell:contains(${TEST_EQPT2})`, + run: function () {}, +} ]); \ No newline at end of file diff --git a/views/res_partner.xml b/views/res_partner.xml index 6e14a42..1cd4cf8 100644 --- a/views/res_partner.xml +++ b/views/res_partner.xml @@ -27,7 +27,7 @@ - + diff --git a/views/sale_order_views.xml b/views/sale_order_views.xml index 8927b66..705b297 100644 --- a/views/sale_order_views.xml +++ b/views/sale_order_views.xml @@ -9,33 +9,35 @@ - - - - - - - - - - - - - - - - - - - - - -