Skip to content

Commit 29d050c

Browse files
ppyczkopeluko00
authored andcommitted
[IMP] fieldservice_stock: Remove unused procurement field fsm_order_id
1 parent 853db4b commit 29d050c

File tree

4 files changed

+21
-19
lines changed

4 files changed

+21
-19
lines changed

fieldservice_sale/models/sale_order.py

+16-17
Original file line numberDiff line numberDiff line change
@@ -46,19 +46,18 @@ def _compute_fsm_location_id(self):
4646
the partner_shipping_id or the partner_id.commercial_partner_id if
4747
they are FS locations.
4848
"""
49-
res = super().onchange_partner_id()
50-
domain = [
51-
"|",
52-
"|",
53-
("partner_id", "=", self.partner_id.id),
54-
("partner_id", "=", self.partner_shipping_id.id),
55-
("partner_id", "=", self.partner_id.commercial_partner_id.id),
56-
]
57-
if self.partner_id.fsm_location:
58-
domain = [("partner_id", "=", self.partner_id.id)]
59-
location_ids = self.env["fsm.location"].search(domain)
60-
self.fsm_location_id = location_ids and location_ids[0] or False
61-
return res
49+
for so in self:
50+
if so.partner_id.fsm_location:
51+
domain = [("partner_id", "=", so.partner_id.id)]
52+
else:
53+
domain = [
54+
"|",
55+
"|",
56+
("partner_id", "=", so.partner_id.id),
57+
("partner_id", "=", so.partner_shipping_id.id),
58+
("partner_id", "=", so.partner_id.commercial_partner_id.id),
59+
]
60+
so.fsm_location_id = self.env["fsm.location"].search(domain, limit=1)
6261

6362
def _prepare_line_fsm_values(self, line):
6463
"""
@@ -154,15 +153,15 @@ def _field_service_generate(self):
154153

155154
# Process lines set to FSM Sale
156155
new_fsm_sale_sol = self.order_line.filtered(
157-
lambda l: l.product_id.field_service_tracking == "sale"
158-
and (not l.fsm_order_id or l.fsm_order_id.is_closed)
156+
lambda x: x.product_id.field_service_tracking == "sale"
157+
and (not x.fsm_order_id or x.fsm_order_id.is_closed)
159158
)
160159
new_fsm_orders |= self._field_service_generate_sale_fsm_orders(new_fsm_sale_sol)
161160

162161
# Create new FSM Order for lines set to FSM Line
163162
new_fsm_line_sol = self.order_line.filtered(
164-
lambda l: l.product_id.field_service_tracking == "line"
165-
and (not l.fsm_order_id or l.fsm_order_id.is_closed)
163+
lambda x: x.product_id.field_service_tracking == "line"
164+
and (not x.fsm_order_id or x.fsm_order_id.is_closed)
166165
)
167166

168167
new_fsm_orders |= self._field_service_generate_line_fsm_orders(new_fsm_line_sol)

fieldservice_sale/tests/test_fsm_sale_order.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -550,7 +550,9 @@ def test_sale_order_cancel(self):
550550
fsm_order = self.sale_order_1.fsm_order_ids[0]
551551

552552
# Cancel the Sale Order
553-
self.sale_order_1.action_cancel()
553+
self.sale_order_1.with_context(
554+
disable_cancel_warning="disable_cancel_warning"
555+
).action_cancel()
554556
self.assertEqual(
555557
self.sale_order_1.state,
556558
"cancel",

fieldservice_stock/models/fsm_order.py

+1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ def _compute_picking_ids(self):
5454
lambda p: p.picking_type_id.code == "incoming"
5555
)
5656
order.return_count = len(incoming_pickings.ids)
57+
order.move_ids = order.picking_ids.mapped("move_lines")
5758

5859
def action_view_delivery(self):
5960
"""

fieldservice_stock/models/stock_picking.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ class StockPicking(models.Model):
77
_inherit = "stock.picking"
88

99
fsm_order_id = fields.Many2one(
10-
related="group_id.fsm_order_id", string="Field Service Order", store=True
10+
"fsm.order", string="Field Service Order", store=True
1111
)

0 commit comments

Comments
 (0)