This commit is contained in:
jinling.yang
2022-11-25 10:57:03 +08:00
4 changed files with 27 additions and 6 deletions

View File

@@ -4,10 +4,15 @@ import time
import hashlib import hashlib
class Common(models.Model): class Common(models.Model):
_name = 'sf.sync.common' _name = 'sf.sync.common'
_description = u'公用类' _description = u'公用类'
def get_headers(self,token, secret_key): def get_headers(self,token, secret_key):
''' '''
获取requests中的heardes参数 获取requests中的heardes参数

View File

@@ -45,7 +45,21 @@ class MachineBrand(models.Model):
class MachineTool(models.Model): class MachineTool(models.Model):
_name = 'sf.machine_tool' _name = 'sf.machine_tool'
_description = '机床' _description = '机床'
MTcode = fields.Char("编码")
def get_no(self):
partner = self.env['sf.machine_tool'].sudo().search(
[('MTcode', '!=', '')],
limit=1,
order="id desc")
if not partner:
num = "%04d" % 1
else:
m = int(partner.MTcode) + 1
num = "%04d" % m
return num
MTcode = fields.Char("编码", default=get_no)
code = fields.Char('行业编码') code = fields.Char('行业编码')
name = fields.Char('名称') name = fields.Char('名称')
knife_type = fields.Selection( knife_type = fields.Selection(
@@ -148,11 +162,12 @@ class MachineTool(models.Model):
sf_secret_key = sf_sync_config['sf_secret_key'] sf_secret_key = sf_sync_config['sf_secret_key']
headers = Common.get_headers(self, token, sf_secret_key) headers = Common.get_headers(self, token, sf_secret_key)
strurl = sf_sync_config['sf_url'] + self.crea_url strurl = sf_sync_config['sf_url'] + self.crea_url
objs_all = request.env['sf.machine_tool'].sudo().search([]) objs_all = self.env['sf.machine_tool'].search([('MTcode', '=', self.MTcode)])
machine_tool_list = [] machine_tool_list = []
if objs_all: if objs_all:
for item in objs_all: for item in objs_all:
val = { val = {
'MTcode': item.MTcode,
'factory_token': token, 'factory_token': token,
'id': item.id, 'id': item.id,
'name': item.name, 'name': item.name,
@@ -179,10 +194,12 @@ class MachineTool(models.Model):
machine_tool_list.append(val) machine_tool_list.append(val)
# kw = machine_tool_list # kw = machine_tool_list
kw = json.dumps(machine_tool_list, ensure_ascii=False) kw = json.dumps(machine_tool_list, ensure_ascii=False)
r = requests.post(strurl, json={}, data={'kw': kw}, headers=headers) r = requests.post(strurl, json={}, data={'kw': kw, 'token': token}, headers=headers)
ret = r.json()
self.code = ret['code']
print(r) print(r)
if r == 200: if r == 200:
raise ValidationError("机床注册成功") return "机床注册成功"
else: else:
raise ValidationError("没有注册机床信息") raise ValidationError("没有注册机床信息")
@@ -247,4 +264,3 @@ class CuttingToolType(models.Model):
brand_id = fields.Many2one('sf.machine.brand', string='品牌') brand_id = fields.Many2one('sf.machine.brand', string='品牌')
remark = fields.Text('备注') remark = fields.Text('备注')
active = fields.Boolean('有效', default=True) active = fields.Boolean('有效', default=True)

View File

@@ -4,7 +4,6 @@ import logging
from datetime import datetime from datetime import datetime
from dateutil.relativedelta import relativedelta from dateutil.relativedelta import relativedelta
from odoo import api, fields, models, SUPERUSER_ID, _ from odoo import api, fields, models, SUPERUSER_ID, _
from odoo.addons.sf_base.commons.common import Common
class ResMrpWorkOrder(models.Model): class ResMrpWorkOrder(models.Model):

View File

@@ -31,6 +31,7 @@ class ResConfigSettings(models.TransientModel):
self.env['sf.machine.control_system'].sync_all_machine_tool_type_control_system() self.env['sf.machine.control_system'].sync_all_machine_tool_type_control_system()
_logger.info("同步资源库控制系统") _logger.info("同步资源库控制系统")
# self.env['sf.machine_tool'].sync_all_machine_tool() # self.env['sf.machine_tool'].sync_all_machine_tool()
# _logger.info("同步机床行业编码")
self.env['sf.machine_tool.type'].sync_all_machine_tool_type() self.env['sf.machine_tool.type'].sync_all_machine_tool_type()
_logger.info("同步资源库机床型号") _logger.info("同步资源库机床型号")
self.env['sf.cutting_tool.category'].sync_all_cutting_tool_category() self.env['sf.cutting_tool.category'].sync_all_cutting_tool_category()