加工精度同步
This commit is contained in:
@@ -187,3 +187,11 @@ class MrsMaterialApply(models.Model):
|
|||||||
|
|
||||||
name = fields.Char('名称', default=True)
|
name = fields.Char('名称', default=True)
|
||||||
active = fields.Boolean('有效', default=True)
|
active = fields.Boolean('有效', default=True)
|
||||||
|
|
||||||
|
|
||||||
|
class MachiningAccuracy(models.Model):
|
||||||
|
_name = 'sf.machining.accuracy'
|
||||||
|
_description = '加工精度'
|
||||||
|
name = fields.Char('精度名称', index=True)
|
||||||
|
discount = fields.Float('折扣')
|
||||||
|
sync_id = fields.Char('同步ID')
|
||||||
|
|||||||
@@ -614,4 +614,6 @@
|
|||||||
<field name="res_model">sf.machine.control_system</field>
|
<field name="res_model">sf.machine.control_system</field>
|
||||||
<field name="view_mode">tree</field>
|
<field name="view_mode">tree</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
|
#------------------加工精度------------------
|
||||||
</odoo>
|
</odoo>
|
||||||
@@ -84,6 +84,8 @@ class ResConfigSettings(models.TransientModel):
|
|||||||
_logger.info("同步刀具物料切削速度完成")
|
_logger.info("同步刀具物料切削速度完成")
|
||||||
self.env['sf.feed.per.tooth'].sync_all_feed_per_tooth()
|
self.env['sf.feed.per.tooth'].sync_all_feed_per_tooth()
|
||||||
_logger.info("同步刀具物料每齿走刀量完成")
|
_logger.info("同步刀具物料每齿走刀量完成")
|
||||||
|
self.env['sf.machining.accuracy'].sync_machining_accuracy_all()
|
||||||
|
_logger.info("同步加工精度完成")
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
_logger.info("sf_all_sync error: %s" % e)
|
_logger.info("sf_all_sync error: %s" % e)
|
||||||
|
|||||||
@@ -74,6 +74,8 @@ class MrStaticResourceDataSync(models.Model):
|
|||||||
_logger.info("同步刀具物料切削速度完成")
|
_logger.info("同步刀具物料切削速度完成")
|
||||||
self.env['sf.feed.per.tooth'].sync_feed_per_tooth_yesterday()
|
self.env['sf.feed.per.tooth'].sync_feed_per_tooth_yesterday()
|
||||||
_logger.info("同步刀具物料每齿走刀量完成")
|
_logger.info("同步刀具物料每齿走刀量完成")
|
||||||
|
self.env['sf.machining.accuracy'].sync_machining_accuracy_all()
|
||||||
|
_logger.info("同步加工精度完成")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
traceback_error = traceback.format_exc()
|
traceback_error = traceback.format_exc()
|
||||||
logging.error("同步静态资源库失败:%s" % traceback_error)
|
logging.error("同步静态资源库失败:%s" % traceback_error)
|
||||||
@@ -3133,3 +3135,36 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
raise ValidationError("刀具物料基本参数认证未通过")
|
raise ValidationError("刀具物料基本参数认证未通过")
|
||||||
|
|
||||||
|
|
||||||
|
class MachiningAccuracySync(models.Model):
|
||||||
|
_inherit = 'sf.machining.accuracy'
|
||||||
|
_description = '加工精度'
|
||||||
|
url = '/api/machining_accuracy/list'
|
||||||
|
|
||||||
|
def sync_machining_accuracy_all(self):
|
||||||
|
config = self.env['res.config.settings'].get_values()
|
||||||
|
headers = Common.get_headers(self, config['token'], config['sf_secret_key'])
|
||||||
|
strUrl = config['sf_url'] + self.url
|
||||||
|
r = requests.post(strUrl, json={}, data=None, headers=headers)
|
||||||
|
r = r.json()
|
||||||
|
result = json.loads(r['result'])
|
||||||
|
_logger.info('加工精度:%s' % result)
|
||||||
|
if result['status'] == 1:
|
||||||
|
machining_accuracy_all_list = result['machining_accuracy_all_list']
|
||||||
|
# 获取同步的id集合
|
||||||
|
ids = [obj['id'] for obj in machining_accuracy_all_list]
|
||||||
|
self.env['sf.machining.accuracy'].sudo().search(
|
||||||
|
[('sync_id', 'not in', ids)]).unlink()
|
||||||
|
for time in machining_accuracy_all_list:
|
||||||
|
machining_accuracy = self.env['sf.machining.accuracy'].sudo().search(
|
||||||
|
[('sync_id', '=', time['id'])])
|
||||||
|
if machining_accuracy:
|
||||||
|
machining_accuracy.name = time['name']
|
||||||
|
machining_accuracy.discount = time['discount']
|
||||||
|
else:
|
||||||
|
self.env['sf.machining.accuracy'].sudo().create({
|
||||||
|
"sync_id": time['id'],
|
||||||
|
"name": time['name'],
|
||||||
|
"discount": time['discount'],
|
||||||
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user