Merge branch 'feature/制造工单优化' into feature/工单Rfid优化

This commit is contained in:
yuxianghui
2025-03-13 14:40:12 +08:00
4 changed files with 12 additions and 4 deletions

View File

@@ -190,7 +190,7 @@ class QualityCheck(models.Model):
# doubly linked chain for tablet view navigation # doubly linked chain for tablet view navigation
next_check_id = fields.Many2one('quality.check') next_check_id = fields.Many2one('quality.check')
previous_check_id = fields.Many2one('quality.check') previous_check_id = fields.Many2one('quality.check')
is_produced = fields.Boolean(string="Has Been Produced") # is_produced = fields.Boolean(string="Has Been Produced")
# For components registration # For components registration
move_id = fields.Many2one( move_id = fields.Many2one(

View File

@@ -109,6 +109,9 @@ class StockPicking(models.Model):
def action_open_quality_check_picking(self): def action_open_quality_check_picking(self):
action = self.env["ir.actions.actions"]._for_xml_id("quality_control.quality_check_action_picking") action = self.env["ir.actions.actions"]._for_xml_id("quality_control.quality_check_action_picking")
action['context'] = self.env.context.copy() action['context'] = self.env.context.copy()
keys_to_remove = [key for key in action['context'] if key.startswith('default_')]
for key in keys_to_remove:
del action['context'][key]
action['context'].update({ action['context'].update({
'search_default_picking_id': [self.id], 'search_default_picking_id': [self.id],
'default_picking_id': self.id, 'default_picking_id': self.id,

View File

@@ -1519,8 +1519,12 @@ class ResMrpWorkOrder(models.Model):
for workorder in record.production_id.workorder_ids: for workorder in record.production_id.workorder_ids:
if workorder.processing_panel == record.processing_panel: if workorder.processing_panel == record.processing_panel:
rfid_code = workorder.rfid_code rfid_code = workorder.rfid_code
workorder.filtered(lambda wo: wo.state != 'rework' or wo.rfid_code is not False).write( if record.is_rework is not True:
{'rfid_code_old': rfid_code, 'rfid_code': False}) workorder.write({'rfid_code_old': rfid_code, 'rfid_code': False})
elif workorder.routing_type != '装夹预调' and workorder.state != 'rework':
workorder.write({'rfid_code_old': False, 'rfid_code': False})
elif workorder.routing_type == '装夹预调' and workorder.state != 'rework':
workorder.write({'rfid_code_old': rfid_code, 'rfid_code': False})
self.env['stock.lot'].sudo().search([('rfid', '=', rfid_code)]).write( self.env['stock.lot'].sudo().search([('rfid', '=', rfid_code)]).write(
{'tool_material_status': '可用'}) {'tool_material_status': '可用'})
if workorder.rfid_code: if workorder.rfid_code:

View File

@@ -48,7 +48,8 @@ class ProductionWizard(models.TransientModel):
rfid_code = workorder.rfid_code rfid_code = workorder.rfid_code
workorder.filtered(lambda wo: wo.routing_type == '装夹预调' and wo.rfid_code is not False).write( workorder.filtered(lambda wo: wo.routing_type == '装夹预调' and wo.rfid_code is not False).write(
{'rfid_code_old': rfid_code, 'rfid_code': False}) {'rfid_code_old': rfid_code, 'rfid_code': False})
workorder.filtered(lambda wo: wo.routing_type != '装夹预调' and wo.rfid_code is not False).write( workorder.filtered(lambda wo: (wo.routing_type != '装夹预调' and
(wo.rfid_code_old is not False or wo.rfid_code is not False))).write(
{'rfid_code_old': False, 'rfid_code': False}) {'rfid_code_old': False, 'rfid_code': False})
if self.is_remanufacture is True: if self.is_remanufacture is True: