Accept Merge Request #1654: (feature/part_number -> develop)
Merge Request: 两张外协工单报错问题 Created By: @廖丹龙 Reviewed By: @胡尧 Approved By: @胡尧 Accepted By: @廖丹龙 URL: https://jikimo-hn.coding.net/p/jikimo_sfs/d/jikimo_sf/git/merge/1654
This commit is contained in:
@@ -803,45 +803,45 @@ class MrpProduction(models.Model):
|
||||
workorder.move_subcontract_workorder_ids.picking_id.write({'state': 'cancel'})
|
||||
consecutive_workorders = []
|
||||
sorted_workorders = sorted(process_parameter_workorder, key=lambda w: w.sequence)
|
||||
for i, workorder in enumerate(sorted_workorders):
|
||||
# 检查当前工作订单和下一个工作订单是否连续,并且供应商相同
|
||||
if i == 0:
|
||||
consecutive_workorders.append(workorder)
|
||||
elif workorder.sequence == sorted_workorders[
|
||||
i - 1].sequence + 1 and workorder.supplier_id.id == sorted_workorders[i - 1].supplier_id.id:
|
||||
consecutive_workorders.append(workorder)
|
||||
else:
|
||||
# 处理连续组,如果它不为空
|
||||
if consecutive_workorders:
|
||||
proc_workorders.append(consecutive_workorders)
|
||||
# 创建外协出入库单和采购订单
|
||||
# self.env['stock.picking'].create_outcontract_picking(consecutive_workorders, production, sorted_workorders)
|
||||
# self.env['purchase.order'].get_purchase_order(consecutive_workorders, production,
|
||||
# product_id_to_production_names)
|
||||
if i < len(sorted_workorders) - 1:
|
||||
# 重置连续组,并添加当前工作订单
|
||||
consecutive_workorders = [workorder]
|
||||
else:
|
||||
# 判断最后一笔:
|
||||
if workorder.sequence == sorted_workorders[
|
||||
i - 1].sequence and workorder.supplier_id.id == sorted_workorders[
|
||||
i - 1].supplier_id.id:
|
||||
consecutive_workorders = [workorder]
|
||||
else:
|
||||
proc_workorders.append([workorder])
|
||||
# 立即创建外协出入库单和采购订单
|
||||
# self.env['stock.picking'].create_outcontract_picking(workorder, production)
|
||||
# self.env['purchase.order'].get_purchase_order(workorder, production,
|
||||
# product_id_to_production_names)
|
||||
consecutive_workorders = []
|
||||
|
||||
# 处理最后一个组,即使它可能只有一个工作订单
|
||||
if consecutive_workorders:
|
||||
proc_workorders.append(consecutive_workorders)
|
||||
# for i, workorder in enumerate(sorted_workorders):
|
||||
# # 检查当前工作订单和下一个工作订单是否连续,并且供应商相同
|
||||
# if i == 0:
|
||||
# consecutive_workorders.append(workorder)
|
||||
# elif workorder.sequence == sorted_workorders[
|
||||
# i - 1].sequence + 1 and workorder.supplier_id.id == sorted_workorders[i - 1].supplier_id.id:
|
||||
# consecutive_workorders.append(workorder)
|
||||
# else:
|
||||
# # 处理连续组,如果它不为空
|
||||
# if consecutive_workorders:
|
||||
# proc_workorders.append(consecutive_workorders)
|
||||
# # 创建外协出入库单和采购订单
|
||||
# # self.env['stock.picking'].create_outcontract_picking(consecutive_workorders, production, sorted_workorders)
|
||||
# # self.env['purchase.order'].get_purchase_order(consecutive_workorders, production,
|
||||
# # product_id_to_production_names)
|
||||
# if i < len(sorted_workorders) - 1:
|
||||
# # 重置连续组,并添加当前工作订单
|
||||
# consecutive_workorders = [workorder]
|
||||
# else:
|
||||
# # 判断最后一笔:
|
||||
# if workorder.sequence == sorted_workorders[
|
||||
# i - 1].sequence and workorder.supplier_id.id == sorted_workorders[
|
||||
# i - 1].supplier_id.id:
|
||||
# consecutive_workorders = [workorder]
|
||||
# else:
|
||||
# proc_workorders.append([workorder])
|
||||
# # 立即创建外协出入库单和采购订单
|
||||
# # self.env['stock.picking'].create_outcontract_picking(workorder, production)
|
||||
# # self.env['purchase.order'].get_purchase_order(workorder, production,
|
||||
# # product_id_to_production_names)
|
||||
# consecutive_workorders = []
|
||||
#
|
||||
# # 处理最后一个组,即使它可能只有一个工作订单
|
||||
# if consecutive_workorders:
|
||||
# proc_workorders.append(consecutive_workorders)
|
||||
# self.env['stock.picking'].create_outcontract_picking(consecutive_workorders, production)
|
||||
# self.env['purchase.order'].get_purchase_order(consecutive_workorders, production,
|
||||
# product_id_to_production_names)
|
||||
for workorders in reversed(proc_workorders):
|
||||
for workorders in reversed(sorted_workorders):
|
||||
self.env['stock.picking'].create_outcontract_picking(workorders, production, sorted_workorders)
|
||||
self.env['purchase.order'].get_purchase_order(workorders, production, product_id_to_production_names)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user