Accept Merge Request #1757: (feature/制造功能优化 -> develop)

Merge Request: 调整取值对象

Created By: @马广威
Accepted By: @马广威
URL: https://jikimo-hn.coding.net/p/jikimo_sfs/d/jikimo_sf/git/merge/1757?initial=true
This commit is contained in:
马广威
2025-01-14 15:54:26 +08:00
committed by Coding

View File

@@ -123,14 +123,19 @@ class Sf_Mrs_Connect(http.Controller, MultiInheritController):
scrap_record_ids_obj = None
scrap_production_id = None
for production in productions:
logging.info('production====:%s' % production.name)
record_ids_obj = production.programming_record_ids.filtered(
lambda r: r.current_programming_count == ret['reprogramming_num'])
logging.info('record_ids_obj====:%s' % record_ids_obj)
if record_ids_obj:
logging.info('record_ids_obj.reason====:%s' % record_ids_obj.reason)
record_ids_obj.write(
{'send_time': ret['send_time'], 'target_production_id': productions_reprogram})
logging.info('已更新编程记录:%s' % record_ids_obj)
correct_record_ids_obj = record_ids_obj
correct_production_id = production.id
if ret['reprogramming_num'] == 0:
logging.info('首次下发')
production.programming_record_ids.create({
'number': 1,
'production_id': production.id,
@@ -141,7 +146,9 @@ class Sf_Mrs_Connect(http.Controller, MultiInheritController):
'apply_time': False,
'send_time': ret['send_time'],
})
logging.info('已创建首次下发的编程记录:%s' % production.name)
elif ret['reset_flag']:
logging.info('重置状态')
production.programming_record_ids.create({
'number': len(production.programming_record_ids) + 1,
'production_id': production.id,
@@ -152,8 +159,10 @@ class Sf_Mrs_Connect(http.Controller, MultiInheritController):
'apply_time': False,
'send_time': ret['send_time'],
})
logging.info('已创建重置状态的编程记录:%s' % production.name)
elif ret['manufacturing_type'] == 'rework':
production.programming_record_ids.create({
logging.info('返工')
rework_id = production.programming_record_ids.create({
'number': len(production.programming_record_ids) + 1,
'production_id': production.id,
'reason': '返工',
@@ -163,8 +172,11 @@ class Sf_Mrs_Connect(http.Controller, MultiInheritController):
'apply_time': ret['trigger_time'],
'send_time': ret['send_time'],
})
rework_record_ids_obj = production.programming_record_ids
logging.info('已创建返工的编程记录:%s' % production.name)
rework_record_ids_obj = request.env['sf.programming.record'].sudo().browse(rework_id)
logging.info('rework_record_ids_obj====:%s' % rework_record_ids_obj)
rework_production_id = production.id
logging.info('rework_production_id====:%s' % rework_production_id)
elif ret['manufacturing_type'] == 'scrap':
production.programming_record_ids.create({
'number': len(production.programming_record_ids) + 1,
@@ -177,6 +189,7 @@ class Sf_Mrs_Connect(http.Controller, MultiInheritController):
'send_time': ret['send_time'],
})
elif ret['manufacturing_type'] == 'invalid_tool_rework':
logging.info('无效功能刀具')
production.programming_record_ids.create({
'number': len(production.programming_record_ids) + 1,
'production_id': production.id,
@@ -187,14 +200,19 @@ class Sf_Mrs_Connect(http.Controller, MultiInheritController):
'apply_time': ret['trigger_time'],
'send_time': ret['send_time'],
})
logging.info('已创建无效功能刀具的编程记录:%s' % production.name)
else:
logging.info('无对应状态,不需更新编程记录')
for production in productions:
logging.info('production====:%s' % production.name)
if correct_record_ids_obj:
logging.info('correct_record_ids_obj====:%s' % correct_record_ids_obj)
if production.id == correct_production_id:
logging.info('跳过正确的制造订单')
continue
else:
logging.info('创建正确的制造订单的编程记录')
production.programming_record_ids.create({
'number': len(production.programming_record_ids) + 1,
'production_id': production.id,
@@ -205,11 +223,14 @@ class Sf_Mrs_Connect(http.Controller, MultiInheritController):
'apply_time': correct_record_ids_obj.apply_time,
'send_time': correct_record_ids_obj.send_time,
})
logging.info('已创建正确的制造订单的编程记录:%s' % production.name)
if rework_record_ids_obj:
logging.info('rework_record_ids_obj====:%s' % rework_record_ids_obj)
if production.id == rework_production_id:
continue
else:
logging.info('创建返工的制造订单的编程记录')
production.programming_record_ids.create({
'number': len(production.programming_record_ids) + 1,
'production_id': production.id,
@@ -220,6 +241,7 @@ class Sf_Mrs_Connect(http.Controller, MultiInheritController):
'apply_time': rework_record_ids_obj.apply_time,
'send_time': rework_record_ids_obj.send_time,
})
logging.info('已创建返工的制造订单的编程记录:%s' % production.name)
res.update({
'production_ids': productions.ids