Merge branch 'develop' of https://e.coding.net/jikimo-hn/jikimo_sfs/jikimo_sf into feature/优化制造订单报废流程
# Conflicts: # sf_manufacturing/models/mrp_production.py
This commit is contained in:
@@ -408,12 +408,12 @@ class MrpProduction(models.Model):
|
||||
workorders_values.append(
|
||||
self.env['mrp.workorder'].json_workorder_str('', production, route))
|
||||
production.workorder_ids = workorders_values
|
||||
if is_fetchcnc is False and scrap_production:
|
||||
production.write({'programming_no': scrap_production.programming_no,
|
||||
'programming_state': '已编程'})
|
||||
if production_programming.programming_state == '已编程':
|
||||
logging.info("production_programming: %s" % production_programming.name)
|
||||
production.workorder_ids.filtered(lambda t: t.routing_type == 'CNC加工').write({
|
||||
'cnc_ids': scrap_production.workorder_ids.filtered(
|
||||
lambda t1: t1.routing_type == 'CNC加工').cnc_ids})
|
||||
'cnc_ids': production_programming.workorder_ids.filtered(
|
||||
lambda
|
||||
t1: t1.routing_type == 'CNC加工').cnc_ids})
|
||||
for workorder in production.workorder_ids:
|
||||
workorder.duration_expected = workorder._get_duration_expected()
|
||||
|
||||
@@ -507,8 +507,7 @@ class MrpProduction(models.Model):
|
||||
|
||||
def _reset_work_order_sequence(self):
|
||||
for rec in self:
|
||||
product_routing_sequence_list = {} # 成品
|
||||
embryo_routing_sequence_list = {} # 坯料
|
||||
sequence_list = {}
|
||||
model_type_id = rec.product_id.product_model_type_id
|
||||
if model_type_id:
|
||||
tmpl_num = 1
|
||||
@@ -516,7 +515,7 @@ class MrpProduction(models.Model):
|
||||
product_routing_tmpl_ids = model_type_id.product_routing_tmpl_ids
|
||||
if product_routing_tmpl_ids:
|
||||
for tmpl_id in product_routing_tmpl_ids:
|
||||
product_routing_sequence_list.update({tmpl_id.route_workcenter_id.name: tmpl_num})
|
||||
sequence_list.update({tmpl_id.route_workcenter_id.name: tmpl_num})
|
||||
tmpl_num += 1
|
||||
# 表面工艺工序
|
||||
# 模型类型的表面工艺工序模版
|
||||
@@ -527,7 +526,6 @@ class MrpProduction(models.Model):
|
||||
if model_process_parameters_ids:
|
||||
for process_parameters_id in model_process_parameters_ids:
|
||||
process_id = process_parameters_id.process_id
|
||||
surface_tmpl_name = ''
|
||||
for surface_tmpl_id in surface_tmpl_ids:
|
||||
if process_id == surface_tmpl_id.route_workcenter_id.surface_technics_id:
|
||||
surface_tmpl_name = surface_tmpl_id.route_workcenter_id.name
|
||||
@@ -535,30 +533,23 @@ class MrpProduction(models.Model):
|
||||
surface_tmpl_name, process_parameters_id.name)})
|
||||
process_list = sorted(process_dict.keys())
|
||||
for process_num in process_list:
|
||||
product_routing_sequence_list.update({process_dict.get(process_num): tmpl_num})
|
||||
sequence_list.update({process_dict.get(process_num): tmpl_num})
|
||||
tmpl_num += 1
|
||||
# 坯料工序
|
||||
tmpl_num = 1
|
||||
embryo_routing_tmpl_ids = model_type_id.embryo_routing_tmpl_ids
|
||||
if embryo_routing_tmpl_ids:
|
||||
for tmpl_id in embryo_routing_tmpl_ids:
|
||||
embryo_routing_sequence_list.update({tmpl_id.route_workcenter_id.name: tmpl_num})
|
||||
sequence_list.update({tmpl_id.route_workcenter_id.name: tmpl_num})
|
||||
tmpl_num += 1
|
||||
else:
|
||||
raise ValidationError('该产品没有选择【模版类型】!')
|
||||
|
||||
if rec.product_id.categ_id.name == '成品':
|
||||
for work in rec.workorder_ids:
|
||||
if product_routing_sequence_list.get(work.name):
|
||||
work.sequence = product_routing_sequence_list[work.name]
|
||||
else:
|
||||
raise ValidationError('工序【%s】在产品选择的模版类型中不存在!' % work.name)
|
||||
elif rec.product_id.categ_id.name == '坯料':
|
||||
for work in rec.workorder_ids:
|
||||
if embryo_routing_sequence_list.get(work.name):
|
||||
work.sequence = embryo_routing_sequence_list[work.name]
|
||||
else:
|
||||
raise ValidationError('工序【%s】在产品选择的模版类型中不存在!' % work.name)
|
||||
for work in rec.workorder_ids:
|
||||
if sequence_list.get(work.name):
|
||||
work.sequence = sequence_list[work.name]
|
||||
else:
|
||||
raise ValidationError('工序【%s】在产品选择的模版类型中不存在!' % work.name)
|
||||
# if work.name == '获取CNC加工程序':
|
||||
# work.button_start()
|
||||
# #work.fetchCNC()
|
||||
|
||||
Reference in New Issue
Block a user