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
class Common(models.Model):
_name = 'sf.sync.common'
_description = u'公用类'
def get_headers(self,token, secret_key):
'''
获取requests中的heardes参数

View File

@@ -45,7 +45,21 @@ class MachineBrand(models.Model):
class MachineTool(models.Model):
_name = 'sf.machine_tool'
_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('行业编码')
name = fields.Char('名称')
knife_type = fields.Selection(
@@ -148,11 +162,12 @@ class MachineTool(models.Model):
sf_secret_key = sf_sync_config['sf_secret_key']
headers = Common.get_headers(self, token, sf_secret_key)
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 = []
if objs_all:
for item in objs_all:
val = {
'MTcode': item.MTcode,
'factory_token': token,
'id': item.id,
'name': item.name,
@@ -179,10 +194,12 @@ class MachineTool(models.Model):
machine_tool_list.append(val)
# kw = machine_tool_list
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)
if r == 200:
raise ValidationError("机床注册成功")
return "机床注册成功"
else:
raise ValidationError("没有注册机床信息")
@@ -247,4 +264,3 @@ class CuttingToolType(models.Model):
brand_id = fields.Many2one('sf.machine.brand', string='品牌')
remark = fields.Text('备注')
active = fields.Boolean('有效', default=True)

View File

@@ -4,7 +4,6 @@ import logging
from datetime import datetime
from dateutil.relativedelta import relativedelta
from odoo import api, fields, models, SUPERUSER_ID, _
from odoo.addons.sf_base.commons.common import Common
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()
_logger.info("同步资源库控制系统")
# self.env['sf.machine_tool'].sync_all_machine_tool()
# _logger.info("同步机床行业编码")
self.env['sf.machine_tool.type'].sync_all_machine_tool_type()
_logger.info("同步资源库机床型号")
self.env['sf.cutting_tool.category'].sync_all_cutting_tool_category()