Skip to content

Commit

Permalink
[MIG] sale_commission_partial_settlement: Migration to 16.0
Browse files Browse the repository at this point in the history
  • Loading branch information
dalonsofl committed Sep 13, 2024
1 parent 0bb7f3e commit ab8191b
Show file tree
Hide file tree
Showing 15 changed files with 267 additions and 291 deletions.
10 changes: 5 additions & 5 deletions sale_commission_partial_settlement/README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ Sales commissions based on paid amount
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fcommission-lightgray.png?logo=github
:target: https://github.com/OCA/commission/tree/14.0/sale_commission_partial_settlement
:target: https://github.com/OCA/commission/tree/16.0/sale_commission_partial_settlement
:alt: OCA/commission
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/commission-14-0/commission-14-0-sale_commission_partial_settlement
:target: https://translation.odoo-community.org/projects/commission-16-0/commission-16-0-sale_commission_partial_settlement
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/commission&target_branch=14.0
:target: https://runboat.odoo-community.org/builds?repo=OCA/commission&target_branch=16.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|
Expand All @@ -50,7 +50,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues <https://github.com/OCA/commission/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/commission/issues/new?body=module:%20sale_commission_partial_settlement%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
`feedback <https://github.com/OCA/commission/issues/new?body=module:%20sale_commission_partial_settlement%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Expand Down Expand Up @@ -105,6 +105,6 @@ Current `maintainers <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-aleuffre| |maintainer-renda-dev| |maintainer-PicchiSeba|

This module is part of the `OCA/commission <https://github.com/OCA/commission/tree/14.0/sale_commission_partial_settlement>`_ project on GitHub.
This module is part of the `OCA/commission <https://github.com/OCA/commission/tree/16.0/sale_commission_partial_settlement>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
4 changes: 2 additions & 2 deletions sale_commission_partial_settlement/__manifest__.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Copyright 2023 Nextev
{
"name": "Sales commissions based on paid amount",
"version": "14.0.1.0.1",
"version": "16.0.1.0.0",
"author": "Nextev Srl," "Ooops," "Odoo Community Association (OCA)",
"maintainers": ["aleuffre", "renda-dev", "PicchiSeba"],
"category": "Sales Management",
Expand All @@ -10,7 +10,7 @@
"website": "https://github.com/OCA/commission",
"data": [
"security/ir.model.access.csv",
"views/sale_commission_view.xml",
"views/commission_view.xml",
],
"installable": True,
}

This file was deleted.

7 changes: 4 additions & 3 deletions sale_commission_partial_settlement/models/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
from . import sale_commission
from . import account_move
from . import commission
from . import account_invoice_line_agent
from . import account_invoice_line_agent_partial
from . import account_partial_reconcile
from . import settlement
from . import commission_settlement_line
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ def _compute_settled(self):
lambda x: x.commission_id.payment_amount_type != "paid"
)
for line in self - filtered_lines:
if not line.mapped("agent_line.settlement_id"):
if not line.settlement_line_ids:
line.settled = False

super(AccountInvoiceLineAgent, filtered_lines)._compute_settled()
return super(AccountInvoiceLineAgent, filtered_lines)._compute_settled()

def _partial_commissions(self, date_payment_to):
"""
Expand All @@ -33,11 +33,12 @@ def _partial_commissions(self, date_payment_to):
lines_to_update = {}
for line in self:
line_total_amount = line.amount
reconciled_partials, _ = line.invoice_id._get_reconciled_invoices_partials()
for (
partial,
amount,
counterpart_line,
) in line.invoice_id._get_reconciled_invoices_partials():
) in reconciled_partials:
if partial.partial_commission_settled:
continue

Check warning on line 43 in sale_commission_partial_settlement/models/account_invoice_line_agent.py

View check run for this annotation

Codecov / codecov/patch

sale_commission_partial_settlement/models/account_invoice_line_agent.py#L43

Added line #L43 was not covered by tests
elif date_payment_to and date_payment_to < counterpart_line.date:
Expand All @@ -51,11 +52,7 @@ def _partial_commissions(self, date_payment_to):
partial_payment_remaining[partial.id] = {"remaining_amount": amount}
if line.object_id.price_total <= payment_amount:
partial_lines_to_settle.append(
{
"invoice_line_agent_id": line.id,
"currency_id": line.currency_id.id,
"amount": line_total_amount,
}
self._partial_agent_line_values(line, line_total_amount)
)
lines_to_update[line.id] = {
"partial_settled": line_total_amount,
Expand All @@ -71,11 +68,7 @@ def _partial_commissions(self, date_payment_to):
line.invoice_id.commission_total * paid_in_proportion
)
partial_lines_to_settle.append(
{
"invoice_line_agent_id": line.id,
"currency_id": line.currency_id.id,
"amount": partial_commission,
}
self._partial_agent_line_values(line, partial_commission)
)
if line.id in lines_to_update:
lines_to_update[line.id]["partial_settled"] += partial_commission

Check warning on line 74 in sale_commission_partial_settlement/models/account_invoice_line_agent.py

View check run for this annotation

Codecov / codecov/patch

sale_commission_partial_settlement/models/account_invoice_line_agent.py#L74

Added line #L74 was not covered by tests
Expand All @@ -91,23 +84,9 @@ def _partial_commissions(self, date_payment_to):
)
return partial_agent_lines, lines_to_update


class AccountInvoiceLineAgentPartial(models.Model):
_name = "account.invoice.line.agent.partial"
_description = "Partial agent commissions"

invoice_line_agent_id = fields.Many2one("account.invoice.line.agent", required=True)
agent_line = fields.Many2many(
comodel_name="sale.commission.settlement.line",
relation="settlement_agent_line_partial_rel",
column1="agent_line_partial_id",
column2="settlement_id",
copy=False,
)
amount = fields.Monetary(
string="Commission Amount",
)
currency_id = fields.Many2one(
related="invoice_line_agent_id.currency_id",
)
settled = fields.Boolean()
def _partial_agent_line_values(self, line, amount):
return {
"invoice_line_agent_id": line.id,
"currency_id": line.currency_id.id,
"amount": amount,
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
from odoo import fields, models


class AccountInvoiceLineAgentPartial(models.Model):
_name = "account.invoice.line.agent.partial"
_description = "Partial agent commissions"

invoice_line_agent_id = fields.Many2one("account.invoice.line.agent", required=True)
agent_line = fields.Many2many(
comodel_name="commission.settlement.line",
relation="settlement_agent_line_partial_rel",
column1="agent_line_partial_id",
column2="settlement_id",
copy=False,
)
amount = fields.Monetary(
string="Commission Amount",
)
currency_id = fields.Many2one(
related="invoice_line_agent_id.currency_id",
)
settled = fields.Boolean()
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
from odoo import fields, models


class SaleCommission(models.Model):
_inherit = "sale.commission"
class Commission(models.Model):
_inherit = "commission"

payment_amount_type = fields.Selection(
[("full", "Full amount"), ("paid", "Paid amount")],
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
from odoo import api, fields, models


class SettlementLine(models.Model):
_inherit = "sale.commission.settlement.line"
class CommissionSettlementLine(models.Model):
_inherit = "commission.settlement.line"

agent_line_partial_ids = fields.Many2many(
comodel_name="account.invoice.line.agent.partial",
Expand All @@ -23,4 +23,4 @@ def _compute_settled_amount(self):
if rec.commission_id.payment_amount_type == "paid":
rec.settled_amount = rec.agent_line_partial_ids[:1].amount

Check warning on line 24 in sale_commission_partial_settlement/models/commission_settlement_line.py

View check run for this annotation

Codecov / codecov/patch

sale_commission_partial_settlement/models/commission_settlement_line.py#L24

Added line #L24 was not covered by tests
else:
rec.settled_amount = rec.agent_line[:1].amount
rec.settled_amount = rec.invoice_agent_line_id[:1].amount
17 changes: 7 additions & 10 deletions sale_commission_partial_settlement/static/description/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,10 @@

/*
:Author: David Goodger (goodger@python.org)
:Id: $Id: html4css1.css 9511 2024-01-13 09:50:07Z milde $
:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $
:Copyright: This stylesheet has been placed in the public domain.

Default cascading style sheet for the HTML output of Docutils.
Despite the name, some widely supported CSS2 features are used.

See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to
customize this style sheet.
Expand Down Expand Up @@ -275,7 +274,7 @@
margin-left: 2em ;
margin-right: 2em }

pre.code .ln { color: gray; } /* line numbers */
pre.code .ln { color: grey; } /* line numbers */
pre.code, code { background-color: #eeeeee }
pre.code .comment, code .comment { color: #5C6576 }
pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold }
Expand All @@ -301,7 +300,7 @@
span.pre {
white-space: pre }

span.problematic, pre.problematic {
span.problematic {
color: red }

span.section-subtitle {
Expand Down Expand Up @@ -369,7 +368,7 @@ <h1 class="title">Sales commissions based on paid amount</h1>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:72b8b9ff4225524c4105f059588ec2038649d39259909c6d43d8e7c4b62b06a2
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/commission/tree/14.0/sale_commission_partial_settlement"><img alt="OCA/commission" src="https://img.shields.io/badge/github-OCA%2Fcommission-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/commission-14-0/commission-14-0-sale_commission_partial_settlement"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/commission&amp;target_branch=14.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/commission/tree/16.0/sale_commission_partial_settlement"><img alt="OCA/commission" src="https://img.shields.io/badge/github-OCA%2Fcommission-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/commission-16-0/commission-16-0-sale_commission_partial_settlement"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/commission&amp;target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p>This module allows to settle commissions based on paid amount.</p>
<p><strong>Table of contents</strong></p>
<div class="contents local topic" id="contents">
Expand Down Expand Up @@ -398,7 +397,7 @@ <h1><a class="toc-backref" href="#toc-entry-2">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/commission/issues">GitHub Issues</a>.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
<a class="reference external" href="https://github.com/OCA/commission/issues/new?body=module:%20sale_commission_partial_settlement%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<a class="reference external" href="https://github.com/OCA/commission/issues/new?body=module:%20sale_commission_partial_settlement%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p>
</div>
<div class="section" id="credits">
Expand Down Expand Up @@ -439,15 +438,13 @@ <h2><a class="toc-backref" href="#toc-entry-5">Contributors</a></h2>
<div class="section" id="maintainers">
<h2><a class="toc-backref" href="#toc-entry-6">Maintainers</a></h2>
<p>This module is maintained by the OCA.</p>
<a class="reference external image-reference" href="https://odoo-community.org">
<img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" />
</a>
<a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a>
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.</p>
<p>Current <a class="reference external" href="https://odoo-community.org/page/maintainer-role">maintainers</a>:</p>
<p><a class="reference external image-reference" href="https://github.com/aleuffre"><img alt="aleuffre" src="https://github.com/aleuffre.png?size=40px" /></a> <a class="reference external image-reference" href="https://github.com/renda-dev"><img alt="renda-dev" src="https://github.com/renda-dev.png?size=40px" /></a> <a class="reference external image-reference" href="https://github.com/PicchiSeba"><img alt="PicchiSeba" src="https://github.com/PicchiSeba.png?size=40px" /></a></p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/commission/tree/14.0/sale_commission_partial_settlement">OCA/commission</a> project on GitHub.</p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/commission/tree/16.0/sale_commission_partial_settlement">OCA/commission</a> project on GitHub.</p>
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
</div>
</div>
Expand Down
Loading

0 comments on commit ab8191b

Please sign in to comment.