odoo/ext/custom-addons/tz_dealer_discount/models/res_config.py

37 lines
1.6 KiB
Python

# -*- coding: utf-8 -*-
from odoo import fields, models, api
class ResCompany(models.Model):
_inherit = "res.company"
sale_dealer_discount_product_id = fields.Many2one('product.product', string='Sale Dealer Discount Product')
invoice_dealer_discount_product_id = fields.Many2one('product.product', string='Invoice Dealer Discount Product')
class ResConfigSettings(models.TransientModel):
_inherit = 'res.config.settings'
sale_dealer_discount_product_id = fields.Many2one('product.product', string='Sale Dealer Discount Product')
invoice_dealer_discount_product_id = fields.Many2one('product.product', string='Invoice Dealer Discount Product')
@api.model
def get_values(self):
res = super(ResConfigSettings, self).get_values()
res.update(
sale_dealer_discount_product_id=self.env.user.company_id.sale_dealer_discount_product_id and self.env.user.company_id.sale_dealer_discount_product_id.id or False,
invoice_dealer_discount_product_id=self.env.user.company_id.invoice_dealer_discount_product_id and self.env.user.company_id.invoice_dealer_discount_product_id.id or False,
)
return res
@api.multi
def set_values(self):
super(ResConfigSettings, self).set_values()
if not self.env.user._is_admin():
raise AccessError(_("Only administrators can change the settings"))
self.env.user.company_id.sale_dealer_discount_product_id = self.sale_dealer_discount_product_id.id
self.env.user.company_id.invoice_dealer_discount_product_id = self.invoice_dealer_discount_product_id.id
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: