去掉刀具型号的同步方法
This commit is contained in:
@@ -40,13 +40,10 @@ class ResConfigSettings(models.TransientModel):
|
||||
self.env['sf.machine_tool.category'].sync_all_machine_tool_category()
|
||||
_logger.info("同步资源库机床类型")
|
||||
self.env['sf.production.process.parameter'].sync_all_production_process_parameter()
|
||||
_logger.info("同步表面工艺参数")
|
||||
_logger.info("同步刀具物料")
|
||||
self.env['sf.cutting.tool.material'].sync_all_cutting_tool_material()
|
||||
_logger.info("同步刀具类型")
|
||||
self.env['sf.cutting.tool.type'].sync_all_tool_type()
|
||||
_logger.info("同步刀具型号")
|
||||
self.env['sf.cutting.tool.model'].sync_all_tool_model()
|
||||
_logger.info("同步功能刀具类型")
|
||||
self.env['sf.functional.cutting.tool.model'].sync_all_functional_cutting_tool_model()
|
||||
_logger.info("同步夹具物料")
|
||||
|
||||
@@ -1608,267 +1608,3 @@ class SfToolType(models.Model):
|
||||
})
|
||||
else:
|
||||
raise ValidationError("刀具类型认证未通过")
|
||||
|
||||
|
||||
# 同步刀具型号
|
||||
class SfToolModel(models.Model):
|
||||
_inherit = 'sf.cutting.tool.model'
|
||||
_description = '同步刀具型号'
|
||||
|
||||
url = '/api/mrs_cutting_tool_model/list'
|
||||
|
||||
# 定时同步每日刀具型号
|
||||
def sync_tool_model(self):
|
||||
sf_sync_config = self.env['res.config.settings'].get_values()
|
||||
token = sf_sync_config['token']
|
||||
sf_secret_key = sf_sync_config['sf_secret_key']
|
||||
headers = Common.get_headers(self, token, sf_secret_key)
|
||||
strUrl = sf_sync_config['sf_url'] + self.url
|
||||
r = requests.post(strUrl, json={}, data=None, headers=headers)
|
||||
r = r.json()
|
||||
result = json.loads(r['result'])
|
||||
if result['status'] == 1:
|
||||
_logger.info('result:%s' % result)
|
||||
for item in result['mrs_cutting_tool_model_yesterday_list']:
|
||||
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'],
|
||||
"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:
|
||||
raise ValidationError("刀具型号认证未通过")
|
||||
|
||||
# 同步所有刀具型号列表
|
||||
def sync_all_tool_model(self):
|
||||
sf_sync_config = self.env['res.config.settings'].get_values()
|
||||
token = sf_sync_config['token']
|
||||
sf_secret_key = sf_sync_config['sf_secret_key']
|
||||
headers = Common.get_headers(self, token, sf_secret_key)
|
||||
|
||||
strUrl = sf_sync_config['sf_url'] + self.url
|
||||
r = requests.post(strUrl, json={}, data=None, headers=headers)
|
||||
r = r.json()
|
||||
result = json.loads(r['result'])
|
||||
print('result', result)
|
||||
if result['status'] == 1:
|
||||
_logger.info('result:%s' % result)
|
||||
for item in result['mrs_cutting_tool_model_all_list']:
|
||||
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'],
|
||||
"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:
|
||||
raise ValidationError("刀具型号认证未通过")
|
||||
|
||||
Reference in New Issue
Block a user