1、优化功能刀具组装模型,重构刀具物料的组成结构;2、优化刀具物料查询模型,重构刀具物流库存统计方法;3、优化功能刀具组装流程,重构刀具物料出库方法;4、重构扫码录入刀具物料数据方法;5、优化功能刀具列表模型;

This commit is contained in:
yuxianghui
2024-04-10 17:32:35 +08:00
parent 12a54d1f2a
commit 7f6444cc89
10 changed files with 1302 additions and 1129 deletions

View File

@@ -27,28 +27,49 @@ class ToolMaterial(models.Model):
barcode_ids = fields.One2many('stock.lot', 'tool_material_search_id', string='序列号', readonly=True)
@api.depends('barcode_ids')
@api.depends('product_id')
def _compute_number(self):
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:
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
else:
record.number = 0
record.usable_num = 0
record.have_been_used_num = 0
record.scrap_num = 0
for quant in record.product_id.stock_quant_ids:
location = quant.location_id.name
if location == '刀具房':
usable_num += quant.quantity
elif location == '刀具组装位置':
have_been_used_num += quant.quantity
elif location == '进货':
pass
elif location != 'Vendors':
scrap_num += quant.quantity
record.usable_num = usable_num
record.have_been_used_num = have_been_used_num
record.scrap_num = scrap_num
record.number = usable_num + have_been_used_num + scrap_num
# @api.depends('barcode_ids')
# def _compute_number(self):
# 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:
# 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
# else:
# record.number = 0
# record.usable_num = 0
# record.have_been_used_num = 0
# record.scrap_num = 0
@api.model
def _read_group_cutting_tool_material_id(self, categories, domain, order):