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