新增工件组装,工件出库,组装工件功能

This commit is contained in:
jinling.yang
2023-07-04 17:32:14 +08:00
parent 4199a86264
commit e693bd97f3
4 changed files with 189 additions and 0 deletions

View File

@@ -3,6 +3,7 @@ from . import common
from . import tool_base_new
from . import fixture
from . import functional_fixture
from . import workpiece_clamping

View File

@@ -0,0 +1,110 @@
from odoo import models, fields, api
class WorkpieceClamping(models.Model):
_name = 'sf.workpiece.clamping'
_description = "工件装夹"
# 以下为坯料(工件)申请信息
apply_code = fields.Char(string="申请坯料编码", size=25, required=True)
apply_name = fields.Char(string="申请坯料名称", size=25, required=True)
material_id = fields.Many2one('sf.production.materials', string="坯料材料", required=True)
apply_width = fields.Float(string="申请宽度", required=True)
apply_length = fields.Float(string="申请长度", required=True)
apply_height = fields.Float(string="申请高度", required=True)
apply_weight = fields.Float(string="申请重量", required=True)
apply_diameter = fields.Float(string="申请直径", required=True)
surface_accuracy = fields.Char(string="表面精度", required=True)
# 以下为坯料(工件)装夹信息
chuck_name = fields.Char(string="卡盘名称", required=True)
chuck_brand_id = fields.Many2one('sf.machine.brand', string="卡盘品牌", required=True)
chuck_type_id = fields.Char(string="卡盘类型", required=True)
chuck_model_id = fields.Char(string="卡盘型号", required=True)
tray_name = fields.Char(string="托盘名称", required=True)
tray_brand_id = fields.Many2one('sf.machine.brand', string="托盘品牌", required=True)
tray_type_id = fields.Char(string="托盘类型", required=True)
tray_model_id = fields.Char(string="托盘型号", required=True)
real_code = fields.Char(string="真实坯料编码", size=25, required=True)
real_name = fields.Char(string="真实坯料名称", size=25, required=True)
real_width = fields.Float(string="真实宽度", required=True)
real_length = fields.Float(string="真实长度", required=True)
real_height = fields.Float(string="真实高度", required=True)
real_diameter = fields.Float(string="真实直径", required=True)
# 以下为坯料(工件)预调信息
# hole_site = fields.Char(string="孔位", required=True)
# curve = fields.Char(string="曲线", required=True)
# straight_line = fields.Char(string="直线", required=True)
# x_axis = fields.Float(string="X轴", required=True)
# y_axis = fields.Float(string="Y轴", required=True)
# z_axis = fields.Float(string="Z轴", required=True)
# tool_radius = fields.Float(string="刀具半径", required=True)
# tool_length = fields.Float(string="刀具长度", required=True)
# tool_offset_point = fields.Float(string="刀具偏移点", required=True)
# tool_compensation_value = fields.Float(string="刀具补偿值", required=True)
# cutting_spindle_speed = fields.Float(string="切削主轴转速", required=True)
# cutting_feed_rate = fields.Float(string="切削进给速度", required=True)
# depth_of_cutting = fields.Float(string="切削深度", required=True)
# cutting_direction = fields.Char(string="切削方向", required=True)
# cnc_program_information = fields.Char(string="CNC程序信息", required=True)
class StockRemoval(models.Model):
_name = 'sf.stock.removal'
_description = "出库"
code = fields.Char(string="功能夹具编码", size=25, required=True)
name = fields.Char(string="功能夹具名称", size=25, required=True)
type = fields.Char(string="功能夹具类型", required=True)
production_line = fields.Char(string="生产线", required=True)
machine_tool = fields.Many2one('sf.machine_tool', string="机床", required=True)
class Assemble(models.Model):
_name = 'sf.assemble'
_description = "组合装夹"
functional_fixture_code = fields.Char(string="功能夹具编码", size=25, required=True)
functional_fixture_name = fields.Char(string="功能夹具名称", size=25, required=True)
functional_fixture_type = fields.Char(string="功能夹具类型", required=True)
chuck_name = fields.Char(string="卡盘名称", required=True)
chuck_brand_id = fields.Many2one('sf.machine.brand', string="卡盘品牌", required=True)
chuck_type_id = fields.Char(string="卡盘类型", required=True)
chuck_model_id = fields.Char(string="卡盘型号", required=True)
tray_name = fields.Char(string="托盘名称", required=True)
tray_brand_id = fields.Many2one('sf.machine.brand', string="托盘品牌", required=True)
tray_type_id = fields.Char(string="托盘类型", required=True)
tray_model_id = fields.Char(string="托盘型号", required=True)
real_code = fields.Char(string="真实坯料编码", size=25, required=True)
real_name = fields.Char(string="真实坯料名称", size=25, required=True)
total_wight = fields.Float(string="总重量", required=True)
maximum_carrying_weight = fields.Char(string="最大承载重量[kg]")
maximum_clamping_force = fields.Char(string="最大夹持力[n]")
production_line = fields.Char(string="生产线", required=True)
# 以下为智能工厂工单带过来的机床信息
machine_tool = fields.Many2one('sf.machine_tool', string="机床名称", required=True)
machine_tool_code = fields.Char(string="机床编码", required=True)
machine_tool_startime = fields.Date(string="机床开始加工时间", required=True)
# 以下为智能工厂工单带过来的信息
apply_staff = fields.Char(string="申请人", required=True)
apply_time = fields.Date(string="申请时间", required=True)
apply_reason = fields.Char(string="申请原因", required=True)
# 以下为装夹的信息
preset_staff = fields.Char(string="预调名称", required=True)
preset_time = fields.Date(string="预调时间", required=True)
material_taker = fields.Char(string="领料人", required=True)
material_removal_time = fields.Date(string="领料出库时间", required=True)

View File

@@ -38,4 +38,11 @@
name="功能夹具"
sequence="4"
/>
<menuitem id="menu_sf_workpiece_clamping"
parent="menu_sf_fixture"
action="sf_workpiece_clamping_view_act"
name="工件装夹"
sequence="5"
/>
</odoo>

View File

@@ -0,0 +1,71 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<!-- ===========================工件夹具====================================-->
<record model="ir.ui.view" id="search_sf_workpiece_clamping_view">
<field name="name">search.sf.workpiece.clamping</field>
<field name="model">sf.workpiece.clamping</field>
<field name="arch" type="xml">
<search string="工件夹具">
<field name="code" string="编码"
filter_domain="[('code', 'ilike', self)]"/>
<field name="name" string="名称"
filter_domain="[('name', 'ilike', self)]"/>
<field name="material_id" string="材质"
filter_domain="[('material_id.name', 'ilike', self)]"/>
</search>
</field>
</record>
<record id="sf_workpiece_clamping_view_tree" model="ir.ui.view">
<field name="name">工件夹具</field>
<field name="model">sf.workpiece.clamping</field>
<field name="arch" type="xml">
<tree string="工件夹具">
<field name="chuck_type_id"/>
<field name="chuck_name"/>
<field name="chuck_brand_id"/>
<field name="chuck_model_id"/>
<field name="tray_type_id"/>
<field name="tray_name"/>
<field name="tray_brand_id"/>
<field name="tray_model_id"/>
<field name="chuck_type_id"/>
<field name="chuck_model_id"/>
<field name="material_id"/>
</tree>
</field>
</record>
<record id="sf_workpiece_clamping_view_form" model="ir.ui.view">
<field name="name">工件夹具</field>
<field name="model">sf.workpiece.clamping</field>
<field name="arch" type="xml">
<form string="工件夹具">
<sheet>
<group string="基本信息">
<group>
<field name="code"/>
<field name="name"/>
</group>
</group>
<group string="其他">
<group>
<field name="remark"/>
</group>
</group>
</sheet>
</form>
</field>
</record>
<record id="sf_workpiece_clamping_view_act" model="ir.actions.act_window">
<field name="name">工件夹具</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">sf.workpiece.clamping</field>
<field name="view_mode">tree,form</field>
</record>
</odoo>