Commit Graph

33 Commits

Author SHA1 Message Date
OCA Transbot
98fb160b3a Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: contract-14.0/contract-14.0-contract
Translate-URL: https://translation.odoo-community.org/projects/contract-14-0/contract-14-0-contract/
2023-03-15 12:38:44 +01:00
Víctor Martínez
e72f0fcba3 [IMP] contract: Improve code to show recurring_rule_type from contract line in portal + [FIX] Force add access_token in "View contract" button from contract modification mail 2023-03-15 12:38:44 +01:00
Víctor Martínez
632ef42207 [IMP] contract: Add contract modification + contract: Add fields to contract page in portal 2023-03-15 12:38:44 +01:00
Pedro M. Baeza
a3275a71f0 [IMP] contract: JS tour on test assets
[UPD] Update contract.pot

[UPD] README.rst
2023-03-15 12:38:44 +01:00
Víctor Martínez
5f2e61bb16 [IMP] contract: Add followers to invoices created
[UPD] Update contract.pot

[UPD] README.rst
2023-03-15 12:38:43 +01:00
Denis Roussel
8f7d244cf8 [13.0][FIX] contract: Recompute recurring next date
After invoice creation, the recurring next date has to be recomputed
in order to get good values

[UPD] Update contract.pot
2023-03-15 12:38:43 +01:00
Jairo Llopis
e94ff8bc26 [FIX] contract: do not die if modified partner has contracts in several companies
In a multicompany scenario where a contact belongs to a company and has contracts in several companies, if the user goes to the contact to edit anything, when saving, it will trigger the recomputation of the `commercial_partner_id` field, which gets populated to all the related contracts, and will undeniably fail with an `AccessError`.

A simple test is provided that, without the fix, fails like this:

```
2020-06-25 07:21:24,859 33 ERROR devel odoo.addons.contract.tests.test_contract: ERROR: test_multicompany_partner_edited (odoo.addons.contract.tests.test_contract.TestContract)
2020-06-25 07:21:24,859 33 ERROR devel odoo.addons.contract.tests.test_contract: ` Editing a partner with contracts in several companies works.
2020-06-25 07:21:24,859 33 ERROR devel odoo.addons.contract.tests.test_contract: Traceback (most recent call last):
2020-06-25 07:21:24,859 33 ERROR devel odoo.addons.contract.tests.test_contract: `   File "/opt/odoo/auto/addons/contract/tests/test_contract.py", line 2513, in test_multicompany_partner_edited
2020-06-25 07:21:24,859 33 ERROR devel odoo.addons.contract.tests.test_contract: `     'parent_id': parent_partner.id,
2020-06-25 07:21:24,859 33 ERROR devel odoo.addons.contract.tests.test_contract: `   File "/opt/odoo/auto/addons/partner_autocomplete/models/res_partner.py", line 183, in write
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `     res = super(ResPartner, self).write(values)
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `   File "/opt/odoo/custom/src/odoo/odoo/addons/base/models/res_partner.py", line 570, in write
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `     result = result and super(Partner, self).write(vals)
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `   File "/opt/odoo/auto/addons/mail/models/mail_thread.py", line 321, in write
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `     result = super(MailThread, self).write(values)
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `   File "/opt/odoo/auto/addons/mail/models/mail_activity.py", line 613, in write
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `     return super(MailActivityMixin, self).write(vals)
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `   File "/opt/odoo/custom/src/odoo/odoo/models.py", line 3381, in write
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `     self.recompute()
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `   File "/opt/odoo/custom/src/odoo/odoo/models.py", line 5308, in recompute
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `     target._write(dict(vals))
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `   File "/opt/odoo/custom/src/odoo/odoo/models.py", line 3433, in _write
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `     self.check_access_rule('write')
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `   File "/opt/odoo/custom/src/odoo/odoo/models.py", line 3081, in check_access_rule
2020-06-25 07:21:24,860 33 ERROR devel odoo.addons.contract.tests.test_contract: `     + ' - ({} {}, {} {})'.format(_('Records:'), invalid.ids[:6], _('User:'), self._uid)
2020-06-25 07:21:24,861 33 ERROR devel odoo.addons.contract.tests.test_contract: ` odoo.exceptions.AccessError: ('The requested operation cannot be completed due to security restrictions. Please contact your system administrator.\n\n(Document type: Contract, Operation: write) - (Records: [101], User: 12)', None)
```

@Tecnativa TT24482
2023-03-15 12:38:43 +01:00
Pedro M. Baeza
e74cc4c023 [FIX] contract: Currency is not editable + pricelist from partner
Previous related field was not accurated nor editable. Now the field is got
properly from a computed field.

Reviewing this, as the currency was taken (and it continues being taken) from the partner
pricelist if no pricelist is explicitly set, automatic price should use the same logic for
using partner pricelist.

Also remove roadmap as already attended
2023-03-15 12:38:43 +01:00
sbejaoui
0bb199129b [IMP] - Contract: add new recurring_rule_type quarterly and semesterly 2023-03-15 12:38:43 +01:00
Ernesto Tejeda
63f98fde41 [FIX] contract: Select the correct sections/notes to be invoiced 2023-03-15 12:38:43 +01:00
Pedro M. Baeza
9d35873bc5 [FIX+IMP] contract: improve test coverage with new sections + fix search method 2023-03-15 12:38:43 +01:00
Bejaoui Souheil
c51ac90345 [IMP] - Place id attribute before model
Co-Authored-By: Carlos Dauden <carlos.dauden@tecnativa.com>
2023-03-15 12:38:43 +01:00
sbejaoui
9e364eff88 [IMP] contract: Improve partner With running contracts search view filter + contract termination 2023-03-15 12:38:33 +01:00
Ernesto Tejeda
a813ae715f [IMP] contract: add analytic_tag_ids field in contract lines 2023-03-15 12:38:33 +01:00
OCA Transbot
1e101aea6a Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: contract-12.0/contract-12.0-contract
Translate-URL: https://translation.odoo-community.org/projects/contract-12-0/contract-12-0-contract/
2023-03-15 12:38:33 +01:00
sbejaoui
946f2e2d48 [12.0][IMP] - Add an action for contracts manual invoicing
It happen that a company has to trigger the invoicing action to generate invoices before
the scheduled date (to print and prepare invoices documents, check invoices, etc.).
This requires technical access for end users with the risk that this represents.

This commit adds a new wizard to run the invoicing action for a given date with a helper
to see and check the contract that will be invoiced. When the manual action is called,
the system displays all created invoices.

[12.0][IMP] - log the manual invoice action in contract chatter

[IMP] - Add alink to the invoice in contract message at manual invoicing

[IMP] - Improve code

[FIX] - log message for invoice creation only when there is an invoice

[IMP] - split the manual invoice menu into to menus sale & purhcase

[IMP] - hide invoice button if there is nothing to invoice
2023-03-15 12:38:33 +01:00
OCA Transbot
b19c5e1e69 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: contract-12.0/contract-12.0-contract
Translate-URL: https://translation.odoo-community.org/projects/contract-12-0/contract-12-0-contract/
2023-03-15 12:38:33 +01:00
OCA Transbot
afad88dacb Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: contract-12.0/contract-12.0-contract
Translate-URL: https://translation.odoo-community.org/projects/contract-12-0/contract-12-0-contract/
2023-03-15 12:38:33 +01:00
sbejaoui
d8e86aec6e [IMP+FIX] contract: Add failing test for wrong invoicing date after contract line stop + stop update recurring_next_date 2023-03-15 12:38:33 +01:00
OCA Transbot
d107eb8a54 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: contract-12.0/contract-12.0-contract
Translate-URL: https://translation.odoo-community.org/projects/contract-12-0/contract-12-0-contract/
2023-03-15 12:38:33 +01:00
sbejaoui
ddd6bfb967 [IMP+FIX] contract: Several things
- Add failing test for next invoice date before the last date invoiced
- raise an error when next invoice date before the last date invoiced
- Add note field to contract
- add new option: create_new_line_at_contract_line_renew
  Add a company config option to decide whether to create or to extend contract
  line at renew action
- extend contract line at renewal
- improve code: unify methods argument _renew_create_line and _renew_extend_line
2023-03-15 12:38:33 +01:00
Stéphane Bidoul (ACSONE)
ab4cc4d461 [IMP] contract: display invoicing offset 2023-03-15 12:38:33 +01:00
Pedro M. Baeza
a9ed053585 [FIX] contract: Don't execute onchange after invoice creation + Tests with duplicated name
- Don't execute onchange after invoice creation
  Using that approach (that is the current one in core)  has a lot of side effects and
  performance bottlenecks. You can read odoo/odoo#40156 for summarizing them.
  This also improves the handling of the values of payment term an fiscal position
  for using the partner ones if not set.
- Tests with duplicated name
  So they are not executed at all. Detected by chance looking for a test for the other PR.
2023-03-15 12:38:21 +01:00
sbejaoui
0964de5f8f [FIX] contract: Fix performance issue on contract line read + Fix contract partner label + contract company must be the same as the sale order
- multi-company record rules on contract line causes performance issue
- the label Partner (always False) don't make any sens
- When creating a contract from a sale order the company must be the sale order
  company and not the user company
2023-03-15 12:37:51 +01:00
hparfr
a76940b527 Add commercial_partner_id fields into contract module
Remove string attribute
2023-03-15 12:37:40 +01:00
Pedro M. Baeza
46830e1a51 [FIX+IMP+MIG] contract: Several refinements:
* Remove incorrect oldname attributes.
* Add filter on partners for running contracts (+ a support o2m field for that).
* Cover more tables in model renaming + cleaner code using a loop.
* Don't copy contract lines, but rename table + copy contract records on pre.
* Contract code is now populated to "Reference/Description" field in invoice.
* Order on new contract model has been restored to the same as old analytic accounts.
2023-03-15 12:37:40 +01:00
Jordi Ballester Alomar
6b4286aead [FIX] Errors in navigation to customer invoices / vendor bills 2023-03-15 12:37:28 +01:00
OCA Transbot
f709b89be8 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: contract-12.0/contract-12.0-contract
Translate-URL: https://translation.odoo-community.org/projects/contract-12-0/contract-12-0-contract/
2023-03-15 12:37:28 +01:00
OCA Transbot
94ec4e2dd8 Update translation files
Updated by Update PO files to match POT (msgmerge) hook in Weblate.
2023-03-15 12:37:28 +01:00
oca-travis
152e83d1aa [UPD] Update contract.pot 2023-03-15 10:54:36 +01:00
OCA Transbot
ad2a957ad6 OCA Transbot updated translations from Transifex 2023-03-15 10:43:56 +01:00
OCA Transbot
a232e13de3 OCA Transbot updated translations from Transifex 2023-03-15 10:43:56 +01:00
OCA Transbot
1ae93d5ceb OCA Transbot updated translations from Transifex 2023-03-15 10:43:56 +01:00