Accept Merge Request #205: (feature/sf刀具基础信息管理 -> develop)
Merge Request: sf刀具重构完成,同步方法测试完成 Created By: @马广威 Accepted By: @马广威 URL: https://jikimo-hn.coding.net/p/jikimo_sfs/d/jikimo_sf/git/merge/205?initial=true
This commit is contained in:
@@ -17,8 +17,10 @@
|
||||
'views/base_view.xml',
|
||||
'views/common_view.xml',
|
||||
"views/menu_view.xml",
|
||||
"views/tool_base_views.xml",
|
||||
"views/tool_base_menu.xml",
|
||||
"views/tool_views.xml",
|
||||
"views/tool_menu.xml",
|
||||
# "views/tool_base_views.xml",
|
||||
# "views/tool_base_menu.xml",
|
||||
'views/fixture_base_view.xml',
|
||||
'views/menu_fixture_view.xml',
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
from . import base
|
||||
from . import common
|
||||
from . import tool_base
|
||||
# from . import tool_base
|
||||
from . import tool_base_new
|
||||
from . import fixture_base
|
||||
|
||||
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
import logging
|
||||
|
||||
from odoo import fields, models, api
|
||||
from odoo.exceptions import UserError
|
||||
# from odoo.addons import sf_base, sf_common
|
||||
from datetime import datetime
|
||||
# from odoo.exceptions import UserError
|
||||
# # from odoo.addons import sf_base, sf_common
|
||||
# from datetime import datetime
|
||||
|
||||
|
||||
# 功能刀具物料
|
||||
@@ -24,7 +24,6 @@ class FunctionalCuttingTool(models.Model):
|
||||
|
||||
code = fields.Char('编码')
|
||||
name = fields.Char('名称')
|
||||
# 增加功能刀具类型、整体式刀具型号、刀片型号、刀杆型号、刀盘型号、刀柄型号、夹头型号、直径(mm)、刀具等级、加工精度(mm)、装刀长、刃数、整体刃长(mm)、有效刃长(mm)、最大寿命值、是否标准刀、适用范围
|
||||
functional_model_number = fields.Many2one('sf.functional.cutting.tool.model', string='功能刀具类型')
|
||||
integral_model_number = fields.Many2one('sf.integral.cutting.tool', string='整体式刀具型号')
|
||||
blade_model_number = fields.Many2one('sf.blade', string='刀片型号')
|
||||
|
||||
267
sf_base/models/tool_base_new.py
Normal file
267
sf_base/models/tool_base_new.py
Normal file
@@ -0,0 +1,267 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from odoo import fields, models, api
|
||||
# from datetime import datetime
|
||||
# from odoo.exceptions import ValidationError
|
||||
|
||||
|
||||
# 刀具物料
|
||||
class CuttingToolMaterial(models.Model):
|
||||
_name = 'sf.cutting.tool.material'
|
||||
_description = '刀具物料'
|
||||
|
||||
code = fields.Char('编码')
|
||||
name = fields.Char('名称')
|
||||
remark = fields.Char('备注')
|
||||
|
||||
|
||||
# 功能刀具
|
||||
class FunctionalCuttingTool(models.Model):
|
||||
_name = 'sf.functional.cutting.tool'
|
||||
_description = '功能刀具'
|
||||
|
||||
code = fields.Char('编码')
|
||||
name = fields.Char('名称')
|
||||
mrs_cutting_tool_type_id = fields.Many2one('sf.cutting.tool.type', string='功能刀具类型')
|
||||
mrs_cutting_tool_model_id = fields.Many2one('sf.cutting.tool.model', string='刀具型号')
|
||||
diameter = fields.Float('直径(mm)')
|
||||
tool_grade = fields.Selection([('1', 'P1'), ('2', 'P2'), ('3', 'P3'), ('4', 'P4'), ('5', 'P5'), ('6', 'P6')],
|
||||
string='刀具等级')
|
||||
machining_accuracy = fields.Float('加工精度(mm)')
|
||||
tool_length = fields.Float('装刀长')
|
||||
blade_number = fields.Integer('刃数')
|
||||
integral_blade_length = fields.Float('整体刃长(mm)')
|
||||
effective_blade_length = fields.Float('有效刃长(mm)')
|
||||
max_life = fields.Float('最大寿命值')
|
||||
is_standard = fields.Boolean('是否标准刀')
|
||||
applicable_range = fields.Char('适用范围')
|
||||
image = fields.Binary('图片')
|
||||
|
||||
|
||||
# 功能刀具类型
|
||||
class FunctionalCuttingToolModel(models.Model):
|
||||
_name = 'sf.functional.cutting.tool.model'
|
||||
_description = '功能刀具类型'
|
||||
|
||||
name = fields.Char('名称', required=True)
|
||||
code = fields.Char('编码', required=True)
|
||||
remark = fields.Char('备注')
|
||||
|
||||
|
||||
# 刀具型号
|
||||
class CuttingToolModel(models.Model):
|
||||
_name = 'sf.cutting.tool.model'
|
||||
_description = '刀具型号'
|
||||
|
||||
name = fields.Char('名称')
|
||||
code = fields.Char('编码')
|
||||
mrs_machine_brand_id = fields.Many2one('sf.machine.brand', '品牌')
|
||||
mrs_materials_model_id = fields.Many2one('sf.materials.model', '材料型号')
|
||||
# 关联刀具物料
|
||||
mrs_cutting_tool_material_id = fields.Many2one('sf.cutting.tool.material', '刀具物料', required=True)
|
||||
# 关联刀具物料名称
|
||||
mrs_cutting_tool_material_name = fields.Char(related='mrs_cutting_tool_material_id.name', string='刀具物料名称',
|
||||
store=True)
|
||||
# 关联刀具类型
|
||||
mrs_cutting_tool_type_id = fields.Many2one(
|
||||
'sf.cutting.tool.type', '刀具类型',
|
||||
domain="[('mrs_cutting_tool_material_id.name', '=', mrs_cutting_tool_material_name)]", required=True)
|
||||
|
||||
# 整体式刀具特有字段
|
||||
integral_code = fields.Char('整体式刀具编码')
|
||||
integral_total_length = fields.Float('总长度(mm)')
|
||||
integral_shank_length = fields.Float('柄部长度(mm)')
|
||||
integral_blade_length = fields.Float('刃部长度(mm)')
|
||||
integral_diameter = fields.Float('直径(mm)')
|
||||
integral_blade_number = fields.Integer('刃数')
|
||||
integral_front_angle = fields.Float('前角(°)')
|
||||
integral_rear_angle = fields.Float('后角(°)')
|
||||
integral_main_included_angle = fields.Float('主偏角(°)')
|
||||
integral_nut = fields.Float('配对螺母(mm)')
|
||||
integral_scope = fields.Char('适用范围')
|
||||
|
||||
# 刀片特有字段
|
||||
blade_code = fields.Char('刀片编码')
|
||||
blade_length = fields.Float('长度L(mm)')
|
||||
blade_width = fields.Float('宽度D(mm)')
|
||||
blade_height = fields.Float('高度T(mm)')
|
||||
blade_top_angle = fields.Float('顶角(°)')
|
||||
blade_front_angle = fields.Float('前角(°)')
|
||||
blade_rear_angle = fields.Float('后角(°)')
|
||||
blade_main_included_angle = fields.Float('主偏角(°)')
|
||||
blade_r_angle = fields.Float('R角(°)')
|
||||
blade_hardness = fields.Char('加工硬度')
|
||||
blade_radius = fields.Float('刀尖半径(mm)')
|
||||
blade_nut = fields.Float('配对螺母(mm)')
|
||||
mrs_cutting_tool_model_blade_cutter_bar_ids = fields.Many2many(
|
||||
'sf.cutting.tool.model',
|
||||
relation='sf_cutting_tool_model_blade_cutter_bar_rel',
|
||||
column1='model_id_1',
|
||||
column2='model_id_2',
|
||||
domain="[('mrs_cutting_tool_material_id.name', '=', '刀杆')]",
|
||||
string='适用刀杆型号',
|
||||
default=lambda self: [], # 使用空列表作为默认值
|
||||
)
|
||||
mrs_cutting_tool_model_blade_cutter_pad_ids = fields.Many2many(
|
||||
'sf.cutting.tool.model',
|
||||
relation='sf_cutting_tool_model_blade_cutter_pad_rel',
|
||||
column1='model_id_1',
|
||||
column2='model_id_2',
|
||||
domain="[('mrs_cutting_tool_material_id.name', '=', '刀盘')]",
|
||||
string='适用刀盘型号',
|
||||
default=lambda self: [], # 使用空列表作为默认值
|
||||
)
|
||||
|
||||
# 刀杆特有字段
|
||||
bar_code = fields.Char('刀杆编码', readonly=True)
|
||||
bar_c_diameter = fields.Float('C柄径(mm)')
|
||||
bar_total_length = fields.Float('L总长(mm)')
|
||||
bar_blade_number = fields.Integer('刃数')
|
||||
bar_d_diameter = fields.Float('D刃径(mm)')
|
||||
mrs_cutting_tool_model_bar_blade_ids = fields.Many2many(
|
||||
'sf.cutting.tool.model',
|
||||
relation='sf_cutting_tool_model_bar_blade_rel',
|
||||
column1='model_id_1',
|
||||
column2='model_id_2',
|
||||
domain="[('mrs_cutting_tool_material_id.name', '=', '刀片')]",
|
||||
string='适用刀片型号',
|
||||
default=lambda self: [], # 使用空列表作为默认值
|
||||
)
|
||||
bar_wrench = fields.Float('配对扳手(mm)')
|
||||
bar_screw = fields.Float('配备螺丝(mm)')
|
||||
bar_radius = fields.Float('刀尖圆角半径')
|
||||
bar_accuracy = fields.Char('精度等级')
|
||||
bar_hardness = fields.Char('硬度(°)')
|
||||
bar_scope = fields.Char('适用范围')
|
||||
|
||||
# 刀盘特有字段
|
||||
pad_code = fields.Char('刀盘编码', readonly=True)
|
||||
pad_c_diameter = fields.Float('C柄径(mm)')
|
||||
pad_total_length = fields.Float('L总长(mm)')
|
||||
pad_blade_number = fields.Integer('刃数')
|
||||
pad_d_diameter = fields.Float('D刃径(mm)')
|
||||
mrs_cutting_tool_model_pad_blade_ids = fields.Many2many(
|
||||
'sf.cutting.tool.model',
|
||||
relation='sf_cutting_tool_model_pad_blade_rel',
|
||||
column1='model_id_1',
|
||||
column2='model_id_2',
|
||||
domain="[('mrs_cutting_tool_material_id.name', '=', '刀片')]",
|
||||
string='适用刀片型号',
|
||||
default=lambda self: [], # 使用空列表作为默认值
|
||||
)
|
||||
pad_wrench = fields.Float('配对扳手(mm)')
|
||||
pad_screw = fields.Float('配备螺丝(mm)')
|
||||
pad_radius = fields.Float('刀尖圆角半径')
|
||||
pad_accuracy = fields.Char('精度等级')
|
||||
pad_hardness = fields.Char('硬度(°)')
|
||||
pad_scope = fields.Char('适用范围')
|
||||
|
||||
# 刀柄特有字段
|
||||
handle_code = fields.Char('刀柄编码', readonly=True)
|
||||
handle_length = fields.Float('L(mm)')
|
||||
handle_length1 = fields.Float('L1(mm)')
|
||||
handle_diameter1 = fields.Float('D1(mm)')
|
||||
handle_weight = fields.Float('重量(kg)')
|
||||
handle_body_accuracy = fields.Float('本体精度(mm)')
|
||||
handle_nut = fields.Float('配对螺母(mm)')
|
||||
mrs_cutting_tool_model_handle_chuck_model_ids = fields.Many2many(
|
||||
'sf.cutting.tool.model',
|
||||
relation='sf_cutting_tool_model_handle_chuck_rel',
|
||||
column1='model_id_1',
|
||||
column2='model_id_2',
|
||||
domain="[('mrs_cutting_tool_material_id.name', '=', '夹头')]",
|
||||
string='适用夹头型号',
|
||||
|
||||
)
|
||||
handle_clamping_range = fields.Float('夹持范围(mm)')
|
||||
handle_detection_accuracy = fields.Float('检测精度')
|
||||
handle_detection_hardness = fields.Char('检测硬度')
|
||||
handle_standard_speed = fields.Float('标准转速')
|
||||
|
||||
# 夹头特有字段
|
||||
chuck_code = fields.Char('夹头编码', readonly=True)
|
||||
chuck_accuracy = fields.Float('精度(mm)')
|
||||
chuck_diameter = fields.Float('外径(mm)')
|
||||
chuck_inner_diameter = fields.Float('内径(mm)')
|
||||
chuck_height = fields.Float('高度(mm)')
|
||||
chuck_nut = fields.Float('配对螺母(mm)')
|
||||
mrs_cutting_tool_model_chuck_handle_model_ids = fields.Many2many(
|
||||
'sf.cutting.tool.model',
|
||||
relation='sf_cutting_tool_model_chuck_handle_rel',
|
||||
column1='model_id_1',
|
||||
column2='model_id_2',
|
||||
domain="[('mrs_cutting_tool_material_id.name', '=', '刀柄')]",
|
||||
string='适用刀柄型号',
|
||||
default=lambda self: [], # 使用空列表作为默认值
|
||||
)
|
||||
chuck_clamping_range = fields.Float('夹持范围(mm)')
|
||||
chuck_feature = fields.Char('特性')
|
||||
|
||||
image = fields.Binary('图片')
|
||||
|
||||
hide_integral = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏整体式刀具')
|
||||
hide_blade = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏刀片')
|
||||
hide_cutter_bar = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏刀杆')
|
||||
hide_cutter_pad = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏刀盘')
|
||||
hide_handler = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏刀柄')
|
||||
hide_chuck = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏夹头')
|
||||
hide_model = fields.Boolean(compute='_compute_hide_model_number', default=True, string='隐藏型号')
|
||||
|
||||
@api.depends('mrs_cutting_tool_material_id')
|
||||
def _compute_hide_model_number(self):
|
||||
"""
|
||||
根据刀具物料类型,显示不同的字段
|
||||
"""
|
||||
for record in self:
|
||||
record.hide_integral = False
|
||||
record.hide_blade = False
|
||||
record.hide_cutter_bar = False
|
||||
record.hide_cutter_pad = False
|
||||
record.hide_handler = False
|
||||
record.hide_chuck = False
|
||||
record.hide_model = True
|
||||
|
||||
if record.mrs_cutting_tool_material_id and record.mrs_cutting_tool_material_id.name == '整体式刀具':
|
||||
record.hide_model = False
|
||||
record.hide_integral = True
|
||||
elif record.mrs_cutting_tool_material_id and record.mrs_cutting_tool_material_id.name == '刀片':
|
||||
record.hide_model = False
|
||||
record.hide_blade = True
|
||||
elif record.mrs_cutting_tool_material_id and record.mrs_cutting_tool_material_id.name == '刀杆':
|
||||
record.hide_model = False
|
||||
record.hide_cutter_bar = True
|
||||
elif record.mrs_cutting_tool_material_id and record.mrs_cutting_tool_material_id.name == '刀盘':
|
||||
record.hide_model = False
|
||||
record.hide_cutter_pad = True
|
||||
elif record.mrs_cutting_tool_material_id and record.mrs_cutting_tool_material_id.name == '刀柄':
|
||||
record.hide_model = False
|
||||
record.hide_handler = True
|
||||
elif record.mrs_cutting_tool_material_id and record.mrs_cutting_tool_material_id.name == '夹头':
|
||||
record.hide_model = False
|
||||
record.hide_chuck = True
|
||||
else:
|
||||
record.hide_model = True
|
||||
|
||||
|
||||
# 刀具类型
|
||||
class CuttingToolType(models.Model):
|
||||
_name = 'sf.cutting.tool.type'
|
||||
_description = '刀具类型'
|
||||
|
||||
code = fields.Char('编码')
|
||||
name = fields.Char('名称')
|
||||
# 关联刀具物料
|
||||
mrs_cutting_tool_material_id = fields.Many2one('sf.cutting.tool.material', '刀具物料')
|
||||
# 整体式刀具类型特有字段
|
||||
integral_tool_type_code = fields.Char('整体式刀具类型编码')
|
||||
# 刀片类型特有字段
|
||||
blade_type_code = fields.Char('刀片类型编码')
|
||||
# 刀杆类型特有字段
|
||||
bar_type_code = fields.Char('刀杆类型编码')
|
||||
# 刀盘类型特有字段
|
||||
pad_type_code = fields.Char('刀盘类型编码')
|
||||
# 刀柄类型特有字段
|
||||
handle_type_code = fields.Char('刀柄类型编码')
|
||||
# 夹头类型特有字段
|
||||
chuck_type_code = fields.Char('夹头类型编码')
|
||||
|
||||
remark = fields.Char('备注')
|
||||
@@ -15,21 +15,11 @@ access_sf_production_process_parameter,sf_production_process_parameter,model_sf_
|
||||
access_sf_production_process_category,sf_production_process_category,model_sf_production_process_category,base.group_user,1,1,1,1
|
||||
access_sf_machine_tool_category,sf_machine_tool_category,model_sf_machine_tool_category,base.group_user,1,1,1,1
|
||||
|
||||
access_sf_functional_cutting_tool,sf.functional.cutting.tool,model_sf_functional_cutting_tool,base.group_user,1,1,1,1
|
||||
access_sf_functional_cutting_tool_model,sf.functional.cutting.tool.model,model_sf_functional_cutting_tool_model,base.group_user,1,1,1,1
|
||||
access_sf_integral_cutting_tool,sf.integral.cutting.tool,model_sf_integral_cutting_tool,base.group_user,1,1,1,1
|
||||
access_sf_integral_cutting_tool_model,sf.integral.cutting.tool.model,model_sf_integral_cutting_tool_model,base.group_user,1,1,1,1
|
||||
access_sf_blade,sf.blade,model_sf_blade,base.group_user,1,1,1,1
|
||||
access_sf_blade_model,sf.blade.model,model_sf_blade_model,base.group_user,1,1,1,1
|
||||
access_sf_cutter_bar,sf.cutter.bar,model_sf_cutter_bar,base.group_user,1,1,1,1
|
||||
access_sf_cutter_bar_model,sf.cutter.bar.model,model_sf_cutter_bar_model,base.group_user,1,1,1,1
|
||||
access_sf_cutter_pad,sf.cutter.pad,model_sf_cutter_pad,base.group_user,1,1,1,1
|
||||
access_sf_cutter_pad_model,sf.cutter.pad.model,model_sf_cutter_pad_model,base.group_user,1,1,1,1
|
||||
access_sf_handle,sf.handle,model_sf_handle,base.group_user,1,1,1,1
|
||||
access_sf_handle_model,sf.handle.model,model_sf_handle_model,base.group_user,1,1,1,1
|
||||
access_sf_chuck,sf.chuck,model_sf_chuck,base.group_user,1,1,1,1
|
||||
access_sf_chuck_model,sf.chuck.model,model_sf_chuck_model,base.group_user,1,1,1,1
|
||||
access_sf_cutting_tool_material,sf.cutting.tool.material,model_sf_cutting_tool_material,base.group_user,1,1,1,1
|
||||
access_sf_cutting_tool_material,sf_cutting_tool_material,model_sf_cutting_tool_material,base.group_user,1,1,1,1
|
||||
access_sf_cutting_tool_type,sf_cutting_tool_type,model_sf_cutting_tool_type,base.group_user,1,1,1,1
|
||||
access_sf_cutting_tool_model,sf_cutting_tool_model,model_sf_cutting_tool_model,base.group_user,1,1,1,1
|
||||
access_sf_functional_cutting_tool,sf_functional_cutting_tool,model_sf_functional_cutting_tool,base.group_user,1,1,1,1
|
||||
access_sf_functional_cutting_tool_model,sf_functional_cutting_tool_model,model_sf_functional_cutting_tool_model,base.group_user,1,1,1,1
|
||||
|
||||
access_sf_fixture_setting_element,sf_fixture_setting_element,model_sf_fixture_setting_element,base.group_user,1,1,1,1
|
||||
access_sf_setting_element_type,sf_setting_element_type,model_sf_setting_element_type,base.group_user,1,1,1,1
|
||||
|
||||
|
@@ -35,7 +35,9 @@
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
<!-- 刀具物料search view -->
|
||||
|
||||
|
||||
<!-- ================================================刀具物料视图================================================ -->
|
||||
<record model="ir.ui.view" id="view_cutting_tool_material_search">
|
||||
<field name="name">sf.cutting.tool.material.search</field>
|
||||
<field name="model">sf.cutting.tool.material</field>
|
||||
|
||||
89
sf_base/views/tool_menu.xml
Normal file
89
sf_base/views/tool_menu.xml
Normal file
@@ -0,0 +1,89 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<odoo>
|
||||
<data>
|
||||
|
||||
<!-- 刀具物料action -->
|
||||
<record id="action_sf_cutting_tool_material" model="ir.actions.act_window">
|
||||
<field name="name">刀具物料</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">sf.cutting.tool.material</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<!-- 刀具类型action -->
|
||||
<record id="action_sf_cutting_tool_type" model="ir.actions.act_window">
|
||||
<field name="name">刀具类型</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">sf.cutting.tool.type</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<!-- 刀具型号action -->
|
||||
<record id="action_sf_cutting_tool" model="ir.actions.act_window">
|
||||
<field name="name">刀具型号</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">sf.cutting.tool.model</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<!-- 功能刀具action -->
|
||||
<record id="action_sf_functional_cutting_tool" model="ir.actions.act_window">
|
||||
<field name="name">功能刀具</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">sf.functional.cutting.tool</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<!-- 功能刀具类型 -->
|
||||
<record id="action_sf_functional_cutting_tool_model_type" model="ir.actions.act_window">
|
||||
<field name="name">功能刀具类型</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">sf.functional.cutting.tool.model</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
|
||||
<!-- 刀具 -->
|
||||
<menuitem
|
||||
id="menu_sf_cutting_tool"
|
||||
parent="menu_sf_base"
|
||||
name="刀具"
|
||||
sequence="3"
|
||||
/>
|
||||
<!-- 刀具物料 -->
|
||||
<menuitem
|
||||
id="menu_sf_cutting_tool_material"
|
||||
parent="menu_sf_base"
|
||||
name="刀具物料"
|
||||
sequence="6"
|
||||
action="action_sf_cutting_tool_material"
|
||||
/>
|
||||
<!-- 刀具类型 -->
|
||||
<menuitem
|
||||
id="menu_sf_cutting_tool_type"
|
||||
parent="menu_sf_base"
|
||||
name="刀具类型"
|
||||
sequence="10"
|
||||
action="action_sf_cutting_tool_type"
|
||||
/>
|
||||
<!-- 刀具型号 -->
|
||||
<menuitem
|
||||
id="menu_sf_integral_cutting_tool"
|
||||
parent="menu_sf_base"
|
||||
name="刀具型号"
|
||||
sequence="15"
|
||||
action="action_sf_cutting_tool"
|
||||
/>
|
||||
<!-- 功能刀具 -->
|
||||
<menuitem
|
||||
id="menu_sf_functional_cutting_tool"
|
||||
parent="menu_sf_base"
|
||||
name="功能刀具"
|
||||
sequence="21"
|
||||
action="action_sf_functional_cutting_tool"
|
||||
/>
|
||||
<!-- 功能刀具类型 -->
|
||||
<menuitem
|
||||
id="menu_sf_functional_cutting_tool_model_type"
|
||||
parent="menu_sf_base"
|
||||
name="功能刀具类型"
|
||||
sequence="26"
|
||||
action="action_sf_functional_cutting_tool_model_type"
|
||||
/>
|
||||
</data>
|
||||
</odoo>
|
||||
376
sf_base/views/tool_views.xml
Normal file
376
sf_base/views/tool_views.xml
Normal file
@@ -0,0 +1,376 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<odoo>
|
||||
<data>
|
||||
<!-- ================================================刀具物料================================================ -->
|
||||
<record id="view_cutting_tool_material_tree" model="ir.ui.view">
|
||||
<field name="name">sf.cutting.tool.material.tree</field>
|
||||
<field name="model">sf.cutting.tool.material</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="刀具物料">
|
||||
<field name="code"/>
|
||||
<field name="name"/>
|
||||
<field name="remark"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_cutting_tool_material_form" model="ir.ui.view">
|
||||
<field name="name">sf.cutting.tool.material.form</field>
|
||||
<field name="model">sf.cutting.tool.material</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="刀具物料">
|
||||
<sheet>
|
||||
<group col='1'>
|
||||
<group string='基本信息'>
|
||||
<group>
|
||||
<field name="code"/>
|
||||
<field name="name"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="remark"/>
|
||||
</group>
|
||||
|
||||
</group>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_cutting_tool_material_search">
|
||||
<field name="name">sf.cutting.tool.material.search</field>
|
||||
<field name="model">sf.cutting.tool.material</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="刀具物料">
|
||||
<field name="name" string="名称搜索" filter_domain="[('name','ilike',self)]"/>
|
||||
<field name="code" string="编码搜索" filter_domain="[('code','ilike',self)]"/>
|
||||
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- ================================================功能刀具================================================ -->
|
||||
<record id="view_functional_cutting_tool_tree" model="ir.ui.view">
|
||||
<field name="name">sf.functional.cutting.tool.tree</field>
|
||||
<field name="model">sf.functional.cutting.tool</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="功能刀具">
|
||||
<field name="code"/>
|
||||
<field name="name"/>
|
||||
<field name="mrs_cutting_tool_type_id"/>
|
||||
<field name="image" widget='image'/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_functional_cutting_tool_form" model="ir.ui.view">
|
||||
<field name="name">sf.functional.cutting.tool.form</field>
|
||||
<field name="model">sf.functional.cutting.tool</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="功能刀具">
|
||||
<sheet>
|
||||
<group col='1'>
|
||||
<group string='基本信息'>
|
||||
<group>
|
||||
<field name="code"/>
|
||||
<field name="name"/>
|
||||
<field name="mrs_cutting_tool_type_id" options="{'no_create': True, 'no_quick_create': True}"/>
|
||||
<field name="mrs_cutting_tool_model_id" options="{'no_create': True, 'no_quick_create': True}"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="image" nolabel="1" widget="image"/>
|
||||
</group>
|
||||
|
||||
</group>
|
||||
<group string='参数信息'>
|
||||
<group>
|
||||
<field name="diameter"/>
|
||||
<field name="tool_grade"/>
|
||||
<field name="machining_accuracy"/>
|
||||
<field name="tool_length"/>
|
||||
<field name="blade_number"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="integral_blade_length"/>
|
||||
<field name="effective_blade_length"/>
|
||||
<field name="max_life"/>
|
||||
<field name="is_standard"/>
|
||||
</group>
|
||||
</group>
|
||||
<group string='其他信息'>
|
||||
<group>
|
||||
<field name="applicable_range"/>
|
||||
</group>
|
||||
</group>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_functional_cutting_tool_search">
|
||||
<field name="name">sf.functional.cutting.tool.search</field>
|
||||
<field name="model">sf.functional.cutting.tool</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="功能刀具">
|
||||
<field name="name" string="名称搜索" filter_domain="[('name','ilike',self)]"/>
|
||||
<field name="code" string="编码搜索" filter_domain="[('code','ilike',self)]"/>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
<!-- ================================================功能刀具类型================================================ -->
|
||||
<record id="view_cutter_function_tree" model="ir.ui.view">
|
||||
<field name="name">sf.cutter.function.tree</field>
|
||||
<field name="model">sf.functional.cutting.tool.model</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="功能刀具类型">
|
||||
<field name="name"/>
|
||||
<field name="code"/>
|
||||
<field name="remark"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
<record id="view_cutter_function_form" model="ir.ui.view">
|
||||
<field name="name">sf.cutter.function.form</field>
|
||||
<field name="model">sf.functional.cutting.tool.model</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="功能刀具类型">
|
||||
<sheet>
|
||||
<group string="功能刀具类型">
|
||||
<group>
|
||||
<field name="code"/>
|
||||
<field name="name"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="remark"/>
|
||||
</group>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- 功能刀具类型搜索 -->
|
||||
<record model="ir.ui.view" id="view_cutter_function_search">
|
||||
<field name="name">sf.cutter.function.search</field>
|
||||
<field name="model">sf.functional.cutting.tool.model</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="功能刀具类型">
|
||||
<field name="name" string="名称搜索" filter_domain="[('name','ilike',self)]"/>
|
||||
<field name="code" string="编码搜索" filter_domain="[('code','ilike',self)]"/>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- ================================================刀具型号================================================ -->
|
||||
<record id="view_cutting_tool_model_tree" model="ir.ui.view">
|
||||
<field name="name">sf.cutting.tool.model.tree</field>
|
||||
<field name="model">sf.cutting.tool.model</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="刀具型号">
|
||||
<field name="code"/>
|
||||
<field name="name"/>
|
||||
<field name="mrs_cutting_tool_material_id"/>
|
||||
<field name="image" widget='image'/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_cutting_tool_model_form" model="ir.ui.view">
|
||||
<field name="name">sf.cutting.tool.model.form</field>
|
||||
<field name="model">sf.cutting.tool.model</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="刀具型号">
|
||||
<sheet>
|
||||
<group col='1'>
|
||||
<group string='基本信息'>
|
||||
<group>
|
||||
<field name="code"/>
|
||||
<field name="name"/>
|
||||
<field name="mrs_cutting_tool_material_id" options="{'no_create': True, 'no_quick_create': True}"/>
|
||||
<field name="mrs_machine_brand_id" options="{'no_create': True, 'no_quick_create': True}"/>
|
||||
<field name="mrs_materials_model_id" options="{'no_create': True, 'no_quick_create': True}"/>
|
||||
<field name="mrs_cutting_tool_type_id" options="{'no_create': True, 'no_quick_create': True}"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="image" nolabel="1" widget="image"/>
|
||||
</group>
|
||||
</group>
|
||||
<group string='参数信息'>
|
||||
<group>
|
||||
<field name="hide_integral" invisible="1"/>
|
||||
<field name="hide_blade" invisible="1"/>
|
||||
<field name="hide_cutter_bar" invisible="1"/>
|
||||
<field name="hide_cutter_pad" invisible="1"/>
|
||||
<field name="hide_handler" invisible="1"/>
|
||||
<field name="hide_chuck" invisible="1"/>
|
||||
<field name="mrs_cutting_tool_material_name" invisible="1"/>
|
||||
|
||||
<field name="integral_total_length" attrs="{'invisible': [('hide_integral', '=', False)], 'required': [('hide_integral', '!=', False)]}"/>
|
||||
<field name="integral_shank_length" attrs="{'invisible': [('hide_integral', '=', False)], 'required': [('hide_integral', '!=', False)]}"/>
|
||||
<field name="integral_blade_length" attrs="{'invisible': [('hide_integral', '=', False)], 'required': [('hide_integral', '!=', False)]}"/>
|
||||
<field name="integral_diameter" attrs="{'invisible': [('hide_integral', '=', False)], 'required': [('hide_integral', '!=', False)]}"/>
|
||||
<field name="integral_blade_number" attrs="{'invisible': [('hide_integral', '=', False)], 'required': [('hide_integral', '!=', False)]}"/>
|
||||
|
||||
<field name="blade_length" attrs="{'invisible': [('hide_blade', '=', False)], 'required': [('hide_blade', '!=', False)]}"/>
|
||||
<field name="blade_width" attrs="{'invisible': [('hide_blade', '=', False)], 'required': [('hide_blade', '!=', False)]}"/>
|
||||
<field name="blade_height" attrs="{'invisible': [('hide_blade', '=', False)], 'required': [('hide_blade', '!=', False)]}"/>
|
||||
<field name="blade_top_angle" attrs="{'invisible': [('hide_blade', '=', False)], 'required': [('hide_blade', '!=', False)]}"/>
|
||||
<field name="blade_front_angle" attrs="{'invisible': [('hide_blade', '=', False)], 'required': [('hide_blade', '!=', False)]}"/>
|
||||
<field name="blade_rear_angle" attrs="{'invisible': [('hide_blade', '=', False)], 'required': [('hide_blade', '!=', False)]}"/>
|
||||
|
||||
<field name="bar_c_diameter" attrs="{'invisible': [('hide_cutter_bar', '=', False)], 'required': [('hide_cutter_bar', '!=', False)]}"/>
|
||||
<field name="bar_total_length" attrs="{'invisible': [('hide_cutter_bar', '=', False)], 'required': [('hide_cutter_bar', '!=', False)]}"/>
|
||||
<field name="bar_blade_number" attrs="{'invisible': [('hide_cutter_bar', '=', False)], 'required': [('hide_cutter_bar', '!=', False)]}"/>
|
||||
<field name="bar_d_diameter" attrs="{'invisible': [('hide_cutter_bar', '=', False)], 'required': [('hide_cutter_bar', '!=', False)]}"/>
|
||||
<field name="bar_wrench" attrs="{'invisible': [('hide_cutter_bar', '=', False)], 'required': [('hide_cutter_bar', '!=', False)]}"/>
|
||||
|
||||
|
||||
<field name="pad_c_diameter" attrs="{'invisible': [('hide_cutter_pad', '=', False)], 'required': [('hide_cutter_pad', '!=', False)]}"/>
|
||||
<field name="pad_total_length" attrs="{'invisible': [('hide_cutter_pad', '=', False)], 'required': [('hide_cutter_pad', '!=', False)]}"/>
|
||||
<field name="pad_blade_number" attrs="{'invisible': [('hide_cutter_pad', '=', False)], 'required': [('hide_cutter_pad', '!=', False)]}"/>
|
||||
<field name="pad_d_diameter" attrs="{'invisible': [('hide_cutter_pad', '=', False)], 'required': [('hide_cutter_pad', '!=', False)]}"/>
|
||||
<field name="pad_wrench" attrs="{'invisible': [('hide_cutter_pad', '=', False)], 'required': [('hide_cutter_pad', '!=', False)]}"/>
|
||||
|
||||
|
||||
<field name="handle_length" attrs="{'invisible': [('hide_handler', '=', False)], 'required': [('hide_handler', '!=', False)]}"/>
|
||||
<field name="handle_length1" attrs="{'invisible': [('hide_handler', '=', False)], 'required': [('hide_handler', '!=', False)]}"/>
|
||||
<field name="handle_diameter1" attrs="{'invisible': [('hide_handler', '=', False)], 'required': [('hide_handler', '!=', False)]}"/>
|
||||
<field name="handle_weight" attrs="{'invisible': [('hide_handler', '=', False)], 'required': [('hide_handler', '!=', False)]}"/>
|
||||
<field name="handle_body_accuracy" attrs="{'invisible': [('hide_handler', '=', False)], 'required': [('hide_handler', '!=', False)]}"/>
|
||||
|
||||
<field name="chuck_accuracy" attrs="{'invisible': [('hide_chuck', '=', False)], 'required': [('hide_chuck', '!=', False)]}"/>
|
||||
<field name="chuck_diameter" attrs="{'invisible': [('hide_chuck', '=', False)], 'required': [('hide_chuck', '!=', False)]}"/>
|
||||
<field name="chuck_inner_diameter" attrs="{'invisible': [('hide_chuck', '=', False)], 'required': [('hide_chuck', '!=', False)]}"/>
|
||||
<field name="chuck_height" attrs="{'invisible': [('hide_chuck', '=', False)], 'required': [('hide_chuck', '!=', False)]}"/>
|
||||
|
||||
|
||||
</group>
|
||||
<group>
|
||||
|
||||
<field name="integral_front_angle" attrs="{'invisible': [('hide_integral', '=', False)], 'required': [('hide_integral', '!=', False)]}"/>
|
||||
<field name="integral_rear_angle" attrs="{'invisible': [('hide_integral', '=', False)], 'required': [('hide_integral', '!=', False)]}"/>
|
||||
<field name="integral_main_included_angle" attrs="{'invisible': [('hide_integral', '=', False)], 'required': [('hide_integral', '!=', False)]}"/>
|
||||
<field name="integral_nut" attrs="{'invisible': [('hide_integral', '=', False)], 'required': [('hide_integral', '!=', False)]}"/>
|
||||
<field name="integral_scope" attrs="{'invisible': [('hide_integral', '=', False)], 'required': [('hide_integral', '!=', False)]}"/>
|
||||
|
||||
|
||||
<field name="blade_main_included_angle" attrs="{'invisible': [('hide_blade', '=', False)], 'required': [('hide_blade', '!=', False)]}"/>
|
||||
<field name="blade_r_angle" attrs="{'invisible': [('hide_blade', '=', False)], 'required': [('hide_blade', '!=', False)]}"/>
|
||||
<field name="blade_hardness" attrs="{'invisible': [('hide_blade', '=', False)], 'required': [('hide_blade', '!=', False)]}"/>
|
||||
<field name="blade_radius" attrs="{'invisible': [('hide_blade', '=', False)], 'required': [('hide_blade', '!=', False)]}"/>
|
||||
<field name="blade_nut" attrs="{'invisible': [('hide_blade', '=', False)], 'required': [('hide_blade', '!=', False)]}"/>
|
||||
|
||||
|
||||
<field name="bar_screw" attrs="{'invisible': [('hide_cutter_bar', '=', False)], 'required': [('hide_cutter_bar', '!=', False)]}"/>
|
||||
<field name="bar_radius" attrs="{'invisible': [('hide_cutter_bar', '=', False)], 'required': [('hide_cutter_bar', '!=', False)]}"/>
|
||||
<field name="bar_hardness" attrs="{'invisible': [('hide_cutter_bar', '=', False)], 'required': [('hide_cutter_bar', '!=', False)]}"/>
|
||||
<field name="bar_scope" attrs="{'invisible': [('hide_cutter_bar', '=', False)], 'required': [('hide_cutter_bar', '!=', False)]}"/>
|
||||
|
||||
|
||||
<field name="pad_screw" attrs="{'invisible': [('hide_cutter_pad', '=', False)], 'required': [('hide_cutter_pad', '!=', False)]}"/>
|
||||
<field name="pad_radius" attrs="{'invisible': [('hide_cutter_pad', '=', False)], 'required': [('hide_cutter_pad', '!=', False)]}"/>
|
||||
<field name="pad_accuracy" attrs="{'invisible': [('hide_cutter_pad', '=', False)], 'required': [('hide_cutter_pad', '!=', False)]}"/>
|
||||
<field name="pad_hardness" attrs="{'invisible': [('hide_cutter_pad', '=', False)], 'required': [('hide_cutter_pad', '!=', False)]}"/>
|
||||
<field name="pad_scope" attrs="{'invisible': [('hide_cutter_pad', '=', False)], 'required': [('hide_cutter_pad', '!=', False)]}"/>
|
||||
|
||||
|
||||
<field name="handle_nut" attrs="{'invisible': [('hide_handler', '=', False)], 'required': [('hide_handler', '!=', False)]}"/>
|
||||
<field name="handle_clamping_range" attrs="{'invisible': [('hide_handler', '=', False)], 'required': [('hide_handler', '!=', False)]}"/>
|
||||
<field name="handle_detection_accuracy" attrs="{'invisible': [('hide_handler', '=', False)], 'required': [('hide_handler', '!=', False)]}"/>
|
||||
<field name="handle_detection_hardness" attrs="{'invisible': [('hide_handler', '=', False)], 'required': [('hide_handler', '!=', False)]}"/>
|
||||
<field name="handle_standard_speed" attrs="{'invisible': [('hide_handler', '=', False)], 'required': [('hide_handler', '!=', False)]}"/>
|
||||
|
||||
<field name="chuck_nut" attrs="{'invisible': [('hide_chuck', '=', False)], 'required': [('hide_chuck', '!=', False)]}"/>
|
||||
<field name="chuck_clamping_range" attrs="{'invisible': [('hide_chuck', '=', False)], 'required': [('hide_chuck', '!=', False)]}"/>
|
||||
<field name="chuck_feature" attrs="{'invisible': [('hide_chuck', '=', False)], 'required': [('hide_chuck', '!=', False)]}"/>
|
||||
</group>
|
||||
</group>
|
||||
<group string='其他信息'>
|
||||
<group>
|
||||
<field name="mrs_cutting_tool_model_blade_cutter_bar_ids" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}" attrs="{'invisible': [('hide_blade', '=', False)]}"/>
|
||||
<field name="mrs_cutting_tool_model_bar_blade_ids" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}" attrs="{'invisible': [('hide_cutter_bar', '=', False)]}"/>
|
||||
<field name="mrs_cutting_tool_model_pad_blade_ids" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}" attrs="{'invisible': [('hide_cutter_pad', '=', False)]}"/>
|
||||
<field name="mrs_cutting_tool_model_handle_chuck_model_ids" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}" attrs="{'invisible': [('hide_handler', '=', False)]}"/>
|
||||
<field name="mrs_cutting_tool_model_chuck_handle_model_ids" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}" attrs="{'invisible': [('hide_chuck', '=', False)]}"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="mrs_cutting_tool_model_blade_cutter_pad_ids" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}" attrs="{'invisible': [('hide_blade', '=', False)]}"/>
|
||||
</group>
|
||||
</group>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- 刀具型号搜索 -->
|
||||
<record id="view_cutting_tool_model_search" model="ir.ui.view">
|
||||
<field name="name">sf.cutting.tool.model.search</field>
|
||||
<field name="model">sf.cutting.tool.model</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="刀具型号">
|
||||
<field name="name" string="名称搜索" filter_domain="[('name','ilike',self)]"/>
|
||||
<field name="code" string="编码搜索" filter_domain="[('code','ilike',self)]"/>
|
||||
<searchpanel class="account_root">
|
||||
<field name="mrs_cutting_tool_material_id" icon="fa-filter"/>
|
||||
</searchpanel>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
<!-- ================================================刀具类型================================================ -->
|
||||
<record id="view_cutting_tool_type_tree" model="ir.ui.view">
|
||||
<field name="name">sf.cutting.tool.type.tree</field>
|
||||
<field name="model">sf.cutting.tool.type</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="刀具类型">
|
||||
<field name="code"/>
|
||||
<field name="name"/>
|
||||
<field name="mrs_cutting_tool_material_id"/>
|
||||
<field name="remark"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_cutting_tool_type_form" model="ir.ui.view">
|
||||
<field name="name">sf.cutting.tool.type.form</field>
|
||||
<field name="model">sf.cutting.tool.type</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="刀具类型">
|
||||
<sheet>
|
||||
<group string="刀具类型">
|
||||
<group>
|
||||
<field name="code"/>
|
||||
<field name="name"/>
|
||||
<field name="mrs_cutting_tool_material_id" options="{'no_create': True, 'no_quick_create': True}"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="remark"/>
|
||||
</group>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- 刀具类型搜索 -->
|
||||
<record id="view_cutting_tool_type_search" model="ir.ui.view">
|
||||
<field name="name">sf.cutting.tool.type.search</field>
|
||||
<field name="model">sf.cutting.tool.type</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="刀具类型">
|
||||
<field name="name" string="名称搜索" filter_domain="[('name','ilike',self)]"/>
|
||||
<field name="code" string="编码搜索" filter_domain="[('code','ilike',self)]"/>
|
||||
<searchpanel class="account_root">
|
||||
<field name="mrs_cutting_tool_material_id" icon="fa-filter"/>
|
||||
</searchpanel>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</odoo>
|
||||
@@ -154,137 +154,137 @@
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.cron" id="sf_cron17">
|
||||
<field name="name">同步整体式刀具型号</field>
|
||||
<field name="model_id" ref="model_sf_integral_cutting_tool"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_integral_cutting_tool()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron17"> -->
|
||||
<!-- <field name="name">同步整体式刀具型号</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_integral_cutting_tool"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_integral_cutting_tool()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron18">
|
||||
<field name="name">同步整体式刀具类型</field>
|
||||
<field name="model_id" ref="model_sf_integral_cutting_tool_model"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_integral_cutting_tool_model()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron18"> -->
|
||||
<!-- <field name="name">同步整体式刀具类型</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_integral_cutting_tool_model"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_integral_cutting_tool_model()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron19">
|
||||
<field name="name">同步刀片型号</field>
|
||||
<field name="model_id" ref="model_sf_blade"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_blade()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron19"> -->
|
||||
<!-- <field name="name">同步刀片型号</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_blade"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_blade()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron20">
|
||||
<field name="name">同步刀片类型</field>
|
||||
<field name="model_id" ref="model_sf_blade_model"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_blade_model()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron20"> -->
|
||||
<!-- <field name="name">同步刀片类型</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_blade_model"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_blade_model()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron21">
|
||||
<field name="name">同步刀杆型号</field>
|
||||
<field name="model_id" ref="model_sf_cutter_bar"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_cutter_bar()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron21"> -->
|
||||
<!-- <field name="name">同步刀杆型号</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_cutter_bar"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_cutter_bar()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron22">
|
||||
<field name="name">同步刀杆类型</field>
|
||||
<field name="model_id" ref="model_sf_cutter_bar_model"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_cutter_bar_model()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron22"> -->
|
||||
<!-- <field name="name">同步刀杆类型</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_cutter_bar_model"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_cutter_bar_model()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron23">
|
||||
<field name="name">同步刀盘型号</field>
|
||||
<field name="model_id" ref="model_sf_cutter_pad"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_cutter_pad()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron23"> -->
|
||||
<!-- <field name="name">同步刀盘型号</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_cutter_pad"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_cutter_pad()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron24">
|
||||
<field name="name">同步刀盘类型</field>
|
||||
<field name="model_id" ref="model_sf_cutter_pad_model"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_cutter_pad_model()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron24"> -->
|
||||
<!-- <field name="name">同步刀盘类型</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_cutter_pad_model"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_cutter_pad_model()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron25">
|
||||
<field name="name">同步刀柄型号</field>
|
||||
<field name="model_id" ref="model_sf_handle"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_handle()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron25"> -->
|
||||
<!-- <field name="name">同步刀柄型号</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_handle"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_handle()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron26">
|
||||
<field name="name">同步刀柄类型</field>
|
||||
<field name="model_id" ref="model_sf_handle_model"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_handle_model()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron26"> -->
|
||||
<!-- <field name="name">同步刀柄类型</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_handle_model"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_handle_model()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron27">
|
||||
<field name="name">同步夹头型号</field>
|
||||
<field name="model_id" ref="model_sf_chuck"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_chuck()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron27"> -->
|
||||
<!-- <field name="name">同步夹头型号</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_chuck"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_chuck()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron28">
|
||||
<field name="name">同步夹头类型</field>
|
||||
<field name="model_id" ref="model_sf_chuck_model"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_chuck_model()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
<!-- <record model="ir.cron" id="sf_cron28"> -->
|
||||
<!-- <field name="name">同步夹头类型</field> -->
|
||||
<!-- <field name="model_id" ref="model_sf_chuck_model"/> -->
|
||||
<!-- <field name="state">code</field> -->
|
||||
<!-- <field name="code">model.sync_chuck_model()</field> -->
|
||||
<!-- <field name="interval_number">1</field> -->
|
||||
<!-- <field name="interval_type">days</field> -->
|
||||
<!-- <field name="numbercall">-1</field> -->
|
||||
<!-- <field name="doall" eval="False"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<record model="ir.cron" id="sf_cron29">
|
||||
<field name="name">同步资源库夹紧元件型号</field>
|
||||
|
||||
@@ -42,96 +42,33 @@ class ResConfigSettings(models.TransientModel):
|
||||
_logger.info("同步资源库机床类型")
|
||||
# self.env['sf.production.process.parameter'].sync_all_production_process_parameter()
|
||||
# _logger.info("同步表面工艺参数")
|
||||
# _logger.info("定时同步每日功能刀具类型列表...")
|
||||
# # self.env['sf.functional.cutting.tool.model'].sync_functional_cutting_tool_model()
|
||||
# _logger.info("同步每日功能刀具类型完成")
|
||||
_logger.info("定时同步每日功能刀具类型列表...")
|
||||
# self.env['sf.functional.cutting.tool.model'].sync_functional_cutting_tool_model()
|
||||
_logger.info("同步每日功能刀具类型完成")
|
||||
_logger.info("同步所有功能刀具类型...")
|
||||
self.env['sf.functional.cutting.tool.model'].sync_all_functional_cutting_tool_model()
|
||||
_logger.info("同步所有功能刀具类型完成")
|
||||
# _logger.info("定时同步每日整体式刀具类型列表...")
|
||||
# # self.env['sf.integral.cutting.tool'].sync_integral_cutting_tool()
|
||||
# _logger.info("同步整体式刀具类型完成")
|
||||
# _logger.info("同步每日刀具物料...")
|
||||
# self.env['sf.cutting.tool.material'].sync_cutting_tool_material()
|
||||
# _logger.info("同步每日刀具物料完成")
|
||||
_logger.info("同步每日刀具物料...")
|
||||
self.env['sf.cutting.tool.material'].sync_cutting_tool_material()
|
||||
_logger.info("同步每日刀具物料完成")
|
||||
_logger.info("同步所有刀具物料...")
|
||||
self.env['sf.cutting.tool.material'].sync_all_cutting_tool_material()
|
||||
_logger.info("同步所有刀具物料完成")
|
||||
# _logger.info("同步每日刀片类型列表...")
|
||||
# self.env['sf.blade.model'].sync_blade_model()
|
||||
# _logger.info("同步每日刀片类型完成")
|
||||
_logger.info("同步所有刀片类型列表...")
|
||||
self.env['sf.blade.model'].sync_all_blade_model()
|
||||
_logger.info("同步所有刀片类型完成")
|
||||
# _logger.info("同步每日刀杆类型...")
|
||||
# self.env['sf.cutter.bar.model'].sync_cutter_bar_model()
|
||||
# _logger.info("同步每日刀杆类型完成")
|
||||
_logger.info("同步所有刀杆类型...")
|
||||
self.env['sf.cutter.bar.model'].sync_all_cutter_bar_model()
|
||||
_logger.info("同步所有刀杆类型完成")
|
||||
# _logger.info("同步每日刀盘类型...")
|
||||
# self.env['sf.cutter.pad.model'].sync_cutter_pad_model()
|
||||
# _logger.info("同步每日刀盘类型完成")
|
||||
_logger.info("同步所有刀盘类型...")
|
||||
self.env['sf.cutter.pad.model'].sync_all_cutter_pad_model()
|
||||
_logger.info("同步所有刀盘类型完成")
|
||||
# _logger.info("同步每日刀柄类型...")
|
||||
# self.env['sf.handle.model'].sync_handle_model()
|
||||
# _logger.info("同步每日刀柄类型完成")
|
||||
_logger.info("同步所有刀柄类型...")
|
||||
self.env['sf.handle.model'].sync_all_handle_model()
|
||||
_logger.info("同步所有刀柄类型完成")
|
||||
# _logger.info("同步每日夹头类型...")
|
||||
# self.env['sf.chuck.model'].sync_chuck_model()
|
||||
# _logger.info("同步每日夹头类型完成")
|
||||
_logger.info("同步所有夹头类型...")
|
||||
self.env['sf.chuck.model'].sync_all_chuck_model()
|
||||
_logger.info("同步所有夹头类型完成")
|
||||
# _logger.info("同步每日整体式刀具类型...")
|
||||
# self.env['sf.integral.cutting.tool.model'].sync_integral_cutting_tool_model()
|
||||
# _logger.info("同步每日整体式刀具类型完成")
|
||||
_logger.info("同步所有整体式刀具类型...")
|
||||
self.env['sf.integral.cutting.tool.model'].sync_all_integral_cutting_tool_model()
|
||||
_logger.info("同步所有整体式刀具类型完成")
|
||||
# _logger.info("同步每日刀片列表...")
|
||||
# self.env['sf.blade'].sync_blade()
|
||||
# _logger.info("同步每日刀片完成")
|
||||
_logger.info("同步所有刀片列表...")
|
||||
self.env['sf.blade'].sync_all_blade()
|
||||
_logger.info("同步所有刀片完成")
|
||||
# _logger.info("同步每日刀杆列表...")
|
||||
# self.env['sf.cutter.bar'].sync_cutter_bar()
|
||||
# _logger.info("同步每日刀杆完成")
|
||||
_logger.info("同步所有刀杆列表...")
|
||||
self.env['sf.cutter.bar'].sync_all_cutter_bar()
|
||||
_logger.info("同步所有刀杆完成")
|
||||
# _logger.info("同步每日刀盘列表...")
|
||||
# self.env['sf.cutter.pad'].sync_cutter_pad()
|
||||
# _logger.info("同步每日刀盘完成")
|
||||
_logger.info("同步所有刀盘列表...")
|
||||
self.env['sf.cutter.pad'].sync_all_cutter_pad()
|
||||
_logger.info("同步所有刀盘完成")
|
||||
# _logger.info("同步每日刀柄列表...")
|
||||
# self.env['sf.handle'].sync_handle()
|
||||
# _logger.info("同步每日刀柄完成")
|
||||
_logger.info("同步所有刀柄列表...")
|
||||
self.env['sf.handle'].sync_all_handle()
|
||||
_logger.info("同步所有刀柄完成")
|
||||
# _logger.info("同步每日夹头列表...")
|
||||
# self.env['sf.chuck'].sync_chuck()
|
||||
# _logger.info("同步每日夹头完成")
|
||||
_logger.info("同步所有夹头列表...")
|
||||
self.env['sf.chuck'].sync_all_chuck()
|
||||
_logger.info("同步所有夹头完成")
|
||||
# _logger.info("同步每日整体式刀具列表...")
|
||||
# self.env['sf.integral.cutting.tool'].sync_integral_cutting_tool()
|
||||
# _logger.info("同步每日整体式刀具完成")
|
||||
_logger.info("同步所有整体式刀具列表...")
|
||||
self.env['sf.integral.cutting.tool'].sync_all_integral_cutting_tool()
|
||||
_logger.info("同步所有整体式刀具完成")
|
||||
# _logger.info("同步每日同步功能刀具列表...")
|
||||
# self.env['sf.functional.cutting.tool'].sync_functional_cutting_tool()
|
||||
# _logger.info("同步每日功能刀具列表完成")
|
||||
_logger.info("同步每日刀具类型...")
|
||||
self.env['sf.cutting.tool.type'].sync_tool_type()
|
||||
_logger.info("同步每日刀具类型完成")
|
||||
_logger.info("同步所有刀具类型...")
|
||||
self.env['sf.cutting.tool.type'].sync_all_tool_type()
|
||||
_logger.info("同步所有刀具类型完成")
|
||||
_logger.info("同步每日刀具型号...")
|
||||
self.env['sf.cutting.tool.model'].sync_tool_model()
|
||||
_logger.info("同步每日刀具型号完成")
|
||||
_logger.info("同步所有刀具型号...")
|
||||
self.env['sf.cutting.tool.model'].sync_all_tool_model()
|
||||
_logger.info("同步所有刀具型号完成")
|
||||
_logger.info("同步每日同步功能刀具列表...")
|
||||
self.env['sf.functional.cutting.tool'].sync_functional_cutting_tool()
|
||||
_logger.info("同步每日功能刀具列表完成")
|
||||
_logger.info("同步所有功能刀具列表...")
|
||||
self.env['sf.functional.cutting.tool'].sync_all_functional_cutting_tool()
|
||||
_logger.info("同步所有功能刀具列表完成")
|
||||
@@ -149,7 +86,6 @@ class ResConfigSettings(models.TransientModel):
|
||||
_logger.info("捕获错误信息:%s" % e)
|
||||
raise ValidationError("数据错误导致同步失败,请联系管理员")
|
||||
|
||||
|
||||
@api.model
|
||||
def get_values(self):
|
||||
"""
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user