fix: refetch items from BOM if 'Use Multi-Level BOM' has changed usin… (backport #43672) (#43676)

fix: refetch items from BOM if 'Use Multi-Level BOM' has changed usin… (#43672)

fix: refetch items from BOM if 'Use Multi-Level BOM' has changed using api
(cherry picked from commit 05915415de)

Co-authored-by: rohitwaghchaure <rohitw1991@gmail.com>
This commit is contained in:
mergify[bot]
2024-10-15 16:47:40 +05:30
committed by GitHub
parent 50d1fa4665
commit 492ba539e8

View File

@@ -158,11 +158,20 @@ class WorkOrder(Document):
self.validate_operation_time()
self.status = self.get_status()
self.validate_workstation_type()
self.reset_use_multi_level_bom()
validate_uom_is_integer(self, "stock_uom", ["qty", "produced_qty"])
self.set_required_items(reset_only_qty=len(self.get("required_items")))
def reset_use_multi_level_bom(self):
if self.is_new():
return
before_save_obj = self.get_doc_before_save()
if before_save_obj.use_multi_level_bom != self.use_multi_level_bom:
self.get_items_and_operations_from_bom()
def validate_workstation_type(self):
for row in self.operations:
if not row.workstation and not row.workstation_type: