This commit is contained in:
jinling.yang
2024-05-23 14:34:39 +08:00
2 changed files with 27 additions and 14 deletions

View File

@@ -473,7 +473,8 @@ class FunctionalToolAssemblyOrder(models.TransientModel):
after_assembly_whether_standard_knife = fields.Boolean(string='组装后是否标准刀', default=True) after_assembly_whether_standard_knife = fields.Boolean(string='组装后是否标准刀', default=True)
after_assembly_coarse_middle_thin = fields.Selection([("1", ""), ('2', ''), ('3', '')], after_assembly_coarse_middle_thin = fields.Selection([("1", ""), ('2', ''), ('3', '')],
string='组装后粗/中/精', default='3') string='组装后粗/中/精', default='3')
after_assembly_max_lifetime_value = fields.Integer(string='组装后最大寿命值(min)', readonly=True) after_assembly_max_lifetime_value = fields.Integer(string='组装后最大寿命值(min)', store=True,
compute='_compute_after_assembly_max_lifetime_value')
after_assembly_alarm_value = fields.Integer(string='组装后报警值(min)') after_assembly_alarm_value = fields.Integer(string='组装后报警值(min)')
after_assembly_used_value = fields.Integer(string='组装后已使用值(min)') after_assembly_used_value = fields.Integer(string='组装后已使用值(min)')
after_assembly_tool_loading_length = fields.Float(string='组装后总长度(mm)', digits=(10, 3)) after_assembly_tool_loading_length = fields.Float(string='组装后总长度(mm)', digits=(10, 3))
@@ -517,20 +518,25 @@ class FunctionalToolAssemblyOrder(models.TransientModel):
'flags': {'form': {'action_buttons': True, 'options': {'mode': 'modal'}}} 'flags': {'form': {'action_buttons': True, 'options': {'mode': 'modal'}}}
} }
@api.depends('after_name_id')
def _compute_after_assembly_max_lifetime_value(self):
for item in self:
if item.after_name_id:
item.after_assembly_max_lifetime_value = item.after_name_id.life_span
@api.onchange('after_name_id') @api.onchange('after_name_id')
def _onchange_number(self): def _onchange_number(self):
for item in self: for item in self:
if item.after_name_id: if item.after_name_id:
item.after_assembly_functional_tool_diameter = item.after_name_id.diameter item.after_assembly_functional_tool_diameter = item.after_name_id.diameter
item.after_assembly_knife_tip_r_angle = item.after_name_id.angle item.after_assembly_knife_tip_r_angle = item.after_name_id.angle
item.after_assembly_max_lifetime_value = item.after_name_id.life_span
item.after_assembly_tool_loading_length = item.after_name_id.tool_length item.after_assembly_tool_loading_length = item.after_name_id.tool_length
item.after_assembly_functional_tool_length = item.after_name_id.extension item.after_assembly_functional_tool_length = item.after_name_id.extension
item.hiding_length = item.after_name_id.blade_length item.hiding_length = item.after_name_id.blade_length
item.after_assembly_functional_tool_type_id = item.after_name_id.functional_cutting_tool_model_id.id item.after_assembly_functional_tool_type_id = item.after_name_id.functional_cutting_tool_model_id.id
item.after_tool_groups_id = item.after_name_id.tool_groups_id.id item.after_tool_groups_id = item.after_name_id.tool_groups_id.id
else: else:
item.after_assembly_functional_tool_type_id = item.functional_tool_type_id item.after_assembly_functional_tool_type_id = item.functional_tool_type_id.id
item.after_tool_groups_id = item.tool_groups_id.id item.after_tool_groups_id = item.tool_groups_id.id
# functional_tool_cutting_type = fields.Char(string='功能刀具切削类型', readonly=False) # functional_tool_cutting_type = fields.Char(string='功能刀具切削类型', readonly=False)
@@ -686,22 +692,24 @@ class FunctionalToolAssemblyOrder(models.TransientModel):
if not self.bar_product_id and not self.pad_product_id: if not self.bar_product_id and not self.pad_product_id:
raise ValidationError('【刀盘】和【刀杆】必须填写一个!') raise ValidationError('【刀盘】和【刀杆】必须填写一个!')
# 组装参数必填校验 # 组装参数必填校验
if self.after_assembly_tool_loading_length == 0:
raise ValidationError('组装参数信息【总长度】不能为0')
if self.after_assembly_functional_tool_length == 0: if self.after_assembly_functional_tool_length == 0:
raise ValidationError('组装参数信息【伸出长】不能为0') raise ValidationError('组装参数信息【伸出长】不能为0')
if self.after_assembly_max_lifetime_value == 0: if self.after_assembly_max_lifetime_value == 0:
raise ValidationError('组装参数信息【最大寿命值】不能为0') raise ValidationError('组装参数信息【最大寿命值】不能为0')
if self.after_assembly_alarm_value == 0: if self.after_assembly_alarm_value == 0:
raise ValidationError('组装参数信息【报警值】不能为0') raise ValidationError('组装参数信息【报警值】不能为0')
# if self.after_assembly_effective_length == 0: # if self.after_assembly_effective_length == 0:
# raise ValidationError('组装参数信息【有效长】不能为0') # raise ValidationError('组装参数信息【有效长】不能为0')
# if self.hiding_length == 0: # if self.hiding_length == 0:
# raise ValidationError('组装参数信息【避空长】不能为0') # raise ValidationError('组装参数信息【避空长】不能为0')
if self.after_assembly_functional_tool_diameter == 0: if self.after_assembly_functional_tool_diameter == 0:
raise ValidationError('组装参数信息【刀具直径】不能为0') raise ValidationError('组装参数信息【刀具直径】不能为0')
if self.after_assembly_tool_loading_length == 0:
raise ValidationError('组装参数信息【总长度】不能为0')
if self.after_assembly_handle_length == 0: if self.after_assembly_handle_length == 0:
raise ValidationError('组装参数信息【刀柄长度】不能为0') raise ValidationError('组装参数信息【刀柄长度】不能为0')
if self.after_assembly_tool_loading_length < self.after_assembly_handle_length:
raise ValidationError('组装参数信息【刀柄长度】不能大于【总长度】!')
def get_desc_1(self, stock_lot): def get_desc_1(self, stock_lot):
return { return {

View File

@@ -166,11 +166,12 @@
<sheet> <sheet>
<div class="oe_title"> <div class="oe_title">
<h1> <h1>
<field name="production_line_name_id"/> <field name="assembly_order_code"/>
</h1> </h1>
</div> </div>
<group> <group>
<group> <group>
<field name="production_line_name_id"/>
<field name="machine_tool_name_id"/> <field name="machine_tool_name_id"/>
<field name="cutter_spacing_code_id"/> <field name="cutter_spacing_code_id"/>
</group> </group>
@@ -333,14 +334,18 @@
</group> </group>
<group string="组装参数信息" col="1"> <group string="组装参数信息" col="1">
<div>
<button name="get_tool_preset_parameter" string="刷新" type="object" class="btn-primary"/>
</div>
<group> <group>
<group> <group>
<field name="barcode_id" invisible="True"/> <field name="barcode_id" invisible="True"/>
<field name="code" readonly="True"/> <field name="code" readonly="True"/>
<field name="rfid" class="custom_required"/> <field name="rfid" class="custom_required"/>
</group>
<group>
<button name="get_tool_preset_parameter" string="刷新" type="object" class="btn-primary"/>
</group>
</group>
<group>
<group>
<field name="after_name_id" string="功能刀具名称" placeholder="请选择功能刀具名称" <field name="after_name_id" string="功能刀具名称" placeholder="请选择功能刀具名称"
options="{'no_create': True, 'no_quick_create': True}"/> options="{'no_create': True, 'no_quick_create': True}"/>
<field name="after_assembly_functional_tool_name" string="功能刀具名称" <field name="after_assembly_functional_tool_name" string="功能刀具名称"