From e693bd97f37a410cfc7ef10f630c6f262a69c210 Mon Sep 17 00:00:00 2001 From: "jinling.yang" Date: Tue, 4 Jul 2023 17:32:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=B7=A5=E4=BB=B6=E7=BB=84?= =?UTF-8?q?=E8=A3=85=EF=BC=8C=E5=B7=A5=E4=BB=B6=E5=87=BA=E5=BA=93=EF=BC=8C?= =?UTF-8?q?=E7=BB=84=E8=A3=85=E5=B7=A5=E4=BB=B6=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_base/models/__init__.py | 1 + sf_base/models/workpiece_clamping.py | 110 ++++++++++++++++++++++ sf_base/views/menu_fixture_view.xml | 7 ++ sf_base/views/workpiece_clamping_view.xml | 71 ++++++++++++++ 4 files changed, 189 insertions(+) create mode 100644 sf_base/models/workpiece_clamping.py create mode 100644 sf_base/views/workpiece_clamping_view.xml diff --git a/sf_base/models/__init__.py b/sf_base/models/__init__.py index cc906ab8..6811dd70 100644 --- a/sf_base/models/__init__.py +++ b/sf_base/models/__init__.py @@ -3,6 +3,7 @@ from . import common from . import tool_base_new from . import fixture from . import functional_fixture +from . import workpiece_clamping diff --git a/sf_base/models/workpiece_clamping.py b/sf_base/models/workpiece_clamping.py new file mode 100644 index 00000000..2f90da48 --- /dev/null +++ b/sf_base/models/workpiece_clamping.py @@ -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) + + + + + + + + + + + + + + + + diff --git a/sf_base/views/menu_fixture_view.xml b/sf_base/views/menu_fixture_view.xml index 7186fe35..883b6599 100644 --- a/sf_base/views/menu_fixture_view.xml +++ b/sf_base/views/menu_fixture_view.xml @@ -38,4 +38,11 @@ name="功能夹具" sequence="4" /> + + \ No newline at end of file diff --git a/sf_base/views/workpiece_clamping_view.xml b/sf_base/views/workpiece_clamping_view.xml new file mode 100644 index 00000000..9b67a3a0 --- /dev/null +++ b/sf_base/views/workpiece_clamping_view.xml @@ -0,0 +1,71 @@ + + + + + + + search.sf.workpiece.clamping + sf.workpiece.clamping + + + + + + + + + + + 工件夹具 + sf.workpiece.clamping + + + + + + + + + + + + + + + + + + + + 工件夹具 + sf.workpiece.clamping + +
+ + + + + + + + + + + + + +
+
+
+ + + 工件夹具 + ir.actions.act_window + sf.workpiece.clamping + tree,form + + +
\ No newline at end of file