新增同步cloud的刀具标准库接口
This commit is contained in:
@@ -60,12 +60,11 @@ class ResConfigSettings(models.TransientModel):
|
||||
_logger.info("同步夹具型号")
|
||||
self.env['sf.fixture.model'].sync_all_fixture_model()
|
||||
_logger.info("同步功能夹具类型")
|
||||
# self.env['sf.functional.fixture'].sync_all_functional_fixture()
|
||||
|
||||
self.env['sf.functional.fixture.type'].sync_all_functional_fixture_type()
|
||||
|
||||
self.env['sf.machine_tool.type'].sync_all_machine_tool_type()
|
||||
_logger.info("同步资源库机床型号完成")
|
||||
self.env['sf.cutting_tool.standard.library'].sync_all_cutting_tool_standard_library()
|
||||
_logger.info("同步刀具标准库完成")
|
||||
except Exception as e:
|
||||
_logger.info("捕获错误信息:%s" % e)
|
||||
raise ValidationError("数据错误导致同步失败,请联系管理员")
|
||||
|
||||
@@ -56,6 +56,8 @@ class MrStaticResourceDataSync(models.Model):
|
||||
logging.info("刀具物料已每日同步成功")
|
||||
self.env['sf.cutting.tool.type'].sync_tool_type_yesterday()
|
||||
logging.info("刀具类型已每日同步成功")
|
||||
self.env['sf.cutting_tool.standard.library'].sync_cutting_tool_standard_library_yesterday()
|
||||
logging.info("刀具标准库已每日同步成功")
|
||||
self.env['sf.functional.cutting.tool.model'].sync_functional_cutting_tool_model_yesterday()
|
||||
logging.info("功能刀具类型已每日同步成功")
|
||||
self.env['maintenance.equipment.image'].sync_maintenance_equipment_image_yesterday()
|
||||
@@ -378,7 +380,6 @@ class sfProductionProcess(models.Model):
|
||||
raise ValidationError("表面工艺认证未通过")
|
||||
|
||||
|
||||
|
||||
class sfProcessingTechnology(models.Model):
|
||||
_inherit = 'sf.processing.technology'
|
||||
_description = '加工工艺'
|
||||
@@ -1708,6 +1709,7 @@ class SfMaintenanceEquipmentImage(models.Model):
|
||||
else:
|
||||
raise ValidationError("认证未通过")
|
||||
|
||||
|
||||
class MaterialApply(models.Model):
|
||||
_inherit = 'material.apply'
|
||||
_description = '材料应用'
|
||||
@@ -1726,19 +1728,17 @@ class MaterialApply(models.Model):
|
||||
result = json.loads(r['result'])
|
||||
if result['status'] == 1:
|
||||
for item in result['material_apply_yesterday_list']:
|
||||
brand = self.env['material.apply'].search(
|
||||
[("name", '=', item['name'])])
|
||||
if brand:
|
||||
brand.name = item['name'],
|
||||
brand.active = item['active']
|
||||
material_apply = self.search([("name", '=', item['name'])])
|
||||
if material_apply:
|
||||
material_apply.name = item['name']
|
||||
material_apply.active = item['active']
|
||||
else:
|
||||
self.env['material.apply'].create({
|
||||
self.create({
|
||||
"name": item['name'],
|
||||
"active": item['active'],
|
||||
|
||||
})
|
||||
else:
|
||||
raise ValidationError("认证未通过")
|
||||
raise ValidationError("材料应用认证未通过")
|
||||
|
||||
# 同步所有材料应用
|
||||
def sync_all_material_apply(self):
|
||||
@@ -1753,15 +1753,18 @@ class MaterialApply(models.Model):
|
||||
result = json.loads(r['result'])
|
||||
if result['status'] == 1:
|
||||
for item in result['material_apply_all_list']:
|
||||
brand = self.env['material.apply'].search(
|
||||
[("name", '=', item['name'])])
|
||||
if not brand:
|
||||
self.env['material.apply'].create({
|
||||
material_apply = self.search([("name", '=', item['name'])])
|
||||
if not material_apply:
|
||||
self.create({
|
||||
"name": item['name'],
|
||||
"active": item['active'],
|
||||
})
|
||||
else:
|
||||
material_apply.name = item['name']
|
||||
material_apply.active = item['active']
|
||||
else:
|
||||
raise ValidationError("认证未通过")
|
||||
raise ValidationError("材料应用认证未通过")
|
||||
|
||||
|
||||
class ModelInternationalStandards(models.Model):
|
||||
_inherit = 'sf.international.standards'
|
||||
@@ -1781,19 +1784,17 @@ class ModelInternationalStandards(models.Model):
|
||||
result = json.loads(r['result'])
|
||||
if result['status'] == 1:
|
||||
for item in result['mrs_international_standards_yesterday_list']:
|
||||
brand = self.env['sf.international.standards'].search(
|
||||
[("name", '=', item['name'])])
|
||||
if brand:
|
||||
brand.name = item['name'],
|
||||
brand.active = item['active']
|
||||
international_standards = self.search([("name", '=', item['name'])])
|
||||
if international_standards:
|
||||
international_standards.name = item['name']
|
||||
international_standards.active = item['active']
|
||||
else:
|
||||
self.env['sf.international.standards'].create({
|
||||
self.create({
|
||||
"name": item['name'],
|
||||
"active": item['active'],
|
||||
|
||||
})
|
||||
else:
|
||||
raise ValidationError("认证未通过")
|
||||
raise ValidationError("制造标准认证未通过")
|
||||
|
||||
# 同步所有制造标准
|
||||
def sync_all_mrs_international_standards(self):
|
||||
@@ -1808,12 +1809,106 @@ class ModelInternationalStandards(models.Model):
|
||||
result = json.loads(r['result'])
|
||||
if result['status'] == 1:
|
||||
for item in result['mrs_international_standards_all_list']:
|
||||
brand = self.env['sf.international.standards'].search(
|
||||
[("name", '=', item['name'])])
|
||||
if not brand:
|
||||
self.env['sf.international.standards'].create({
|
||||
international_standards = self.search([("name", '=', item['name'])])
|
||||
if not international_standards:
|
||||
self.create({
|
||||
"name": item['name'],
|
||||
"active": item['active'],
|
||||
})
|
||||
else:
|
||||
international_standards.name = item['name']
|
||||
international_standards.active = item['active']
|
||||
else:
|
||||
raise ValidationError("制造标准认证未通过")
|
||||
|
||||
|
||||
class Cutting_tool_standard_library(models.Model):
|
||||
_inherit = 'sf.cutting_tool.standard.library'
|
||||
_description = '刀具标准库'
|
||||
url = '/api/cutting_tool_standard_library/list'
|
||||
|
||||
# 定时同步刀具标准库
|
||||
def sync_cutting_tool_standard_library_yesterday(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:
|
||||
for item in result['cutting_tool_standard_library_yesterday_list']:
|
||||
cutting_tool_standard_library = self.search(
|
||||
[("code", '=', item['code'])])
|
||||
if cutting_tool_standard_library:
|
||||
cutting_tool_standard_library.write(
|
||||
{"name": item['name'],
|
||||
"active": item['active']}
|
||||
)
|
||||
else:
|
||||
self.create({
|
||||
"name": item['name'],
|
||||
"active": item['active'],
|
||||
})
|
||||
else:
|
||||
raise ValidationError("能力特征库认证未通过")
|
||||
raise ValidationError("刀具标准库认证未通过")
|
||||
|
||||
# 同步所有刀具标准库
|
||||
def sync_all_cutting_tool_standard_library(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:
|
||||
for item in result['cutting_tool_standard_library_all_list']:
|
||||
cutting_tool_standard_library = self.search([("code", '=', item['code'])])
|
||||
cutting_tool_type = self.env['sf.cutting.tool.type'].search(
|
||||
[("code", '=', item['cutting_tool_type_code'])])
|
||||
cutting_tool_material = self.env['sf.cutting.tool.material'].search(
|
||||
[("code", '=', item['cutting_tool_material_code'])])
|
||||
materials_model = self.env['sf.materials.model'].search(
|
||||
[("code", '=', item['materials_model_code'])])
|
||||
brand = self.env['sf.machine.brand'].search([("code", '=', item['brand_code'])])
|
||||
if not cutting_tool_standard_library:
|
||||
self.create({
|
||||
"name": item['name'],
|
||||
"cutting_tool_material_id": cutting_tool_material.id,
|
||||
"cutting_tool_type_id": cutting_tool_type.id,
|
||||
"brand_id": brand.id,
|
||||
"material_model_id": materials_model.id,
|
||||
"tool_hardness": item['tool_hardness'],
|
||||
"coating_material": item['coating_material'],
|
||||
"blade_type": item['blade_type'],
|
||||
"blade_diameter": item['blade_diameter'],
|
||||
"working_hardness": item['working_hardness'],
|
||||
"integral_coarse_medium_fine": item['integral_coarse_medium_fine'],
|
||||
"integral_run_out_accuracy_max": item['integral_run_out_accuracy_max'],
|
||||
"integral_run_out_accuracy_min": item['integral_run_out_accuracy_min'],
|
||||
"active": item['active'],
|
||||
})
|
||||
else:
|
||||
cutting_tool_standard_library.write(
|
||||
{"name": item['name'],
|
||||
"cutting_tool_material_id": cutting_tool_material.id,
|
||||
"cutting_tool_type_id": cutting_tool_type.id,
|
||||
"brand_id": brand.id,
|
||||
"material_model_id": materials_model.id,
|
||||
"tool_hardness": item['tool_hardness'],
|
||||
"coating_material": item['coating_material'],
|
||||
"blade_type": item['blade_type'],
|
||||
"blade_diameter": item['blade_diameter'],
|
||||
"working_hardness": item['working_hardness'],
|
||||
"integral_coarse_medium_fine": item['integral_coarse_medium_fine'],
|
||||
"integral_run_out_accuracy_max": item['integral_run_out_accuracy_max'],
|
||||
"integral_run_out_accuracy_min": item['integral_run_out_accuracy_min'],
|
||||
"active": item['active'], }
|
||||
)
|
||||
else:
|
||||
raise ValidationError("刀具标准库认证未通过")
|
||||
|
||||
Reference in New Issue
Block a user