Accept Merge Request #194: (feature/sf刀具基础信息管理 -> develop)

Merge Request: 增加物料刀具同步功能,修复一些问题

Created By: @马广威
Accepted By: @马广威
URL: https://jikimo-hn.coding.net/p/jikimo_sfs/d/jikimo_sf/git/merge/194?initial=true
This commit is contained in:
马广威
2023-06-14 16:35:54 +08:00
6 changed files with 484 additions and 88 deletions

View File

@@ -7,6 +7,78 @@ from odoo.exceptions import UserError
from datetime import datetime from datetime import datetime
# 功能刀具物料
class CuttingToolMaterial(models.Model):
_name = 'sf.cutting.tool.material'
_description = '刀具物料'
code = fields.Char('编码')
name = fields.Char('名称')
remark = fields.Char('备注')
# 测试模型
class aa_test(models.Model):
_name = 'sf.test'
_description = '测试'
model_number = fields.Char('型号', readonly=True)
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
# 关联整体式刀具型号
integral_model_number = fields.Many2one('sf.integral.cutting.tool.model', '整体式刀具型号')
# 关联刀片型号
blade_model_number = fields.Many2one('sf.blade', '刀片型号')
# 关联刀杆型号
cutterbar_model_number = fields.Many2one('sf.cutter.bar', '刀杆型号')
# 关联刀盘型号
cutterpad_model_number = fields.Many2one('sf.cutter.pad', '刀盘型号')
# 关联刀柄型号
handle_model_number = fields.Many2one('sf.handle', '刀柄型号')
# 关联夹头型号
chuck_model_number = fields.Many2one('sf.chuck', '夹头型号')
hide_integral_model_number = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏整体式刀具型号')
hide_blade_model_number = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏刀片型号')
hide_cutterbar_model_number = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏刀杆型号')
hide_cutterpad_model_number = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏刀盘型号')
hide_handle_model_number = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏刀柄型号')
hide_chuck_model_number = fields.Boolean(compute='_compute_hide_model_number', default=False, string='隐藏夹头型号')
hide_model_number = fields.Boolean(compute='_compute_hide_model_number', default=True, string='隐藏型号')
@api.depends('cutting_tool_material')
def _compute_hide_model_number(self):
for record in self:
record.hide_integral_model_number = False
record.hide_blade_model_number = False
record.hide_cutterbar_model_number = False
record.hide_cutterpad_model_number = False
record.hide_handle_model_number = False
record.hide_chuck_model_number = False
record.hide_model_number = True
if record.cutting_tool_material and record.cutting_tool_material.name == '整体式刀具':
record.hide_model_number = False
record.hide_integral_model_number = True
elif record.cutting_tool_material and record.cutting_tool_material.name == '刀片':
record.hide_model_number = False
record.hide_blade_model_number = True
elif record.cutting_tool_material and record.cutting_tool_material.name == '刀杆':
record.hide_model_number = False
record.hide_cutterbar_model_number = True
elif record.cutting_tool_material and record.cutting_tool_material.name == '刀盘':
record.hide_model_number = False
record.hide_cutterpad_model_number = True
elif record.cutting_tool_material and record.cutting_tool_material.name == '刀柄':
record.hide_model_number = False
record.hide_handle_model_number = True
elif record.cutting_tool_material and record.cutting_tool_material.name == '夹头':
record.hide_model_number = False
record.hide_chuck_model_number = True
else:
record.hide_model_number = True
# 功能刀具 # 功能刀具
class FunctionalCuttingTool(models.Model): class FunctionalCuttingTool(models.Model):
_name = 'sf.functional.cutting.tool' _name = 'sf.functional.cutting.tool'
@@ -53,6 +125,8 @@ class IntegralCuttingTool(models.Model):
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('型号名称') name = fields.Char('型号名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
# 整体式刀具类型字段,关联整体式刀具类型对象 # 整体式刀具类型字段,关联整体式刀具类型对象
integral_model_number = fields.Many2one('sf.integral.cutting.tool.model', '整体式刀具类型') integral_model_number = fields.Many2one('sf.integral.cutting.tool.model', '整体式刀具类型')
# 增加品牌、总长度(mm)、柄部长度(mm)、刃部长度(mm)、直径(mm)、刃数、前角(°)、后角(°)、主偏角(°)、材料型号、配对螺母(mm)、适用夹头型号、适用范围、图片、创建人、创建时间等字段 # 增加品牌、总长度(mm)、柄部长度(mm)、刃部长度(mm)、直径(mm)、刃数、前角(°)、后角(°)、主偏角(°)、材料型号、配对螺母(mm)、适用夹头型号、适用范围、图片、创建人、创建时间等字段
@@ -80,6 +154,8 @@ class IntegralCuttingToolModel(models.Model):
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('名称') name = fields.Char('名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
remark = fields.Text('备注') remark = fields.Text('备注')
@@ -90,10 +166,12 @@ class Blade(models.Model):
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('型号名称') name = fields.Char('型号名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
# 刀片类型字段,关联刀片类型对象 # 刀片类型字段,关联刀片类型对象
blade_model_number = fields.Many2one('sf.blade.model', '刀片类型') blade_model_number = fields.Many2one('sf.blade.model', '刀片类型')
# 编码、型号名称、刀片类型、品牌、长度L(mm)、宽度D(mm)、高度T(mm)、顶角(°)、前角(°)、后角(°)、主偏角(°)、R角(°)、材料型号、加工硬度、配对螺母(mm)、适用刀杆/刀盘型号、刀尖半径(mm)、图片、创建人、创建时间字段 # 编码、型号名称、刀片类型、品牌、长度L(mm)、宽度D(mm)、高度T(mm)、顶角(°)、前角(°)、后角(°)、主偏角(°)、R角(°)、材料型号、加工硬度、配对螺母(mm)、适用刀杆/刀盘型号、刀尖半径(mm)、图片、创建人、创建时间字段
brand = fields.Many2one('sf.machine.brand', '品牌',) brand = fields.Many2one('sf.machine.brand', '品牌', )
length = fields.Float('长度L(mm)') length = fields.Float('长度L(mm)')
width = fields.Float('宽度D(mm)') width = fields.Float('宽度D(mm)')
height = fields.Float('高度T(mm)') height = fields.Float('高度T(mm)')
@@ -120,6 +198,8 @@ class BladeModel(models.Model):
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('名称') name = fields.Char('名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
# 刀片类型字段,关联刀片对象 # 刀片类型字段,关联刀片对象
blade_ids = fields.One2many('sf.blade', 'blade_model_number', '刀片类型') blade_ids = fields.One2many('sf.blade', 'blade_model_number', '刀片类型')
remark = fields.Text('备注') remark = fields.Text('备注')
@@ -132,6 +212,8 @@ class CutterBar(models.Model):
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('型号名称') name = fields.Char('型号名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
# 刀杆类型字段,关联刀杆类型对象 # 刀杆类型字段,关联刀杆类型对象
cutter_bar_model_number = fields.Many2one('sf.cutter.bar.model', '刀杆类型') cutter_bar_model_number = fields.Many2one('sf.cutter.bar.model', '刀杆类型')
# 品牌、C柄径(mm)、L总长(mm)、材料型号、刃数、D刃径(mm)、适用刀片型号、配对扳手(mm)、配备螺丝(mm)、刀尖圆角半径、精度等级、硬度(°)、适用范围、图片、创建人、创建时间 # 品牌、C柄径(mm)、L总长(mm)、材料型号、刃数、D刃径(mm)、适用刀片型号、配对扳手(mm)、配备螺丝(mm)、刀尖圆角半径、精度等级、硬度(°)、适用范围、图片、创建人、创建时间
@@ -158,6 +240,8 @@ class CutterBarModel(models.Model):
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('名称') name = fields.Char('名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
remark = fields.Text('备注') remark = fields.Text('备注')
@@ -168,6 +252,8 @@ class CutterPad(models.Model):
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('型号名称') name = fields.Char('型号名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
# 刀盘类型字段,关联刀盘类型对象 # 刀盘类型字段,关联刀盘类型对象
cutter_pad_model_number = fields.Many2one('sf.cutter.pad.model', '刀盘类型') cutter_pad_model_number = fields.Many2one('sf.cutter.pad.model', '刀盘类型')
# 增加品牌、C柄径(mm)、L总长(mm)、材料型号、刃数、D刃径(mm)、适用刀片型号、配对扳手(mm)、配备螺丝(mm)、刀尖圆角半径、精度等级、硬度(°)、适用范围、图片、创建人、创建时间 # 增加品牌、C柄径(mm)、L总长(mm)、材料型号、刃数、D刃径(mm)、适用刀片型号、配对扳手(mm)、配备螺丝(mm)、刀尖圆角半径、精度等级、硬度(°)、适用范围、图片、创建人、创建时间
@@ -194,6 +280,8 @@ class CutterPadModel(models.Model):
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('名称') name = fields.Char('名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
remark = fields.Text('备注') remark = fields.Text('备注')
@@ -204,6 +292,8 @@ class Handle(models.Model):
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('型号名称') name = fields.Char('型号名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
# 刀柄类型字段,关联刀柄类型对象 # 刀柄类型字段,关联刀柄类型对象
handle_model_number = fields.Many2one('sf.handle.model', '刀柄类型') handle_model_number = fields.Many2one('sf.handle.model', '刀柄类型')
# 增加、刀柄类型、品牌、L(mm)、L1(mm)、D1(mm)、重量(kg)、材料型号、本体精度(mm)、配对螺母(mm)、适用夹头型号、夹持范围(mm)、检测精度、检测硬度、标准转速、图片、创建人、创建时间 # 增加、刀柄类型、品牌、L(mm)、L1(mm)、D1(mm)、重量(kg)、材料型号、本体精度(mm)、配对螺母(mm)、适用夹头型号、夹持范围(mm)、检测精度、检测硬度、标准转速、图片、创建人、创建时间
@@ -230,6 +320,8 @@ class HandleModel(models.Model):
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('名称') name = fields.Char('名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
remark = fields.Text('备注') remark = fields.Text('备注')
@@ -237,9 +329,12 @@ class HandleModel(models.Model):
class Chuck(models.Model): class Chuck(models.Model):
_name = 'sf.chuck' _name = 'sf.chuck'
_description = '夹头' _description = '夹头'
_rec_name = 'code'
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('型号名称') name = fields.Char('型号名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
# 夹头类型字段,关联夹头类型对象 # 夹头类型字段,关联夹头类型对象
chuck_model_number = fields.Many2one('sf.chuck.model', '夹头类型') chuck_model_number = fields.Many2one('sf.chuck.model', '夹头类型')
# 增加品牌、精度(mm)、外径(mm)、内径(mm)、高度(mm)、材料型号、配对螺母(mm)、适用刀柄型号、夹持范围(mm)、特性、图片、创建人、创建时间 # 增加品牌、精度(mm)、外径(mm)、内径(mm)、高度(mm)、材料型号、配对螺母(mm)、适用刀柄型号、夹持范围(mm)、特性、图片、创建人、创建时间
@@ -263,5 +358,6 @@ class ChuckModel(models.Model):
code = fields.Char('编码') code = fields.Char('编码')
name = fields.Char('名称') name = fields.Char('名称')
# 关联刀具物料
cutting_tool_material = fields.Many2one('sf.cutting.tool.material', '刀具物料')
remark = fields.Text('备注') remark = fields.Text('备注')

View File

@@ -31,7 +31,8 @@ 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_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,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_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_test,sf.test,model_sf_test,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_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 access_sf_setting_element_type,sf_setting_element_type,model_sf_setting_element_type,base.group_user,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
31 access_sf_chuck sf.chuck model_sf_chuck base.group_user 1 1 1 1
32 access_sf_chuck_model sf.chuck.model model_sf_chuck_model base.group_user 1 1 1 1
33 access_sf_fixture_setting_element access_sf_cutting_tool_material sf_fixture_setting_element sf.cutting.tool.material model_sf_fixture_setting_element model_sf_cutting_tool_material base.group_user 1 1 1 1
34 access_sf_setting_element_type access_sf_test sf_setting_element_type sf.test model_sf_setting_element_type model_sf_test base.group_user 1 1 1 1
35 access_sf_fixture_setting_element sf_fixture_setting_element model_sf_fixture_setting_element base.group_user 1 1 1 1
36 access_sf_fixture_clamping_element access_sf_setting_element_type sf_fixture_clamping_element sf_setting_element_type model_sf_fixture_clamping_element model_sf_setting_element_type base.group_user 1 1 1 1
37 access_sf_clamping_element_type access_sf_fixture_clamping_element sf_clamping_element_type sf_fixture_clamping_element model_sf_clamping_element_type model_sf_fixture_clamping_element base.group_user 1 1 1 1
38 access_sf_fixture_tool_setting access_sf_clamping_element_type sf_fixture_tool_setting sf_clamping_element_type model_sf_fixture_tool_setting model_sf_clamping_element_type base.group_user 1 1 1 1

View File

@@ -100,16 +100,22 @@
<field name="res_model">sf.chuck.model</field> <field name="res_model">sf.chuck.model</field>
<field name="view_mode">tree,form</field> <field name="view_mode">tree,form</field>
</record> </record>
<!-- 刀具物料action -->
<!-- 刀具 --> <record id="action_sf_cutting_tool_material" model="ir.actions.act_window">
<!-- <menuitem --> <field name="name">刀具物料</field>
<!-- id="menu_sf_cutting_tool" --> <field name="type">ir.actions.act_window</field>
<!-- parent="mrp.menu_mrp_configuration" --> <field name="res_model">sf.cutting.tool.material</field>
<!-- name="刀具" --> <field name="view_mode">tree,form</field>
<!-- sequence="3" --> </record>
<!-- /> --> <!-- 测试 action -->
<record id="action_sf_test" model="ir.actions.act_window">
<field name="name">测试</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">sf.test</field>
<field name="view_mode">tree,form</field>
</record>
<!-- 功能刀具 --> <!-- 功能刀具 -->
<!-- parent="menu_sf_cutting_tool" --> <!-- parent="menu_sf_cutting_tool" -->
<menuitem <menuitem
id="menu_sf_functional_cutting_tool" id="menu_sf_functional_cutting_tool"
@@ -118,21 +124,15 @@
sequence="3" sequence="3"
action="action_sf_functional_cutting_tool" action="action_sf_functional_cutting_tool"
/> />
<!-- --><!-- 刀具物料 --> <!-- 刀具物料 -->
<!-- <menuitem --> <menuitem
<!-- id="menu_sf_cutting_tool_material" --> id="menu_sf_cutting_tool_material"
<!-- parent="menu_sf_cutting_tool" --> parent="menu_sf_base"
<!-- name="刀具物料" --> name="刀具物料"
<!-- sequence="1" --> sequence="1"
<!-- /> --> action="action_sf_cutting_tool_material"
/>
<!-- --><!-- 刀头 -->
<!-- <menuitem -->
<!-- id="menu_sf_cutting_tool_head" -->
<!-- parent="menu_sf_cutting_tool" -->
<!-- name="刀头" -->
<!-- sequence="2" -->
<!-- /> -->
<!-- 整体式刀具 --> <!-- 整体式刀具 -->
<menuitem <menuitem
@@ -238,6 +238,14 @@
sequence="64" sequence="64"
action="action_sf_cutting_tool_clamp_head_type" action="action_sf_cutting_tool_clamp_head_type"
/> />
<!-- 测试 -->
<menuitem
id="menu_sf_test"
parent="menu_sf_base"
name="测试"
sequence="68"
action="action_sf_test"
/>
</data> </data>

View File

@@ -1,6 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<odoo> <odoo>
<data> <data>
<!-- 刀具物料tree view -->
<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>
<!-- 刀具物料form view -->
<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>
<!-- 功能刀具tree view --> <!-- 功能刀具tree view -->
<record id="view_functional_cutting_tool_tree" model="ir.ui.view"> <record id="view_functional_cutting_tool_tree" model="ir.ui.view">
<field name="name">sf.functional.cutting.tool.tree</field> <field name="name">sf.functional.cutting.tool.tree</field>
@@ -97,6 +131,7 @@
<field name="name"/> <field name="name"/>
<field name="integral_model_number"/> <field name="integral_model_number"/>
<field name="brand"/> <field name="brand"/>
<field name="cutting_tool_material"/>
</group> </group>
<group> <group>
<field name="image" nolabel="1" widget="image"/> <field name="image" nolabel="1" widget="image"/>
@@ -110,6 +145,8 @@
<field name="blade_length"/> <field name="blade_length"/>
<field name="diameter"/> <field name="diameter"/>
<field name="blade_number"/> <field name="blade_number"/>
<field name="chuck_model" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}"/>
</group> </group>
<group> <group>
<field name="front_angle"/> <field name="front_angle"/>
@@ -121,12 +158,12 @@
<group string='其他信息'> <group string='其他信息'>
<group> <group>
<field name="nut"/> <field name="nut"/>
<field name="chuck_model"/>
</group>
<group>
<field name="scope"/> <field name="scope"/>
</group> </group>
</group> </group>
</group> </group>
</sheet> </sheet>
</form> </form>
@@ -160,6 +197,7 @@
<field name="name"/> <field name="name"/>
<field name="blade_model_number"/> <field name="blade_model_number"/>
<field name="brand" options="{'no_create': True, 'no_quick_create': True}"/> <field name="brand" options="{'no_create': True, 'no_quick_create': True}"/>
<field name="cutting_tool_material"/>
</group> </group>
<group> <group>
<field name="image" nolabel="1" widget="image"/> <field name="image" nolabel="1" widget="image"/>
@@ -173,7 +211,8 @@
<field name="height"/> <field name="height"/>
<field name="top_angle"/> <field name="top_angle"/>
<field name="front_angle"/> <field name="front_angle"/>
<field name="rear_angle"/> <field name="cutter_bar" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}"/>
<field name="cutter_pad" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}"/>
</group> </group>
<group> <group>
<field name="main_included_angle"/> <field name="main_included_angle"/>
@@ -181,15 +220,12 @@
<field name="material_model"/> <field name="material_model"/>
<field name="hardness"/> <field name="hardness"/>
<field name="radius"/> <field name="radius"/>
<field name="rear_angle"/>
</group> </group>
</group> </group>
<group string='其他信息'> <group string='其他信息'>
<group> <group>
<field name="nut"/> <field name="nut"/>
<field name="cutter_bar" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}"/>
</group>
<group>
<field name="cutter_pad" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}"/>
</group> </group>
</group> </group>
</group> </group>
@@ -225,6 +261,9 @@
<field name="name"/> <field name="name"/>
<field name="cutter_bar_model_number"/> <field name="cutter_bar_model_number"/>
<field name="brand"/> <field name="brand"/>
<field name="cutting_tool_material"/>
<field name="blade" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}"/>
</group> </group>
<group> <group>
<field name="image" nolabel="1" widget="image"/> <field name="image" nolabel="1" widget="image"/>
@@ -253,7 +292,6 @@
</group> </group>
<group> <group>
<field name="scope"/> <field name="scope"/>
<field name="blade"/>
</group> </group>
</group> </group>
@@ -291,6 +329,9 @@
<field name="name"/> <field name="name"/>
<field name="cutter_pad_model_number"/> <field name="cutter_pad_model_number"/>
<field name="brand"/> <field name="brand"/>
<field name="cutting_tool_material"/>
<field name="blade" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}"/>
</group> </group>
<group> <group>
<field name="image" nolabel="1" widget="image"/> <field name="image" nolabel="1" widget="image"/>
@@ -318,7 +359,6 @@
</group> </group>
<group> <group>
<field name="scope"/> <field name="scope"/>
<field name="blade"/>
</group> </group>
</group> </group>
</group> </group>
@@ -355,6 +395,9 @@
<field name="name"/> <field name="name"/>
<field name="handle_model_number"/> <field name="handle_model_number"/>
<field name="brand"/> <field name="brand"/>
<field name="cutting_tool_material"/>
<field name="chuck_model" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}"/>
</group> </group>
<group> <group>
<field name="image" nolabel="1" widget="image"/> <field name="image" nolabel="1" widget="image"/>
@@ -380,7 +423,6 @@
<group string='其他信息'> <group string='其他信息'>
<group> <group>
<field name="nut"/> <field name="nut"/>
<field name="chuck_model"/>
</group> </group>
<!-- <group> --> <!-- <group> -->
<!-- <field name="scope"/> --> <!-- <field name="scope"/> -->
@@ -421,6 +463,9 @@
<field name="name"/> <field name="name"/>
<field name="chuck_model_number"/> <field name="chuck_model_number"/>
<field name="brand"/> <field name="brand"/>
<field name="cutting_tool_material"/>
<field name="handle_model" widget="many2many_tags" options="{'no_create': True, 'no_quick_create': True}"/>
</group> </group>
<group> <group>
<field name="image" nolabel="1" widget="image"/> <field name="image" nolabel="1" widget="image"/>
@@ -443,7 +488,6 @@
<group string='其他信息'> <group string='其他信息'>
<group> <group>
<field name="nut"/> <field name="nut"/>
<field name="handle_model"/>
</group> </group>
<!-- <group> --> <!-- <group> -->
<!-- <field name="scope"/> --> <!-- <field name="scope"/> -->
@@ -513,6 +557,7 @@
<group> <group>
<field name="code"/> <field name="code"/>
<field name="name"/> <field name="name"/>
<field name="cutting_tool_material"/>
</group> </group>
<group> <group>
<field name="remark"/> <field name="remark"/>
@@ -546,7 +591,7 @@
<group> <group>
<field name="code"/> <field name="code"/>
<field name="name"/> <field name="name"/>
<field name="blade_ids"/> <field name="cutting_tool_material"/>
</group> </group>
<group> <group>
<field name="remark"/> <field name="remark"/>
@@ -580,6 +625,7 @@
<group> <group>
<field name="code"/> <field name="code"/>
<field name="name"/> <field name="name"/>
<field name="cutting_tool_material"/>
</group> </group>
<group> <group>
<field name="remark"/> <field name="remark"/>
@@ -613,6 +659,7 @@
<group> <group>
<field name="code"/> <field name="code"/>
<field name="name"/> <field name="name"/>
<field name="cutting_tool_material"/>
</group> </group>
<group> <group>
<field name="remark"/> <field name="remark"/>
@@ -647,6 +694,7 @@
<group> <group>
<field name="code"/> <field name="code"/>
<field name="name"/> <field name="name"/>
<field name="cutting_tool_material"/>
</group> </group>
<group> <group>
<field name="remark"/> <field name="remark"/>
@@ -680,6 +728,7 @@
<group> <group>
<field name="code"/> <field name="code"/>
<field name="name"/> <field name="name"/>
<field name="cutting_tool_material"/>
</group> </group>
<group> <group>
<field name="remark"/> <field name="remark"/>
@@ -689,7 +738,49 @@
</form> </form>
</field> </field>
</record> </record>
<!-- 测试tree -->
<record id="view_test_tree" model="ir.ui.view">
<field name="name">sf.test.tree</field>
<field name="model">sf.test</field>
<field name="arch" type="xml">
<tree string="测试">
<field name="model_number"/>
</tree>
</field>
</record>
<!-- 测试form -->
<record id="view_test_form" model="ir.ui.view">
<field name="name">sf.test.form</field>
<field name="model">sf.test</field>
<field name="arch" type="xml">
<form string="测试">
<sheet>
<group string="测试">
<group>
<field name="cutting_tool_material"/>
</group>
<group>
<field name="hide_integral_model_number" invisible="1"/>
<field name="hide_blade_model_number" invisible="1"/>
<field name="hide_cutterbar_model_number" invisible="1"/>
<field name="hide_cutterpad_model_number" invisible="1"/>
<field name="hide_handle_model_number" invisible="1"/>
<field name="hide_chuck_model_number" invisible="1"/>
<field name="hide_model_number" invisible="1"/>
<field name="model_number" attrs="{'invisible': [('hide_model_number', '!=', True)]}"/>
<field name="integral_model_number" attrs="{'invisible': [('hide_integral_model_number', '!=', True)]}"/>
<field name="blade_model_number" attrs="{'invisible': [('hide_blade_model_number', '!=', True)]}"/>
<field name="cutterbar_model_number" attrs="{'invisible': [('hide_cutterbar_model_number', '!=', True)]}"/>
<field name="cutterpad_model_number" attrs="{'invisible': [('hide_cutterpad_model_number', '!=', True)]}"/>
<field name="handle_model_number" attrs="{'invisible': [('hide_handle_model_number', '!=', True)]}"/>
<field name="chuck_model_number" attrs="{'invisible': [('hide_chuck_model_number', '!=', True)]}"/>
</group>
</group>
</sheet>
</form>
</field>
</record>
</data> </data>
</odoo> </odoo>

View File

@@ -55,6 +55,11 @@ class ResConfigSettings(models.TransientModel):
_logger.info("定时同步每日整体式刀具类型列表...") _logger.info("定时同步每日整体式刀具类型列表...")
# self.env['sf.integral.cutting.tool'].sync_integral_cutting_tool() # self.env['sf.integral.cutting.tool'].sync_integral_cutting_tool()
_logger.info("同步整体式刀具类型完成") _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() self.env['sf.blade.model'].sync_blade_model()
_logger.info("同步每日刀片类型完成") _logger.info("同步每日刀片类型完成")
@@ -134,14 +139,14 @@ class ResConfigSettings(models.TransientModel):
self.env['sf.functional.cutting.tool'].sync_all_functional_cutting_tool() self.env['sf.functional.cutting.tool'].sync_all_functional_cutting_tool()
_logger.info("同步所有功能刀具列表完成") _logger.info("同步所有功能刀具列表完成")
self.env['sf.fixture.clamping.element'].sync_all_fixture_clamping_element() # self.env['sf.fixture.clamping.element'].sync_all_fixture_clamping_element()
_logger.info("同步资源库夹紧元件型号") # _logger.info("同步资源库夹紧元件型号")
self.env['sf.clamping.element.type'].sync_all_clamping_element_type() # self.env['sf.clamping.element.type'].sync_all_clamping_element_type()
_logger.info("同步资源库夹紧元件类型") # _logger.info("同步资源库夹紧元件类型")
self.env['sf.guide.element.type'].sync_all_guide_element_type() # self.env['sf.guide.element.type'].sync_all_guide_element_type()
_logger.info("同步资源库导向元件类型") # _logger.info("同步资源库导向元件类型")
self.env['sf.guide.element.guide.mode'].sync_all_guide_element_guide_mode() # self.env['sf.guide.element.guide.mode'].sync_all_guide_element_guide_mode()
_logger.info("同步资源库导向元件导向方式") # _logger.info("同步资源库导向元件导向方式")
except Exception as e: except Exception as e:
_logger.info("捕获错误信息:%s" % e) _logger.info("捕获错误信息:%s" % e)

View File

@@ -726,7 +726,7 @@ class MachineToolType(models.Model):
[('code', '=', item['machine_tool_id'])]).id [('code', '=', item['machine_tool_id'])]).id
else: else:
print(item['machine_tool_picture'].encode('utf-8')) # print(item['machine_tool_picture'].encode('utf-8'))
self.env['sf.machine_tool.type'].create({ self.env['sf.machine_tool.type'].create({
"id": item['id'], "id": item['id'],
"name": item['name'], "name": item['name'],
@@ -1237,6 +1237,78 @@ class MachineToolCategory(models.Model):
raise ValidationError("认证未通过") raise ValidationError("认证未通过")
# 同步刀具物料
class sfSyncCutting_tool_Material(models.Model):
_inherit = 'sf.cutting.tool.material'
_description = '刀具物料同步'
url = '/api/mrs_cutting_tool_material/list'
# 定时同步每日刀具物料
def sync_cutting_tool_material(self):
sf_sync_config = self.env['res.config.settings'].get_values()
token = sf_sync_config['token']
sf_secret_key = sf_sync_config['sf_secret_key']
headers = Common.get_headers(self, token, sf_secret_key)
strUrl = sf_sync_config['sf_url'] + self.url
r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json()
result = json.loads(r['result'])
# print('result:%s' % result)
if result['status'] == 1:
if result.get('mrs_cutting_tool_material_yesterday_list'):
for item in result['mrs_cutting_tool_material_yesterday_list']:
if item:
brand = self.env['sf.cutting.tool.material'].search(
[("code", '=', item['code'])])
if not brand:
self.env['sf.cutting.tool.material'].create({
"name": item['name'],
"code": item['code'],
"remark": item['remark'],
})
else:
brand.write({
"name": item['name'],
"code": item['code'],
"remark": item['remark'],
})
else:
raise ValidationError("认证未通过")
# 同步所有刀具物料
def sync_all_cutting_tool_material(self):
sf_sync_config = self.env['res.config.settings'].get_values()
token = sf_sync_config['token']
sf_secret_key = sf_sync_config['sf_secret_key']
headers = Common.get_headers(self, token, sf_secret_key)
strUrl = sf_sync_config['sf_url'] + self.url
r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json()
result = json.loads(r['result'])
# print('result:%s' % result)
if result['status'] == 1:
if result.get('mrs_cutting_tool_material_all_list'):
for item in result['mrs_cutting_tool_material_all_list']:
if item:
brand = self.env['sf.cutting.tool.material'].search(
[("code", '=', item['code'])])
if not brand:
self.env['sf.cutting.tool.material'].create({
"name": item['name'],
"code": item['code'],
"remark": item['remark'],
})
else:
brand.write({
"name": item['name'],
"code": item['code'],
"remark": item['remark'],
})
# 同步功能刀具列表 # 同步功能刀具列表
class sfSyncFunctional_cutting_tool(models.Model): class sfSyncFunctional_cutting_tool(models.Model):
_inherit = 'sf.functional.cutting.tool' _inherit = 'sf.functional.cutting.tool'
@@ -1254,7 +1326,7 @@ class sfSyncFunctional_cutting_tool(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_functional_cutting_tool_yesterday_list'): if result.get('mrs_functional_cutting_tool_yesterday_list'):
for item in result['mrs_functional_cutting_tool_yesterday_list']: for item in result['mrs_functional_cutting_tool_yesterday_list']:
@@ -1462,7 +1534,7 @@ class SyncFunctionalCuttingToolModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_functional_cutting_tool_model_yesterday_list'): if result.get('mrs_functional_cutting_tool_model_yesterday_list'):
for item in result['mrs_functional_cutting_tool_model_yesterday_list']: for item in result['mrs_functional_cutting_tool_model_yesterday_list']:
@@ -1495,7 +1567,7 @@ class SyncFunctionalCuttingToolModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_functional_cutting_tool_model_all_list'): if result.get('mrs_functional_cutting_tool_model_all_list'):
for item in result['mrs_functional_cutting_tool_model_all_list']: for item in result['mrs_functional_cutting_tool_model_all_list']:
@@ -1536,7 +1608,7 @@ class SyncIntegralCuttingTool(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_integral_cutting_tool_yesterday_list'): if result.get('mrs_integral_cutting_tool_yesterday_list'):
for item in result['mrs_integral_cutting_tool_yesterday_list']: for item in result['mrs_integral_cutting_tool_yesterday_list']:
@@ -1561,6 +1633,8 @@ class SyncIntegralCuttingTool(models.Model):
[("code", '=', item['integral_model_number'])]).id, [("code", '=', item['integral_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"total_length": item['total_length'], "total_length": item['total_length'],
"shank_length": item['shank_length'], "shank_length": item['shank_length'],
"blade_length": item['blade_length'], "blade_length": item['blade_length'],
@@ -1584,6 +1658,8 @@ class SyncIntegralCuttingTool(models.Model):
[("code", '=', item['integral_model_number'])]).id, [("code", '=', item['integral_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"total_length": item['total_length'], "total_length": item['total_length'],
"shank_length": item['shank_length'], "shank_length": item['shank_length'],
"blade_length": item['blade_length'], "blade_length": item['blade_length'],
@@ -1613,7 +1689,7 @@ class SyncIntegralCuttingTool(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_integral_cutting_tool_all_list'): if result.get('mrs_integral_cutting_tool_all_list'):
for item in result['mrs_integral_cutting_tool_all_list']: for item in result['mrs_integral_cutting_tool_all_list']:
@@ -1638,6 +1714,8 @@ class SyncIntegralCuttingTool(models.Model):
[("code", '=', item['integral_model_number'])]).id, [("code", '=', item['integral_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"total_length": item['total_length'], "total_length": item['total_length'],
"shank_length": item['shank_length'], "shank_length": item['shank_length'],
"blade_length": item['blade_length'], "blade_length": item['blade_length'],
@@ -1661,6 +1739,8 @@ class SyncIntegralCuttingTool(models.Model):
[("code", '=', item['integral_model_number'])]).id, [("code", '=', item['integral_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"total_length": item['total_length'], "total_length": item['total_length'],
"shank_length": item['shank_length'], "shank_length": item['shank_length'],
"blade_length": item['blade_length'], "blade_length": item['blade_length'],
@@ -1698,7 +1778,7 @@ class SyncIntegralCuttingToolModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_integral_cutting_tool_model_list'): if result.get('mrs_integral_cutting_tool_model_list'):
for item in result['mrs_integral_cutting_tool_model_list']: for item in result['mrs_integral_cutting_tool_model_list']:
@@ -1710,6 +1790,16 @@ class SyncIntegralCuttingToolModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
})
else:
brand.write({
"name": item['name'],
"code": item['code'],
"remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
raise ValidationError("认证未通过") raise ValidationError("认证未通过")
@@ -1725,7 +1815,7 @@ class SyncIntegralCuttingToolModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_integral_cutting_tool_model_all_list'): if result.get('mrs_integral_cutting_tool_model_all_list'):
for item in result['mrs_integral_cutting_tool_model_all_list']: for item in result['mrs_integral_cutting_tool_model_all_list']:
@@ -1737,6 +1827,16 @@ class SyncIntegralCuttingToolModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
})
else:
brand.write({
"name": item['name'],
"code": item['code'],
"remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
raise ValidationError("认证未通过") raise ValidationError("认证未通过")
@@ -1759,10 +1859,20 @@ class SyncBlade(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_blade_yesterday_list'): if result.get('mrs_blade_yesterday_list'):
for item in result['mrs_blade_yesterday_list']: for item in result['mrs_blade_yesterday_list']:
bar_list = []
pad_list = []
if item.get('cutter_bar'):
for i in item.get('cutter_bar'):
bar_list.append(self.env['sf.cutter.bar'].search(
[("code", '=', i)]).id)
if item.get('cutter_pad'):
for j in item.get('cutter_pad'):
pad_list.append(self.env['sf.cutter.pad'].search(
[("code", '=', j)]).id)
if item: if item:
# code, name, blade_model_number, brand, length, width, height, top_angle, front_angle, rear_angle, main_included_angle, r_angle, material_model, hardness, nut, cutter_bar, cutter_pad, radius, image, create_uid, create_date # code, name, blade_model_number, brand, length, width, height, top_angle, front_angle, rear_angle, main_included_angle, r_angle, material_model, hardness, nut, cutter_bar, cutter_pad, radius, image, create_uid, create_date
brand = self.env['sf.blade'].search( brand = self.env['sf.blade'].search(
@@ -1779,6 +1889,8 @@ class SyncBlade(models.Model):
[("code", '=', item['blade_model_number'])]).id, [("code", '=', item['blade_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"length": item['length'], "length": item['length'],
"width": item['width'], "width": item['width'],
"height": item['height'], "height": item['height'],
@@ -1791,8 +1903,8 @@ class SyncBlade(models.Model):
[("materials_no", '=', item['material_model'])]).id, [("materials_no", '=', item['material_model'])]).id,
"hardness": item['hardness'], "hardness": item['hardness'],
"nut": item['nut'], "nut": item['nut'],
"cutter_bar": item['cutter_bar'], "cutter_bar": bar_list,
"cutter_pad": item['cutter_pad'], "cutter_pad": pad_list,
"radius": item['radius'], "radius": item['radius'],
"image": image, "image": image,
}) })
@@ -1803,6 +1915,8 @@ class SyncBlade(models.Model):
[("code", '=', item['blade_model_number'])]).id, [("code", '=', item['blade_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"length": item['length'], "length": item['length'],
"width": item['width'], "width": item['width'],
"height": item['height'], "height": item['height'],
@@ -1815,8 +1929,8 @@ class SyncBlade(models.Model):
[("materials_no", '=', item['material_model'])]).id, [("materials_no", '=', item['material_model'])]).id,
"hardness": item['hardness'], "hardness": item['hardness'],
"nut": item['nut'], "nut": item['nut'],
"cutter_bar": item['cutter_bar'], "cutter_bar": bar_list,
"cutter_pad": item['cutter_pad'], "cutter_pad": pad_list,
"radius": item['radius'], "radius": item['radius'],
"image": image, "image": image,
}) })
@@ -1838,7 +1952,16 @@ class SyncBlade(models.Model):
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_blade_all_list'): if result.get('mrs_blade_all_list'):
for item in result['mrs_blade_all_list']: for item in result['mrs_blade_all_list']:
# print('item_image:%s' % item['image'].encode('utf-8) bar_list = []
pad_list = []
if item.get('cutter_bar'):
for i in item.get('cutter_bar'):
bar_list.append(self.env['sf.cutter.bar'].search(
[("code", '=', i)]).id)
if item.get('cutter_pad'):
for j in item.get('cutter_pad'):
pad_list.append(self.env['sf.cutter.pad'].search(
[("code", '=', j)]).id)
if item: if item:
brand = self.env['sf.blade'].search( brand = self.env['sf.blade'].search(
@@ -1855,6 +1978,8 @@ class SyncBlade(models.Model):
[("code", '=', item['blade_model_number'])]).id, [("code", '=', item['blade_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"length": item['length'], "length": item['length'],
"width": item['width'], "width": item['width'],
"height": item['height'], "height": item['height'],
@@ -1867,8 +1992,8 @@ class SyncBlade(models.Model):
[("materials_no", '=', item['material_model'])]).id, [("materials_no", '=', item['material_model'])]).id,
"hardness": item['hardness'], "hardness": item['hardness'],
"nut": item['nut'], "nut": item['nut'],
"cutter_bar": item['cutter_bar'], "cutter_bar": bar_list,
"cutter_pad": item['cutter_pad'], "cutter_pad": pad_list,
"radius": item['radius'], "radius": item['radius'],
"image": image, "image": image,
}) })
@@ -1879,6 +2004,8 @@ class SyncBlade(models.Model):
[("code", '=', item['blade_model_number'])]).id, [("code", '=', item['blade_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"length": item['length'], "length": item['length'],
"width": item['width'], "width": item['width'],
"height": item['height'], "height": item['height'],
@@ -1891,8 +2018,8 @@ class SyncBlade(models.Model):
[("materials_no", '=', item['material_model'])]).id, [("materials_no", '=', item['material_model'])]).id,
"hardness": item['hardness'], "hardness": item['hardness'],
"nut": item['nut'], "nut": item['nut'],
"cutter_bar": item['cutter_bar'], "cutter_bar": bar_list,
"cutter_pad": item['cutter_pad'], "cutter_pad": pad_list,
"radius": item['radius'], "radius": item['radius'],
"image": image, "image": image,
}) })
@@ -1918,7 +2045,7 @@ class SyncBladeModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_blade_model_yesterday_list'): if result.get('mrs_blade_model_yesterday_list'):
for item in result['mrs_blade_model_yesterday_list']: for item in result['mrs_blade_model_yesterday_list']:
@@ -1930,12 +2057,16 @@ class SyncBladeModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
brand.write({ brand.write({
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
print('同步每日刀片类型列表成功') print('同步每日刀片类型列表成功')
else: else:
@@ -1952,7 +2083,7 @@ class SyncBladeModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_blade_model_all_list'): if result.get('mrs_blade_model_all_list'):
for item in result['mrs_blade_model_all_list']: for item in result['mrs_blade_model_all_list']:
@@ -1964,12 +2095,16 @@ class SyncBladeModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
brand.write({ brand.write({
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
print('同步刀片类型列表成功') print('同步刀片类型列表成功')
else: else:
@@ -1994,7 +2129,7 @@ class SyncCutterBar(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_cutter_bar_yesterday_list'): if result.get('mrs_cutter_bar_yesterday_list'):
for item in result['mrs_cutter_bar_yesterday_list']: for item in result['mrs_cutter_bar_yesterday_list']:
@@ -2019,6 +2154,8 @@ class SyncCutterBar(models.Model):
[("code", '=', item['cutter_bar_model_number'])]).id, [("code", '=', item['cutter_bar_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"c_diameter": item['c_diameter'], "c_diameter": item['c_diameter'],
"total_length": item['total_length'], "total_length": item['total_length'],
"material_model": self.env['sf.materials.model'].search( "material_model": self.env['sf.materials.model'].search(
@@ -2042,6 +2179,8 @@ class SyncCutterBar(models.Model):
[("code", '=', item['cutter_bar_model_number'])]).id, [("code", '=', item['cutter_bar_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"c_diameter": item['c_diameter'], "c_diameter": item['c_diameter'],
"total_length": item['total_length'], "total_length": item['total_length'],
"material_model": self.env['sf.materials.model'].search( "material_model": self.env['sf.materials.model'].search(
@@ -2072,7 +2211,7 @@ class SyncCutterBar(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_cutter_bar_all_list'): if result.get('mrs_cutter_bar_all_list'):
for item in result['mrs_cutter_bar_all_list']: for item in result['mrs_cutter_bar_all_list']:
@@ -2097,6 +2236,8 @@ class SyncCutterBar(models.Model):
[("code", '=', item['cutter_bar_model_number'])]).id, [("code", '=', item['cutter_bar_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"c_diameter": item['c_diameter'], "c_diameter": item['c_diameter'],
"total_length": item['total_length'], "total_length": item['total_length'],
"material_model": self.env['sf.materials.model'].search( "material_model": self.env['sf.materials.model'].search(
@@ -2120,6 +2261,8 @@ class SyncCutterBar(models.Model):
[("code", '=', item['cutter_bar_model_number'])]).id, [("code", '=', item['cutter_bar_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"c_diameter": item['c_diameter'], "c_diameter": item['c_diameter'],
"total_length": item['total_length'], "total_length": item['total_length'],
"material_model": self.env['sf.materials.model'].search( "material_model": self.env['sf.materials.model'].search(
@@ -2158,7 +2301,7 @@ class SyncCutterBarModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_cutter_bar_model_yesterday_list'): if result.get('mrs_cutter_bar_model_yesterday_list'):
for item in result['mrs_cutter_bar_model_yesterday_list']: for item in result['mrs_cutter_bar_model_yesterday_list']:
@@ -2170,18 +2313,22 @@ class SyncCutterBarModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
brand.write({ brand.write({
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
print('同步每日刀片类型列表成功') print('同步每日刀片类型列表成功')
else: else:
raise ValidationError("认证未通过") raise ValidationError("认证未通过")
# 定时同步所有刀杆类型列表 # 同步所有刀杆类型列表
def sync_all_cutter_bar_model(self): def sync_all_cutter_bar_model(self):
sf_sync_config = self.env['res.config.settings'].get_values() sf_sync_config = self.env['res.config.settings'].get_values()
token = sf_sync_config['token'] token = sf_sync_config['token']
@@ -2192,7 +2339,7 @@ class SyncCutterBarModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_cutter_bar_model_all_list'): if result.get('mrs_cutter_bar_model_all_list'):
for item in result['mrs_cutter_bar_model_all_list']: for item in result['mrs_cutter_bar_model_all_list']:
@@ -2204,12 +2351,16 @@ class SyncCutterBarModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
brand.write({ brand.write({
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
print('同步刀杆类型列表成功') print('同步刀杆类型列表成功')
else: else:
@@ -2234,7 +2385,7 @@ class SyncCutterPad(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_cutter_pad_yesterday_list'): if result.get('mrs_cutter_pad_yesterday_list'):
for item in result['mrs_cutter_pad_yesterday_list']: for item in result['mrs_cutter_pad_yesterday_list']:
@@ -2259,6 +2410,8 @@ class SyncCutterPad(models.Model):
[("code", '=', item['cutter_pad_model_number'])]).id, [("code", '=', item['cutter_pad_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"c_diameter": item['c_diameter'], "c_diameter": item['c_diameter'],
"total_length": item['total_length'], "total_length": item['total_length'],
"material_model": self.env['sf.materials.model'].search( "material_model": self.env['sf.materials.model'].search(
@@ -2283,6 +2436,8 @@ class SyncCutterPad(models.Model):
[("code", '=', item['cutter_pad_model_number'])]).id, [("code", '=', item['cutter_pad_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"c_diameter": item['c_diameter'], "c_diameter": item['c_diameter'],
"total_length": item['total_length'], "total_length": item['total_length'],
"material_model": self.env['sf.materials.model'].search( "material_model": self.env['sf.materials.model'].search(
@@ -2314,7 +2469,7 @@ class SyncCutterPad(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_cutter_pad_all_list'): if result.get('mrs_cutter_pad_all_list'):
for item in result['mrs_cutter_pad_all_list']: for item in result['mrs_cutter_pad_all_list']:
@@ -2339,6 +2494,8 @@ class SyncCutterPad(models.Model):
[("code", '=', item['cutter_pad_model_number'])]).id, [("code", '=', item['cutter_pad_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"c_diameter": item['c_diameter'], "c_diameter": item['c_diameter'],
"total_length": item['total_length'], "total_length": item['total_length'],
"material_model": self.env['sf.materials.model'].search( "material_model": self.env['sf.materials.model'].search(
@@ -2363,6 +2520,8 @@ class SyncCutterPad(models.Model):
[("code", '=', item['cutter_pad_model_number'])]).id, [("code", '=', item['cutter_pad_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"c_diameter": item['c_diameter'], "c_diameter": item['c_diameter'],
"total_length": item['total_length'], "total_length": item['total_length'],
"material_model": self.env['sf.materials.model'].search( "material_model": self.env['sf.materials.model'].search(
@@ -2402,7 +2561,7 @@ class SyncCutterPadModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_cutter_pad_model_yesterday_list'): if result.get('mrs_cutter_pad_model_yesterday_list'):
for item in result['mrs_cutter_pad_model_yesterday_list']: for item in result['mrs_cutter_pad_model_yesterday_list']:
@@ -2414,12 +2573,16 @@ class SyncCutterPadModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
brand.write({ brand.write({
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
print('同步每日刀盘类型列表成功') print('同步每日刀盘类型列表成功')
else: else:
@@ -2436,7 +2599,7 @@ class SyncCutterPadModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_cutter_pad_model_all_list'): if result.get('mrs_cutter_pad_model_all_list'):
for item in result['mrs_cutter_pad_model_all_list']: for item in result['mrs_cutter_pad_model_all_list']:
@@ -2448,12 +2611,16 @@ class SyncCutterPadModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
brand.write({ brand.write({
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
print('同步刀盘类型列表成功') print('同步刀盘类型列表成功')
else: else:
@@ -2478,7 +2645,7 @@ class SyncHandle(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_handle_yesterday_list'): if result.get('mrs_handle_yesterday_list'):
for item in result['mrs_handle_yesterday_list']: for item in result['mrs_handle_yesterday_list']:
@@ -2503,6 +2670,8 @@ class SyncHandle(models.Model):
[("code", '=', item['handle_model_number'])]).id, [("code", '=', item['handle_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"length": item['length'], "length": item['length'],
"length1": item['length1'], "length1": item['length1'],
"diameter1": item['diameter1'], "diameter1": item['diameter1'],
@@ -2527,6 +2696,8 @@ class SyncHandle(models.Model):
[("code", '=', item['handle_model_number'])]).id, [("code", '=', item['handle_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"length": item['length'], "length": item['length'],
"length1": item['length1'], "length1": item['length1'],
"diameter1": item['diameter1'], "diameter1": item['diameter1'],
@@ -2558,7 +2729,7 @@ class SyncHandle(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_handle_all_list'): if result.get('mrs_handle_all_list'):
for item in result['mrs_handle_all_list']: for item in result['mrs_handle_all_list']:
@@ -2583,6 +2754,8 @@ class SyncHandle(models.Model):
[("code", '=', item['handle_model_number'])]).id, [("code", '=', item['handle_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"length": item['length'], "length": item['length'],
"length1": item['length1'], "length1": item['length1'],
"diameter1": item['diameter1'], "diameter1": item['diameter1'],
@@ -2607,6 +2780,8 @@ class SyncHandle(models.Model):
[("code", '=', item['handle_model_number'])]).id, [("code", '=', item['handle_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"length": item['length'], "length": item['length'],
"length1": item['length1'], "length1": item['length1'],
"diameter1": item['diameter1'], "diameter1": item['diameter1'],
@@ -2646,7 +2821,7 @@ class SyncHandleModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_handle_model_yesterday_list'): if result.get('mrs_handle_model_yesterday_list'):
for item in result['mrs_handle_model_yesterday_list']: for item in result['mrs_handle_model_yesterday_list']:
@@ -2658,12 +2833,16 @@ class SyncHandleModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
brand.write({ brand.write({
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
print('同步每日刀柄类型列表成功') print('同步每日刀柄类型列表成功')
else: else:
@@ -2680,7 +2859,7 @@ class SyncHandleModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_handle_model_all_list'): if result.get('mrs_handle_model_all_list'):
for item in result['mrs_handle_model_all_list']: for item in result['mrs_handle_model_all_list']:
@@ -2692,12 +2871,16 @@ class SyncHandleModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
brand.write({ brand.write({
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
print('同步刀柄类型列表成功') print('同步刀柄类型列表成功')
else: else:
@@ -2722,7 +2905,7 @@ class SyncChuck(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_chuck_yesterday_list'): if result.get('mrs_chuck_yesterday_list'):
for item in result['mrs_chuck_yesterday_list']: for item in result['mrs_chuck_yesterday_list']:
@@ -2747,6 +2930,8 @@ class SyncChuck(models.Model):
[("code", '=', item['chuck_model_number'])]).id, [("code", '=', item['chuck_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"accuracy": item['accuracy'], "accuracy": item['accuracy'],
"diameter": item['diameter'], "diameter": item['diameter'],
"inner_diameter": item['inner_diameter'], "inner_diameter": item['inner_diameter'],
@@ -2767,6 +2952,8 @@ class SyncChuck(models.Model):
[("code", '=', item['chuck_model_number'])]).id, [("code", '=', item['chuck_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"accuracy": item['accuracy'], "accuracy": item['accuracy'],
"diameter": item['diameter'], "diameter": item['diameter'],
"inner_diameter": item['inner_diameter'], "inner_diameter": item['inner_diameter'],
@@ -2794,7 +2981,7 @@ class SyncChuck(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_chuck_all_list'): if result.get('mrs_chuck_all_list'):
for item in result['mrs_chuck_all_list']: for item in result['mrs_chuck_all_list']:
@@ -2819,6 +3006,8 @@ class SyncChuck(models.Model):
[("code", '=', item['chuck_model_number'])]).id, [("code", '=', item['chuck_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"accuracy": item['accuracy'], "accuracy": item['accuracy'],
"diameter": item['diameter'], "diameter": item['diameter'],
"inner_diameter": item['inner_diameter'], "inner_diameter": item['inner_diameter'],
@@ -2839,6 +3028,8 @@ class SyncChuck(models.Model):
[("code", '=', item['chuck_model_number'])]).id, [("code", '=', item['chuck_model_number'])]).id,
"brand": self.env['sf.machine.brand'].search( "brand": self.env['sf.machine.brand'].search(
[("code", '=', item['brand'])]).id, [("code", '=', item['brand'])]).id,
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
"accuracy": item['accuracy'], "accuracy": item['accuracy'],
"diameter": item['diameter'], "diameter": item['diameter'],
"inner_diameter": item['inner_diameter'], "inner_diameter": item['inner_diameter'],
@@ -2874,7 +3065,7 @@ class SyncChuckModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_chuck_model_yesterday_list'): if result.get('mrs_chuck_model_yesterday_list'):
for item in result['mrs_chuck_model_yesterday_list']: for item in result['mrs_chuck_model_yesterday_list']:
@@ -2886,12 +3077,16 @@ class SyncChuckModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
brand.write({ brand.write({
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
print('同步每日夹头类型列表成功') print('同步每日夹头类型列表成功')
else: else:
@@ -2908,7 +3103,7 @@ class SyncChuckModel(models.Model):
r = requests.post(strUrl, json={}, data=None, headers=headers) r = requests.post(strUrl, json={}, data=None, headers=headers)
r = r.json() r = r.json()
result = json.loads(r['result']) result = json.loads(r['result'])
print('result:%s' % result) # print('result:%s' % result)
if result['status'] == 1: if result['status'] == 1:
if result.get('mrs_chuck_model_all_list'): if result.get('mrs_chuck_model_all_list'):
for item in result['mrs_chuck_model_all_list']: for item in result['mrs_chuck_model_all_list']:
@@ -2920,20 +3115,22 @@ class SyncChuckModel(models.Model):
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
else: else:
brand.write({ brand.write({
"name": item['name'], "name": item['name'],
"code": item['code'], "code": item['code'],
"remark": item['remark'], "remark": item['remark'],
"cutting_tool_material": self.env['sf.cutting.tool.material'].search(
[("code", '=', item['cutting_tool_material'])]).id,
}) })
print('同步夹头类型列表成功') print('同步夹头类型列表成功')
else: else:
raise ValidationError("认证未通过") raise ValidationError("认证未通过")
'''=========================================夹紧元件类型===============================================''' '''=========================================夹紧元件类型==============================================='''
@@ -3062,7 +3259,6 @@ class sfFixtureClampingElement(models.Model):
# "picture": item['picture'].encode('utf-8'), # "picture": item['picture'].encode('utf-8'),
"comment": item['comment'], "comment": item['comment'],
'brand_id': self.env['sf.machine.brand'].search( 'brand_id': self.env['sf.machine.brand'].search(
[('code', '=', item['brand_id'])]).id, [('code', '=', item['brand_id'])]).id,
"material_type_id": self.env['sf.materials.model'].search( "material_type_id": self.env['sf.materials.model'].search(
@@ -3265,4 +3461,3 @@ class sfGuideElementGuideMode(models.Model):
}) })
else: else:
raise ValidationError("认证未通过") raise ValidationError("认证未通过")