完成了机台换刀申请的换刀申请按键弹窗数据同步回机台换刀申请界面以及转移按键界面、CAM工单程序用刀计划的申请装刀界面

This commit is contained in:
yuxianghui
2023-06-25 17:36:33 +08:00
parent f135f0a5e7
commit c37166397e
5 changed files with 369 additions and 93 deletions

View File

@@ -22,14 +22,102 @@ class ToolChangeRequirementInformation(models.TransientModel):
reason_for_applying = fields.Char(string='申请原因')
remark = fields.Char(string='备注说明')
# todo 未完成
def tool_changing_apply(self):
"""
确认换刀申请(按键)
确认换刀申请(按键)
:return:
"""
# 封装数据
desc = {
'CNC_machine_table': self.CNC_machine_table,
'machine_tool_code': self.machine_tool_code,
'cutter_spacing_code': self.cutter_spacing_code,
'replacement_tool_code': self.replacement_tool_code,
'replacement_tool_name': self.replacement_tool_name,
'replacement_tool_type': self.replacement_tool_type,
'replacement_tool_coarse_middle_thin': self.replacement_tool_coarse_middle_thin,
'new_former': self.new_former,
'applicant': self.applicant,
'used_tool_time': self.used_tool_time,
'reason_for_applying': self.reason_for_applying,
'remark': self.new_former
}
# 将数据更新到换刀申请
self.tool_change_to_apply_id.write({'replacement_tool_name': self.replacement_tool_name})
self.env.cr.commit()
self.env['sf.machine.table.tool.changing.apply'].amendant_record(desc)
# todo 功能刀具组装创建新任务
# 关闭弹出窗口
return {'type': 'ir.actions.act_window_close'}
class ToolTransferRequestInformation(models.TransientModel):
_name = 'sf.tool.transfer.request.information'
_description = '刀具转移申请信息'
CNC_machine_table = fields.Char(string='CNC机床', readonly=True)
machine_tool_code = fields.Char(string='机台号', readonly=True)
cutter_spacing_code = fields.Char(string='刀位号', readonly=True)
functional_tool_code = fields.Char(string='功能刀具编码', readonly=True)
functional_tool_name = fields.Char(string='功能刀具名称', readonly=True)
# todo 功能刀具类型为 Many2one
functional_tool_type = fields.Char(string='功能刀具类型', readonly=True)
transfer_target = fields.Selection([('机台', '机台'),
('线边刀库', '线边刀库'),
('刀具房', '刀具房')], string='转移到:', default='线边刀库')
new_cnc_machine_table = fields.Char(string='机床名称')
new_machine_tool_code = fields.Char(string='机床号')
new_cutter_spacing_code = fields.Char(string='刀位号')
magazine_tool_warehouse_district = fields.Char(string='库区')
magazine_tool_warehouse_position = fields.Char(string='库位')
tool_room_warehouse_district = fields.Char(string='库区')
tool_room_warehouse_position = fields.Char(string='库位')
def tool_transfer_apply(self):
"""
刀具转移申请信息确定按钮
:return:
"""
class ApplyForTooling(models.TransientModel):
_name = 'sf.apply.for.tooling'
_description = '申请装刀'
ticket_task_code = fields.Char(string='工单任务编号', readonly=True)
cam_procedure_code = fields.Char(string='CAM程序编号', readonly=True)
machine_table_name = fields.Char(string='机床名称', readonly=True)
cam_cutter_spacing_code = fields.Char(string='CAM刀位号', readonly=True)
functional_tool_code = fields.Char(string='功能刀具编码', readonly=True)
functional_tool_name = fields.Char(string='功能刀具名称', readonly=True)
functional_tool_type = fields.Char(string='功能刀具类型', readonly=True)
diameter = fields.Char(string='直径(程式)', readonly=True)
tool_loading_length = fields.Char(string='装刀长', readonly=True)
clearance_length = fields.Char(string='避空长', readonly=True)
tool_included_angle = fields.Char(string='刀尖角R角', readonly=True)
L_D = fields.Char(string='L/D', readonly=True)
coarse_middle_thin = fields.Selection([("1", ""), ('2', ''), ('3', '')], string='粗/中/精', readonly=True)
whether_standard_tool = fields.Boolean(string='是否标准刀', readonly=True)
need_knife_time = fields.Datetime(string='需要用刀时间', readonly=True)
required_cutting_time = fields.Char(string='需要切割时间', readonly=True)
reason_for_applying = fields.Char(string='申请原因', readonly=True)
def apply_for_tooling(self):
"""
:return:
"""

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<!--================================================换刀需求信息================================================-->
<record id="sf_tool_change_requirement_information_form" model="ir.ui.view">
<field name="name">换刀需求信息</field>
<field name="model">sf.tool.change.requirement.information</field>
@@ -54,4 +55,126 @@
<field name="target">new</field>
</record>
<!--================================================刀具转移申请信息================================================-->
<record id="sf_tool_transfer_request_information_form" model="ir.ui.view">
<field name="name">刀具转移申请信息</field>
<field name="model">sf.tool.transfer.request.information</field>
<field name="arch" type="xml">
<form string="刀具转移申请信息">
<sheet>
<group>
<group>
<group>
<field name="CNC_machine_table"/>
<field name="functional_tool_code" string="刀具编码"/>
</group>
<group>
<field name="machine_tool_code"/>
<field name="functional_tool_name" string="刀具名称"/>
</group>
</group>
<group>
<field name="cutter_spacing_code"/>
<field name="functional_tool_type" string="刀具类型"/>
</group>
</group>
<group>
<group>
<field name="transfer_target" widget="radio"/>
</group>
</group>
<group>
<group>
<group>
<field name="new_cnc_machine_table" attrs="{'readonly': [('transfer_target', '!=', '机台')]}"/>
<field name="new_machine_tool_code" attrs="{'readonly': [('transfer_target', '!=', '机台')]}"/>
<field name="new_cutter_spacing_code" attrs="{'readonly': [('transfer_target', '!=', '机台')]}"/>
</group>
<group>
<field name="magazine_tool_warehouse_district" attrs="{'readonly': [('transfer_target', '!=', '线边刀库')]}"/>
<field name="magazine_tool_warehouse_position" attrs="{'readonly': [('transfer_target', '!=', '线边刀库')]}"/>
</group>
</group>
<group>
<field name="tool_room_warehouse_district" attrs="{'readonly': [('transfer_target', '!=', '刀具房')]}"/>
<field name="tool_room_warehouse_position" attrs="{'invisible': [('transfer_target', '!=', '刀具房')]}"/>
</group>
</group>
</sheet>
<footer>
<button string="确定" name="tool_transfer_apply" type="object" class="btn-primary" confirm="是否确认刀具转移申请"/>
<button string="取消" class="btn-secondary" special="cancel"/>
</footer>
</form>
</field>
</record>
<record id="sf_tool_transfer_request_information_act" model="ir.actions.act_window">
<field name="name">刀具转移申请信息</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">sf.tool.transfer.request.information</field>
<field name="view_mode">form</field>
<field name="view_id" ref="sf_tool_transfer_request_information_form"/>
<field name="target">new</field>
</record>
<!--================================================申请装刀================================================-->
<record id="sf_apply_for_tooling_form" model="ir.ui.view">
<field name="name">申请装刀</field>
<field name="model">sf.apply.for.tooling</field>
<field name="arch" type="xml">
<form string="申请装刀">
<sheet>
<group>
<group>
<field name="ticket_task_code" string="工单编号"/>
<field name="machine_table_name" string="CAM指定机床"/>
</group>
<group>
<field name="cam_procedure_code" string="CAM程序编号"/>
<field name="cam_cutter_spacing_code" string="CAM指定刀位号"/>
</group>
</group>
<group>
<group>
<group>
<field name="diameter" string="直径"/>
<field name="tool_included_angle"/>
<field name="whether_standard_tool"/>
</group>
<group>
<field name="tool_loading_length" string="刀尖角"/>
<field name="L_D"/>
<field name="need_knife_time"/>
</group>
</group>
<group>
<field name="clearance_length"/>
<field name="coarse_middle_thin"/>
<field name="required_cutting_time" string="需切削时长"/>
</group>
</group>
<group>
<field name="reason_for_applying"/>
</group>
</sheet>
<footer>
<button string="确定" name="apply_for_tooling" type="object" class="btn-primary" confirm="是否确认申请装刀"/>
<button string="取消" class="btn-secondary" special="cancel"/>
</footer>
</form>
</field>
</record>
<record id="sf_apply_for_tooling_act" model="ir.actions.act_window">
<field name="name">申请装刀</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">sf.apply.for.tooling</field>
<field name="view_mode">form</field>
<field name="view_id" ref="sf_apply_for_tooling_form"/>
<field name="target">new</field>
</record>
</odoo>