diff --git a/purchase_requisition_grouped_by_procurement/models/purchase_requisition.py b/purchase_requisition_grouped_by_procurement/models/purchase_requisition.py index cc4b66fb6d6..b82421b9aa6 100644 --- a/purchase_requisition_grouped_by_procurement/models/purchase_requisition.py +++ b/purchase_requisition_grouped_by_procurement/models/purchase_requisition.py @@ -17,13 +17,15 @@ def create(self, vals): if self.env.context.get("grouped_by_procurement") and vals.get( "procurement_group_id" ): - domain = [] - for key in vals: - if key == "line_ids": - continue - domain.append((key, "=", vals.get(key))) - purchase = self.search(domain) - if purchase: - purchase.write({"line_ids": vals.get("line_ids")}) - return purchase + domain = self._prepare_purchase_requisition_grouped_domain(vals) + purchase_requisition = self.search(domain) + if purchase_requisition: + purchase_requisition.write({"line_ids": vals.get("line_ids")}) + return purchase_requisition return super().create(vals) + + def _prepare_purchase_requisition_grouped_domain(self, vals): + return [ + ("procurement_group_id", "=", vals.get("procurement_group_id")), + ("state", "=", "draft"), + ]