Skip to content

Commit

Permalink
[MIG] website_sale_account_invoice_commission: Migration to 16.0
Browse files Browse the repository at this point in the history
closes #151

Signed-off-by: Juan José Scarafía <jjs@adhoc.com.ar>
  • Loading branch information
vib-adhoc committed Apr 11, 2023
1 parent 5818be9 commit 0f3effd
Show file tree
Hide file tree
Showing 5 changed files with 13 additions and 31 deletions.
26 changes: 2 additions & 24 deletions account_invoice_commission/models/account_commission_rule.py
Expand Up @@ -2,9 +2,7 @@
# For copyright and license notices, see __manifest__.py file in module root
# directory
##############################################################################
from odoo import models, fields, _
from odoo.exceptions import ValidationError

from odoo import models, fields

class AccountCommissionRule(models.Model):

Expand Down Expand Up @@ -96,24 +94,4 @@ def _get_rule_domain(self, date, product, partner_id, customer, amount):
def _get_rule(self, date, product, partner_id, customer, amount):
domain = self._get_rule_domain(
date, product, partner_id, customer, amount)
res = self.search(domain, limit=1)
if not res:
if product:
msj = (_(
'No commission rule found for product id "%s", partner id "%s"'
' date "%s" and customer "%s"') % (
' - '.join([str(product.id), product.name]),
partner_id,
date,
' - '.join([str(customer.id), customer.name])
))
else:
msj = (_(
'No commission rule found partner id "%s"'
' date "%s" and customer "%s"') % (
partner_id,
date,
' - '.join([str(customer.id), customer.name])
))
raise ValidationError(msj)
return res
return self.search(domain, limit=1)
8 changes: 6 additions & 2 deletions account_invoice_commission/models/account_move_line.py
Expand Up @@ -25,10 +25,14 @@ def _compute_commission_amount(self):
_logger.info('Computing commission amount line')
for rec in self:
date = rec.move_id.invoice_date or today
rec.commission_amount = rules._get_rule(
rule = rules._get_rule(
date, rec.product_id, commissioned_partner_id,
rec.move_id.commercial_partner_id,
-rec.balance,
).percent_commission * -rec.balance / 100.0
)
if rule:
rec.commission_amount = rule.percent_commission * -rec.balance / 100.0
else:
rec.commission_amount = 0.0
else:
self.commission_amount = 0.0
2 changes: 1 addition & 1 deletion account_invoice_commission/views/account_move_view.xml
Expand Up @@ -15,7 +15,7 @@
<field name="commission_invoice_ids"/>
</page>
<page string="Commission" attrs="{'invisible': [('move_type', 'in', ('out_invoice', 'out_refund', 'out_receipt'))]}">
<field name="commissioned_invoice_ids" context="{'commissioned_partner_id': partner_id, 'tree_view_ref':'account_invoice_commission.view_invoice_tree', 'form_view_ref':'account.move_form', 'search_default_not_commissioned': True, 'search_default_paid': 1, 'search_default_invoice_user_id': partner_user_id, 'default_move_type': 'out_invoice'}"/>
<field name="commissioned_invoice_ids" context="{'commissioned_partner_id': partner_id, 'tree_view_ref':'account_invoice_commission.view_invoice_tree', 'form_view_ref':'account.move_form', 'search_default_not_commissioned': True, 'search_default_closed': 1, 'search_default_invoice_user_id': partner_user_id, 'default_move_type': 'out_invoice'}"/>
</page>
</notebook>
<xpath expr="//field[@name='invoice_line_ids']/tree" position="inside">
Expand Down
4 changes: 2 additions & 2 deletions website_sale_account_invoice_commission/__manifest__.py
Expand Up @@ -19,7 +19,7 @@
##############################################################################
{
'name': 'Commission Invoices with Public Categories',
'version': "15.0.1.0.0",
'version': "16.0.1.0.0",
'category': 'Accounting',
'sequence': 14,
'summary': '',
Expand All @@ -37,7 +37,7 @@
],
'demo': [
],
'installable': False,
'installable': True,
'auto_install': True,
'application': False,
}
Expand Up @@ -16,9 +16,9 @@ class AccountCommissionRule(models.Model):
)

def _get_rule_domain(
self, date, product, partner_id, customer, amount, analytic_acc):
self, date, product, partner_id, customer, amount):
domain = super()._get_rule_domain(
date, product, partner_id, customer, amount, analytic_acc)
date, product, partner_id, customer, amount)
if not product:
domain += [('public_category_id', '=', False)]
else:
Expand Down

0 comments on commit 0f3effd

Please sign in to comment.