1、工单的cnc加工模型添加功能刀具类型字段;2、添加根据刀具类型和刀具名称检索现有功能刀具是否满足需求,如果不满足则创建CAM工单程序用刀计划记录的功能记录;3、添加MES装刀指令接口,根据cnc加工所需的刀具类型和刀具名称检索现有机床内功能刀具是否满足需求,如果不满足则发送MES装刀指令;4、添加刀具组接口,新增功能刀具时传送功能刀具名称、编码、刀具组。
This commit is contained in:
38
sf_tool_management/models/mrp_workorder.py
Normal file
38
sf_tool_management/models/mrp_workorder.py
Normal file
@@ -0,0 +1,38 @@
|
||||
import json
|
||||
import requests
|
||||
from odoo import fields, models, api
|
||||
from odoo.exceptions import ValidationError
|
||||
from odoo.addons.sf_base.commons.common import Common
|
||||
|
||||
|
||||
class CNCprocessing(models.Model):
|
||||
_inherit = 'sf.cnc.processing'
|
||||
_description = 'CNC加工用刀检测'
|
||||
|
||||
# ==========MES装刀指令接口==========
|
||||
def register_cnc_processing(self, cnc_processing):
|
||||
create_url = '/AutoDeviceApi/FeedBackOut'
|
||||
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'] + create_url
|
||||
val = {
|
||||
'DeviceId': cnc_processing.workorder_id.machine_tool_name,
|
||||
'RfidCode': None,
|
||||
'ToolId': cnc_processing.cutting_tool_no
|
||||
}
|
||||
kw = json.dumps(val, ensure_ascii=False)
|
||||
r = requests.post(strurl, json={}, data={'kw': kw, 'token': token}, headers=headers)
|
||||
ret = r.json()
|
||||
if r == 200:
|
||||
return "MES装刀指令发送成功"
|
||||
else:
|
||||
raise ValidationError("MES装刀指令发送失败")
|
||||
|
||||
@api.model_create_multi
|
||||
def create(self, vals):
|
||||
obj = super(CNCprocessing, self).create(vals)
|
||||
# 调用CAM工单程序用刀计划创建方法
|
||||
self.env['sf.cam.work.order.program.knife.plan'].create_cam_work_plan(obj)
|
||||
return obj
|
||||
Reference in New Issue
Block a user