From 1582896ac42337844de11c58a96e6b666797b7ca Mon Sep 17 00:00:00 2001 From: gqh Date: Wed, 23 Nov 2022 11:00:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=BA=E5=BA=8A=E5=94=AF=E4=B8=80=E7=BC=96?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_base/commons/common.py | 5 +++++ sf_base/models/base.py | 20 +++++++++++++++++--- sf_manufacturing/models/mrp_workorder.py | 1 - sf_mrs_connect/models/res_config_setting.py | 1 + 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/sf_base/commons/common.py b/sf_base/commons/common.py index d146ce3c..f99d6563 100644 --- a/sf_base/commons/common.py +++ b/sf_base/commons/common.py @@ -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参数 diff --git a/sf_base/models/base.py b/sf_base/models/base.py index a5dec8e4..23f002ba 100644 --- a/sf_base/models/base.py +++ b/sf_base/models/base.py @@ -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, @@ -247,4 +262,3 @@ class CuttingToolType(models.Model): brand_id = fields.Many2one('sf.machine.brand', string='品牌') remark = fields.Text('备注') active = fields.Boolean('有效', default=True) - diff --git a/sf_manufacturing/models/mrp_workorder.py b/sf_manufacturing/models/mrp_workorder.py index 2922ee3e..7cba36b0 100644 --- a/sf_manufacturing/models/mrp_workorder.py +++ b/sf_manufacturing/models/mrp_workorder.py @@ -1,7 +1,6 @@ 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): diff --git a/sf_mrs_connect/models/res_config_setting.py b/sf_mrs_connect/models/res_config_setting.py index 55b3e66c..fec87d75 100644 --- a/sf_mrs_connect/models/res_config_setting.py +++ b/sf_mrs_connect/models/res_config_setting.py @@ -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()