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: