From 9d6baee0829db61663f51bc5c201bc8bc62af10a Mon Sep 17 00:00:00 2001 From: liaodanlong Date: Tue, 14 Jan 2025 14:12:08 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=A2=E4=BE=9B=E6=96=99=E4=B8=8E=E9=9D=9E?= =?UTF-8?q?=E5=AE=A2=E4=BE=9B=E6=96=99=E5=88=86=E5=BC=80=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_manufacturing/models/mrp_production.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/sf_manufacturing/models/mrp_production.py b/sf_manufacturing/models/mrp_production.py index 25ad34b4..1dd6049a 100644 --- a/sf_manufacturing/models/mrp_production.py +++ b/sf_manufacturing/models/mrp_production.py @@ -1526,8 +1526,7 @@ class MrpProduction(models.Model): 重载创建制造订单的方法,单个制造订单,同一成品只创建一个采购组,用于后续单据的创建 """ product_group_id = {} - group_id = False - is_first = False + is_custemer_group_id = {} # 客供料与非客供料 for vals in vals_list: if not vals.get('name', False) or vals['name'] == _('New'): picking_type_id = vals.get('picking_type_id') @@ -1537,15 +1536,16 @@ class MrpProduction(models.Model): vals['name'] = self.env['stock.picking.type'].browse(picking_type_id).sequence_id.next_by_id() product_id = self.env['product.product'].browse(vals['product_id']) is_self_process = product_id.materials_type_id and product_id.materials_type_id.gain_way and product_id.materials_type_id.gain_way != '自加工' - if not is_first and is_self_process: - is_first = True - group_id = self.env["procurement.group"].create({'name': vals.get('name')}).id + is_customer_provided = product_id.is_customer_provided + if not is_custemer_group_id.get(is_customer_provided): + is_custemer_group_id[is_customer_provided] = self.env["procurement.group"].create({'name': vals.get('name')}).id + # if not (is_first_customer or is_first_not_customer) and is_self_process: + # is_first = True + # group_id = self.env["procurement.group"].create({'name': vals.get('name')}).id if not vals.get('procurement_group_id'): if product_id.product_tmpl_id.single_manufacturing: - if product_id.categ_id.name == '成品' and is_self_process: - - vals['procurement_group_id'] = group_id + vals['procurement_group_id'] = is_custemer_group_id[is_customer_provided] continue if product_id.id not in product_group_id.keys(): procurement_group_vals = self._prepare_procurement_group_vals(vals) @@ -1555,7 +1555,7 @@ class MrpProduction(models.Model): else: vals['procurement_group_id'] = product_group_id[product_id.id] else: - vals['procurement_group_id'] = group_id + vals['procurement_group_id'] = is_custemer_group_id[is_customer_provided] return super(MrpProduction, self).create(vals_list) @api.depends('procurement_group_id.stock_move_ids.created_purchase_line_id.order_id',