接收从智能工厂传过来的订单等数据并创建编程单

This commit is contained in:
jinling.yang
2022-11-16 17:39:42 +08:00
parent 4ce0a7670c
commit 191bd65d69
5 changed files with 70 additions and 37 deletions

View File

@@ -3,11 +3,14 @@
import base64
import logging
import math
import json
import requests
from io import BytesIO
from odoo import api, fields, models, SUPERUSER_ID
from pystrich.code128 import Code128Encoder
from odoo.exceptions import ValidationError
from odoo.addons.sf_base.commons.common import Common
_logger = logging.getLogger(__name__)
@@ -244,7 +247,40 @@ class MrpWorkOrder(models.Model):
productions.create_workorder1(self.processing_panel)
return ""
# cnc程序获取
def fetchCNC(self):
cnc_process = self.env['mrp.workorder'].search(
[("routing_type", '=', 'CNC加工'),
("production_id", '=', self.production_id.id)],
limit=1,
order='id asc'
)
vals = {
'model_long': cnc_process.product_id.model_long,
'model_width': cnc_process.product_id.model_width,
'model_height': cnc_process.product_id.model_height,
'model_volume': cnc_process.product_id.model_volume,
'model_price': cnc_process.product_id.model_price,
'model_total_amount': cnc_process.product_id.model_total_amount,
'model_materials_code': cnc_process.product_id.materials_id.materials_no,
'model_materials_type_code': cnc_process.product_id.materials_type_id.materials_no,
'model_surface_process_code': cnc_process.product_id.model_surface_process_id.process_encode,
'model_process_parameters_code': cnc_process.product_id.model_process_parameters_id.process_encode,
'model_remark': cnc_process.product_id.model_remark
}
res = [{'order_no': self.product_id.barcode, 'production_no': self.production_id.name,
'intelligent_programming_str': vals,
'machine_tool_code': cnc_process.workcenter_id.machine_tool_id.code}]
configsettings = self.env['res.config.settings'].get_values()
token = configsettings['token']
mrs_secret_key = configsettings['mrs_secret_key']
config_header = Common.get_headers(self, token, mrs_secret_key)
url = '/api/intelligent_programming/create'
config_url = configsettings['mrs_url'] + url
res_str = json.dumps(res)
ret = requests.post(config_url, json={"result": res_str}, data=None, headers=config_header)
return ""