完善人工编程功能

This commit is contained in:
mgw
2025-02-17 15:37:30 +08:00
parent 3e9b6f808d
commit 567ea84b00
4 changed files with 131 additions and 49 deletions

View File

@@ -235,7 +235,7 @@ class MrpProduction(models.Model):
programming_no = fields.Char('编程单号')
work_state = fields.Char('业务状态')
programming_state = fields.Selection(
[('编程中', '编程中'), ('已编程', '已编程'), ('已编程未下发', '已编程未下发'), ('已下发', '已下发')],
[('编程中', '编程中'), ('已编程', '已编程'), ('已编程未下发', '已编程未下发'), ('已下发', '已下发'), ('已取消', '已取消')],
string='编程状态',
tracking=True)
glb_file = fields.Binary("glb模型文件")
@@ -646,6 +646,28 @@ class MrpProduction(models.Model):
logging.info('update_programming_state error:%s' % e)
raise UserError("更新编程单状态失败,请联系管理员")
# 修改编程单状态
def _change_programming_state(self):
try:
res = {"programming_no": self.programming_no, "state": "已取消"}
logging.info('res=%s:' % res)
configsettings = self.env['res.config.settings'].get_values()
config_header = Common.get_headers(self, configsettings['token'], configsettings['sf_secret_key'])
url = '/api/intelligent_programming/set_state'
config_url = configsettings['sf_url'] + url
ret = requests.post(config_url, json=res, data=None, headers=config_header)
ret = ret.json()
result = json.loads(ret['result'])
logging.info('change_programming_state-ret:%s' % result)
if result['status'] == 1:
self.write({'programming_state': '已取消'})
else:
raise UserError(ret['message'])
except Exception as e:
logging.info('change_programming_state error:%s' % e)
raise UserError("修改编程单状态失败,请联系管理员")
# cnc程序获取
def fetchCNC(self, production_names):
cnc = self.env['mrp.production'].search([('id', '=', self.id)])
@@ -701,14 +723,14 @@ class MrpProduction(models.Model):
config_url = configsettings['sf_url'] + url
res['token'] = configsettings['token']
# res_str = json.dumps(res)
# ret = requests.post(config_url, json={}, data=res, headers=config_header)
# ret = ret.json()
# logging.info('fetchCNC-ret:%s' % ret)
# if ret['status'] == 1:
# self.write(
# {'programming_no': ret['programming_no'], 'programming_state': '编程中', 'work_state': '编程中'})
# else:
# raise UserError(ret['message'])
ret = requests.post(config_url, json={}, data=res, headers=config_header)
ret = ret.json()
logging.info('fetchCNC-ret:%s' % ret)
if ret['status'] == 1:
self.write(
{'programming_no': ret['programming_no'], 'programming_state': '编程中', 'work_state': '编程中'})
else:
raise UserError(ret['message'])
except Exception as e:
logging.info('fetchCNC error:%s' % e)
raise UserError("cnc程序获取编程单失败,请联系管理员")