From 690c388143b73411f6cc10682d9459d71c08eec6 Mon Sep 17 00:00:00 2001 From: yuxianghui <3437689193@qq.com> Date: Mon, 26 Feb 2024 11:39:25 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E5=88=80=E5=85=B7?= =?UTF-8?q?=E7=89=A9=E6=96=99=E6=90=9C=E7=B4=A2=E7=9A=84=E8=AE=A1=E7=AE=97?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E6=95=B0=E6=8D=AE=E9=97=AE=E9=A2=98=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_tool_management/models/tool_material_search.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/sf_tool_management/models/tool_material_search.py b/sf_tool_management/models/tool_material_search.py index a5498c80..1d43b564 100644 --- a/sf_tool_management/models/tool_material_search.py +++ b/sf_tool_management/models/tool_material_search.py @@ -321,19 +321,19 @@ class ToolMaterial(models.Model): specification_id = fields.Many2one('sf.tool.materials.basic.parameters', '规格', related='product_id.specification_id') image = fields.Binary('图片', related='product_id.image_1920') - number = fields.Integer('总数量', readonly=True, compute='_compute_number') - usable_num = fields.Integer('可用数量', readonly=True) - have_been_used_num = fields.Integer('在用数量', readonly=True) - scrap_num = fields.Integer('报废数量', readonly=True) + number = fields.Integer('总数量', compute='_compute_number', store=True) + usable_num = fields.Integer('可用数量', compute='_compute_number', store=True) + have_been_used_num = fields.Integer('在用数量', compute='_compute_number', store=True) + scrap_num = fields.Integer('报废数量', compute='_compute_number', store=True) barcode_ids = fields.One2many('stock.lot', 'tool_material_search_id', string='序列号', readonly=True) @api.depends('barcode_ids') def _compute_number(self): - usable_num = 0 - have_been_used_num = 0 - scrap_num = 0 for record in self: + usable_num = 0 + have_been_used_num = 0 + scrap_num = 0 if record.barcode_ids: record.number = len(record.barcode_ids) for barcode_id in record.barcode_ids: From da89b2f00d2cb0a3dd0edf88b72729deb7bdf582 Mon Sep 17 00:00:00 2001 From: yuxianghui <3437689193@qq.com> Date: Mon, 26 Feb 2024 12:06:00 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=88=80=E5=85=B7?= =?UTF-8?q?=E7=89=A9=E6=96=99=E6=90=9C=E7=B4=A2=E7=9A=84=E8=AE=A1=E7=AE=97?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E7=9A=84store=3DTrue=E5=B1=9E=E6=80=A7?= =?UTF-8?q?=EF=BC=8C=E4=BC=98=E5=8C=96=E8=AE=A1=E7=AE=97=E6=96=B9=E6=B3=95?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../models/tool_material_search.py | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/sf_tool_management/models/tool_material_search.py b/sf_tool_management/models/tool_material_search.py index 1d43b564..f412f119 100644 --- a/sf_tool_management/models/tool_material_search.py +++ b/sf_tool_management/models/tool_material_search.py @@ -321,10 +321,10 @@ class ToolMaterial(models.Model): specification_id = fields.Many2one('sf.tool.materials.basic.parameters', '规格', related='product_id.specification_id') image = fields.Binary('图片', related='product_id.image_1920') - number = fields.Integer('总数量', compute='_compute_number', store=True) - usable_num = fields.Integer('可用数量', compute='_compute_number', store=True) - have_been_used_num = fields.Integer('在用数量', compute='_compute_number', store=True) - scrap_num = fields.Integer('报废数量', compute='_compute_number', store=True) + number = fields.Integer('总数量', compute='_compute_number') + usable_num = fields.Integer('可用数量', compute='_compute_number') + have_been_used_num = fields.Integer('在用数量', compute='_compute_number') + scrap_num = fields.Integer('报废数量', compute='_compute_number') barcode_ids = fields.One2many('stock.lot', 'tool_material_search_id', string='序列号', readonly=True) @@ -337,10 +337,11 @@ class ToolMaterial(models.Model): if record.barcode_ids: record.number = len(record.barcode_ids) for barcode_id in record.barcode_ids: - if barcode_id.quant_ids[-1].location_id.name == '刀具组装位置': - have_been_used_num = have_been_used_num + 1 - else: - usable_num = usable_num + 1 + if barcode_id.quant_ids: + if barcode_id.quant_ids[-1].location_id.name == '刀具组装位置': + have_been_used_num = have_been_used_num + 1 + else: + usable_num = usable_num + 1 record.usable_num = usable_num record.have_been_used_num = have_been_used_num record.scrap_num = scrap_num