Skip to content

Commit

Permalink
[MIG] account_invoice_start_end_dates: Migration to 18.0
Browse files Browse the repository at this point in the history
Co-authored-by: Do Anh Duy <[email protected]>
  • Loading branch information
fredericgrall authored and xaviedoanhduy committed Nov 13, 2024
1 parent 5a687a9 commit ed5e932
Show file tree
Hide file tree
Showing 8 changed files with 61 additions and 48 deletions.
18 changes: 12 additions & 6 deletions account_invoice_start_end_dates/README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ Account Invoice Start End Dates
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Faccount--closing-lightgray.png?logo=github
:target: https://github.com/OCA/account-closing/tree/17.0/account_invoice_start_end_dates
:target: https://github.com/OCA/account-closing/tree/18.0/account_invoice_start_end_dates
:alt: OCA/account-closing
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/account-closing-17-0/account-closing-17-0-account_invoice_start_end_dates
:target: https://translation.odoo-community.org/projects/account-closing-18-0/account-closing-18-0-account_invoice_start_end_dates
: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/account-closing&target_branch=17.0
:target: https://runboat.odoo-community.org/builds?repo=OCA/account-closing&target_branch=18.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|
Expand Down Expand Up @@ -61,7 +61,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues <https://github.com/OCA/account-closing/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/account-closing/issues/new?body=module:%20account_invoice_start_end_dates%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
`feedback <https://github.com/OCA/account-closing/issues/new?body=module:%20account_invoice_start_end_dates%0Aversion:%2018.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 All @@ -77,16 +77,22 @@ Contributors
------------

- Alexis de Lattre <[email protected]>

- Jeroen Evens <[email protected]>

- Frederic Grall <[email protected]>

- `Trobz <https://trobz.com>`__:

- Thao Le [email protected]
- Do Anh Duy [email protected]

Other credits
-------------

The migration of this module from 16.0 to 17.0 was financially supported
by Camptocamp.
by Camptocamp. The migration of this module from 17.0 to 18.0 was
financially supported by Camptocamp.

Maintainers
-----------
Expand All @@ -109,6 +115,6 @@ Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-alexis-via|

This module is part of the `OCA/account-closing <https://github.com/OCA/account-closing/tree/17.0/account_invoice_start_end_dates>`_ project on GitHub.
This module is part of the `OCA/account-closing <https://github.com/OCA/account-closing/tree/18.0/account_invoice_start_end_dates>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
2 changes: 1 addition & 1 deletion account_invoice_start_end_dates/__manifest__.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

{
"name": "Account Invoice Start End Dates",
"version": "17.0.1.1.0",
"version": "18.0.1.0.0",
"category": "Accounting & Finance",
"license": "AGPL-3",
"summary": "Adds start/end dates on invoice/move lines",
Expand Down
30 changes: 15 additions & 15 deletions account_invoice_start_end_dates/models/account_move.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# @author: Alexis de Lattre <[email protected]>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

from odoo import _, models
from odoo import models
from odoo.exceptions import UserError


Expand All @@ -11,18 +11,18 @@ class AccountMove(models.Model):

def _post(self, soft=True):
for move in self:
for line in move.line_ids:
if (
line.product_id
and line.product_id.must_have_dates
and (not line.start_date or not line.end_date)
):
raise UserError(
_(
"Missing Start Date and End Date for invoice "
"line with Product '%s' which has the "
"property 'Must Have Start/End Dates'."
)
% (line.product_id.display_name)
)
missing_date_lines = move.line_ids.filtered(
lambda line: line.product_id
and line.must_have_dates
and (not line.start_date or not line.end_date)
)
if missing_date_lines:
product_name = missing_date_lines[0].product_id.display_name
raise UserError(
self.env._(
"Missing Start Date and End Date for invoice "
"line with Product '{product_name}' which has the "
"property 'Must Have Start/End Dates'.",
).format(product_name=product_name)
)
return super()._post(soft=soft)
19 changes: 10 additions & 9 deletions account_invoice_start_end_dates/models/account_move_line.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# @author: Alexis de Lattre <[email protected]>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

from odoo import _, api, fields, models
from odoo import api, fields, models
from odoo.exceptions import ValidationError
from odoo.tools.misc import format_date

Expand All @@ -19,25 +19,26 @@ def _check_start_end_dates(self):
for moveline in self:
if moveline.start_date and not moveline.end_date:
raise ValidationError(
_("Missing End Date for line '%s'.") % (moveline.display_name)
self.env._(f"Missing End Date for line '{moveline.display_name}'.")
)
if moveline.end_date and not moveline.start_date:
raise ValidationError(
_("Missing Start Date for line '%s'.") % (moveline.display_name)
self.env._(
f"Missing Start Date for line '{moveline.display_name}'."
)
)
if (
moveline.end_date
and moveline.start_date
and moveline.start_date > moveline.end_date
):
raise ValidationError(
_(
self.env._(
"Start Date (%(start_date)s) should be before End Date "
"(%(end_date)s) for line '%(name)s'."
).format(
start_date=format_date(self.env, moveline.start_date),
end_date=format_date(self.env, moveline.end_date),
name=moveline.display_name,
)
% {
"start_date": format_date(self.env, moveline.start_date),
"end_date": format_date(self.env, moveline.end_date),
"name": moveline.display_name,
}
)
5 changes: 4 additions & 1 deletion account_invoice_start_end_dates/readme/CONTRIBUTORS.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
- Alexis de Lattre \<<[email protected]>\>
- Jeroen Evens \<<[email protected]>\>
- [Trobz](https://trobz.com):
- Frederic Grall \<<[email protected]>>

- [Trobz](https://trobz.com):
- Thao Le <[email protected]>
- Do Anh Duy <[email protected]>
1 change: 1 addition & 0 deletions account_invoice_start_end_dates/readme/CREDITS.md
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
The migration of this module from 16.0 to 17.0 was financially supported by Camptocamp.
The migration of this module from 17.0 to 18.0 was financially supported by Camptocamp.
22 changes: 14 additions & 8 deletions account_invoice_start_end_dates/static/description/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,11 @@

/*
:Author: David Goodger ([email protected])
:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $
:Id: $Id: html4css1.css 9511 2024-01-13 09:50:07Z 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 @@ -274,7 +275,7 @@
margin-left: 2em ;
margin-right: 2em }

pre.code .ln { color: grey; } /* line numbers */
pre.code .ln { color: gray; } /* 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 @@ -300,7 +301,7 @@
span.pre {
white-space: pre }

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

span.section-subtitle {
Expand Down Expand Up @@ -368,7 +369,7 @@ <h1 class="title">Account Invoice Start End Dates</h1>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:fd8f3cbe2bc320dc37d284f33eefb6bb6366c3bd033d31d96e9710a863257ca2
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<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/account-closing/tree/17.0/account_invoice_start_end_dates"><img alt="OCA/account-closing" src="https://img.shields.io/badge/github-OCA%2Faccount--closing-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/account-closing-17-0/account-closing-17-0-account_invoice_start_end_dates"><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/account-closing&amp;target_branch=17.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/account-closing/tree/18.0/account_invoice_start_end_dates"><img alt="OCA/account-closing" src="https://img.shields.io/badge/github-OCA%2Faccount--closing-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/account-closing-18-0/account-closing-18-0-account_invoice_start_end_dates"><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/account-closing&amp;target_branch=18.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p>This module adds the fields <em>Start Date</em> and <em>End Date</em> on invoice/move
lines.</p>
<p>It also adds an option <em>Must Have Start/End Dates</em> on the product form
Expand Down Expand Up @@ -407,7 +408,7 @@ <h1><a class="toc-backref" href="#toc-entry-1">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/account-closing/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/account-closing/issues/new?body=module:%20account_invoice_start_end_dates%0Aversion:%2017.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/account-closing/issues/new?body=module:%20account_invoice_start_end_dates%0Aversion:%2018.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 All @@ -423,27 +424,32 @@ <h2><a class="toc-backref" href="#toc-entry-4">Contributors</a></h2>
<ul class="simple">
<li>Alexis de Lattre &lt;<a class="reference external" href="mailto:alexis.delattre&#64;akretion.com">alexis.delattre&#64;akretion.com</a>&gt;</li>
<li>Jeroen Evens &lt;<a class="reference external" href="mailto:jeroen.evens&#64;dynapps.be">jeroen.evens&#64;dynapps.be</a>&gt;</li>
<li>Frederic Grall &lt;<a class="reference external" href="mailto:fgr&#64;apik.cloud">fgr&#64;apik.cloud</a>&gt;</li>
<li><a class="reference external" href="https://trobz.com">Trobz</a>:<ul>
<li>Thao Le <a class="reference external" href="mailto:thaolt&#64;trobz.com">thaolt&#64;trobz.com</a></li>
<li>Do Anh Duy <a class="reference external" href="mailto:duyda&#64;trobz.com">duyda&#64;trobz.com</a></li>
</ul>
</li>
</ul>
</div>
<div class="section" id="other-credits">
<h2><a class="toc-backref" href="#toc-entry-5">Other credits</a></h2>
<p>The migration of this module from 16.0 to 17.0 was financially supported
by Camptocamp.</p>
by Camptocamp. The migration of this module from 17.0 to 18.0 was
financially supported by Camptocamp.</p>
</div>
<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">maintainer</a>:</p>
<p><a class="reference external image-reference" href="https://github.com/alexis-via"><img alt="alexis-via" src="https://github.com/alexis-via.png?size=40px" /></a></p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/account-closing/tree/17.0/account_invoice_start_end_dates">OCA/account-closing</a> project on GitHub.</p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/account-closing/tree/18.0/account_invoice_start_end_dates">OCA/account-closing</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
12 changes: 4 additions & 8 deletions account_invoice_start_end_dates/views/account_move.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
<field name="inherit_id" ref="account.view_move_line_form" />
<field name="arch" type="xml">
<field name="date_maturity" position="after">
<field name="must_have_dates" invisible="1" />
<field name="start_date" required="must_have_dates" />
<field name="end_date" required="must_have_dates" />
</field>
Expand All @@ -23,7 +22,6 @@
<field name="inherit_id" ref="account.view_move_line_tree" />
<field name="arch" type="xml">
<field name="date_maturity" position="after">
<field name="must_have_dates" column_invisible="1" />
<field name="start_date" optional="hide" />
<field name="end_date" optional="hide" />
</field>
Expand All @@ -35,23 +33,21 @@
<field name="inherit_id" ref="account.view_move_form" />
<field name="arch" type="xml">
<xpath
expr="//field[@name='invoice_line_ids']/tree/field[@name='quantity']"
expr="//field[@name='invoice_line_ids']/list/field[@name='quantity']"
position="before"
>
<field name="must_have_dates" invisible="1" />
<field name="start_date" required="must_have_dates" optional="show" />
<field name="end_date" required="must_have_dates" optional="show" />
</xpath>
<xpath
expr="//field[@name='invoice_line_ids']/form//field[@name='quantity']"
position="before"
>
<field name="must_have_dates" invisible="1" />
<field name="start_date" required="must_have_dates == True" />
<field name="end_date" required="must_have_dates == True" />
<field name="start_date" required="must_have_dates" />
<field name="end_date" required="must_have_dates" />
</xpath>
<xpath
expr="//field[@name='line_ids']/tree/field[@name='credit']"
expr="//field[@name='line_ids']/list/field[@name='credit']"
position="after"
>
<field name="start_date" optional="hide" />
Expand Down

0 comments on commit ed5e932

Please sign in to comment.