Public release from ruodoo-project: 19.0 - 2026-11-01 22:52:25 UTC
This commit is contained in:
30
ruodoo_commission/models/sale_order_line.py
Normal file
30
ruodoo_commission/models/sale_order_line.py
Normal file
@@ -0,0 +1,30 @@
|
||||
|
||||
from odoo import api, fields, models
|
||||
|
||||
|
||||
class SaleOrderLine(models.Model):
|
||||
_inherit = 'sale.order.line'
|
||||
|
||||
commission_ids = fields.Many2many(
|
||||
'commission.commission',
|
||||
'sale_order_line_commission_rel',
|
||||
'line_id', 'commission_id',
|
||||
string='Комиссии',
|
||||
domain="[('active', '=', True), ('company_id', '=', company_id)]",
|
||||
help='Комиссии агентам, начисляемые по этой строке заказа. '
|
||||
'Работает по аналогии с налогами: можно выбрать несколько.',
|
||||
)
|
||||
commission_amount = fields.Monetary(
|
||||
string='Сумма комиссий', compute='_compute_commission_amount',
|
||||
store=True, currency_field='currency_id',
|
||||
)
|
||||
|
||||
@api.depends(
|
||||
'commission_ids', 'price_subtotal', 'product_uom_qty', 'price_unit',
|
||||
)
|
||||
def _compute_commission_amount(self):
|
||||
for line in self:
|
||||
line.commission_amount = sum(
|
||||
commission._compute_amount(line)
|
||||
for commission in line.commission_ids
|
||||
)
|
||||
Reference in New Issue
Block a user