From 9c5ecdfe76718fe1469eaa59f1aab21b694edc8c Mon Sep 17 00:00:00 2001 From: liaodanlong Date: Thu, 6 Mar 2025 10:25:56 +0800 Subject: [PATCH] =?UTF-8?q?sf=20=E6=9D=90=E6=96=99=E5=9E=8B=E5=8F=B7?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E4=BF=AE=E6=94=B9=E5=AD=97=E6=AE=B5=E4=BF=A1?= =?UTF-8?q?=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_base/models/common.py | 21 +++++++++++++++------ sf_base/views/common_view.xml | 8 ++++---- sf_mrs_connect/models/res_config_setting.py | 4 +++- 3 files changed, 22 insertions(+), 11 deletions(-) diff --git a/sf_base/models/common.py b/sf_base/models/common.py index 4152c119..25c79f72 100644 --- a/sf_base/models/common.py +++ b/sf_base/models/common.py @@ -57,15 +57,24 @@ class MrsMaterialModel(models.Model): remark = fields.Text("备注") gain_way = fields.Selection( [("自加工", "自加工"), ("外协", "委外加工"), ("采购", "采购")], - default="", string="获取方式") + default="采购", string="获取方式") supplier_ids = fields.One2many('sf.supplier.sort', 'materials_model_id', string='供应商') active = fields.Boolean('有效', default=True) - @api.constrains("gain_way") - def _check_supplier_ids(self): - for item in self: - if item.gain_way in ('外协', '采购') and not item.supplier_ids: - raise UserError("请添加供应商") + @api.model + def create(self, vals): + res = super(MrsMaterialModel, self).create(vals) + if not vals.get('supplier_ids'): + supplier_id = self.env['res.partner'].search([('name', '=', '湖南傲派自动化设备有限公司')], limit=1) + res.supplier_ids = [(0, 0, {'materials_model_id': res.id, 'partner_id': supplier_id.id or False})] + return res + else: + return res + # @api.constrains("gain_way") + # def _check_supplier_ids(self): + # for item in self: + # if item.gain_way in ('外协', '采购') and not item.supplier_ids: + # raise UserError("请添加供应商") class MrsProductionProcessCategory(models.Model): diff --git a/sf_base/views/common_view.xml b/sf_base/views/common_view.xml index e49e25ba..74b8f177 100644 --- a/sf_base/views/common_view.xml +++ b/sf_base/views/common_view.xml @@ -262,13 +262,13 @@ - - - + + + @@ -297,7 +297,7 @@ sf.materials.model - + diff --git a/sf_mrs_connect/models/res_config_setting.py b/sf_mrs_connect/models/res_config_setting.py index eb853186..c387f765 100644 --- a/sf_mrs_connect/models/res_config_setting.py +++ b/sf_mrs_connect/models/res_config_setting.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- # Part of SmartGo. See LICENSE file for full copyright and licensing details. import logging +import traceback import requests @@ -90,7 +91,8 @@ class ResConfigSettings(models.TransientModel): _logger.info("同步坯料冗余完成") except Exception as e: - _logger.info("sf_all_sync error: %s" % e) + traceback_error = traceback.format_exc() + _logger.error("sf_all_sync error:%s" % traceback_error) raise ValidationError("数据错误导致同步失败,请联系管理员") @api.model