Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[18.0][MIG] account_payment_order: Migration to 18.0 #1414

Open
wants to merge 178 commits into
base: 18.0
Choose a base branch
from

Conversation

absal-smile
Copy link

No description provided.

alexis-via and others added 30 commits February 6, 2025 15:59
…the Sorrento Code sprint 2016

Improvements include:
- full re-organisation of modules and big re-organisation of the code
- simplification of the code related to the fact that support for direct debit is now in t
he base module, not added by an optional module account_direct_debit (module was removed)
- new design of the wizard to select move lines to pay
- support for non-SEPA file transfer-
- support for German direct debit SEPA files (fixes bug OCA#129)
- remove workflow of payment.order
- add wizard of selection of move lines to pay
* IMP: prevent deleting a move-line that is linked to a payment order line
* FIX: better filtering of move lines already included in open payment order
Take into account all the remaining remarks of Frederic Clementi dated May 30:
- see multi-currency amounts in the wizard to add transaction lines
- add help msg on bank payment lines
* IMP: extensibility of _prepare_move

  Pass the list of bank lines to _prepare_move so it is possible to customize the move (eg it's name) based on the lines being paid.

* FIX: payment order: add missing onchange dependencies in move selection wizard
* Fix crash when selecting a customer that has a direct debit payment mode but no mandate
* Hide many fields when payment_order_ok is False on a payment_mode
* Fix payment line communication when the move line is not linked to an invoice (problem found when porting donation_debit_debit to v9)
* For the communication field, if self.move_id.ref is False, fallback on self.move_id.name
Port almost all modules to v10

* Update to EPC Rulebook v9.2 that start to apply on 2016-11-20 (bug OCA#300)
* FIX: Bug OCA#353 crash when selecting a payment mode that has a variable link to a bank account
* FIX: Add 'post_move' option on account.payment.mode with default True, to keep the previous behavior
* IMP: Explicit error when bank account is missing on bank journal
* IMP: Add field default_date_prefered on payment mode.
…ent order + allow to cancel an uploaded payment order
* Restrict the deletion of bank payment line
* Add test_cancel_payment_order
context of payment orders, she should ocus on the amount that
is due to be paid. In this method we are forcing to display both
the amount due in company and in the invoice currency.

We then hide the fields debit and credit, because they add no value.
When adding to a payment order from invoices, the payment mode
considered is the one in the invoice, but once you have confirmed it,
you can't change it, so if you change the payment mode in the journal
items, it doesn't make the difference.

With this change, this is taken into account for adding to the
payment order(s) properly.
- when manually encoding a payment line, get company currency as default currency
- Search on payment order numbers
- Direct search on bank journal name in payment orders
- remove widget="selection" on account.payement.mode : this object is rarely modified, so widget='selection' is not a time saver, but we miss the HTML link, which can be pretty convenient to check the configuration.
OCA-git-bot and others added 28 commits February 6, 2025 15:59
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: bank-payment-17.0/bank-payment-17.0-account_payment_order
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-17-0/bank-payment-17-0-account_payment_order/
Currently translated at 100.0% (211 of 211 strings)

Translation: bank-payment-17.0/bank-payment-17.0-account_payment_order
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-17-0/bank-payment-17-0-account_payment_order/it/
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: bank-payment-17.0/bank-payment-17.0-account_payment_order
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-17-0/bank-payment-17-0-account_payment_order/
Currently translated at 100.0% (212 of 212 strings)

Translation: bank-payment-17.0/bank-payment-17.0-account_payment_order
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-17-0/bank-payment-17-0-account_payment_order/it/
On certain v16 instances, although the partner bank account that is
being pre-set in the account.payment creation values dictionary:

https://github.com/OCA/bank-payment/blob/fc7783669f40d85/account_payment_order/models/account_payment_line.py#L206

it's being marked as dirty (it's a computed writable field), and thus,
being recomputed before being saved, getting an invalid value (on
direct debits, the company's bank account).

The triggers that lead to this situation are unknown due to the low
level where it's happening and the tons of interactions being taken in
place, so the best way to deal with this is to override the compute
method that computes this value, so even if the field is recomputed, it
gets the correct value.

Let's be pragmatic...

TT50804
- Include context keys for avoiding mail operations overhead.
- Create setUpClass method
- Switch to setUpClass (if needed) for avoiding repeat the same setup for each test.
- Include context keys for avoiding mail operations overhead.
Quick access to business document on payment lines.
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: bank-payment-17.0/bank-payment-17.0-account_payment_order
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-17-0/bank-payment-17-0-account_payment_order/
Currently translated at 100.0% (213 of 213 strings)

Translation: bank-payment-17.0/bank-payment-17.0-account_payment_order
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-17-0/bank-payment-17-0-account_payment_order/it/
Currently translated at 100.0% (213 of 213 strings)

Translation: bank-payment-17.0/bank-payment-17.0-account_payment_order
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-17-0/bank-payment-17-0-account_payment_order/it/
Method ``_get_reconciled_invoices_partials()`` returns 2 lists:
- the first one contains triplets defined as (account.partial.reconcile record, amount, account.move.line record)
- the second one contains account.move IDs

Merging the 2 lists and cycling over them with
```
for (_x, _y, payment_move_line) in list1 + list2:
    ...
```
resulted in ``TypeError: cannot unpack non-iterable int object``.

This commit fixes this bug.
Having 2 lines for the reference (one for the type and the other for
the reference itself) steals vertical space to the really important
things in the invoice: the lines, so we compact them into one line
for better ergonomics.
@absal-smile absal-smile force-pushed the 18.0-mig-account_payment_order branch from 2cd556d to 99c4600 Compare February 7, 2025 08:06
@ioans73
Copy link
Member

ioans73 commented Feb 24, 2025

Hi @absal-smile
Can you fix it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.