4 changed files with 94 additions and 13 deletions
			
			
		@ -1,3 +1,24 @@ | 
				
			|||||
 | 
					# -*- coding: utf-8 -*- | 
				
			||||
 | 
					############################################################################# | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    Cybrosys Technologies Pvt. Ltd. | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) | 
				
			||||
 | 
					#    Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    You can modify it under the terms of the GNU LESSER | 
				
			||||
 | 
					#    GENERAL PUBLIC LICENSE (LGPL v3), Version 3. | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    This program is distributed in the hope that it will be useful, | 
				
			||||
 | 
					#    but WITHOUT ANY WARRANTY; without even the implied warranty of | 
				
			||||
 | 
					#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
				
			||||
 | 
					#    GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE | 
				
			||||
 | 
					#    (LGPL v3) along with this program. | 
				
			||||
 | 
					#    If not, see <http://www.gnu.org/licenses/>. | 
				
			||||
 | 
					# | 
				
			||||
 | 
					############################################################################# | 
				
			||||
from . import res_company | 
					from . import res_company | 
				
			||||
from . import res_config_settings | 
					from . import res_config_settings | 
				
			||||
from . import sale_order | 
					from . import sale_order | 
				
			||||
 | 
				
			|||||
@ -1,27 +1,45 @@ | 
				
			|||||
 | 
					# -*- coding: utf-8 -*- | 
				
			||||
 | 
					############################################################################# | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    Cybrosys Technologies Pvt. Ltd. | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) | 
				
			||||
 | 
					#    Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    You can modify it under the terms of the GNU LESSER | 
				
			||||
 | 
					#    GENERAL PUBLIC LICENSE (LGPL v3), Version 3. | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    This program is distributed in the hope that it will be useful, | 
				
			||||
 | 
					#    but WITHOUT ANY WARRANTY; without even the implied warranty of | 
				
			||||
 | 
					#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
				
			||||
 | 
					#    GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE | 
				
			||||
 | 
					#    (LGPL v3) along with this program. | 
				
			||||
 | 
					#    If not, see <http://www.gnu.org/licenses/>. | 
				
			||||
 | 
					# | 
				
			||||
 | 
					############################################################################# | 
				
			||||
from odoo import fields, models | 
					from odoo import fields, models | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					
 | 
				
			||||
class SaleOrder(models.Model): | 
					class SaleOrder(models.Model): | 
				
			||||
    _inherit = ['sale.order'] | 
					    _inherit = 'sale.order' | 
				
			||||
 | 
					
 | 
				
			||||
    state = fields.Selection(selection_add= | 
					    state = fields.Selection(selection_add= | 
				
			||||
                             [('to_approve', 'To Approve'), | 
					                             [('to_approve', 'To Approve')], ondelete={'to_approve': 'cascade'}) | 
				
			||||
                              ('sent',)], ondelete={'to_approve': 'cascade'}) | 
					 | 
				
			||||
 | 
					
 | 
				
			||||
    def button_approve(self): | 
					    def button_approve(self): | 
				
			||||
        self.write({'state': 'sale'}) | 
					        self.action_confirm() | 
				
			||||
 | 
					
 | 
				
			||||
    def action_confirm(self): | 
					    def action_confirm(self): | 
				
			||||
        res = super(SaleOrder, self).action_confirm() | 
					        if not self.user_has_groups('sales_team.group_sale_manager'): | 
				
			||||
        if self.company_id.so_double_validation: | 
					            if self.company_id.so_double_validation: | 
				
			||||
            if self.env['ir.config_parameter'].sudo().get_param('sales_order_double_approval.so_approval'): | 
					                if self.env['ir.config_parameter'].sudo().get_param('sales_order_double_approval.so_approval'): | 
				
			||||
                if self.amount_total > float( | 
					                    if self.amount_total > float( | 
				
			||||
                        self.env['ir.config_parameter'].sudo().get_param('sales_order_double_approval.so_min_amount')): | 
					                            self.env['ir.config_parameter'].sudo().get_param('sales_order_double_approval.so_min_amount')): | 
				
			||||
                    if self.user_has_groups('sales_team.group_sale_manager'): | 
					 | 
				
			||||
                        self.state = 'sale' | 
					 | 
				
			||||
                    else: | 
					 | 
				
			||||
                        self.state = 'to_approve' | 
					                        self.state = 'to_approve' | 
				
			||||
        return res | 
					                        return | 
				
			||||
 | 
					        return super(SaleOrder, self).action_confirm() | 
				
			||||
 | 
					
 | 
				
			||||
    def action_cancel(self): | 
					    def action_cancel(self): | 
				
			||||
        self.state = 'cancel' | 
					        self.state = 'cancel' | 
				
			||||
 | 
				
			|||||
					Loading…
					
					
				
		Reference in new issue