1.修改刀具标准库同步6个物料的方法
2.刀具基础参数的刃数和刀片的刃数两个字段新增选项,新增active字段,xml中修改适配刀片型号字段
This commit is contained in:
@@ -14,8 +14,8 @@ class ToolMaterialsBasicParameters(models.Model):
|
|||||||
# 整体式刀具参数
|
# 整体式刀具参数
|
||||||
total_length = fields.Float('总长度(mm)')
|
total_length = fields.Float('总长度(mm)')
|
||||||
blade_number = fields.Selection(
|
blade_number = fields.Selection(
|
||||||
[('2', '2'), ('3', '3'), ('4', '4'), ('5', '5'), ('6', '6'), ('7', '7'), ('8', '8')],
|
[('0', '0'), ('2', '2'), ('3', '3'), ('4', '4'), ('5', '5'), ('6', '6'), ('7', '7'), ('8', '8')],
|
||||||
string='刃数(个)')
|
string='刃数(个)', default='0')
|
||||||
neck_diameter = fields.Float('颈部直径(mm)')
|
neck_diameter = fields.Float('颈部直径(mm)')
|
||||||
neck_length = fields.Float('颈部长度(mm)')
|
neck_length = fields.Float('颈部长度(mm)')
|
||||||
handle_diameter = fields.Float('柄部直径(mm)')
|
handle_diameter = fields.Float('柄部直径(mm)')
|
||||||
@@ -47,9 +47,10 @@ class ToolMaterialsBasicParameters(models.Model):
|
|||||||
('UNJ全牙型', 'UNJ全牙型'), ('DIN405圆牙型', 'DIN405圆牙型'), ('ACME梯形', 'ACME梯形'),
|
('UNJ全牙型', 'UNJ全牙型'), ('DIN405圆牙型', 'DIN405圆牙型'), ('ACME梯形', 'ACME梯形'),
|
||||||
('石油管螺纹刀片', '石油管螺纹刀片'), ('矮牙ACME梯形', '矮牙ACME梯形'),
|
('石油管螺纹刀片', '石油管螺纹刀片'), ('矮牙ACME梯形', '矮牙ACME梯形'),
|
||||||
('Trapeze30° 103', 'Trapeze30° 103')], string='刀片牙型', default='无')
|
('Trapeze30° 103', 'Trapeze30° 103')], string='刀片牙型', default='无')
|
||||||
blade_blade_number = fields.Selection([('1', '1'), ('2', '2'), ('3', '3'), ('4', '4'), ('5', '5'), ('6', '6'),
|
blade_blade_number = fields.Selection(
|
||||||
('7', '7'), ('8', '8'), ('9', '9'), ('10', '10')],
|
[('0', '0'), ('1', '1'), ('2', '2'), ('3', '3'), ('4', '4'), ('5', '5'), ('6', '6'), ('7', '7'), ('8', '8'),
|
||||||
string='刀片的刃数(个)')
|
('9', '9'), ('10', '10')],
|
||||||
|
string='刀片的刃数(个)', default='0')
|
||||||
main_included_angle = fields.Integer('主偏角(°)')
|
main_included_angle = fields.Integer('主偏角(°)')
|
||||||
top_angle = fields.Integer('顶角(°)')
|
top_angle = fields.Integer('顶角(°)')
|
||||||
blade_tip_dip_angle = fields.Integer('刀尖倾角(°)')
|
blade_tip_dip_angle = fields.Integer('刀尖倾角(°)')
|
||||||
@@ -75,7 +76,7 @@ class ToolMaterialsBasicParameters(models.Model):
|
|||||||
locating_slot_code = fields.Char('定位槽代号', size=20)
|
locating_slot_code = fields.Char('定位槽代号', size=20)
|
||||||
installing_structure = fields.Char('安装结构', size=20)
|
installing_structure = fields.Char('安装结构', size=20)
|
||||||
blade_id = fields.Many2one(
|
blade_id = fields.Many2one(
|
||||||
'sf.cutting_tool.standard.library',
|
'sf.cutting_tool.standard.library',
|
||||||
domain="[('cutting_tool_material_id.name', '=', '刀片')]",
|
domain="[('cutting_tool_material_id.name', '=', '刀片')]",
|
||||||
string='适配刀片型号' # 使用空列表作为默认值
|
string='适配刀片型号' # 使用空列表作为默认值
|
||||||
)
|
)
|
||||||
@@ -133,6 +134,7 @@ class ToolMaterialsBasicParameters(models.Model):
|
|||||||
domain="[('cutting_tool_material_id.name', '=', '刀柄')]",
|
domain="[('cutting_tool_material_id.name', '=', '刀柄')]",
|
||||||
string='适用刀柄型号'
|
string='适用刀柄型号'
|
||||||
)
|
)
|
||||||
|
active = fields.Boolean(string='有效', default=True)
|
||||||
|
|
||||||
def _json_integral_tool_basic_param(self, obj):
|
def _json_integral_tool_basic_param(self, obj):
|
||||||
integral_tool_basic_param_str = (0, '', {
|
integral_tool_basic_param_str = (0, '', {
|
||||||
|
|||||||
@@ -73,7 +73,7 @@
|
|||||||
<field name="is_cooling_hole" />
|
<field name="is_cooling_hole" />
|
||||||
<field name="locating_slot_code" />
|
<field name="locating_slot_code" />
|
||||||
<field name="installing_structure"/>
|
<field name="installing_structure"/>
|
||||||
<field name="blade_ids"/>
|
<field name="blade_id"/>
|
||||||
<field name="tool_shim" />
|
<field name="tool_shim" />
|
||||||
<field name="cotter_pin" />
|
<field name="cotter_pin" />
|
||||||
<field name="pressing_plate"/>
|
<field name="pressing_plate"/>
|
||||||
|
|||||||
@@ -2123,10 +2123,12 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
r = r.json()
|
r = r.json()
|
||||||
result = json.loads(r['result'])
|
result = json.loads(r['result'])
|
||||||
if result['status'] == 1:
|
if result['status'] == 1:
|
||||||
for item in result['cutting_tool_basic_parameters_all_list']:
|
basic_parameters_integral_tool_list = json.loads(
|
||||||
for integral_tool_item in item['basic_parameters_integral_tool']:
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_integral_tool'])
|
||||||
|
if basic_parameters_integral_tool_list:
|
||||||
|
for integral_tool_item in basic_parameters_integral_tool_list:
|
||||||
integral_tool = self.search([('code', '=', integral_tool_item['code'])])
|
integral_tool = self.search([('code', '=', integral_tool_item['code'])])
|
||||||
if integral_tool:
|
if not integral_tool:
|
||||||
self.create({
|
self.create({
|
||||||
'name': integral_tool_item['name'],
|
'name': integral_tool_item['name'],
|
||||||
'code': integral_tool_item['code'],
|
'code': integral_tool_item['code'],
|
||||||
@@ -2155,7 +2157,6 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
else:
|
else:
|
||||||
self.write({
|
self.write({
|
||||||
'name': integral_tool_item['name'],
|
'name': integral_tool_item['name'],
|
||||||
'cutting_tool_type': integral_tool_item['cutting_tool_type'],
|
|
||||||
'total_length': integral_tool_item['total_length'],
|
'total_length': integral_tool_item['total_length'],
|
||||||
'blade_diameter': integral_tool_item['blade_diameter'],
|
'blade_diameter': integral_tool_item['blade_diameter'],
|
||||||
'blade_length': integral_tool_item['blade_length'],
|
'blade_length': integral_tool_item['blade_length'],
|
||||||
@@ -2174,9 +2175,12 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'cutting_depth': integral_tool_item['cutting_depth_max'],
|
'cutting_depth': integral_tool_item['cutting_depth_max'],
|
||||||
'active': integral_tool_item['active'],
|
'active': integral_tool_item['active'],
|
||||||
})
|
})
|
||||||
for blade_item in item['basic_parameters_blade']:
|
basic_parameters_blade_list = json.loads(
|
||||||
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_blade'])
|
||||||
|
if basic_parameters_blade_list:
|
||||||
|
for blade_item in basic_parameters_blade_list:
|
||||||
blade = self.search([('code', '=', blade_item['code'])])
|
blade = self.search([('code', '=', blade_item['code'])])
|
||||||
if blade:
|
if not blade:
|
||||||
self.create({
|
self.create({
|
||||||
'name': blade_item['name'],
|
'name': blade_item['name'],
|
||||||
'code': blade_item['code'],
|
'code': blade_item['code'],
|
||||||
@@ -2186,7 +2190,6 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'factory_short_name']))]).id,
|
'factory_short_name']))]).id,
|
||||||
'length': blade_item['length'],
|
'length': blade_item['length'],
|
||||||
'thickness': blade_item['thickness'],
|
'thickness': blade_item['thickness'],
|
||||||
'width': blade_item['width'],
|
|
||||||
'cutting_blade_length': blade_item['cutting_blade_length'],
|
'cutting_blade_length': blade_item['cutting_blade_length'],
|
||||||
'relief_angle': blade_item['relief_angle'],
|
'relief_angle': blade_item['relief_angle'],
|
||||||
'blade_tip_circular_arc_radius': blade_item['radius_tip_re'],
|
'blade_tip_circular_arc_radius': blade_item['radius_tip_re'],
|
||||||
@@ -2201,10 +2204,8 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'blade_width': blade_item['blade_width'],
|
'blade_width': blade_item['blade_width'],
|
||||||
'main_included_angle': blade_item['edge_angle'],
|
'main_included_angle': blade_item['edge_angle'],
|
||||||
'top_angle': blade_item['top_angle'],
|
'top_angle': blade_item['top_angle'],
|
||||||
'blade_tip_dip_angle': blade_item['blade_tip_dip_angle'],
|
|
||||||
'side_cutting_edge_angle': blade_item['side_cutting_edge_angle'],
|
|
||||||
'thread_model': '无' if not blade_item['thread_type'] else blade_item['thread_type'],
|
'thread_model': '无' if not blade_item['thread_type'] else blade_item['thread_type'],
|
||||||
'thread_num': blade_item['thread_num'],
|
'thread_num': blade_item['threads_per_inch'],
|
||||||
'blade_tip_height_tolerance': blade_item['tip_height_tolerance'],
|
'blade_tip_height_tolerance': blade_item['tip_height_tolerance'],
|
||||||
'inscribed_circle_tolerance': blade_item['internal_circle_tolerance'],
|
'inscribed_circle_tolerance': blade_item['internal_circle_tolerance'],
|
||||||
'thickness_tolerance': blade_item['thickness_tolerance'],
|
'thickness_tolerance': blade_item['thickness_tolerance'],
|
||||||
@@ -2230,18 +2231,19 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'blade_width': blade_item['blade_width'],
|
'blade_width': blade_item['blade_width'],
|
||||||
'main_included_angle': blade_item['edge_angle'],
|
'main_included_angle': blade_item['edge_angle'],
|
||||||
'top_angle': blade_item['top_angle'],
|
'top_angle': blade_item['top_angle'],
|
||||||
'blade_tip_dip_angle': blade_item['blade_tip_dip_angle'],
|
|
||||||
'side_cutting_edge_angle': blade_item['side_cutting_edge_angle'],
|
|
||||||
'thread_model': '无' if not blade_item['thread_type'] else blade_item['thread_type'],
|
'thread_model': '无' if not blade_item['thread_type'] else blade_item['thread_type'],
|
||||||
'thread_num': blade_item['thread_num'],
|
'thread_num': blade_item['threads_per_inch'],
|
||||||
'blade_tip_height_tolerance': blade_item['tip_height_tolerance'],
|
'blade_tip_height_tolerance': blade_item['tip_height_tolerance'],
|
||||||
'inscribed_circle_tolerance': blade_item['internal_circle_tolerance'],
|
'inscribed_circle_tolerance': blade_item['internal_circle_tolerance'],
|
||||||
'thickness_tolerance': blade_item['thickness_tolerance'],
|
'thickness_tolerance': blade_item['thickness_tolerance'],
|
||||||
'active': blade_item['active'],
|
'active': blade_item['active'],
|
||||||
})
|
})
|
||||||
for chuck_item in item['basic_parameters_chuck']:
|
basic_parameters_chuck_list = json.loads(
|
||||||
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_chuck'])
|
||||||
|
if basic_parameters_chuck_list:
|
||||||
|
for chuck_item in basic_parameters_chuck_list:
|
||||||
chuck = self.search([('code', '=', chuck_item['code'])])
|
chuck = self.search([('code', '=', chuck_item['code'])])
|
||||||
if chuck:
|
if not chuck:
|
||||||
self.create({
|
self.create({
|
||||||
'name': chuck_item['name'],
|
'name': chuck_item['name'],
|
||||||
'code': chuck_item['code'],
|
'code': chuck_item['code'],
|
||||||
@@ -2260,9 +2262,6 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'top_diameter': chuck_item['top_diameter'],
|
'top_diameter': chuck_item['top_diameter'],
|
||||||
'weight': chuck_item['weight'],
|
'weight': chuck_item['weight'],
|
||||||
'max_load_capacity': chuck_item['load_capacity_max'],
|
'max_load_capacity': chuck_item['load_capacity_max'],
|
||||||
'handle_id': self.env['sf.cutting_tool.standard.library'].search(
|
|
||||||
[('code', '=', chuck_item['fit_knife_handle_code'].replace("JKM", result[
|
|
||||||
'factory_short_name']))]).id,
|
|
||||||
'cooling_jacket': chuck_item['cooling_sleeve_model'],
|
'cooling_jacket': chuck_item['cooling_sleeve_model'],
|
||||||
'active': chuck_item['active'],
|
'active': chuck_item['active'],
|
||||||
})
|
})
|
||||||
@@ -2280,15 +2279,15 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'top_diameter': chuck_item['top_diameter'],
|
'top_diameter': chuck_item['top_diameter'],
|
||||||
'weight': chuck_item['weight'],
|
'weight': chuck_item['weight'],
|
||||||
'max_load_capacity': chuck_item['load_capacity_max'],
|
'max_load_capacity': chuck_item['load_capacity_max'],
|
||||||
'handle_id': self.env['sf.cutting_tool.standard.library'].search(
|
|
||||||
[('code', '=', chuck_item['fit_knife_handle_code'].replace("JKM", result[
|
|
||||||
'factory_short_name']))]).id,
|
|
||||||
'cooling_jacket': chuck_item['cooling_sleeve_model'],
|
'cooling_jacket': chuck_item['cooling_sleeve_model'],
|
||||||
'active': chuck_item['active'],
|
'active': chuck_item['active'],
|
||||||
})
|
})
|
||||||
for cutter_arbor_item in item['basic_parameters_cutter_arbor']:
|
basic_parameters_cutter_arbor_list = json.loads(
|
||||||
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_cutter_arbor'])
|
||||||
|
if basic_parameters_cutter_arbor_list:
|
||||||
|
for cutter_arbor_item in basic_parameters_cutter_arbor_list:
|
||||||
cutter_arbor = self.search([('code', '=', cutter_arbor_item['code'])])
|
cutter_arbor = self.search([('code', '=', cutter_arbor_item['code'])])
|
||||||
if cutter_arbor:
|
if not cutter_arbor:
|
||||||
self.create({
|
self.create({
|
||||||
'name': cutter_arbor_item['name'],
|
'name': cutter_arbor_item['name'],
|
||||||
'code': cutter_arbor_item['code'],
|
'code': cutter_arbor_item['code'],
|
||||||
@@ -2308,11 +2307,11 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'cutting_depth': cutter_arbor_item['cutting_depth_max'],
|
'cutting_depth': cutter_arbor_item['cutting_depth_max'],
|
||||||
'min_machining_aperture': cutter_arbor_item['machining_aperture_min'],
|
'min_machining_aperture': cutter_arbor_item['machining_aperture_min'],
|
||||||
'install_blade_tip_num': cutter_arbor_item['number_blade_installed'],
|
'install_blade_tip_num': cutter_arbor_item['number_blade_installed'],
|
||||||
'cutting_blade_model': cutter_arbor_item['cutting_blade_model'],
|
|
||||||
'is_cooling_hole': cutter_arbor_item['is_cooling_hole'],
|
'is_cooling_hole': cutter_arbor_item['is_cooling_hole'],
|
||||||
'locating_slot_code': cutter_arbor_item['locator_slot_code'],
|
'locating_slot_code': cutter_arbor_item['locator_slot_code'],
|
||||||
'installing_structure': cutter_arbor_item['installing_structure'],
|
'installing_structure': cutter_arbor_item['mounting_structure'],
|
||||||
'blade_id': self.env['sf.cutting_tool.standard.library'].search(
|
'blade_id': False if not cutter_arbor_item['fit_blade_model_code'] else self.env[
|
||||||
|
'sf.cutting_tool.standard.library'].search(
|
||||||
[('code', '=', cutter_arbor_item['fit_blade_model_code'].replace("JKM", result[
|
[('code', '=', cutter_arbor_item['fit_blade_model_code'].replace("JKM", result[
|
||||||
'factory_short_name']))]).id,
|
'factory_short_name']))]).id,
|
||||||
'tool_shim': cutter_arbor_item['fit_knife_pad_model'],
|
'tool_shim': cutter_arbor_item['fit_knife_pad_model'],
|
||||||
@@ -2337,11 +2336,11 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'cutting_depth': cutter_arbor_item['cutting_depth_max'],
|
'cutting_depth': cutter_arbor_item['cutting_depth_max'],
|
||||||
'min_machining_aperture': cutter_arbor_item['machining_aperture_min'],
|
'min_machining_aperture': cutter_arbor_item['machining_aperture_min'],
|
||||||
'install_blade_tip_num': cutter_arbor_item['number_blade_installed'],
|
'install_blade_tip_num': cutter_arbor_item['number_blade_installed'],
|
||||||
'cutting_blade_model': cutter_arbor_item['cutting_blade_model'],
|
|
||||||
'is_cooling_hole': cutter_arbor_item['is_cooling_hole'],
|
'is_cooling_hole': cutter_arbor_item['is_cooling_hole'],
|
||||||
'locating_slot_code': cutter_arbor_item['locator_slot_code'],
|
'locating_slot_code': cutter_arbor_item['locator_slot_code'],
|
||||||
'installing_structure': cutter_arbor_item['installing_structure'],
|
'installing_structure': cutter_arbor_item['mounting_structure'],
|
||||||
'blade_id': self.env['sf.cutting_tool.standard.library'].search(
|
'blade_id': False if not cutter_arbor_item['fit_blade_model_code'] else self.env[
|
||||||
|
'sf.cutting_tool.standard.library'].search(
|
||||||
[('code', '=', cutter_arbor_item['fit_blade_model_code'].replace("JKM", result[
|
[('code', '=', cutter_arbor_item['fit_blade_model_code'].replace("JKM", result[
|
||||||
'factory_short_name']))]).id,
|
'factory_short_name']))]).id,
|
||||||
'tool_shim': cutter_arbor_item['fit_knife_pad_model'],
|
'tool_shim': cutter_arbor_item['fit_knife_pad_model'],
|
||||||
@@ -2351,9 +2350,12 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'spanner': cutter_arbor_item['fit_wrench_model'],
|
'spanner': cutter_arbor_item['fit_wrench_model'],
|
||||||
'active': cutter_arbor_item['active'],
|
'active': cutter_arbor_item['active'],
|
||||||
})
|
})
|
||||||
for cutter_head_item in item['basic_parameters_cutter_head']:
|
basic_parameters_cutter_head_list = json.loads(
|
||||||
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_cutter_head'])
|
||||||
|
if basic_parameters_cutter_head_list:
|
||||||
|
for cutter_head_item in basic_parameters_cutter_head_list:
|
||||||
cutter_head = self.search([('code', '=', cutter_head_item['code'])])
|
cutter_head = self.search([('code', '=', cutter_head_item['code'])])
|
||||||
if cutter_head:
|
if not cutter_head:
|
||||||
self.create({
|
self.create({
|
||||||
'name': cutter_head_item['name'],
|
'name': cutter_head_item['name'],
|
||||||
'code': cutter_head_item['code'],
|
'code': cutter_head_item['code'],
|
||||||
@@ -2369,8 +2371,9 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'blade_length': cutter_head_item['blade_length'],
|
'blade_length': cutter_head_item['blade_length'],
|
||||||
'cutting_depth': cutter_head_item['cutting_depth_max'],
|
'cutting_depth': cutter_head_item['cutting_depth_max'],
|
||||||
'main_included_angle': cutter_head_item['edge_angle'],
|
'main_included_angle': cutter_head_item['edge_angle'],
|
||||||
'installing_structure': cutter_head_item['installing_structure'],
|
'installing_structure': cutter_head_item['mounting_structure'],
|
||||||
'blade_id': self.env['sf.cutting_tool.standard.library'].search(
|
'blade_id': False if not cutter_head_item['fit_blade_model_code'] else self.env[
|
||||||
|
'sf.cutting_tool.standard.library'].search(
|
||||||
[('code', '=', cutter_head_item['fit_blade_model_code'].replace("JKM", result[
|
[('code', '=', cutter_head_item['fit_blade_model_code'].replace("JKM", result[
|
||||||
'factory_short_name']))]).id,
|
'factory_short_name']))]).id,
|
||||||
'screw': cutter_head_item['fit_screw_model'],
|
'screw': cutter_head_item['fit_screw_model'],
|
||||||
@@ -2381,7 +2384,7 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
self.write({
|
self.write({
|
||||||
'name': cutter_arbor_item['name'],
|
'name': cutter_head_item['name'],
|
||||||
'install_blade_tip_num': cutter_head_item['number_blade_installed'],
|
'install_blade_tip_num': cutter_head_item['number_blade_installed'],
|
||||||
'blade_diameter': cutter_head_item['blade_diameter'],
|
'blade_diameter': cutter_head_item['blade_diameter'],
|
||||||
'cutter_head_diameter': cutter_head_item['cutter_diameter'],
|
'cutter_head_diameter': cutter_head_item['cutter_diameter'],
|
||||||
@@ -2390,8 +2393,9 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'blade_length': cutter_head_item['blade_length'],
|
'blade_length': cutter_head_item['blade_length'],
|
||||||
'cutting_depth': cutter_head_item['cutting_depth_max'],
|
'cutting_depth': cutter_head_item['cutting_depth_max'],
|
||||||
'main_included_angle': cutter_head_item['edge_angle'],
|
'main_included_angle': cutter_head_item['edge_angle'],
|
||||||
'installing_structure': cutter_head_item['installing_structure'],
|
'installing_structure': cutter_head_item['mounting_structure'],
|
||||||
'blade_id': self.env['sf.cutting_tool.standard.library'].search(
|
'blade_id': False if not cutter_head_item['fit_blade_model_code'] else self.env[
|
||||||
|
'sf.cutting_tool.standard.library'].search(
|
||||||
[('code', '=', cutter_head_item['fit_blade_model_code'].replace("JKM", result[
|
[('code', '=', cutter_head_item['fit_blade_model_code'].replace("JKM", result[
|
||||||
'factory_short_name']))]).id,
|
'factory_short_name']))]).id,
|
||||||
'screw': cutter_head_item['fit_screw_model'],
|
'screw': cutter_head_item['fit_screw_model'],
|
||||||
@@ -2400,10 +2404,12 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'locating_slot_code': cutter_head_item['locator_slot_code'],
|
'locating_slot_code': cutter_head_item['locator_slot_code'],
|
||||||
'active': cutter_head_item['active'],
|
'active': cutter_head_item['active'],
|
||||||
})
|
})
|
||||||
|
basic_parameters_knife_handle_list = json.loads(
|
||||||
for knife_handle_item in item['basic_parameters_knife_handle']:
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_knife_handle'])
|
||||||
|
if basic_parameters_knife_handle_list:
|
||||||
|
for knife_handle_item in basic_parameters_knife_handle_list:
|
||||||
knife_handle = self.search([('code', '=', knife_handle_item['code'])])
|
knife_handle = self.search([('code', '=', knife_handle_item['code'])])
|
||||||
if knife_handle:
|
if not knife_handle:
|
||||||
self.create({
|
self.create({
|
||||||
'name': knife_handle_item['name'],
|
'name': knife_handle_item['name'],
|
||||||
'code': knife_handle_item['code'],
|
'code': knife_handle_item['code'],
|
||||||
@@ -2428,9 +2434,6 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'screw': knife_handle_item['fit_wrench_model'],
|
'screw': knife_handle_item['fit_wrench_model'],
|
||||||
'nut': knife_handle_item['fit_nut_model'],
|
'nut': knife_handle_item['fit_nut_model'],
|
||||||
'dynamic_balance_class': knife_handle_item['dynamic_balance_class'],
|
'dynamic_balance_class': knife_handle_item['dynamic_balance_class'],
|
||||||
'chuck_id': self.env['sf.cutting_tool.standard.library'].search(
|
|
||||||
[('code', '=', knife_handle_item['fit_chuck_model_code'].replace("JKM", result[
|
|
||||||
'factory_short_name']))]).id,
|
|
||||||
'active': knife_handle_item['active'],
|
'active': knife_handle_item['active'],
|
||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
@@ -2453,9 +2456,6 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'screw': knife_handle_item['fit_wrench_model'],
|
'screw': knife_handle_item['fit_wrench_model'],
|
||||||
'nut': knife_handle_item['fit_nut_model'],
|
'nut': knife_handle_item['fit_nut_model'],
|
||||||
'dynamic_balance_class': knife_handle_item['dynamic_balance_class'],
|
'dynamic_balance_class': knife_handle_item['dynamic_balance_class'],
|
||||||
'chuck_id': self.env['sf.cutting_tool.standard.library'].search(
|
|
||||||
[('code', '=', knife_handle_item['fit_chuck_model_code'].replace("JKM", result[
|
|
||||||
'factory_short_name']))]).id,
|
|
||||||
'active': knife_handle_item['active'],
|
'active': knife_handle_item['active'],
|
||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
@@ -2469,10 +2469,12 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
r = r.json()
|
r = r.json()
|
||||||
result = json.loads(r['result'])
|
result = json.loads(r['result'])
|
||||||
if result['status'] == 1:
|
if result['status'] == 1:
|
||||||
for item in result['cutting_tool_basic_parameters_yesterday_list']:
|
basic_parameters_integral_tool_list = json.loads(
|
||||||
for integral_tool_item in item['basic_parameters_integral_tool']:
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_integral_tool'])
|
||||||
|
if basic_parameters_integral_tool_list:
|
||||||
|
for integral_tool_item in basic_parameters_integral_tool_list:
|
||||||
integral_tool = self.search([('code', '=', integral_tool_item['code'])])
|
integral_tool = self.search([('code', '=', integral_tool_item['code'])])
|
||||||
if integral_tool:
|
if not integral_tool:
|
||||||
self.create({
|
self.create({
|
||||||
'name': integral_tool_item['name'],
|
'name': integral_tool_item['name'],
|
||||||
'code': integral_tool_item['code'],
|
'code': integral_tool_item['code'],
|
||||||
@@ -2499,30 +2501,35 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'active': integral_tool_item['active'],
|
'active': integral_tool_item['active'],
|
||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
self.write({
|
if integral_tool_item['active'] is False:
|
||||||
'name': integral_tool_item['name'],
|
integral_tool.write({'active': False})
|
||||||
'cutting_tool_type': integral_tool_item['cutting_tool_type'],
|
else:
|
||||||
'total_length': integral_tool_item['total_length'],
|
self.write({
|
||||||
'blade_diameter': integral_tool_item['blade_diameter'],
|
'name': integral_tool_item['name'],
|
||||||
'blade_length': integral_tool_item['blade_length'],
|
'total_length': integral_tool_item['total_length'],
|
||||||
'blade_number': integral_tool_item['blade_number'],
|
'blade_diameter': integral_tool_item['blade_diameter'],
|
||||||
'neck_length': integral_tool_item['neck_length'],
|
'blade_length': integral_tool_item['blade_length'],
|
||||||
'neck_diameter': integral_tool_item['neck_diameter'],
|
'blade_number': integral_tool_item['blade_number'],
|
||||||
'handle_diameter': integral_tool_item['shank_diameter'],
|
'neck_length': integral_tool_item['neck_length'],
|
||||||
'handle_length': integral_tool_item['shank_length'],
|
'neck_diameter': integral_tool_item['neck_diameter'],
|
||||||
'blade_tip_diameter': integral_tool_item['tip_diameter'],
|
'handle_diameter': integral_tool_item['shank_diameter'],
|
||||||
'blade_tip_working_size': integral_tool_item['tip_handling_size'],
|
'handle_length': integral_tool_item['shank_length'],
|
||||||
'blade_tip_taper': integral_tool_item['knife_tip_taper'],
|
'blade_tip_diameter': integral_tool_item['tip_diameter'],
|
||||||
'blade_helix_angle': integral_tool_item['blade_helix_angle'],
|
'blade_tip_working_size': integral_tool_item['tip_handling_size'],
|
||||||
'blade_width': integral_tool_item['blade_width'],
|
'blade_tip_taper': integral_tool_item['knife_tip_taper'],
|
||||||
'blade_depth': integral_tool_item['blade_depth'],
|
'blade_helix_angle': integral_tool_item['blade_helix_angle'],
|
||||||
'pitch': integral_tool_item['pitch'],
|
'blade_width': integral_tool_item['blade_width'],
|
||||||
'cutting_depth': integral_tool_item['cutting_depth_max'],
|
'blade_depth': integral_tool_item['blade_depth'],
|
||||||
'active': integral_tool_item['active'],
|
'pitch': integral_tool_item['pitch'],
|
||||||
})
|
'cutting_depth': integral_tool_item['cutting_depth_max'],
|
||||||
for blade_item in item['basic_parameters_blade']:
|
'active': integral_tool_item['active'],
|
||||||
|
})
|
||||||
|
basic_parameters_blade_list = json.loads(
|
||||||
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_blade'])
|
||||||
|
if basic_parameters_blade_list:
|
||||||
|
for blade_item in basic_parameters_blade_list:
|
||||||
blade = self.search([('code', '=', blade_item['code'])])
|
blade = self.search([('code', '=', blade_item['code'])])
|
||||||
if blade:
|
if not blade:
|
||||||
self.create({
|
self.create({
|
||||||
'name': blade_item['name'],
|
'name': blade_item['name'],
|
||||||
'code': blade_item['code'],
|
'code': blade_item['code'],
|
||||||
@@ -2532,7 +2539,6 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'factory_short_name']))]).id,
|
'factory_short_name']))]).id,
|
||||||
'length': blade_item['length'],
|
'length': blade_item['length'],
|
||||||
'thickness': blade_item['thickness'],
|
'thickness': blade_item['thickness'],
|
||||||
'width': blade_item['width'],
|
|
||||||
'cutting_blade_length': blade_item['cutting_blade_length'],
|
'cutting_blade_length': blade_item['cutting_blade_length'],
|
||||||
'relief_angle': blade_item['relief_angle'],
|
'relief_angle': blade_item['relief_angle'],
|
||||||
'blade_tip_circular_arc_radius': blade_item['radius_tip_re'],
|
'blade_tip_circular_arc_radius': blade_item['radius_tip_re'],
|
||||||
@@ -2547,47 +2553,48 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'blade_width': blade_item['blade_width'],
|
'blade_width': blade_item['blade_width'],
|
||||||
'main_included_angle': blade_item['edge_angle'],
|
'main_included_angle': blade_item['edge_angle'],
|
||||||
'top_angle': blade_item['top_angle'],
|
'top_angle': blade_item['top_angle'],
|
||||||
'blade_tip_dip_angle': blade_item['blade_tip_dip_angle'],
|
|
||||||
'side_cutting_edge_angle': blade_item['side_cutting_edge_angle'],
|
|
||||||
'thread_model': '无' if not blade_item['thread_type'] else blade_item['thread_type'],
|
'thread_model': '无' if not blade_item['thread_type'] else blade_item['thread_type'],
|
||||||
'thread_num': blade_item['thread_num'],
|
'thread_num': blade_item['threads_per_inch'],
|
||||||
'blade_tip_height_tolerance': blade_item['tip_height_tolerance'],
|
'blade_tip_height_tolerance': blade_item['tip_height_tolerance'],
|
||||||
'inscribed_circle_tolerance': blade_item['internal_circle_tolerance'],
|
'inscribed_circle_tolerance': blade_item['internal_circle_tolerance'],
|
||||||
'thickness_tolerance': blade_item['thickness_tolerance'],
|
'thickness_tolerance': blade_item['thickness_tolerance'],
|
||||||
'active': blade_item['active'],
|
'active': blade_item['active'],
|
||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
self.write({
|
if blade_item['active'] is False:
|
||||||
'name': integral_tool_item['name'],
|
blade.write({'active': False})
|
||||||
'length': blade_item['length'],
|
else:
|
||||||
'thickness': blade_item['thickness'],
|
self.write({
|
||||||
'width': blade_item['width'],
|
'name': blade_item['name'],
|
||||||
'cutting_blade_length': blade_item['cutting_blade_length'],
|
'length': blade_item['length'],
|
||||||
'relief_angle': blade_item['relief_angle'],
|
'thickness': blade_item['thickness'],
|
||||||
'blade_tip_circular_arc_radius': blade_item['radius_tip_re'],
|
'cutting_blade_length': blade_item['cutting_blade_length'],
|
||||||
'inscribed_circle_diameter': blade_item['diameter_inner_circle'],
|
'relief_angle': blade_item['relief_angle'],
|
||||||
'install_aperture_diameter': blade_item['diameter_mounting_hole'],
|
'blade_tip_circular_arc_radius': blade_item['radius_tip_re'],
|
||||||
'pitch': blade_item['pitch'],
|
'inscribed_circle_diameter': blade_item['diameter_inner_circle'],
|
||||||
'chip_breaker_groove': blade_item['is_chip_breaker'],
|
'install_aperture_diameter': blade_item['diameter_mounting_hole'],
|
||||||
'blade_teeth_model': '无' if not blade_item['blade_profile'] else blade_item[
|
'pitch': blade_item['pitch'],
|
||||||
'blade_profile'],
|
'chip_breaker_groove': blade_item['is_chip_breaker'],
|
||||||
'blade_blade_number': blade_item['blade_number'],
|
'blade_teeth_model': '无' if not blade_item['blade_profile'] else blade_item[
|
||||||
'cutting_depth': blade_item['cutting_depth_max'],
|
'blade_profile'],
|
||||||
'blade_width': blade_item['blade_width'],
|
'blade_blade_number': blade_item['blade_number'],
|
||||||
'main_included_angle': blade_item['edge_angle'],
|
'cutting_depth': blade_item['cutting_depth_max'],
|
||||||
'top_angle': blade_item['top_angle'],
|
'blade_width': blade_item['blade_width'],
|
||||||
'blade_tip_dip_angle': blade_item['blade_tip_dip_angle'],
|
'main_included_angle': blade_item['edge_angle'],
|
||||||
'side_cutting_edge_angle': blade_item['side_cutting_edge_angle'],
|
'top_angle': blade_item['top_angle'],
|
||||||
'thread_model': '无' if not blade_item['thread_type'] else blade_item['thread_type'],
|
'thread_model': '无' if not blade_item['thread_type'] else blade_item['thread_type'],
|
||||||
'thread_num': blade_item['thread_num'],
|
'thread_num': blade_item['threads_per_inch'],
|
||||||
'blade_tip_height_tolerance': blade_item['tip_height_tolerance'],
|
'blade_tip_height_tolerance': blade_item['tip_height_tolerance'],
|
||||||
'inscribed_circle_tolerance': blade_item['internal_circle_tolerance'],
|
'inscribed_circle_tolerance': blade_item['internal_circle_tolerance'],
|
||||||
'thickness_tolerance': blade_item['thickness_tolerance'],
|
'thickness_tolerance': blade_item['thickness_tolerance'],
|
||||||
'active': blade_item['active'],
|
'active': blade_item['active'],
|
||||||
})
|
})
|
||||||
for chuck_item in item['basic_parameters_chuck']:
|
basic_parameters_chuck_list = json.loads(
|
||||||
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_chuck'])
|
||||||
|
if basic_parameters_chuck_list:
|
||||||
|
for chuck_item in basic_parameters_chuck_list:
|
||||||
chuck = self.search([('code', '=', chuck_item['code'])])
|
chuck = self.search([('code', '=', chuck_item['code'])])
|
||||||
if chuck:
|
if not chuck:
|
||||||
self.create({
|
self.create({
|
||||||
'name': chuck_item['name'],
|
'name': chuck_item['name'],
|
||||||
'code': chuck_item['code'],
|
'code': chuck_item['code'],
|
||||||
@@ -2606,35 +2613,35 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'top_diameter': chuck_item['top_diameter'],
|
'top_diameter': chuck_item['top_diameter'],
|
||||||
'weight': chuck_item['weight'],
|
'weight': chuck_item['weight'],
|
||||||
'max_load_capacity': chuck_item['load_capacity_max'],
|
'max_load_capacity': chuck_item['load_capacity_max'],
|
||||||
'handle_id': self.env['sf.cutting_tool.standard.library'].search(
|
|
||||||
[('code', '=', chuck_item['fit_knife_handle_code'].replace("JKM", result[
|
|
||||||
'factory_short_name']))]).id,
|
|
||||||
'cooling_jacket': chuck_item['cooling_sleeve_model'],
|
'cooling_jacket': chuck_item['cooling_sleeve_model'],
|
||||||
'active': chuck_item['active'],
|
'active': chuck_item['active'],
|
||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
self.write({
|
if chuck_item['active'] is False:
|
||||||
'name': integral_tool_item['name'],
|
chuck.write({'active': False})
|
||||||
'er_size_model': chuck_item['size_model'],
|
else:
|
||||||
'min_clamping_diameter': chuck_item['clamping_diameter_min'],
|
self.write({
|
||||||
'max_clamping_diameter': chuck_item['clamping_diameter_max'],
|
'name': chuck_item['name'],
|
||||||
'outer_diameter': chuck_item['outer_diameter'],
|
'er_size_model': chuck_item['size_model'],
|
||||||
'inner_diameter': chuck_item['inner_diameter'],
|
'min_clamping_diameter': chuck_item['clamping_diameter_min'],
|
||||||
'run_out_accuracy': chuck_item['run_out_accuracy'],
|
'max_clamping_diameter': chuck_item['clamping_diameter_max'],
|
||||||
'total_length': chuck_item['total_length'],
|
'outer_diameter': chuck_item['outer_diameter'],
|
||||||
'taper': chuck_item['taper'],
|
'inner_diameter': chuck_item['inner_diameter'],
|
||||||
'top_diameter': chuck_item['top_diameter'],
|
'run_out_accuracy': chuck_item['run_out_accuracy'],
|
||||||
'weight': chuck_item['weight'],
|
'total_length': chuck_item['total_length'],
|
||||||
'max_load_capacity': chuck_item['load_capacity_max'],
|
'taper': chuck_item['taper'],
|
||||||
'handle_id': self.env['sf.cutting_tool.standard.library'].search(
|
'top_diameter': chuck_item['top_diameter'],
|
||||||
[('code', '=', chuck_item['fit_knife_handle_code'].replace("JKM", result[
|
'weight': chuck_item['weight'],
|
||||||
'factory_short_name']))]).id,
|
'max_load_capacity': chuck_item['load_capacity_max'],
|
||||||
'cooling_jacket': chuck_item['cooling_sleeve_model'],
|
'cooling_jacket': chuck_item['cooling_sleeve_model'],
|
||||||
'active': chuck_item['active'],
|
'active': chuck_item['active'],
|
||||||
})
|
})
|
||||||
for cutter_arbor_item in item['basic_parameters_cutter_arbor']:
|
basic_parameters_cutter_arbor_list = json.loads(
|
||||||
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_cutter_arbor'])
|
||||||
|
if basic_parameters_cutter_arbor_list:
|
||||||
|
for cutter_arbor_item in basic_parameters_cutter_arbor_list:
|
||||||
cutter_arbor = self.search([('code', '=', cutter_arbor_item['code'])])
|
cutter_arbor = self.search([('code', '=', cutter_arbor_item['code'])])
|
||||||
if cutter_arbor:
|
if not cutter_arbor:
|
||||||
self.create({
|
self.create({
|
||||||
'name': cutter_arbor_item['name'],
|
'name': cutter_arbor_item['name'],
|
||||||
'code': cutter_arbor_item['code'],
|
'code': cutter_arbor_item['code'],
|
||||||
@@ -2654,11 +2661,11 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'cutting_depth': cutter_arbor_item['cutting_depth_max'],
|
'cutting_depth': cutter_arbor_item['cutting_depth_max'],
|
||||||
'min_machining_aperture': cutter_arbor_item['machining_aperture_min'],
|
'min_machining_aperture': cutter_arbor_item['machining_aperture_min'],
|
||||||
'install_blade_tip_num': cutter_arbor_item['number_blade_installed'],
|
'install_blade_tip_num': cutter_arbor_item['number_blade_installed'],
|
||||||
'cutting_blade_model': cutter_arbor_item['cutting_blade_model'],
|
|
||||||
'is_cooling_hole': cutter_arbor_item['is_cooling_hole'],
|
'is_cooling_hole': cutter_arbor_item['is_cooling_hole'],
|
||||||
'locating_slot_code': cutter_arbor_item['locator_slot_code'],
|
'locating_slot_code': cutter_arbor_item['locator_slot_code'],
|
||||||
'installing_structure': cutter_arbor_item['installing_structure'],
|
'installing_structure': cutter_arbor_item['mounting_structure'],
|
||||||
'blade_id': self.env['sf.cutting_tool.standard.library'].search(
|
'blade_id': False if not cutter_arbor_item['fit_blade_model_code'] else self.env[
|
||||||
|
'sf.cutting_tool.standard.library'].search(
|
||||||
[('code', '=', cutter_arbor_item['fit_blade_model_code'].replace("JKM", result[
|
[('code', '=', cutter_arbor_item['fit_blade_model_code'].replace("JKM", result[
|
||||||
'factory_short_name']))]).id,
|
'factory_short_name']))]).id,
|
||||||
'tool_shim': cutter_arbor_item['fit_knife_pad_model'],
|
'tool_shim': cutter_arbor_item['fit_knife_pad_model'],
|
||||||
@@ -2669,37 +2676,43 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'active': cutter_arbor_item['active'],
|
'active': cutter_arbor_item['active'],
|
||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
self.write({
|
if cutter_arbor_item['active'] is False:
|
||||||
'name': cutter_arbor_item['name'],
|
cutter_arbor.write({'active': False})
|
||||||
'height': cutter_arbor_item['height'],
|
else:
|
||||||
'width': cutter_arbor_item['width'],
|
self.write({
|
||||||
'total_length': cutter_arbor_item['total_length'],
|
'name': cutter_arbor_item['name'],
|
||||||
'knife_head_height': cutter_arbor_item['head_length'],
|
'height': cutter_arbor_item['height'],
|
||||||
'knife_head_width': cutter_arbor_item['head_width'],
|
'width': cutter_arbor_item['width'],
|
||||||
'knife_head_length': cutter_arbor_item['head_length'],
|
'total_length': cutter_arbor_item['total_length'],
|
||||||
'cutter_arbor_diameter': cutter_arbor_item['arbor_diameter'],
|
'knife_head_height': cutter_arbor_item['head_length'],
|
||||||
'main_included_angle': cutter_arbor_item['edge_angle'],
|
'knife_head_width': cutter_arbor_item['head_width'],
|
||||||
'relief_angle': cutter_arbor_item['relief_angle'],
|
'knife_head_length': cutter_arbor_item['head_length'],
|
||||||
'cutting_depth': cutter_arbor_item['cutting_depth_max'],
|
'cutter_arbor_diameter': cutter_arbor_item['arbor_diameter'],
|
||||||
'min_machining_aperture': cutter_arbor_item['machining_aperture_min'],
|
'main_included_angle': cutter_arbor_item['edge_angle'],
|
||||||
'install_blade_tip_num': cutter_arbor_item['number_blade_installed'],
|
'relief_angle': cutter_arbor_item['relief_angle'],
|
||||||
'cutting_blade_model': cutter_arbor_item['cutting_blade_model'],
|
'cutting_depth': cutter_arbor_item['cutting_depth_max'],
|
||||||
'is_cooling_hole': cutter_arbor_item['is_cooling_hole'],
|
'min_machining_aperture': cutter_arbor_item['machining_aperture_min'],
|
||||||
'locating_slot_code': cutter_arbor_item['locator_slot_code'],
|
'install_blade_tip_num': cutter_arbor_item['number_blade_installed'],
|
||||||
'installing_structure': cutter_arbor_item['installing_structure'],
|
'is_cooling_hole': cutter_arbor_item['is_cooling_hole'],
|
||||||
'blade_id': self.env['sf.cutting_tool.standard.library'].search(
|
'locating_slot_code': cutter_arbor_item['locator_slot_code'],
|
||||||
[('code', '=', cutter_arbor_item['fit_blade_model_code'].replace("JKM", result[
|
'installing_structure': cutter_arbor_item['mounting_structure'],
|
||||||
'factory_short_name']))]).id,
|
'blade_id': False if not cutter_arbor_item['fit_blade_model_code'] else self.env[
|
||||||
'tool_shim': cutter_arbor_item['fit_knife_pad_model'],
|
'sf.cutting_tool.standard.library'].search(
|
||||||
'cotter_pin': cutter_arbor_item['fit_pin_model'],
|
[('code', '=', cutter_arbor_item['fit_blade_model_code'].replace("JKM", result[
|
||||||
'pressing_plate': cutter_arbor_item['fit_plate_model'],
|
'factory_short_name']))]).id,
|
||||||
'screw': cutter_arbor_item['fit_screw_model'],
|
'tool_shim': cutter_arbor_item['fit_knife_pad_model'],
|
||||||
'spanner': cutter_arbor_item['fit_wrench_model'],
|
'cotter_pin': cutter_arbor_item['fit_pin_model'],
|
||||||
'active': cutter_arbor_item['active'],
|
'pressing_plate': cutter_arbor_item['fit_plate_model'],
|
||||||
})
|
'screw': cutter_arbor_item['fit_screw_model'],
|
||||||
for cutter_head_item in item['basic_parameters_cutter_head']:
|
'spanner': cutter_arbor_item['fit_wrench_model'],
|
||||||
|
'active': cutter_arbor_item['active'],
|
||||||
|
})
|
||||||
|
basic_parameters_cutter_head_list = json.loads(
|
||||||
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_cutter_head'])
|
||||||
|
if basic_parameters_cutter_head_list:
|
||||||
|
for cutter_head_item in basic_parameters_cutter_head_list:
|
||||||
cutter_head = self.search([('code', '=', cutter_head_item['code'])])
|
cutter_head = self.search([('code', '=', cutter_head_item['code'])])
|
||||||
if cutter_head:
|
if not cutter_head:
|
||||||
self.create({
|
self.create({
|
||||||
'name': cutter_head_item['name'],
|
'name': cutter_head_item['name'],
|
||||||
'code': cutter_head_item['code'],
|
'code': cutter_head_item['code'],
|
||||||
@@ -2715,8 +2728,9 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'blade_length': cutter_head_item['blade_length'],
|
'blade_length': cutter_head_item['blade_length'],
|
||||||
'cutting_depth': cutter_head_item['cutting_depth_max'],
|
'cutting_depth': cutter_head_item['cutting_depth_max'],
|
||||||
'main_included_angle': cutter_head_item['edge_angle'],
|
'main_included_angle': cutter_head_item['edge_angle'],
|
||||||
'installing_structure': cutter_head_item['installing_structure'],
|
'installing_structure': cutter_head_item['mounting_structure'],
|
||||||
'blade_id': self.env['sf.cutting_tool.standard.library'].search(
|
'blade_id': False if not cutter_head_item['fit_blade_model_code'] else self.env[
|
||||||
|
'sf.cutting_tool.standard.library'].search(
|
||||||
[('code', '=', cutter_head_item['fit_blade_model_code'].replace("JKM", result[
|
[('code', '=', cutter_head_item['fit_blade_model_code'].replace("JKM", result[
|
||||||
'factory_short_name']))]).id,
|
'factory_short_name']))]).id,
|
||||||
'screw': cutter_head_item['fit_screw_model'],
|
'screw': cutter_head_item['fit_screw_model'],
|
||||||
@@ -2726,30 +2740,36 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'active': cutter_head_item['active'],
|
'active': cutter_head_item['active'],
|
||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
self.write({
|
if cutter_head_item['active'] is False:
|
||||||
'name': cutter_arbor_item['name'],
|
cutter_head.write({'active': False})
|
||||||
'install_blade_tip_num': cutter_head_item['number_blade_installed'],
|
else:
|
||||||
'blade_diameter': cutter_head_item['blade_diameter'],
|
self.write({
|
||||||
'cutter_head_diameter': cutter_head_item['cutter_diameter'],
|
'name': cutter_head_item['name'],
|
||||||
'interface_diameter': cutter_head_item['interface_diameter'],
|
'install_blade_tip_num': cutter_head_item['number_blade_installed'],
|
||||||
'total_length': cutter_head_item['total_length'],
|
'blade_diameter': cutter_head_item['blade_diameter'],
|
||||||
'blade_length': cutter_head_item['blade_length'],
|
'cutter_head_diameter': cutter_head_item['cutter_diameter'],
|
||||||
'cutting_depth': cutter_head_item['cutting_depth_max'],
|
'interface_diameter': cutter_head_item['interface_diameter'],
|
||||||
'main_included_angle': cutter_head_item['edge_angle'],
|
'total_length': cutter_head_item['total_length'],
|
||||||
'installing_structure': cutter_head_item['installing_structure'],
|
'blade_length': cutter_head_item['blade_length'],
|
||||||
'blade_id': self.env['sf.cutting_tool.standard.library'].search(
|
'cutting_depth': cutter_head_item['cutting_depth_max'],
|
||||||
[('code', '=', cutter_head_item['fit_blade_model_code'].replace("JKM", result[
|
'main_included_angle': cutter_head_item['edge_angle'],
|
||||||
'factory_short_name']))]).id,
|
'installing_structure': cutter_head_item['mounting_structure'],
|
||||||
'screw': cutter_head_item['fit_screw_model'],
|
'blade_id': False if not cutter_head_item['fit_blade_model_code'] else self.env[
|
||||||
'spanner': cutter_head_item['fit_wrench_model'],
|
'sf.cutting_tool.standard.library'].search(
|
||||||
'is_cooling_hole': cutter_head_item['is_cooling_hole'],
|
[('code', '=', cutter_head_item['fit_blade_model_code'].replace("JKM", result[
|
||||||
'locating_slot_code': cutter_head_item['locator_slot_code'],
|
'factory_short_name']))]).id,
|
||||||
'active': cutter_head_item['active'],
|
'screw': cutter_head_item['fit_screw_model'],
|
||||||
})
|
'spanner': cutter_head_item['fit_wrench_model'],
|
||||||
|
'is_cooling_hole': cutter_head_item['is_cooling_hole'],
|
||||||
for knife_handle_item in item['basic_parameters_knife_handle']:
|
'locating_slot_code': cutter_head_item['locator_slot_code'],
|
||||||
|
'active': cutter_head_item['active'],
|
||||||
|
})
|
||||||
|
basic_parameters_knife_handle_list = json.loads(
|
||||||
|
result['cutting_tool_basic_parameters_all_list']['basic_parameters_knife_handle'])
|
||||||
|
if basic_parameters_knife_handle_list:
|
||||||
|
for knife_handle_item in basic_parameters_knife_handle_list:
|
||||||
knife_handle = self.search([('code', '=', knife_handle_item['code'])])
|
knife_handle = self.search([('code', '=', knife_handle_item['code'])])
|
||||||
if knife_handle:
|
if not knife_handle:
|
||||||
self.create({
|
self.create({
|
||||||
'name': knife_handle_item['name'],
|
'name': knife_handle_item['name'],
|
||||||
'code': knife_handle_item['code'],
|
'code': knife_handle_item['code'],
|
||||||
@@ -2774,35 +2794,31 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
'screw': knife_handle_item['fit_wrench_model'],
|
'screw': knife_handle_item['fit_wrench_model'],
|
||||||
'nut': knife_handle_item['fit_nut_model'],
|
'nut': knife_handle_item['fit_nut_model'],
|
||||||
'dynamic_balance_class': knife_handle_item['dynamic_balance_class'],
|
'dynamic_balance_class': knife_handle_item['dynamic_balance_class'],
|
||||||
'chuck_id': self.env['sf.cutting_tool.standard.library'].search(
|
|
||||||
[('code', '=', knife_handle_item['fit_chuck_model_code'].replace("JKM", result[
|
|
||||||
'factory_short_name']))]).id,
|
|
||||||
'active': knife_handle_item['active'],
|
'active': knife_handle_item['active'],
|
||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
self.write({
|
if knife_handle_item['active'] is False:
|
||||||
'name': knife_handle_item['name'],
|
knife_handle.write({'active': False})
|
||||||
'total_length': knife_handle_item['total_length'],
|
else:
|
||||||
'flange_shank_length': knife_handle_item['flange_length'],
|
self.write({
|
||||||
'flange_diameter': knife_handle_item['flange_diameter'],
|
'name': knife_handle_item['name'],
|
||||||
'shank_length': knife_handle_item['shank_length'],
|
'total_length': knife_handle_item['total_length'],
|
||||||
'shank_diameter': knife_handle_item['shank_diameter'],
|
'flange_shank_length': knife_handle_item['flange_length'],
|
||||||
'min_clamping_diameter': knife_handle_item['clamping_diameter_min'],
|
'flange_diameter': knife_handle_item['flange_diameter'],
|
||||||
'max_clamping_diameter': knife_handle_item['clamping_diameter_max'],
|
'shank_length': knife_handle_item['shank_length'],
|
||||||
'clamping_mode': knife_handle_item['clamping_way'],
|
'shank_diameter': knife_handle_item['shank_diameter'],
|
||||||
'tool_changing_time': knife_handle_item['tool_changing_time'],
|
'min_clamping_diameter': knife_handle_item['clamping_diameter_min'],
|
||||||
'max_rotate_speed': knife_handle_item['rotate_speed_max'],
|
'max_clamping_diameter': knife_handle_item['clamping_diameter_max'],
|
||||||
'diameter_slip_accuracy': knife_handle_item['diameter_slip_accuracy'],
|
'clamping_mode': knife_handle_item['clamping_way'],
|
||||||
'cooling_model': knife_handle_item['cooling_model'],
|
'tool_changing_time': knife_handle_item['tool_changing_time'],
|
||||||
'is_quick_cutting': knife_handle_item['is_quick_cutting'],
|
'max_rotate_speed': knife_handle_item['rotate_speed_max'],
|
||||||
'is_safe_lock': knife_handle_item['is_safe_lock'],
|
'diameter_slip_accuracy': knife_handle_item['diameter_slip_accuracy'],
|
||||||
'screw': knife_handle_item['fit_wrench_model'],
|
'cooling_model': knife_handle_item['cooling_model'],
|
||||||
'nut': knife_handle_item['fit_nut_model'],
|
'is_quick_cutting': knife_handle_item['is_quick_cutting'],
|
||||||
'dynamic_balance_class': knife_handle_item['dynamic_balance_class'],
|
'is_safe_lock': knife_handle_item['is_safe_lock'],
|
||||||
'chuck_id': self.env['sf.cutting_tool.standard.library'].search(
|
'screw': knife_handle_item['fit_wrench_model'],
|
||||||
[('code', '=', knife_handle_item['fit_chuck_model_code'].replace("JKM", result[
|
'nut': knife_handle_item['fit_nut_model'],
|
||||||
'factory_short_name']))]).id,
|
'dynamic_balance_class': knife_handle_item['dynamic_balance_class'],
|
||||||
'active': knife_handle_item['active'],
|
})
|
||||||
})
|
|
||||||
else:
|
else:
|
||||||
raise ValidationError("刀具物料基本参数认证未通过")
|
raise ValidationError("刀具物料基本参数认证未通过")
|
||||||
|
|||||||
Reference in New Issue
Block a user