diff --git a/sf_tool_management/models/functional_tool.py b/sf_tool_management/models/functional_tool.py index e8523cd3..78a652f4 100644 --- a/sf_tool_management/models/functional_tool.py +++ b/sf_tool_management/models/functional_tool.py @@ -51,6 +51,8 @@ class FunctionalCuttingToolEntity(models.Model): string='位置', compute='_compute_current_location_id', store=True) image = fields.Binary('图片', readonly=True) + stock_num = fields.Integer('库存变更次数', default=0) + safe_inventory_id = fields.Many2one('sf.real.time.distribution.of.functional.tools', string='功能刀具安全库存', readonly=True) @@ -71,7 +73,7 @@ class FunctionalCuttingToolEntity(models.Model): }) @api.depends('barcode_id.quant_ids', 'barcode_id.quant_ids.location_id', 'functional_tool_status', - 'current_shelf_location_id') + 'current_shelf_location_id', 'stock_num') def _compute_current_location_id(self): for record in self: if record.functional_tool_status == '已拆除': diff --git a/sf_tool_management/models/stock.py b/sf_tool_management/models/stock.py index 9f0d9f82..92198239 100644 --- a/sf_tool_management/models/stock.py +++ b/sf_tool_management/models/stock.py @@ -53,6 +53,13 @@ class StockMoveLine(models.Model): [('barcode_id', '=', line_id.lot_id.id), ('functional_tool_status', '=', '正常')]).cnc_function_tool_use_verify() + for move_line in move_lines: + if move_line.lot_id: + tool_id = self.env['sf.functional.cutting.tool.entity'].sudo().search( + [('barcode_id', '=', move_line.lot_id.id), + ('functional_tool_status', '=', '正常')]) + tool_id.stock_num += tool_id.stock_num + class StockPicking(models.Model): _inherit = 'stock.picking'