From 2fd8483a52323d3b058cbffa281194b4781ef556 Mon Sep 17 00:00:00 2001 From: "jinling.yang" Date: Mon, 25 Dec 2023 11:05:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=AE=A2=E6=88=B7,=E4=BE=9B?= =?UTF-8?q?=E5=BA=94=E5=95=86.=E9=94=80=E5=94=AE=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=92=8C=E9=87=87=E8=B4=AD=E8=AE=A2=E5=8D=95=E6=9D=83=E9=99=90?= =?UTF-8?q?=E9=9C=80=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_manufacturing/models/product_template.py | 4 +- sf_sale/models/auto_quatotion_common.py | 2 +- sf_sale/models/quick_easy_order.py | 4 +- sf_sale/models/sale_order.py | 41 ++++----- sf_sale/security/group_security.xml | 2 +- sf_sale/security/ir.model.access.csv | 3 + sf_sale/views/purchase_order_view.xml | 96 ++++++++++++++++----- 7 files changed, 105 insertions(+), 47 deletions(-) diff --git a/sf_manufacturing/models/product_template.py b/sf_manufacturing/models/product_template.py index 3233e674..285d43f0 100644 --- a/sf_manufacturing/models/product_template.py +++ b/sf_manufacturing/models/product_template.py @@ -6,8 +6,8 @@ import os from odoo import models, fields, api, _ from odoo.exceptions import ValidationError from odoo.modules import get_resource_path -# from OCC.Extend.DataExchange import read_step_file -# from OCC.Extend.DataExchange import write_stl_file +from OCC.Extend.DataExchange import read_step_file +from OCC.Extend.DataExchange import write_stl_file class ResProductMo(models.Model): diff --git a/sf_sale/models/auto_quatotion_common.py b/sf_sale/models/auto_quatotion_common.py index 10b83aed..09ea3f0f 100644 --- a/sf_sale/models/auto_quatotion_common.py +++ b/sf_sale/models/auto_quatotion_common.py @@ -2,7 +2,7 @@ import logging from odoo.modules import get_resource_path from odoo import fields, models, api -# from quatotion import readSql, feature_recognize, auto_quatotion +from quatotion import readSql, feature_recognize, auto_quatotion __author__ = 'jinling.yang' _logger = logging.getLogger(__name__) diff --git a/sf_sale/models/quick_easy_order.py b/sf_sale/models/quick_easy_order.py index 7419cc9a..1e5f274c 100644 --- a/sf_sale/models/quick_easy_order.py +++ b/sf_sale/models/quick_easy_order.py @@ -5,8 +5,8 @@ import os import json from datetime import datetime import requests -# from OCC.Extend.DataExchange import read_step_file -# from OCC.Extend.DataExchange import write_stl_file +from OCC.Extend.DataExchange import read_step_file +from OCC.Extend.DataExchange import write_stl_file from odoo import models, fields, api from odoo.modules import get_resource_path from odoo.exceptions import ValidationError, UserError diff --git a/sf_sale/models/sale_order.py b/sf_sale/models/sale_order.py index 38684213..04a2d3f2 100644 --- a/sf_sale/models/sale_order.py +++ b/sf_sale/models/sale_order.py @@ -101,23 +101,23 @@ class RePurchaseOrder(models.Model): vals['check_status'] = 'approved' return super().write(vals) - @api.model_create_multi - def create(self, vals_list): - # res = super().create(vals_list) - if self.env.user.has_group('sf_base.group_purchase'): - view = self.env.ref('sf_sale.action_purchase_order_submit_wizard') - return { - 'name': _('确认?'), - 'type': 'ir.actions.act_window', - 'view_mode': 'form', - 'res_model': 'purchase.order.wizard', - 'views': [(view.id, 'form')], - 'view_id': view.id, - 'target': 'new', - 'context': dict(self.env.context), - } - res = super().create(vals_list) - return res + # @api.model_create_multi + # def create(self, vals_list): + # # res = super().create(vals_list) + # if self.env.user.has_group('sf_base.group_purchase'): + # view = self.env.ref('sf_sale.action_purchase_order_submit_wizard') + # return { + # 'name': _('确认?'), + # 'type': 'ir.actions.act_window', + # 'view_mode': 'form', + # 'res_model': 'purchase.order.wizard', + # 'views': [(view.id, 'form')], + # 'view_id': view.id, + # 'target': 'new', + # 'context': dict(self.env.context), + # } + # res = super().create(vals_list) + # return res class ResPartnerToSale(models.Model): @@ -139,9 +139,10 @@ class ResPartnerToSale(models.Model): @api.constrains('email') def _check_email(self): - obj = self.sudo().search([('email', '=', self.email), ('id', '!=', self.id)]) - if obj: - raise UserError('该邮箱已存在,请重新输入') + if self.customer_rank > 0: + obj = self.sudo().search([('email', '=', self.email), ('id', '!=', self.id)]) + if obj: + raise UserError('该邮箱已存在,请重新输入') @api.model def _name_search(self, name, args=None, operator='ilike', limit=100, name_get_uid=None): diff --git a/sf_sale/security/group_security.xml b/sf_sale/security/group_security.xml index 67478aa6..8315c30e 100644 --- a/sf_sale/security/group_security.xml +++ b/sf_sale/security/group_security.xml @@ -66,7 +66,7 @@ ['|',('user_id','=',user.id),('create_uid', '=',user.id)] - + diff --git a/sf_sale/security/ir.model.access.csv b/sf_sale/security/ir.model.access.csv index f6164542..9009d87d 100644 --- a/sf_sale/security/ir.model.access.csv +++ b/sf_sale/security/ir.model.access.csv @@ -51,6 +51,9 @@ access_mrp_bom_byproduct_group_purchase_director,mrp_bom_byproduct_group_purchas access_mrp_bom_byproduct_group_sale_salemanager,mrp_bom_byproduct_group_sale_salemanager,mrp.model_mrp_bom_byproduct,sf_base.group_sale_salemanager,1,0,0,0 access_mrp_bom_byproduct_group_sale_director,mrp_bom_byproduct_group_sale_director,mrp.model_mrp_bom_byproduct,sf_base.group_sale_director,1,1,1,0 +access_purchase_order_group_purchase,purchase_order_group_purchase,purchase.model_purchase_order,sf_base.group_purchase,1,1,1,0 +access_purchase_order_group_purchase_director,purchase_order_group_purchase_director,purchase.model_purchase_order,sf_base.group_purchase_director,1,1,1,0 + access_purchase_order_line_group_purchase,purchase_order_line_group_purchase,purchase_stock.model_purchase_order_line,sf_base.group_purchase,1,1,1,0 access_purchase_order_line_group_purchase_director,purchase_order_line_group_purchase_director,purchase_stock.model_purchase_order_line,sf_base.group_purchase_director,1,1,1,0 access_purchase_order_line_group_sale_salemanager,purchase_order_line_group_sale_salemanager,purchase_stock.model_purchase_order_line,sf_base.group_sale_salemanager,1,0,0,0 diff --git a/sf_sale/views/purchase_order_view.xml b/sf_sale/views/purchase_order_view.xml index 9ae8242b..d8a5b840 100644 --- a/sf_sale/views/purchase_order_view.xml +++ b/sf_sale/views/purchase_order_view.xml @@ -7,67 +7,121 @@ - - + +