Merge branch 'develop' of https://e.coding.net/jikimo-hn/jikimo_sfs/jikimo_sf into feature/刀具物料与夹具物料的反注册
# Conflicts: # sf_base/views/base_view.xml
This commit is contained in:
@@ -132,6 +132,40 @@
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
|
||||
|
||||
<record model="ir.cron" id="sf_cutting_tool_material">
|
||||
<field name="name">同步刀具物料</field>
|
||||
<field name="model_id" ref="model_sf_cutting_tool_material"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_cutting_tool_material()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.cron" id="sf_cutting_tool_type">
|
||||
<field name="name">同步刀具类型</field>
|
||||
<field name="model_id" ref="model_sf_cutting_tool_type"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_tool_type()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.cron" id="sf_cutting_tool_model">
|
||||
<field name="name">同步刀具型号</field>
|
||||
<field name="model_id" ref="model_sf_cutting_tool_model"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_tool_model()</field>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.cron" id="sf_cron15">
|
||||
<field name="name">同步功能刀具型号</field>
|
||||
<field name="model_id" ref="model_sf_functional_cutting_tool"/>
|
||||
@@ -166,7 +200,7 @@
|
||||
</record>
|
||||
|
||||
<record model="ir.cron" id="sf_multi_mounting_type">
|
||||
<field name="name">同步联装类型列表</field>
|
||||
<field name="name">同步联装类型</field>
|
||||
<field name="model_id" ref="model_sf_multi_mounting_type"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.sync_multi_mounting_type()</field>
|
||||
|
||||
@@ -1835,35 +1835,24 @@ class SfToolType(models.Model):
|
||||
_logger.info('result:%s' % result)
|
||||
for item in result['mrs_cutting_tool_type_yesterday_list']:
|
||||
if item:
|
||||
brand = self.env['sf.cutting.tool.type'].search(
|
||||
cutting_tool_type = self.env['sf.cutting.tool.type'].search(
|
||||
[("code", '=', item['code'])])
|
||||
if not brand:
|
||||
if not cutting_tool_type:
|
||||
self.env['sf.cutting.tool.type'].create({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"mrs_cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_material_id'])]).id,
|
||||
"integral_tool_type_code": item['integral_tool_type_code'],
|
||||
"blade_type_code": item['blade_type_code'],
|
||||
"bar_type_code": item['bar_type_code'],
|
||||
"pad_type_code": item['pad_type_code'],
|
||||
"handle_type_code": item['handle_type_code'],
|
||||
"chuck_type_code": item['chuck_type_code'],
|
||||
"cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['cutting_tool_material_code'])]).id,
|
||||
"remark": item['remark'],
|
||||
"active": item['active'],
|
||||
})
|
||||
else:
|
||||
brand.write({
|
||||
cutting_tool_type.write({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"mrs_cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_material_id'])]).id,
|
||||
"integral_tool_type_code": item['integral_tool_type_code'],
|
||||
"blade_type_code": item['blade_type_code'],
|
||||
"bar_type_code": item['bar_type_code'],
|
||||
"pad_type_code": item['pad_type_code'],
|
||||
"handle_type_code": item['handle_type_code'],
|
||||
"chuck_type_code": item['chuck_type_code'],
|
||||
"cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['cutting_tool_material_code'])]).id,
|
||||
"remark": item['remark'],
|
||||
"active": item['active'],
|
||||
})
|
||||
|
||||
else:
|
||||
@@ -1884,35 +1873,24 @@ class SfToolType(models.Model):
|
||||
_logger.info('result:%s' % result)
|
||||
for item in result['mrs_cutting_tool_type_all_list']:
|
||||
if item:
|
||||
brand = self.env['sf.cutting.tool.type'].search(
|
||||
cutting_tool_type = self.env['sf.cutting.tool.type'].search(
|
||||
[("code", '=', item['code'])])
|
||||
if not brand:
|
||||
if not cutting_tool_type:
|
||||
self.env['sf.cutting.tool.type'].create({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"mrs_cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_material_id'])]).id,
|
||||
"integral_tool_type_code": item['integral_tool_type_code'],
|
||||
"blade_type_code": item['blade_type_code'],
|
||||
"bar_type_code": item['bar_type_code'],
|
||||
"pad_type_code": item['pad_type_code'],
|
||||
"handle_type_code": item['handle_type_code'],
|
||||
"chuck_type_code": item['chuck_type_code'],
|
||||
"cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['cutting_tool_material_code'])]).id,
|
||||
"remark": item['remark'],
|
||||
"active": item['active'],
|
||||
})
|
||||
else:
|
||||
brand.write({
|
||||
cutting_tool_type.write({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"mrs_cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_material_id'])]).id,
|
||||
"integral_tool_type_code": item['integral_tool_type_code'],
|
||||
"blade_type_code": item['blade_type_code'],
|
||||
"bar_type_code": item['bar_type_code'],
|
||||
"pad_type_code": item['pad_type_code'],
|
||||
"handle_type_code": item['handle_type_code'],
|
||||
"chuck_type_code": item['chuck_type_code'],
|
||||
"cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['cutting_tool_material_code'])]).id,
|
||||
"remark": item['remark'],
|
||||
"active": item['active'],
|
||||
})
|
||||
|
||||
else:
|
||||
@@ -1940,276 +1918,124 @@ class SfToolModel(models.Model):
|
||||
if result['status'] == 1:
|
||||
_logger.info('result:%s' % result)
|
||||
for item in result['mrs_cutting_tool_model_yesterday_list']:
|
||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_blade_cutter_bar_ids'):
|
||||
for mrs_cutting_tool_model_blade_cutter_bar_id in item[
|
||||
'mrs_cutting_tool_model_blade_cutter_bar_ids']:
|
||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list.append(
|
||||
self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_blade_cutter_bar_id)]).id)
|
||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_blade_cutter_pad_ids'):
|
||||
for mrs_cutting_tool_model_blade_cutter_pad_id in item[
|
||||
'mrs_cutting_tool_model_blade_cutter_pad_ids']:
|
||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list.append(
|
||||
self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_blade_cutter_pad_id)]).id)
|
||||
mrs_cutting_tool_model_bar_blade_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_bar_blade_ids'):
|
||||
for mrs_cutting_tool_model_bar_blade_id in item['mrs_cutting_tool_model_bar_blade_ids']:
|
||||
mrs_cutting_tool_model_bar_blade_ids_list.append(self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_bar_blade_id)]).id)
|
||||
mrs_cutting_tool_model_pad_blade_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_pad_blade_ids'):
|
||||
for mrs_cutting_tool_model_pad_blade_id in item['mrs_cutting_tool_model_pad_blade_ids']:
|
||||
mrs_cutting_tool_model_pad_blade_ids_list.append(self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_pad_blade_id)]).id)
|
||||
mrs_cutting_tool_model_handle_chuck_model_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_handle_chuck_model_ids'):
|
||||
for mrs_cutting_tool_model_handle_chuck_model_id in item[
|
||||
'mrs_cutting_tool_model_handle_chuck_model_ids']:
|
||||
mrs_cutting_tool_model_handle_chuck_model_ids_list.append(
|
||||
self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_handle_chuck_model_id)]).id)
|
||||
mrs_cutting_tool_model_chuck_handle_model_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_chuck_handle_model_ids'):
|
||||
for mrs_cutting_tool_model_chuck_handle_model_id in item[
|
||||
'mrs_cutting_tool_model_chuck_handle_model_ids']:
|
||||
mrs_cutting_tool_model_chuck_handle_model_ids_list.append(
|
||||
self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_chuck_handle_model_id)]).id)
|
||||
if item:
|
||||
brand = self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', item['code'])])
|
||||
if item.get('image'):
|
||||
image = base64.b64decode(item['image'])
|
||||
else:
|
||||
image = ''
|
||||
if not brand:
|
||||
new_record = self.env['sf.cutting.tool.model'].create({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"mrs_machine_brand_id": self.env['sf.machine.brand'].search(
|
||||
[("code", '=', item['mrs_machine_brand_id'])]).id,
|
||||
"mrs_materials_model_id": self.env['sf.materials.model'].search(
|
||||
[("materials_no", '=', item['mrs_materials_model_id'])]).id,
|
||||
"mrs_cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_material_id'])]).id,
|
||||
"mrs_cutting_tool_material_name": item['mrs_cutting_tool_material_name'],
|
||||
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_type_id'])]).id,
|
||||
"integral_code": item['integral_code'],
|
||||
"integral_total_length": item['integral_total_length'],
|
||||
"integral_shank_length": item['integral_shank_length'],
|
||||
"integral_blade_length": item['integral_blade_length'],
|
||||
"integral_diameter": item['integral_diameter'],
|
||||
"integral_blade_number": item['integral_blade_number'],
|
||||
"integral_front_angle": item['integral_front_angle'],
|
||||
"integral_rear_angle": item['integral_rear_angle'],
|
||||
"integral_main_included_angle": item['integral_main_included_angle'],
|
||||
"integral_nut": item['integral_nut'],
|
||||
"integral_scope": item['integral_scope'],
|
||||
"blade_code": item['blade_code'],
|
||||
"blade_length": item['blade_length'],
|
||||
"blade_width": item['blade_width'],
|
||||
"blade_height": item['blade_height'],
|
||||
"blade_top_angle": item['blade_top_angle'],
|
||||
"blade_front_angle": item['blade_front_angle'],
|
||||
"blade_rear_angle": item['blade_rear_angle'],
|
||||
"blade_main_included_angle": item['blade_main_included_angle'],
|
||||
"blade_r_angle": item['blade_r_angle'],
|
||||
"blade_hardness": item['blade_hardness'],
|
||||
"blade_radius": item['blade_radius'],
|
||||
"blade_nut": item['blade_nut'],
|
||||
"mrs_cutting_tool_model_blade_cutter_bar_ids":
|
||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
||||
"mrs_cutting_tool_model_blade_cutter_pad_ids":
|
||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
||||
"bar_code": item['bar_code'],
|
||||
"bar_c_diameter": item['bar_c_diameter'],
|
||||
"bar_total_length": item['bar_total_length'],
|
||||
"bar_blade_number": item['bar_blade_number'],
|
||||
"bar_d_diameter": item['bar_d_diameter'],
|
||||
"mrs_cutting_tool_model_bar_blade_ids": mrs_cutting_tool_model_bar_blade_ids_list,
|
||||
"bar_wrench": item['bar_wrench'],
|
||||
"bar_screw": item['bar_screw'],
|
||||
"bar_radius": item['bar_radius'],
|
||||
"bar_accuracy": item['bar_accuracy'],
|
||||
"bar_hardness": item['bar_hardness'],
|
||||
"bar_scope": item['bar_scope'],
|
||||
"pad_code": item['pad_code'],
|
||||
"pad_c_diameter": item['pad_c_diameter'],
|
||||
"pad_total_length": item['pad_total_length'],
|
||||
"pad_blade_number": item['pad_blade_number'],
|
||||
"pad_d_diameter": item['pad_d_diameter'],
|
||||
"mrs_cutting_tool_model_pad_blade_ids": mrs_cutting_tool_model_pad_blade_ids_list,
|
||||
"pad_wrench": item['pad_wrench'],
|
||||
"pad_screw": item['pad_screw'],
|
||||
"pad_radius": item['pad_radius'],
|
||||
"pad_accuracy": item['pad_accuracy'],
|
||||
"pad_hardness": item['pad_hardness'],
|
||||
"pad_scope": item['pad_scope'],
|
||||
"handle_code": item['handle_code'],
|
||||
"handle_length": item['handle_length'],
|
||||
"handle_diameter": item['handle_diameter'],
|
||||
"handle_flange_length": item['handle_flange_length'],
|
||||
"handle_flange_diameter": item['handle_flange_diameter'],
|
||||
"handle_clamping_diameter_min": item['handle_clamping_diameter_min'],
|
||||
"handle_clamping_diameter_max": item['handle_clamping_diameter_max'],
|
||||
"handle_jump_accuracy": item['handle_jump_accuracy'],
|
||||
"handle_max_speed": item['handle_max_speed'],
|
||||
"handle_weight": item['handle_weight'],
|
||||
"handle_body_accuracy": item['handle_body_accuracy'],
|
||||
"handle_nut": item['handle_nut'],
|
||||
"mrs_cutting_tool_model_handle_chuck_model_ids": [
|
||||
(6, 0, mrs_cutting_tool_model_handle_chuck_model_ids_list)],
|
||||
"handle_clamping_range": item['handle_clamping_range'],
|
||||
"handle_detection_accuracy": item['handle_detection_accuracy'],
|
||||
"handle_detection_hardness": item['handle_detection_hardness'],
|
||||
"handle_standard_speed": item['handle_standard_speed'],
|
||||
"chuck_code": item['chuck_code'],
|
||||
"chuck_accuracy": item['chuck_accuracy'],
|
||||
"chuck_diameter": item['chuck_diameter'],
|
||||
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
||||
"chuck_height": item['chuck_height'],
|
||||
"chuck_nut": item['chuck_nut'],
|
||||
"mrs_cutting_tool_model_chuck_handle_model_ids":
|
||||
mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
||||
"chuck_clamping_range": item['chuck_clamping_range'],
|
||||
"chuck_feature": item['chuck_feature'],
|
||||
"image": image,
|
||||
"hide_integral": item['hide_integral'],
|
||||
"hide_blade": item['hide_blade'],
|
||||
"hide_cutter_bar": item['hide_cutter_bar'],
|
||||
"hide_cutter_pad": item['hide_cutter_pad'],
|
||||
"hide_handler": item['hide_handler'],
|
||||
"hide_chuck": item['hide_chuck'],
|
||||
"hide_model": item['hide_model'],
|
||||
})
|
||||
new_record.write({
|
||||
'mrs_cutting_tool_model_handle_chuck_model_ids': [
|
||||
(6, 0, [new_record.id] * len(mrs_cutting_tool_model_handle_chuck_model_ids_list))],
|
||||
})
|
||||
# many2many_commands = [(0, 0, {'model_id_1': new_record.id, 'model_id_2': related_record_id}) for
|
||||
# related_record_id in mrs_cutting_tool_model_handle_chuck_model_ids_list]
|
||||
# new_record.write({
|
||||
# 'mrs_cutting_tool_model_handle_chuck_model_ids': many2many_commands,
|
||||
# })
|
||||
else:
|
||||
brand.write({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"mrs_machine_brand_id": self.env['sf.machine.brand'].search(
|
||||
[("code", '=', item['mrs_machine_brand_id'])]).id,
|
||||
"mrs_materials_model_id": self.env['sf.materials.model'].search(
|
||||
[("materials_no", '=', item['mrs_materials_model_id'])]).id,
|
||||
"mrs_cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_material_id'])]).id,
|
||||
"mrs_cutting_tool_material_name": item['mrs_cutting_tool_material_name'],
|
||||
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_type_id'])]).id,
|
||||
"integral_code": item['integral_code'],
|
||||
"integral_total_length": item['integral_total_length'],
|
||||
"integral_shank_length": item['integral_shank_length'],
|
||||
"integral_blade_length": item['integral_blade_length'],
|
||||
"integral_diameter": item['integral_diameter'],
|
||||
"integral_blade_number": item['integral_blade_number'],
|
||||
"integral_front_angle": item['integral_front_angle'],
|
||||
"integral_rear_angle": item['integral_rear_angle'],
|
||||
"integral_main_included_angle": item['integral_main_included_angle'],
|
||||
"integral_nut": item['integral_nut'],
|
||||
"integral_scope": item['integral_scope'],
|
||||
"blade_code": item['blade_code'],
|
||||
"blade_length": item['blade_length'],
|
||||
"blade_width": item['blade_width'],
|
||||
"blade_height": item['blade_height'],
|
||||
"blade_top_angle": item['blade_top_angle'],
|
||||
"blade_front_angle": item['blade_front_angle'],
|
||||
"blade_rear_angle": item['blade_rear_angle'],
|
||||
"blade_main_included_angle": item['blade_main_included_angle'],
|
||||
"blade_r_angle": item['blade_r_angle'],
|
||||
"blade_hardness": item['blade_hardness'],
|
||||
"blade_radius": item['blade_radius'],
|
||||
"blade_nut": item['blade_nut'],
|
||||
"mrs_cutting_tool_model_blade_cutter_bar_ids":
|
||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
||||
"mrs_cutting_tool_model_blade_cutter_pad_ids":
|
||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
||||
"bar_code": item['bar_code'],
|
||||
"bar_c_diameter": item['bar_c_diameter'],
|
||||
"bar_total_length": item['bar_total_length'],
|
||||
"bar_blade_number": item['bar_blade_number'],
|
||||
"bar_d_diameter": item['bar_d_diameter'],
|
||||
"mrs_cutting_tool_model_bar_blade_ids": mrs_cutting_tool_model_bar_blade_ids_list,
|
||||
"bar_wrench": item['bar_wrench'],
|
||||
"bar_screw": item['bar_screw'],
|
||||
"bar_radius": item['bar_radius'],
|
||||
"bar_accuracy": item['bar_accuracy'],
|
||||
"bar_hardness": item['bar_hardness'],
|
||||
"bar_scope": item['bar_scope'],
|
||||
"pad_code": item['pad_code'],
|
||||
"pad_c_diameter": item['pad_c_diameter'],
|
||||
"pad_total_length": item['pad_total_length'],
|
||||
"pad_blade_number": item['pad_blade_number'],
|
||||
"pad_d_diameter": item['pad_d_diameter'],
|
||||
"mrs_cutting_tool_model_pad_blade_ids": mrs_cutting_tool_model_pad_blade_ids_list,
|
||||
"pad_wrench": item['pad_wrench'],
|
||||
"pad_screw": item['pad_screw'],
|
||||
"pad_radius": item['pad_radius'],
|
||||
"pad_accuracy": item['pad_accuracy'],
|
||||
"pad_hardness": item['pad_hardness'],
|
||||
"pad_scope": item['pad_scope'],
|
||||
"handle_code": item['handle_code'],
|
||||
"handle_length": item['handle_length'],
|
||||
"handle_diameter": item['handle_diameter'],
|
||||
"handle_flange_length": item['handle_flange_length'],
|
||||
"handle_flange_diameter": item['handle_flange_diameter'],
|
||||
"handle_clamping_diameter_min": item['handle_clamping_diameter_min'],
|
||||
"handle_clamping_diameter_max": item['handle_clamping_diameter_max'],
|
||||
"handle_jump_accuracy": item['handle_jump_accuracy'],
|
||||
"handle_max_speed": item['handle_max_speed'],
|
||||
"handle_weight": item['handle_weight'],
|
||||
"handle_body_accuracy": item['handle_body_accuracy'],
|
||||
"handle_nut": item['handle_nut'],
|
||||
"mrs_cutting_tool_model_handle_chuck_model_ids": [
|
||||
(6, 0, mrs_cutting_tool_model_handle_chuck_model_ids_list)],
|
||||
"handle_clamping_range": item['handle_clamping_range'],
|
||||
"handle_detection_accuracy": item['handle_detection_accuracy'],
|
||||
"handle_detection_hardness": item['handle_detection_hardness'],
|
||||
"handle_standard_speed": item['handle_standard_speed'],
|
||||
"chuck_code": item['chuck_code'],
|
||||
"chuck_accuracy": item['chuck_accuracy'],
|
||||
"chuck_diameter": item['chuck_diameter'],
|
||||
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
||||
"chuck_height": item['chuck_height'],
|
||||
"chuck_nut": item['chuck_nut'],
|
||||
"mrs_cutting_tool_model_chuck_handle_model_ids":
|
||||
mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
||||
"chuck_clamping_range": item['chuck_clamping_range'],
|
||||
"chuck_feature": item['chuck_feature'],
|
||||
"image": image,
|
||||
"hide_integral": item['hide_integral'],
|
||||
"hide_blade": item['hide_blade'],
|
||||
"hide_cutter_bar": item['hide_cutter_bar'],
|
||||
"hide_cutter_pad": item['hide_cutter_pad'],
|
||||
"hide_handler": item['hide_handler'],
|
||||
"hide_chuck": item['hide_chuck'],
|
||||
"hide_model": item['hide_model'],
|
||||
})
|
||||
brand.write({
|
||||
'mrs_cutting_tool_model_handle_chuck_model_ids': [
|
||||
(6, 0, [brand.id] * len(mrs_cutting_tool_model_handle_chuck_model_ids_list))],
|
||||
})
|
||||
# many2many_commands = [(0, 0, {'model_id_1': brand.id, 'model_id_2': related_record_id}) for
|
||||
# related_record_id in mrs_cutting_tool_model_handle_chuck_model_ids_list]
|
||||
# brand.write({
|
||||
# 'mrs_cutting_tool_model_handle_chuck_model_ids': many2many_commands,
|
||||
# })
|
||||
print('同步所有刀柄类型列表成功')
|
||||
cutting_tool_model = self.search(
|
||||
[("code", '=', item['code'])])
|
||||
if not cutting_tool_model:
|
||||
self.env['sf.cutting.tool.model'].create({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"brand_id": self.env['sf.machine.brand'].search(
|
||||
[("code", '=', item['brand_code'])]).id,
|
||||
"material_model_id": self.env['sf.materials.model'].search(
|
||||
[("materials_no", '=', item['material_model_code'])]).id,
|
||||
"cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['cutting_tool_material_code'])]).id,
|
||||
"cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||
[("code", '=', item['cutting_tool_type_code'])]).id,
|
||||
"tool_length": item['tool_length'],
|
||||
"tool_width": item['tool_width'],
|
||||
"tool_height": item['tool_height'],
|
||||
"tool_thickness": item['tool_thickness'],
|
||||
"tool_weight": item['tool_weight'],
|
||||
"coating_material": item['coating_material'],
|
||||
"total_length": item['total_length'],
|
||||
"shank_length": item['shank_length'],
|
||||
"blade_length": item['blade_length'],
|
||||
"front_angle": item['front_angle'],
|
||||
"rear_angle": item['rear_angle'],
|
||||
"main_included_angle": item['main_included_angle'],
|
||||
"nut": item['nut'],
|
||||
"top_angle": item['top_angle'],
|
||||
"jump_accuracy": item['jump_accuracy'],
|
||||
"working_hardness": item['working_hardness'],
|
||||
"blade_diameter": item['blade_diameter'],
|
||||
"wrench": item['wrench'],
|
||||
"screw": item['screw'],
|
||||
"accuracy_level": item['accuracy_level'],
|
||||
"diameter_max": item['diameter_max'],
|
||||
"clamping_diameter": item['clamping_diameter'],
|
||||
"flange_length": item['flange_length'],
|
||||
'chuck_ids': [(6, 0, [])] if not item.get('chuck_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['chuck_codes']),
|
||||
'cutter_bar_ids': [(6, 0, [])] if not item.get('cutter_bar_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['cutter_bar_codes']),
|
||||
'cutter_pad_ids': [(6, 0, [])] if not item.get('cutter_pad_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['cutter_pad_codes']),
|
||||
'blade_ids': [(6, 0, [])] if not item.get('blade_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['blade_codes']),
|
||||
'handle_ids': [(6, 0, [])] if not item.get('handle_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['handle_codes']),
|
||||
"flange_diameter": item['flange_diameter'],
|
||||
"outer_diameter": item['outer_diameter'],
|
||||
"inner_diameter": item['inner_diameter'],
|
||||
"active": item['active'],
|
||||
})
|
||||
else:
|
||||
cutting_tool_model.write({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"brand_id": self.env['sf.machine.brand'].search(
|
||||
[("code", '=', item['brand_code'])]).id,
|
||||
"material_model_id": self.env['sf.materials.model'].search(
|
||||
[("materials_no", '=', item['material_model_code'])]).id,
|
||||
"cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['cutting_tool_material_code'])]).id,
|
||||
"cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||
[("code", '=', item['cutting_tool_type_code'])]).id,
|
||||
"tool_length": item['tool_length'],
|
||||
"tool_width": item['tool_width'],
|
||||
"tool_height": item['tool_height'],
|
||||
"tool_thickness": item['tool_thickness'],
|
||||
"tool_weight": item['tool_weight'],
|
||||
"coating_material": item['coating_material'],
|
||||
"total_length": item['total_length'],
|
||||
"shank_length": item['shank_length'],
|
||||
"blade_length": item['blade_length'],
|
||||
"front_angle": item['front_angle'],
|
||||
"rear_angle": item['rear_angle'],
|
||||
"main_included_angle": item['main_included_angle'],
|
||||
"nut": item['nut'],
|
||||
"top_angle": item['top_angle'],
|
||||
"jump_accuracy": item['jump_accuracy'],
|
||||
"working_hardness": item['working_hardness'],
|
||||
"blade_diameter": item['blade_diameter'],
|
||||
"wrench": item['wrench'],
|
||||
"screw": item['screw'],
|
||||
"accuracy_level": item['accuracy_level'],
|
||||
"diameter_max": item['diameter_max'],
|
||||
"clamping_diameter": item['clamping_diameter'],
|
||||
"flange_length": item['flange_length'],
|
||||
'chuck_ids': [(6, 0, [])] if not item.get('chuck_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['chuck_codes']),
|
||||
'cutter_bar_ids': [(6, 0, [])] if not item.get('cutter_bar_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['cutter_bar_codes']),
|
||||
'cutter_pad_ids': [(6, 0, [])] if not item.get('cutter_pad_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['cutter_pad_codes']),
|
||||
'blade_ids': [(6, 0, [])] if not item.get('blade_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['blade_codes']),
|
||||
'handle_ids': [(6, 0, [])] if not item.get('handle_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['handle_codes']),
|
||||
"flange_diameter": item['flange_diameter'],
|
||||
"outer_diameter": item['outer_diameter'],
|
||||
"inner_diameter": item['inner_diameter'],
|
||||
"active": item['active'],
|
||||
})
|
||||
print('同步所有刀柄类型列表成功')
|
||||
else:
|
||||
raise ValidationError("认证未通过")
|
||||
|
||||
# 同步所有刀具型号列表
|
||||
|
||||
# 同步所有刀具型号列表
|
||||
def sync_all_tool_model(self):
|
||||
sf_sync_config = self.env['res.config.settings'].get_values()
|
||||
token = sf_sync_config['token']
|
||||
@@ -2224,266 +2050,118 @@ class SfToolModel(models.Model):
|
||||
if result['status'] == 1:
|
||||
_logger.info('result:%s' % result)
|
||||
for item in result['mrs_cutting_tool_model_all_list']:
|
||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_blade_cutter_bar_ids'):
|
||||
for mrs_cutting_tool_model_blade_cutter_bar_id in item[
|
||||
'mrs_cutting_tool_model_blade_cutter_bar_ids']:
|
||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list.append(
|
||||
self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_blade_cutter_bar_id)]).id)
|
||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_blade_cutter_pad_ids'):
|
||||
for mrs_cutting_tool_model_blade_cutter_pad_id in item[
|
||||
'mrs_cutting_tool_model_blade_cutter_pad_ids']:
|
||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list.append(
|
||||
self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_blade_cutter_pad_id)]).id)
|
||||
mrs_cutting_tool_model_bar_blade_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_bar_blade_ids'):
|
||||
for mrs_cutting_tool_model_bar_blade_id in item['mrs_cutting_tool_model_bar_blade_ids']:
|
||||
mrs_cutting_tool_model_bar_blade_ids_list.append(self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_bar_blade_id)]).id)
|
||||
mrs_cutting_tool_model_pad_blade_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_pad_blade_ids'):
|
||||
for mrs_cutting_tool_model_pad_blade_id in item['mrs_cutting_tool_model_pad_blade_ids']:
|
||||
mrs_cutting_tool_model_pad_blade_ids_list.append(self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_pad_blade_id)]).id)
|
||||
mrs_cutting_tool_model_handle_chuck_model_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_handle_chuck_model_ids'):
|
||||
for mrs_cutting_tool_model_handle_chuck_model_id in item[
|
||||
'mrs_cutting_tool_model_handle_chuck_model_ids']:
|
||||
mrs_cutting_tool_model_handle_chuck_model_ids_list.append(
|
||||
self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_handle_chuck_model_id)]).id)
|
||||
mrs_cutting_tool_model_chuck_handle_model_ids_list = []
|
||||
if item.get('mrs_cutting_tool_model_chuck_handle_model_ids'):
|
||||
for mrs_cutting_tool_model_chuck_handle_model_id in item[
|
||||
'mrs_cutting_tool_model_chuck_handle_model_ids']:
|
||||
mrs_cutting_tool_model_chuck_handle_model_ids_list.append(
|
||||
self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', mrs_cutting_tool_model_chuck_handle_model_id)]).id)
|
||||
if item:
|
||||
brand = self.env['sf.cutting.tool.model'].search(
|
||||
[("code", '=', item['code'])])
|
||||
if item.get('image'):
|
||||
image = base64.b64decode(item['image'])
|
||||
else:
|
||||
image = ''
|
||||
if not brand:
|
||||
new_record = self.env['sf.cutting.tool.model'].create({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"mrs_machine_brand_id": self.env['sf.machine.brand'].search(
|
||||
[("code", '=', item['mrs_machine_brand_id'])]).id,
|
||||
"mrs_materials_model_id": self.env['sf.materials.model'].search(
|
||||
[("materials_no", '=', item['mrs_materials_model_id'])]).id,
|
||||
"mrs_cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_material_id'])]).id,
|
||||
"mrs_cutting_tool_material_name": item['mrs_cutting_tool_material_name'],
|
||||
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_type_id'])]).id,
|
||||
"integral_code": item['integral_code'],
|
||||
"integral_total_length": item['integral_total_length'],
|
||||
"integral_shank_length": item['integral_shank_length'],
|
||||
"integral_blade_length": item['integral_blade_length'],
|
||||
"integral_diameter": item['integral_diameter'],
|
||||
"integral_blade_number": item['integral_blade_number'],
|
||||
"integral_front_angle": item['integral_front_angle'],
|
||||
"integral_rear_angle": item['integral_rear_angle'],
|
||||
"integral_main_included_angle": item['integral_main_included_angle'],
|
||||
"integral_nut": item['integral_nut'],
|
||||
"integral_scope": item['integral_scope'],
|
||||
"blade_code": item['blade_code'],
|
||||
"blade_length": item['blade_length'],
|
||||
"blade_width": item['blade_width'],
|
||||
"blade_height": item['blade_height'],
|
||||
"blade_top_angle": item['blade_top_angle'],
|
||||
"blade_front_angle": item['blade_front_angle'],
|
||||
"blade_rear_angle": item['blade_rear_angle'],
|
||||
"blade_main_included_angle": item['blade_main_included_angle'],
|
||||
"blade_r_angle": item['blade_r_angle'],
|
||||
"blade_hardness": item['blade_hardness'],
|
||||
"blade_radius": item['blade_radius'],
|
||||
"blade_nut": item['blade_nut'],
|
||||
"mrs_cutting_tool_model_blade_cutter_bar_ids":
|
||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
||||
"mrs_cutting_tool_model_blade_cutter_pad_ids":
|
||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
||||
"bar_code": item['bar_code'],
|
||||
"bar_c_diameter": item['bar_c_diameter'],
|
||||
"bar_total_length": item['bar_total_length'],
|
||||
"bar_blade_number": item['bar_blade_number'],
|
||||
"bar_d_diameter": item['bar_d_diameter'],
|
||||
"mrs_cutting_tool_model_bar_blade_ids": mrs_cutting_tool_model_bar_blade_ids_list,
|
||||
"bar_wrench": item['bar_wrench'],
|
||||
"bar_screw": item['bar_screw'],
|
||||
"bar_radius": item['bar_radius'],
|
||||
"bar_accuracy": item['bar_accuracy'],
|
||||
"bar_hardness": item['bar_hardness'],
|
||||
"bar_scope": item['bar_scope'],
|
||||
"pad_code": item['pad_code'],
|
||||
"pad_c_diameter": item['pad_c_diameter'],
|
||||
"pad_total_length": item['pad_total_length'],
|
||||
"pad_blade_number": item['pad_blade_number'],
|
||||
"pad_d_diameter": item['pad_d_diameter'],
|
||||
"mrs_cutting_tool_model_pad_blade_ids": mrs_cutting_tool_model_pad_blade_ids_list,
|
||||
"pad_wrench": item['pad_wrench'],
|
||||
"pad_screw": item['pad_screw'],
|
||||
"pad_radius": item['pad_radius'],
|
||||
"pad_accuracy": item['pad_accuracy'],
|
||||
"pad_hardness": item['pad_hardness'],
|
||||
"pad_scope": item['pad_scope'],
|
||||
"handle_code": item['handle_code'],
|
||||
"handle_length": item['handle_length'],
|
||||
"handle_diameter": item['handle_diameter'],
|
||||
"handle_flange_length": item['handle_flange_length'],
|
||||
"handle_flange_diameter": item['handle_flange_diameter'],
|
||||
"handle_clamping_diameter_min": item['handle_clamping_diameter_min'],
|
||||
"handle_clamping_diameter_max": item['handle_clamping_diameter_max'],
|
||||
"handle_jump_accuracy": item['handle_jump_accuracy'],
|
||||
"handle_max_speed": item['handle_max_speed'],
|
||||
"handle_weight": item['handle_weight'],
|
||||
"handle_body_accuracy": item['handle_body_accuracy'],
|
||||
"handle_nut": item['handle_nut'],
|
||||
# "mrs_cutting_tool_model_handle_chuck_model_ids": [(6, 0, mrs_cutting_tool_model_handle_chuck_model_ids_list)],
|
||||
"handle_clamping_range": item['handle_clamping_range'],
|
||||
"handle_detection_accuracy": item['handle_detection_accuracy'],
|
||||
"handle_detection_hardness": item['handle_detection_hardness'],
|
||||
"handle_standard_speed": item['handle_standard_speed'],
|
||||
"chuck_code": item['chuck_code'],
|
||||
"chuck_accuracy": item['chuck_accuracy'],
|
||||
"chuck_diameter": item['chuck_diameter'],
|
||||
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
||||
"chuck_height": item['chuck_height'],
|
||||
"chuck_nut": item['chuck_nut'],
|
||||
"mrs_cutting_tool_model_chuck_handle_model_ids":
|
||||
mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
||||
"chuck_clamping_range": item['chuck_clamping_range'],
|
||||
"chuck_feature": item['chuck_feature'],
|
||||
"image": image,
|
||||
"hide_integral": item['hide_integral'],
|
||||
"hide_blade": item['hide_blade'],
|
||||
"hide_cutter_bar": item['hide_cutter_bar'],
|
||||
"hide_cutter_pad": item['hide_cutter_pad'],
|
||||
"hide_handler": item['hide_handler'],
|
||||
"hide_chuck": item['hide_chuck'],
|
||||
"hide_model": item['hide_model'],
|
||||
})
|
||||
new_record.write({
|
||||
'mrs_cutting_tool_model_handle_chuck_model_ids': [
|
||||
(6, 0, [new_record.id] * len(mrs_cutting_tool_model_handle_chuck_model_ids_list))],
|
||||
})
|
||||
|
||||
else:
|
||||
brand.write({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"mrs_machine_brand_id": self.env['sf.machine.brand'].search(
|
||||
[("code", '=', item['mrs_machine_brand_id'])]).id,
|
||||
"mrs_materials_model_id": self.env['sf.materials.model'].search(
|
||||
[("materials_no", '=', item['mrs_materials_model_id'])]).id,
|
||||
"mrs_cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_material_id'])]).id,
|
||||
"mrs_cutting_tool_material_name": item['mrs_cutting_tool_material_name'],
|
||||
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||
[("code", '=', item['mrs_cutting_tool_type_id'])]).id,
|
||||
"integral_code": item['integral_code'],
|
||||
"integral_total_length": item['integral_total_length'],
|
||||
"integral_shank_length": item['integral_shank_length'],
|
||||
"integral_blade_length": item['integral_blade_length'],
|
||||
"integral_diameter": item['integral_diameter'],
|
||||
"integral_blade_number": item['integral_blade_number'],
|
||||
"integral_front_angle": item['integral_front_angle'],
|
||||
"integral_rear_angle": item['integral_rear_angle'],
|
||||
"integral_main_included_angle": item['integral_main_included_angle'],
|
||||
"integral_nut": item['integral_nut'],
|
||||
"integral_scope": item['integral_scope'],
|
||||
"blade_code": item['blade_code'],
|
||||
"blade_length": item['blade_length'],
|
||||
"blade_width": item['blade_width'],
|
||||
"blade_height": item['blade_height'],
|
||||
"blade_top_angle": item['blade_top_angle'],
|
||||
"blade_front_angle": item['blade_front_angle'],
|
||||
"blade_rear_angle": item['blade_rear_angle'],
|
||||
"blade_main_included_angle": item['blade_main_included_angle'],
|
||||
"blade_r_angle": item['blade_r_angle'],
|
||||
"blade_hardness": item['blade_hardness'],
|
||||
"blade_radius": item['blade_radius'],
|
||||
"blade_nut": item['blade_nut'],
|
||||
"mrs_cutting_tool_model_blade_cutter_bar_ids":
|
||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
||||
"mrs_cutting_tool_model_blade_cutter_pad_ids":
|
||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
||||
"bar_code": item['bar_code'],
|
||||
"bar_c_diameter": item['bar_c_diameter'],
|
||||
"bar_total_length": item['bar_total_length'],
|
||||
"bar_blade_number": item['bar_blade_number'],
|
||||
"bar_d_diameter": item['bar_d_diameter'],
|
||||
"mrs_cutting_tool_model_bar_blade_ids": mrs_cutting_tool_model_bar_blade_ids_list,
|
||||
"bar_wrench": item['bar_wrench'],
|
||||
"bar_screw": item['bar_screw'],
|
||||
"bar_radius": item['bar_radius'],
|
||||
"bar_accuracy": item['bar_accuracy'],
|
||||
"bar_hardness": item['bar_hardness'],
|
||||
"bar_scope": item['bar_scope'],
|
||||
"pad_code": item['pad_code'],
|
||||
"pad_c_diameter": item['pad_c_diameter'],
|
||||
"pad_total_length": item['pad_total_length'],
|
||||
"pad_blade_number": item['pad_blade_number'],
|
||||
"pad_d_diameter": item['pad_d_diameter'],
|
||||
"mrs_cutting_tool_model_pad_blade_ids": mrs_cutting_tool_model_pad_blade_ids_list,
|
||||
"pad_wrench": item['pad_wrench'],
|
||||
"pad_screw": item['pad_screw'],
|
||||
"pad_radius": item['pad_radius'],
|
||||
"pad_accuracy": item['pad_accuracy'],
|
||||
"pad_hardness": item['pad_hardness'],
|
||||
"pad_scope": item['pad_scope'],
|
||||
"handle_code": item['handle_code'],
|
||||
"handle_length": item['handle_length'],
|
||||
"handle_diameter": item['handle_diameter'],
|
||||
"handle_flange_length": item['handle_flange_length'],
|
||||
"handle_flange_diameter": item['handle_flange_diameter'],
|
||||
"handle_clamping_diameter_min": item['handle_clamping_diameter_min'],
|
||||
"handle_clamping_diameter_max": item['handle_clamping_diameter_max'],
|
||||
"handle_jump_accuracy": item['handle_jump_accuracy'],
|
||||
"handle_max_speed": item['handle_max_speed'],
|
||||
"handle_weight": item['handle_weight'],
|
||||
"handle_body_accuracy": item['handle_body_accuracy'],
|
||||
"handle_nut": item['handle_nut'],
|
||||
"mrs_cutting_tool_model_handle_chuck_model_ids": [
|
||||
(6, 0, mrs_cutting_tool_model_handle_chuck_model_ids_list)],
|
||||
"handle_clamping_range": item['handle_clamping_range'],
|
||||
"handle_detection_accuracy": item['handle_detection_accuracy'],
|
||||
"handle_detection_hardness": item['handle_detection_hardness'],
|
||||
"handle_standard_speed": item['handle_standard_speed'],
|
||||
"chuck_code": item['chuck_code'],
|
||||
"chuck_accuracy": item['chuck_accuracy'],
|
||||
"chuck_diameter": item['chuck_diameter'],
|
||||
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
||||
"chuck_height": item['chuck_height'],
|
||||
"chuck_nut": item['chuck_nut'],
|
||||
"mrs_cutting_tool_model_chuck_handle_model_ids":
|
||||
mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
||||
"chuck_clamping_range": item['chuck_clamping_range'],
|
||||
"chuck_feature": item['chuck_feature'],
|
||||
"image": image,
|
||||
"hide_integral": item['hide_integral'],
|
||||
"hide_blade": item['hide_blade'],
|
||||
"hide_cutter_bar": item['hide_cutter_bar'],
|
||||
"hide_cutter_pad": item['hide_cutter_pad'],
|
||||
"hide_handler": item['hide_handler'],
|
||||
"hide_chuck": item['hide_chuck'],
|
||||
"hide_model": item['hide_model'],
|
||||
})
|
||||
brand.write({
|
||||
'mrs_cutting_tool_model_handle_chuck_model_ids': [
|
||||
(6, 0, [brand.id] * len(mrs_cutting_tool_model_handle_chuck_model_ids_list))],
|
||||
})
|
||||
# many2many_commands = [(0, 0, {'model_id_1': brand.id, 'model_id_2': related_record_id}) for
|
||||
# related_record_id in mrs_cutting_tool_model_handle_chuck_model_ids_list]
|
||||
# brand.write({
|
||||
# 'mrs_cutting_tool_model_handle_chuck_model_ids': many2many_commands,
|
||||
# })
|
||||
cutting_tool_model = self.search(
|
||||
[("code", '=', item['code'])])
|
||||
if not cutting_tool_model:
|
||||
self.env['sf.cutting.tool.model'].create({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"brand_id": self.env['sf.machine.brand'].search(
|
||||
[("code", '=', item['brand_code'])]).id,
|
||||
"material_model_id": self.env['sf.materials.model'].search(
|
||||
[("materials_no", '=', item['material_model_code'])]).id,
|
||||
"cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['cutting_tool_material_code'])]).id,
|
||||
"cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||
[("code", '=', item['cutting_tool_type_code'])]).id,
|
||||
"tool_length": item['tool_length'],
|
||||
"tool_width": item['tool_width'],
|
||||
"tool_height": item['tool_height'],
|
||||
"tool_thickness": item['tool_thickness'],
|
||||
"tool_weight": item['tool_weight'],
|
||||
"coating_material": item['coating_material'],
|
||||
"total_length": item['total_length'],
|
||||
"shank_length": item['shank_length'],
|
||||
"blade_length": item['blade_length'],
|
||||
"front_angle": item['front_angle'],
|
||||
"rear_angle": item['rear_angle'],
|
||||
"main_included_angle": item['main_included_angle'],
|
||||
"nut": item['nut'],
|
||||
"top_angle": item['top_angle'],
|
||||
"jump_accuracy": item['jump_accuracy'],
|
||||
"working_hardness": item['working_hardness'],
|
||||
"blade_diameter": item['blade_diameter'],
|
||||
"wrench": item['wrench'],
|
||||
"screw": item['screw'],
|
||||
"accuracy_level": item['accuracy_level'],
|
||||
"diameter_max": item['diameter_max'],
|
||||
"clamping_diameter": item['clamping_diameter'],
|
||||
"flange_length": item['flange_length'],
|
||||
'chuck_ids': [(6, 0, [])] if not item.get('chuck_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['chuck_codes']),
|
||||
'cutter_bar_ids': [(6, 0, [])] if not item.get('cutter_bar_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['cutter_bar_codes']),
|
||||
'cutter_pad_ids': [(6, 0, [])] if not item.get('cutter_pad_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['cutter_pad_codes']),
|
||||
'blade_ids': [(6, 0, [])] if not item.get('blade_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['blade_codes']),
|
||||
'handle_ids': [(6, 0, [])] if not item.get('handle_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['handle_codes']),
|
||||
"flange_diameter": item['flange_diameter'],
|
||||
"outer_diameter": item['outer_diameter'],
|
||||
"inner_diameter": item['inner_diameter'],
|
||||
"active": item['active'],
|
||||
})
|
||||
else:
|
||||
cutting_tool_model.write({
|
||||
"name": item['name'],
|
||||
"code": item['code'],
|
||||
"brand_id": self.env['sf.machine.brand'].search(
|
||||
[("code", '=', item['brand_code'])]).id,
|
||||
"material_model_id": self.env['sf.materials.model'].search(
|
||||
[("materials_no", '=', item['material_model_code'])]).id,
|
||||
"cutting_tool_material_id": self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['cutting_tool_material_code'])]).id,
|
||||
"cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||
[("code", '=', item['cutting_tool_type_code'])]).id,
|
||||
"tool_length": item['tool_length'],
|
||||
"tool_width": item['tool_width'],
|
||||
"tool_height": item['tool_height'],
|
||||
"tool_thickness": item['tool_thickness'],
|
||||
"tool_weight": item['tool_weight'],
|
||||
"coating_material": item['coating_material'],
|
||||
"total_length": item['total_length'],
|
||||
"shank_length": item['shank_length'],
|
||||
"blade_length": item['blade_length'],
|
||||
"front_angle": item['front_angle'],
|
||||
"rear_angle": item['rear_angle'],
|
||||
"main_included_angle": item['main_included_angle'],
|
||||
"nut": item['nut'],
|
||||
"top_angle": item['top_angle'],
|
||||
"jump_accuracy": item['jump_accuracy'],
|
||||
"working_hardness": item['working_hardness'],
|
||||
"blade_diameter": item['blade_diameter'],
|
||||
"wrench": item['wrench'],
|
||||
"screw": item['screw'],
|
||||
"accuracy_level": item['accuracy_level'],
|
||||
"diameter_max": item['diameter_max'],
|
||||
"clamping_diameter": item['clamping_diameter'],
|
||||
"flange_length": item['flange_length'],
|
||||
'chuck_ids': [(6, 0, [])] if not item.get('chuck_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['chuck_codes']),
|
||||
'cutter_bar_ids': [(6, 0, [])] if not item.get('cutter_bar_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['cutter_bar_codes']),
|
||||
'cutter_pad_ids': [(6, 0, [])] if not item.get('cutter_pad_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['cutter_pad_codes']),
|
||||
'blade_ids': [(6, 0, [])] if not item.get('blade_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['blade_codes']),
|
||||
'handle_ids': [(6, 0, [])] if not item.get('handle_codes') else
|
||||
self.env['mrs.cutting.tool.dynamic.model'].sudo()._get_cutting_tool_model_ids(
|
||||
item['handle_codes']),
|
||||
"flange_diameter": item['flange_diameter'],
|
||||
"outer_diameter": item['outer_diameter'],
|
||||
"inner_diameter": item['inner_diameter'],
|
||||
"active": item['active'],
|
||||
})
|
||||
print('同步所有刀具型号列表成功')
|
||||
else:
|
||||
raise ValidationError("认证未通过")
|
||||
|
||||
Reference in New Issue
Block a user