From 3458deef0976a95eaa394f75684fada9a76ca7c4 Mon Sep 17 00:00:00 2001 From: yuxianghui <3437689193@qq.com> Date: Tue, 19 Mar 2024 10:26:55 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E8=A7=A3=E5=86=B3=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=88=80=E5=85=B7=E7=BB=84=E8=A3=85=E6=97=B6=EF=BC=8C=E5=B7=B2?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E5=88=80=E5=85=B7=E7=89=A9=E6=96=99=E8=BF=98?= =?UTF-8?q?=E8=83=BD=E5=86=8D=E9=80=89=E5=88=B0=E7=9A=84=E9=97=AE=E9=A2=98?= =?UTF-8?q?=EF=BC=9B2=E3=80=81=E8=A7=A3=E5=86=B3=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=88=80=E5=85=B7=E7=BB=84=E8=A3=85=E5=AE=8C=E6=88=90=E5=90=8E?= =?UTF-8?q?=E7=9A=84=E5=8A=9F=E8=83=BD=E5=88=80=E5=85=B7=E6=B3=A8=E5=86=8C?= =?UTF-8?q?=E5=88=B0cloud=E6=B2=A1=E6=9C=89=E7=BC=96=E7=A0=81=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98=EF=BC=9B3=E3=80=81=E5=88=80=E5=85=B7?= =?UTF-8?q?=E7=89=A9=E6=96=99=E6=B7=BB=E5=8A=A0=E6=9C=AA=E5=85=A5=E5=BA=93?= =?UTF-8?q?=E7=8A=B6=E6=80=81=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_mrs_connect/models/sync_common.py | 1 + sf_tool_management/models/base.py | 2 +- .../models/maintenance_equipment.py | 11 ++++++---- sf_tool_management/wizard/wizard.py | 20 +++++++------------ 4 files changed, 16 insertions(+), 18 deletions(-) diff --git a/sf_mrs_connect/models/sync_common.py b/sf_mrs_connect/models/sync_common.py index 5cbfa8ec..49956f4b 100644 --- a/sf_mrs_connect/models/sync_common.py +++ b/sf_mrs_connect/models/sync_common.py @@ -1605,6 +1605,7 @@ class SyncfixtureMaterialsBasicParameters(models.Model): else: basic_parameters.write(self._get_basic_parameters_list(item, material_name)) + class SyncFunctionalFixtureType(models.Model): _inherit = 'sf.functional.fixture.type' _description = '同步功能夹具类型列表' diff --git a/sf_tool_management/models/base.py b/sf_tool_management/models/base.py index 6c02bcc1..2c4b4364 100644 --- a/sf_tool_management/models/base.py +++ b/sf_tool_management/models/base.py @@ -14,7 +14,7 @@ class FunctionalCuttingToolEntity(models.Model): _description = '功能刀具列表' tool_groups_id = fields.Many2one('sf.tool.groups', '刀具组', related='functional_tool_name_id.tool_groups_id') - code = fields.Char('编码', related='functional_tool_name_id.code') + code = fields.Char('编码') rfid = fields.Char('rfid', readonly=True) name = fields.Char('名称') functional_tool_name_id = fields.Many2one('sf.functional.tool.assembly', string='功能刀具名称', readonly=True) diff --git a/sf_tool_management/models/maintenance_equipment.py b/sf_tool_management/models/maintenance_equipment.py index d4eeafad..5f2465bf 100644 --- a/sf_tool_management/models/maintenance_equipment.py +++ b/sf_tool_management/models/maintenance_equipment.py @@ -97,18 +97,21 @@ class StockLot(models.Model): _inherit = 'stock.lot' tool_material_search_id = fields.Many2one('sf.tool.material.search', string='刀具物料搜索') - tool_material_status = fields.Selection([('可用', '可用'), ('在用', '在用'), ('报废', '报废')], string='状态', - compute='_compute_tool_material_status', store=True) + tool_material_status = fields.Selection( + [('未入库', '未入库'), ('可用', '可用'), ('在用', '在用'), ('报废', '报废')], string='状态', + compute='_compute_tool_material_status', store=True) @api.depends('quant_ids') def _compute_tool_material_status(self): for record in self: if record: if record.quant_ids: - if record.quant_ids[-1].location_id.name == '刀具组装位置': + if record.quant_ids[-1].location_id.name == '刀具房': + record.tool_material_status = '可用' + elif record.quant_ids[-1].location_id.name == '刀具组装位置': record.tool_material_status = '在用' else: - record.tool_material_status = '可用' + record.tool_material_status = '未入库' @api.onchange('tool_material_status') def _onchange_tool_material_status(self): diff --git a/sf_tool_management/wizard/wizard.py b/sf_tool_management/wizard/wizard.py index 9e45b879..c7a039ec 100644 --- a/sf_tool_management/wizard/wizard.py +++ b/sf_tool_management/wizard/wizard.py @@ -225,8 +225,7 @@ class FunctionalToolAssemblyOrder(models.TransientModel): # 整体式刀具型号 integral_code_id = fields.Many2one('stock.lot', string='整体式刀具序列号', domain=[('product_id.cutting_tool_material_id.name', '=', '整体式刀具'), - ('quant_ids.location_id.name', 'in', ['刀具房']), - ('quant_ids.quantity', '>', 0)]) + ('tool_material_status', '=', '可用')]) cutting_tool_integral_model_id = fields.Many2one('sf.cutting_tool.standard.library', string='整体式刀具型号', related='integral_code_id.product_id.cutting_tool_model_id') integral_name = fields.Char('整体式刀具名称', related='integral_code_id.product_id.name') @@ -238,8 +237,7 @@ class FunctionalToolAssemblyOrder(models.TransientModel): # 刀片型号 blade_code_id = fields.Many2one('stock.lot', '刀片序列号', domain=[('product_id.cutting_tool_material_id.name', '=', '刀片'), - ('quant_ids.location_id.name', 'in', ['刀具房']), - ('quant_ids.quantity', '>', 0)]) + ('tool_material_status', '=', '可用')]) cutting_tool_blade_model_id = fields.Many2one('sf.cutting_tool.standard.library', string='刀片型号', related='blade_code_id.product_id.cutting_tool_model_id') blade_name = fields.Char('刀片名称', related='blade_code_id.product_id.name') @@ -250,8 +248,7 @@ class FunctionalToolAssemblyOrder(models.TransientModel): # 刀杆型号 bar_code_id = fields.Many2one('stock.lot', '刀杆序列号', domain=[('product_id.cutting_tool_material_id.name', '=', '刀杆'), - ('quant_ids.location_id.name', 'in', ['刀具房']), - ('quant_ids.quantity', '>', 0)]) + ('tool_material_status', '=', '可用')]) cutting_tool_cutterbar_model_id = fields.Many2one('sf.cutting_tool.standard.library', string='刀杆型号', related='bar_code_id.product_id.cutting_tool_model_id') bar_name = fields.Char('刀杆名称', related='bar_code_id.product_id.name') @@ -262,8 +259,7 @@ class FunctionalToolAssemblyOrder(models.TransientModel): # 刀盘型号 pad_code_id = fields.Many2one('stock.lot', '刀盘序列号', domain=[('product_id.cutting_tool_material_id.name', '=', '刀盘'), - ('quant_ids.location_id.name', 'in', ['刀具房']), - ('quant_ids.quantity', '>', 0)]) + ('tool_material_status', '=', '可用')]) cutting_tool_cutterpad_model_id = fields.Many2one('sf.cutting_tool.standard.library', string='刀盘型号', related='pad_code_id.product_id.cutting_tool_model_id') pad_name = fields.Char('刀盘名称', related='pad_code_id.product_id.name') @@ -274,8 +270,7 @@ class FunctionalToolAssemblyOrder(models.TransientModel): # 刀柄型号 handle_code_id = fields.Many2one('stock.lot', '刀柄序列号', required=True, domain=[('product_id.cutting_tool_material_id.name', '=', '刀柄'), - ('quant_ids.location_id.name', 'in', ['刀具房']), - ('quant_ids.quantity', '>', 0)]) + ('tool_material_status', '=', '可用')]) cutting_tool_cutterhandle_model_id = fields.Many2one('sf.cutting_tool.standard.library', string='刀柄型号', related='handle_code_id.product_id.cutting_tool_model_id') handle_name = fields.Char('刀柄名称', related='handle_code_id.product_id.name') @@ -286,8 +281,7 @@ class FunctionalToolAssemblyOrder(models.TransientModel): # 夹头型号 chuck_code_id = fields.Many2one('stock.lot', '夹头序列号', required=True, domain=[('product_id.cutting_tool_material_id.name', '=', '夹头'), - ('quant_ids.location_id.name', 'in', ['刀具房']), - ('quant_ids.quantity', '>', 0)]) + ('tool_material_status', '=', '可用')]) cutting_tool_cutterhead_model_id = fields.Many2one('sf.cutting_tool.standard.library', string='夹头型号', related='chuck_code_id.product_id.cutting_tool_model_id') chuck_name = fields.Char('夹头名称', related='chuck_code_id.product_id.name') @@ -753,7 +747,7 @@ class StockLot(models.Model): 'qty_done': 1.0, 'state': 'done', 'functional_tool_type_id': False if not obj else obj.functional_tool_type_id.id, - 'diameter': None if not obj else obj.after_assembly_functional_tool_diameter, + 'diameter': None if not obj else obj.after_assembly_functional_tool_diameter, 'knife_tip_r_angle': None if not obj else obj.after_assembly_knife_tip_r_angle, 'code': '' if not obj else obj.tool_code, 'rfid': '' if not obj else obj.rfid,