diff --git a/jikimo_purchase_request/models/stock_rule.py b/jikimo_purchase_request/models/stock_rule.py index 81f4f8ee..c9c3dc8c 100644 --- a/jikimo_purchase_request/models/stock_rule.py +++ b/jikimo_purchase_request/models/stock_rule.py @@ -46,38 +46,38 @@ class StockRule(models.Model): def _run_buy(self, procurements): # 如果补货组相同,并且产品相同,则合并 - procurements_dict = defaultdict() - for procurement, rule in procurements: - if (procurement.product_id, procurement.values['group_id'], rule) not in procurements_dict: - procurements_dict[(procurement.product_id, procurement.values['group_id'], rule)] = { - 'product_id': procurement.product_id, - 'product_qty': procurement.product_qty, - 'product_uom': procurement.product_uom, - 'location_id': procurement.location_id, - 'name': procurement.name, - 'origin': procurement.origin, - 'company_id': procurement.company_id, - 'values': procurement.values, - 'rule': rule - } - else: - procurements_dict[(procurement.product_id, procurement.values['group_id'], rule)]['product_qty'] += procurement.product_qty - new_procurements = [] - for k, p in procurements_dict.items(): - new_procurements.append(( - self.env['procurement.group'].Procurement( - product_id=p['product_id'], - product_qty=p['product_qty'], - product_uom=p['product_uom'], - location_id=p['location_id'], - name=p['name'], - origin=p['origin'], - company_id=p['company_id'], - values=p['values'] - ), p['rule']) - ) + # procurements_dict = defaultdict() + # for procurement, rule in procurements: + # if (procurement.product_id, procurement.values['group_id'], rule) not in procurements_dict: + # procurements_dict[(procurement.product_id, procurement.values['group_id'], rule)] = { + # 'product_id': procurement.product_id, + # 'product_qty': procurement.product_qty, + # 'product_uom': procurement.product_uom, + # 'location_id': procurement.location_id, + # 'name': procurement.name, + # 'origin': procurement.origin, + # 'company_id': procurement.company_id, + # 'values': procurement.values, + # 'rule': rule + # } + # else: + # procurements_dict[(procurement.product_id, procurement.values['group_id'], rule)]['product_qty'] += procurement.product_qty + # new_procurements = [] + # for k, p in procurements_dict.items(): + # new_procurements.append(( + # self.env['procurement.group'].Procurement( + # product_id=p['product_id'], + # product_qty=p['product_qty'], + # product_uom=p['product_uom'], + # location_id=p['location_id'], + # name=p['name'], + # origin=p['origin'], + # company_id=p['company_id'], + # values=p['values'] + # ), p['rule']) + # ) - res = super(StockRule, self)._run_buy(new_procurements) + res = super(StockRule, self)._run_buy(procurements) # 判断是否根据规则生成新的采购申请单据,如果生成则修改状态为 approved origins = list(set([procurement[0].origin for procurement in procurements])) for origin in origins: