diff --git a/sf_tool_management/models/base.py b/sf_tool_management/models/base.py index 7f8b9323..33a489c3 100644 --- a/sf_tool_management/models/base.py +++ b/sf_tool_management/models/base.py @@ -591,6 +591,20 @@ class FunctionalToolAssembly(models.Model): 取消功能刀具组装 :return: """ + if self.new_former == '0': + # 如果是新刀,则删除功能刀具列表、 + self.env['sf.functional.cutting.tool.entity'].search([ + ('code', '=', self.functional_tool_code)]).unlink() + else: + pass + # # 删除功能刀具预警、实时分布、出入库记录的新记录 + # self.env['sf.functional.tool.warning'].search([ + # ('code', '=', self.functional_tool_code)]).unlink() + # self.env['sf.real.time.distribution.of.functional.tools'].search([ + # ('code', '=', self.functional_tool_code)]).unlink() + # self.env['sf.inbound.and.outbound.records.of.functional.tools'].search([ + # ('code', '=', self.functional_tool_code)]).unlink() + self.env['sf.functional.tool.assembly'].search([ ('machine_tool_name_id', '=', self.machine_tool_name_id.id), ('cutter_spacing_code', '=', self.cutter_spacing_code) @@ -639,28 +653,20 @@ class FunctionalToolAssembly(models.Model): """ self.env['sf.delivery.of.cargo.from.storage'].search([]).unlink() - vals = self.env['sf.functional.tool.assembly'].search([('check_box_1', '=', True),('assemble_status', '=', '1')]) - if vals: - for val in vals: - self.env['sf.delivery.of.cargo.from.storage'].create({ - 'functional_tool_code': val.functional_tool_code, + desc_1 = {'functional_tool_code': val.functional_tool_code, 'name': val.name.id, 'functional_tool_type_id': val.functional_tool_type_id.id, 'production_line_name_id': val.production_line_name_id.id, 'machine_tool_code': val.machine_tool_code, 'receive_person': val.receive_person, - 'receive_time': val.receive_time - }) + 'receive_time': val.receive_time} + + vals = self.env['sf.functional.tool.assembly'].search([('check_box_1', '=', True),('assemble_status', '=', '1')]) + if vals: + for val in vals: + self.env['sf.delivery.of.cargo.from.storage'].create(desc_1) else: - self.env['sf.delivery.of.cargo.from.storage'].create({ - 'functional_tool_code': self.functional_tool_code, - 'name': self.name.id, - 'functional_tool_type_id': self.functional_tool_type_id.id, - 'production_line_name_id': self.production_line_name_id.id, - 'machine_tool_code': self.machine_tool_code, - 'receive_person': self.receive_person, - 'receive_time': self.receive_time - }) + self.env['sf.delivery.of.cargo.from.storage'].create(desc_1) return { 'type': 'ir.actions.act_window', diff --git a/sf_tool_management/security/ir.model.access.csv b/sf_tool_management/security/ir.model.access.csv index 1cb5d1a0..fe606ac1 100644 --- a/sf_tool_management/security/ir.model.access.csv +++ b/sf_tool_management/security/ir.model.access.csv @@ -1,8 +1,8 @@ id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink access_sf_functional_cutting_tool_entity,sf.functional.cutting.tool.entity,model_sf_functional_cutting_tool_entity,base.group_user,1,1,1,1 -access_sf.functional.tool.warning,sf.functional.tool.warning,model_sf_functional_tool_warning,base.group_user,1,0,1,0 -access_sf.real.time.distribution.of.functional.tools,sf.real.time.distribution.of.functional.tools,model_sf_real_time_distribution_of_functional_tools,base.group_user,1,0,1,0 -access_sf.inbound.and.outbound.records.of.functional.tools,sf.inbound.and.outbound.records.of.functional.tools,model_sf_inbound_and_outbound_records_of_functional_tools,base.group_user,1,0,1,0 +access_sf.functional.tool.warning,sf.functional.tool.warning,model_sf_functional_tool_warning,base.group_user,1,1,1,1 +access_sf.real.time.distribution.of.functional.tools,sf.real.time.distribution.of.functional.tools,model_sf_real_time_distribution_of_functional_tools,base.group_user,1,1,1,1 +access_sf.inbound.and.outbound.records.of.functional.tools,sf.inbound.and.outbound.records.of.functional.tools,model_sf_inbound_and_outbound_records_of_functional_tools,base.group_user,1,1,1,1 access_sf_cam_work_order_program_knife_plan,sf.cam.work.order.program.knife.plan,model_sf_cam_work_order_program_knife_plan,base.group_user,1,1,1,1 access_sf_machine_table_tool_changing_apply,sf.machine.table.tool.changing.apply,model_sf_machine_table_tool_changing_apply,base.group_user,1,1,1,1 diff --git a/sf_tool_management/wizard/wizard.py b/sf_tool_management/wizard/wizard.py index 7afdd536..2927ba63 100644 --- a/sf_tool_management/wizard/wizard.py +++ b/sf_tool_management/wizard/wizard.py @@ -176,10 +176,7 @@ class FunctionalToolAssemblyOrder(models.TransientModel): 功能刀具组装 :return: """ - self.env['sf.functional.tool.assembly'].search([ - ('machine_tool_name_id', '=', self.machine_tool_name_id.id), - ('cutter_spacing_code', '=', self.cutter_spacing_code) - ]).write({ + desc_1 = { 'mrs_cutting_tool_integral_model_ids': self.mrs_cutting_tool_integral_model_ids.ids, 'integral_code': self.integral_code, 'integral_name': self.integral_name, @@ -214,10 +211,14 @@ class FunctionalToolAssemblyOrder(models.TransientModel): 'assemble_status': '1', 'tool_loading_person': self.env.user.name, 'tool_loading_time': fields.Datetime.now() - }) + } + self.env['sf.functional.tool.assembly'].search([ + ('machine_tool_name_id', '=', self.machine_tool_name_id.id), + ('cutter_spacing_code', '=', self.cutter_spacing_code) + ]).write(desc_1) # 封装功能刀具数据 - desc = { + desc_2 = { 'code': self.code, 'name': self.functional_tool_name_id.name, 'mrs_cutting_tool_type_id': self.functional_tool_type_id.id, @@ -239,14 +240,16 @@ class FunctionalToolAssemblyOrder(models.TransientModel): 'applicable_range': None, 'image': None, } - if self.new_former == '0': # 如果是新刀,则创建功能刀具列表、 - self.env['sf.functional.cutting.tool.entity'].create(desc) - # 创建功能刀具预警、实时分布、出入库记录的新记录 - self.env['sf.functional.tool.warning'].create(desc) - self.env['sf.real.time.distribution.of.functional.tools'].create(desc) - self.env['sf.inbound.and.outbound.records.of.functional.tools'].create(desc) + self.env['sf.functional.cutting.tool.entity'].create(desc_2) + else: + self.env['sf.functional.cutting.tool.entity'].search([ + ('code', '=', self.code)]).write(desc_2) + # # 创建功能刀具预警、实时分布、出入库记录的新记录 + # self.env['sf.functional.tool.warning'].create(desc) + # self.env['sf.real.time.distribution.of.functional.tools'].create(desc) + # self.env['sf.inbound.and.outbound.records.of.functional.tools'].create(desc) # 关闭弹出窗口 return {'type': 'ir.actions.act_window_close'} diff --git a/sf_tool_management/wizard/wizard_view.xml b/sf_tool_management/wizard/wizard_view.xml index 5f156eae..a8101f6d 100644 --- a/sf_tool_management/wizard/wizard_view.xml +++ b/sf_tool_management/wizard/wizard_view.xml @@ -189,7 +189,8 @@ - +