39 lines
1.5 KiB
Python
39 lines
1.5 KiB
Python
from odoo import fields, models, api
|
|
|
|
|
|
class FunctionalCuttingToolEntity(models.Model):
|
|
_inherit = 'sf.functional.cutting.tool.entity'
|
|
|
|
def button_safe_inventory_id(self):
|
|
"""更新功能刀具关联的安全库存记录"""
|
|
tool_is = self.search([])
|
|
for item in tool_is:
|
|
item.safe_inventory_id = self.env['sf.real.time.distribution.of.functional.tools'].search(
|
|
[('functional_name_id', '=', item.tool_name_id.id)])[0]
|
|
|
|
|
|
class FunctionalToolAssembly(models.Model):
|
|
_inherit = 'sf.functional.tool.assembly'
|
|
|
|
def put_assembly_order_code(self):
|
|
assembly_list = self.search([('assemble_status', '=', '0')], order="id asc")
|
|
for item in assembly_list:
|
|
code = item.assembly_order_code[-9:-5]
|
|
if item.loading_task_source == '0':
|
|
code = 'C' + code
|
|
elif item.loading_task_source == '1':
|
|
code = 'J' + code
|
|
elif item.loading_task_source == '2':
|
|
code = 'K' + code
|
|
|
|
functional_tool_assembly = self.env['sf.functional.tool.assembly'].sudo().search(
|
|
[('loading_task_source', '=', item.loading_task_source),
|
|
('assembly_order_code', 'ilike', code)], limit=1, order="id desc")
|
|
if not functional_tool_assembly:
|
|
num = "%04d" % 1
|
|
else:
|
|
m = int(functional_tool_assembly.assembly_order_code[-3:]) + 1
|
|
num = "%04d" % m
|
|
|
|
item.assembly_order_code = "%s%s" % (code, num)
|