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

[MIG] contract: Migration to version 18.0 #1182

Closed
wants to merge 299 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
299 commits
Select commit Hold shift + click to select a range
bc05c58
Translated using Weblate (Portuguese)
pedrocs-exo Aug 14, 2019
3c4a749
Translated using Weblate (Portuguese (Brazil))
Sep 3, 2019
d4b1691
Translated using Weblate (German)
rschnapka Sep 3, 2019
08596a8
Translated using Weblate (Chinese (Simplified))
liweijie0812 Sep 4, 2019
39838c4
Remove invalid Chinese translation files
liweijie0812 Sep 5, 2019
710fd72
[IMP] contract: Make recurrence mechanism on contract line
sbejaoui Oct 30, 2018
4970b25
[REF+FIX+IMP] Contract: invoice creation + date start required for co…
ThomasBinsfeld Dec 18, 2018
386496a
[FIX+IMP] contract: several things
sbejaoui Dec 20, 2018
fab1252
[FIX] Contract: copy payment term on generated invoice
ThomasBinsfeld Jan 11, 2019
18394c4
[IMP] - Should be able to stop a past contract line
sbejaoui Jan 11, 2019
d4fdb2d
[ADD] Contract: fiscal position
ThomasBinsfeld Jan 16, 2019
36b2ecf
[FIX+IMP] contract: recurring_next_date is required if date_end is nu…
sbejaoui Jan 17, 2019
7afd15a
[IMP] Contract: matching invoice view depending on contract type
ThomasBinsfeld Jan 21, 2019
54cbe21
[ADD] - Add more value for auto_renew_rule_type
sbejaoui Jan 24, 2019
909de36
[FIX] Contract to Invoice: take contract vendor instead of partner's
ThomasBinsfeld Feb 20, 2019
1fc0985
[REF+FIX+IMP] contract: Several things
sbejaoui Feb 28, 2019
fb04ea2
[IMP]pass the payment term to the contract from the partner
AaronHForgeFlow May 28, 2019
2a31f41
[REF] contract: Several things
ThomasBinsfeld May 28, 2019
3a8c3e1
[IMP] - Make one migration from 12.0.1 to 12.0.4
sbejaoui Jul 15, 2019
6dc608c
[FIX+IMP+MIG] contract: Several refinements:
pedrobaeza Sep 13, 2019
964d5d4
Translated using Weblate (Chinese (Simplified))
liweijie0812 Sep 17, 2019
2e13bed
[MIG+FIX] contract: Missing pieces for moving info from analytic acco…
pedrobaeza Sep 18, 2019
0713dea
Add commercial_partner_id fields into contract module
hparfr Aug 14, 2019
435fbf1
Translated using Weblate (Italian)
eLBati Oct 8, 2019
450700e
[MIG] contract: Assign old partner's salesman to migrated contracts
pedrobaeza Oct 8, 2019
0d7153d
Translated using Weblate (German)
marylla Oct 9, 2019
29414f1
[12.0][FIX] contract & contract_sale - security fix
enriquemartin Oct 9, 2019
9980579
Translated using Weblate (Catalan)
albertpons Oct 9, 2019
bfb8bfa
Translated using Weblate (Portuguese (Brazil))
britoederr Oct 10, 2019
f3c6b66
[MIG] contract: Missing renaming of invoice link
pedrobaeza Oct 15, 2019
d092926
Translated using Weblate (Chinese (Simplified))
liweijie0812 Oct 16, 2019
c38b6f6
[MIG] contract: Create contract sequence for allowing to create records
pedrobaeza Oct 23, 2019
56319f4
Translated using Weblate (Dutch)
thomaspot Oct 23, 2019
f6e152f
[IMP+FIX] contract: Add multi-company access rule for contract object…
sbejaoui Oct 25, 2019
d8c80de
Translated using Weblate (German)
rschnapka Oct 29, 2019
936d9bb
Translated using Weblate (Spanish)
josepmy Oct 29, 2019
654ed1c
[FIX] contract: Fix performance issue on contract line read + Fix con…
sbejaoui Oct 30, 2019
f986697
[MIG] contract: No contract on AA without recurring invoices flag
pedrobaeza Nov 11, 2019
6cf73ef
Translated using Weblate (Croatian)
badbole Nov 12, 2019
68e4d46
[IMP] contract: Fix test crash with other modules
sergio-teruel Nov 14, 2019
af397e9
[MIG][FIX] contract: Move contracts, but disable them
pedrobaeza Nov 18, 2019
a94a700
Translated using Weblate (Croatian)
badbole Dec 2, 2019
dcf6eb6
[12.0][FIX] - Run onchange contract_type when changing the contract t…
sbejaoui Nov 26, 2019
7f2db28
[FIX] contract: Don't execute onchange after invoice creation + Tests…
pedrobaeza Dec 2, 2019
6b21fa7
[REF] contract: Several refactorings
sbidoul Dec 6, 2019
a5be796
Translated using Weblate (French)
Martronic-SA Dec 6, 2019
b6410b4
[REF+FIX+IMP] contract: Several refactorings + fixes + imps
sbidoul Dec 6, 2019
7781250
[FIX+REF] contract: Improve unit tests + add unit test for different …
sbejaoui Dec 9, 2019
d00ed69
[IMP] contract: display invoicing offset
sbidoul Dec 9, 2019
68eb713
Translated using Weblate (Portuguese (Brazil))
augustodinizl Dec 16, 2019
750f2a4
[IMP+FIX] contract: Several things
sbejaoui Dec 21, 2019
54d69c7
Translated using Weblate (Italian)
scigghia Dec 26, 2019
c6036d0
[IMP+FIX] contract: Add failing test for wrong invoicing date after c…
sbejaoui Dec 19, 2019
75e6fee
[FIX] contract: Handle properly multi-company setups
pedrobaeza Jan 8, 2020
d5866d3
Translated using Weblate (French)
gregory-moka Jan 9, 2020
3cdda8e
Added translation using Weblate (Spanish (Chile))
Jan 17, 2020
48f521e
Translated using Weblate (Spanish)
Jan 17, 2020
dd7deaf
Translated using Weblate (French)
qgroulard Jan 21, 2020
2095ea0
[IMP] contract: remove redundant method
pedrobaeza Jan 8, 2020
f64cee4
[12.0][IMP] - Add an action for contracts manual invoicing
sbejaoui Nov 13, 2019
6d3096f
Translated using Weblate (Italian)
Feb 4, 2020
034e42b
Translated using Weblate (Portuguese (Brazil))
marcelsavegnago Feb 12, 2020
f8f80b7
Translated using Weblate (Finnish)
jarmokortetjarvi Feb 13, 2020
4799969
Translated using Weblate (Portuguese)
pedrocs-exo Feb 17, 2020
ad764bc
Translated using Weblate (Finnish)
jarmokortetjarvi Feb 26, 2020
4835249
[IMP] contract: add analytic_tag_ids field in contract lines
Feb 28, 2020
e201a4d
[IMP] contract: Improve partner With running contracts search view fi…
sbejaoui Feb 12, 2020
e858270
Translated using Weblate (French)
svalaeys Mar 17, 2020
d38d6ac
[IMP] - Add contract tags
sbejaoui Oct 24, 2019
89a7be2
Set company_id earlier in the invoice preparation process so that _on…
svalaeys Mar 23, 2020
8eb6190
Translated using Weblate (Spanish)
Mar 25, 2020
8b20d7b
[FIX] contract: Delete cascade line wizard
pedrobaeza Apr 1, 2020
e68dab6
[IMP] - Place id attribute before model
sbejaoui Apr 2, 2020
863ebaa
[IMP] contract: add section and notes in contract line
Mar 17, 2020
5347d51
[FIX+IMP] contract: improve test coverage with new sections + fix sea…
pedrobaeza Apr 14, 2020
bf791e2
Translated using Weblate (German)
marylla May 6, 2020
99215eb
[FIX] contract: Select the correct sections/notes to be invoiced
Apr 28, 2020
36090ee
[IMP] - Contract: add new recurring_rule_type quarterly and semesterly
sbejaoui Apr 14, 2020
e2ca120
Translated using Weblate (Spanish)
JorgeQuinteros May 21, 2020
b50fc9d
[FIX] contract: Currency is not editable + pricelist from partner
pedrobaeza Jun 2, 2020
e4f4a94
Translated using Weblate (Portuguese (Brazil))
fcolus Jun 16, 2020
f3fb965
Translated using Weblate (Spanish)
pedrobaeza Jun 17, 2020
04870a9
[FIX] contract: do not die if modified partner has contracts in sever…
Jun 25, 2020
4fe21a2
[IMP] contract: Allow to set a manual currency
pedrobaeza Jun 5, 2020
8d708f1
Translated using Weblate (Slovenian)
sysadminmatmoz Jun 30, 2020
54e5525
[FIX] contract: multi-company assignment notification
Jul 28, 2020
4322e9e
[12.0][FIX] - fiscal position, payment mode and pricelist obtained ac…
sbejaoui Aug 17, 2020
efba73e
[IMP] : black, isort, prettier
pedrobaeza Jul 13, 2020
6267c0b
[MIG] contract: Migration to 13.0
pedrobaeza Jul 14, 2020
dbac8bb
[IMP+REF] contract: Allow to set recurrency at header level
pedrobaeza Jul 14, 2020
255ee56
[13.0][FIX] contract: Recompute recurring next date
rousseldenis Sep 9, 2020
e901ff3
[IMP] contract: Set a condicion to avoid create lines on invoices
CarlosRoca13 Oct 28, 2020
b0a18e0
[FIX] contract: Only include 'section_and_note_one2many' js widget in…
victoralmau Nov 4, 2020
5c9d10d
Translated using Weblate (Spanish (Argentina))
ibuioli Nov 22, 2020
b5b9d93
[IMP] contract: Add followers to invoices created
victoralmau Nov 30, 2020
7679684
Translated using Weblate (Dutch)
bosd Dec 15, 2020
59aa54e
Translated using Weblate (Spanish (Argentina))
ibuioli Dec 22, 2020
4b9563c
[IMP] contract: Portal
victoralmau Dec 16, 2020
1e884f6
[IMP] contract: JS tour on test assets
pedrobaeza Dec 25, 2020
a354a90
[IMP] contract: Add contract modification + contract: Add fields to c…
victoralmau Dec 28, 2020
9928d03
Translated using Weblate (Spanish (Argentina))
ibuioli Jan 10, 2021
9c272dc
[FIX] contract: Modification mail + Auto-create follower in contract …
victoralmau Jan 4, 2021
c063141
[13.0][FIX] contract: Impossible to create invoices from contract lin…
rousseldenis Jan 31, 2021
b99ddce
[FIX] contract: Error in test_contract_invoice_followers
victoralmau Feb 2, 2021
ceac2a4
[FIX] contract: remove groupby if it is in context + consistency betw…
Feb 15, 2021
a1cd1d1
[13.0][FIX] contract: consistency between contract count and contract…
newtratip Feb 23, 2021
049b6e3
[OU-FIX] contract: Don't alter v12 recurrence mechanism + Transfer co…
pedrobaeza Feb 27, 2021
eff0dfb
[FIX] contract: Changed modification_mail auto to appear like email a…
victoralmau Mar 17, 2021
6d3bd40
[IMP] contract: black, isort, prettier
ozono Apr 1, 2021
bf65bc0
[MIG] contract: Migration to 14.0
ozono Apr 2, 2021
c114f3a
[FIX] contract: restore readme images
ozono Apr 4, 2021
2cf6063
Added translation using Weblate (French (France))
Yvesldff Apr 11, 2021
cffaa65
Translated using Weblate (Dutch)
bosd Apr 18, 2021
65f5776
[FIX] contract: Don't change period start date having line recurrence
pedrobaeza May 18, 2021
9ee1905
[13.0][FIX] contract: Set layout for section and note in portal template
rousseldenis Apr 30, 2021
f82bb99
[IMP] contract: Improve code to show recurring_rule_type from contrac…
victoralmau May 24, 2021
99a79e9
Translated using Weblate (Spanish (Argentina))
ibuioli May 30, 2021
15548c5
Translated using Weblate (Spanish (Argentina))
ibuioli Jun 14, 2021
b111212
[FIX] contract: Cleanup values on line when invoicing
pedrobaeza Jul 1, 2021
7563fda
Translated using Weblate (Turkish)
tate11 Aug 5, 2021
e5913e0
[FIX] contract: fix an obvious crash when self is a multi-recordset
alexis-via Aug 30, 2021
2da172d
[FIX] contract: Fix invoice creation and salesperson assignment
joao-p-marques Sep 10, 2021
245b0d4
Translated using Weblate (Catalan)
pere-aquarian Sep 13, 2021
fd5abcb
Translated using Weblate (Portuguese)
pedrocs-exo Oct 25, 2021
57ea420
[IMP] contract: black, isort, prettier
jcdrubay Oct 28, 2021
04a6248
[MIG] contract: Migration to 15.0
jcdrubay Oct 28, 2021
cc788c2
[FIX] contract: Avoid error in invoicing contracts crone
manuelregidor Oct 29, 2021
ee9c264
[15.0][IMP] modify production beta to stable
JoanMForgeFlow Jan 25, 2022
5edba4f
[IMP] contract: Add discount + price_subtotal fields to the contract …
victoralmau Jan 25, 2022
53f50a8
ADJ: When generating invoices from the Wizard to create invoices manu…
jcdrubay Feb 11, 2022
13e6bf5
Translated using Weblate (Catalan)
Noel000 Feb 25, 2022
479918f
Translated using Weblate (Spanish (Argentina))
ibuioli Feb 26, 2022
30b489a
[FIX+IMP] contract: Several things
rousseldenis Feb 25, 2022
ca0e749
Translated using Weblate (Catalan)
juliap98 Apr 7, 2022
5a3ebd5
Translated using Weblate (Turkish)
tate11 Apr 19, 2022
7416a07
[FIX] contract: add default_move_type in context
mariadforgeflow May 23, 2022
a6e56db
[FIX+IMP] contract: lots of things
rousseldenis Nov 3, 2021
0679f02
[FIX] contract: change where security is given to group_account_invoi…
albariera Oct 7, 2021
9fede9a
[FIX] contract: Remove noupdate in mail template data
joao-p-marques Jun 7, 2021
09192c8
Translated using Weblate (Spanish (Argentina))
ibuioli Jun 29, 2022
eaff4e5
Translated using Weblate (French)
gregory-moka Jul 4, 2022
97f7e38
[15.0][IMP] contract : show tags with colors in the contract
chandni299 Jul 27, 2022
e6c5c10
Translated using Weblate (Spanish (Argentina))
ibuioli Aug 2, 2022
b1c646c
Translated using Weblate (French)
gregory-moka Aug 17, 2022
a04ced7
Translated using Weblate (German)
wpichler Aug 22, 2022
d8bf8b0
[IMP] contract: Use _prepare_home_portal_values() function.
victoralmau Sep 2, 2022
cbf8355
Translated using Weblate (Portuguese (Brazil))
douglascstd Sep 26, 2022
5f15ee5
Translated using Weblate (Spanish)
pere-aquarian Oct 10, 2022
9b8fec0
[IMP] contract: Set invoice_user_id field with Form() to apply the co…
victoralmau Oct 18, 2022
b53e3c1
[IMP] Add link to contract in invoice chatter
Sep 21, 2022
be7d337
[FIX] contract: bug onchange date_start (comparison between bool and …
mourad-ehm May 13, 2022
72d2406
[IMP] contract: Set fixed start dates in test contracts
victoralmau Dec 1, 2022
3654678
[FIX] contract: Switch string > title in buttons
pedrobaeza Nov 3, 2022
c298e52
[MIG] contract: Migration to 16.0
wpichler Oct 24, 2022
3a43c56
Translated using Weblate (Italian)
francesco-ooops Jul 12, 2023
b57c2f0
Translated using Weblate (Italian)
mymage Jul 13, 2023
4901f10
Added translation using Weblate (Catalan (ca_ES))
miquelalzanillas Jul 18, 2023
bb445be
Translated using Weblate (German)
NICO-SOLUTIONS Jul 19, 2023
556b8f2
[IMP] contract: Make portal link configurable
Jul 26, 2023
502adb7
Translated using Weblate (Italian)
mymage Aug 1, 2023
dd771b7
Translated using Weblate (Spanish)
Ivorra78 Aug 2, 2023
965b1c6
Translated using Weblate (Italian)
mymage Aug 22, 2023
12b1806
Translated using Weblate (Spanish)
Ivorra78 Sep 4, 2023
f7ee584
[16.0][FIX] contract: invoice message create
carolinafernandez-tecnativa Oct 9, 2023
a27aefa
Translated using Weblate (Italian)
mymage Oct 12, 2023
fe693ef
Translated using Weblate (Portuguese (Brazil))
adrianojprado Oct 13, 2023
f799ea5
[FIX] No contract line and invoices when contract is archived
fkantelberg Jan 24, 2023
4007d10
Translated using Weblate (Italian)
mymage Oct 23, 2023
a4a3b91
Translated using Weblate (Portuguese (Brazil))
adrianojprado Oct 28, 2023
1a71755
Translated using Weblate (Italian)
mymage Oct 31, 2023
3142511
Translated using Weblate (Italian)
alessandro-fiorino Nov 8, 2023
ae9e53e
[FIX] contract: removed dateutil from dependencies
Nov 8, 2023
bef2715
Translated using Weblate (Italian)
alessandro-fiorino Nov 8, 2023
0b78c18
Translated using Weblate (Dutch)
ThijsvOers Nov 14, 2023
9a2c3ef
Translated using Weblate (Italian)
mymage Nov 14, 2023
5c17253
Translated using Weblate (Italian)
francesco-ooops Dec 15, 2023
d4f76ca
Translated using Weblate (French)
remi-filament Dec 20, 2023
ce8705f
Translated using Weblate (Italian)
mymage Dec 24, 2023
8d0e644
[FIX] Show analytic distribution and hide analytic account
fkantelberg Nov 7, 2023
1284bf6
[MIG] contract: Remove analytic_account_id and add migration
fkantelberg Jan 4, 2024
652d7b0
Translated using Weblate (Italian)
mymage Jan 25, 2024
c17af23
[FIX] contract: Change web_ribbon text to title to make it translatable
victoralmau Jan 30, 2024
43c6f09
[FIX] contract: Move migration to post migration
fkantelberg Feb 1, 2024
8d3512d
[16.0] contract: Show discount lines for users with the group 'Discou…
fkantelberg Feb 9, 2024
8c854d6
[IMP] contract: Protect line recurrrency change
pedrobaeza Jan 9, 2024
f1a4b71
Translated using Weblate (Italian)
mymage Feb 20, 2024
e0cf1f7
[16.0][IMP] contract and contract_sale_generation: Add translations
aliciagaarzo Mar 11, 2024
7f8f14f
Translated using Weblate (French)
houzefa-abba Mar 13, 2024
6f4c8b3
[FIX] contract: Fix modifications layout
pedrobaeza Mar 14, 2024
6329401
[IMP] contract: Remove buttons from contract lines if recurrence is n…
victoralmau Mar 12, 2024
1f423c8
Translated using Weblate (Italian)
francesco-ooops Mar 20, 2024
d87da57
[16.0][IMP] contract: improve visual
aliciagaarzo Mar 21, 2024
b05e42c
[16.0][IMP] contract and contract_variable_quantity: improve visual o…
aliciagaarzo Apr 1, 2024
603c725
[IMP] contract: black, isort, prettier
CRogos Mar 23, 2024
66bafc0
[MIG] contract: Migration to 17.0
CRogos Mar 27, 2024
299f8a4
[UPD] Update contract.pot
Apr 10, 2024
e8d2b0a
[BOT] post-merge updates
OCA-git-bot Apr 10, 2024
3f55f95
Update translation files
weblate Apr 10, 2024
233ff14
Translated using Weblate (Italian)
mymage Apr 11, 2024
ca1cdd9
[17.0][IMP] contract: solve error for last_date_invoiced field
aliciagaarzo Apr 15, 2024
89bd765
[BOT] post-merge updates
OCA-git-bot Apr 17, 2024
1d40d4f
[17.0][FIX] contract: report translations & change structure
peluko00 Apr 23, 2024
cfea3b2
Translated using Weblate (Spanish)
Ivorra78 Apr 24, 2024
30c49a7
Translated using Weblate (Italian)
mymage May 6, 2024
661eeaf
Translated using Weblate (Italian)
mymage May 30, 2024
50dbd8b
Translated using Weblate (Swedish)
jakobkrabbe Jun 5, 2024
d8c739f
[UPD] Update contract.pot
Jul 12, 2024
90b913b
Update translation files
weblate Jul 12, 2024
96dd46e
Translated using Weblate (Italian)
mymage Jul 29, 2024
b6bdd1b
[FIX] contract: Fix error when sending contract by email
carolinafernandez-tecnativa Aug 12, 2024
8ef9ffc
Translated using Weblate (Spanish)
pedrobaeza Aug 12, 2024
09e2109
[BOT] post-merge updates
OCA-git-bot Aug 14, 2024
916e1d1
Translated using Weblate (Italian)
mymage Aug 20, 2024
cd50cf0
[UPD] Update contract.pot
Aug 24, 2024
c3197d8
Update translation files
weblate Aug 24, 2024
012fe86
[BOT] post-merge updates
OCA-git-bot Aug 26, 2024
2edf874
Translated using Weblate (Italian)
mymage Aug 26, 2024
6e7af2f
Translated using Weblate (Italian)
mymage Aug 29, 2024
5c0bb29
[FIX] contract: Link format error for messages posted when creates ma…
sergio-teruel Sep 3, 2024
cfc8095
[UPD] Update contract.pot
Sep 7, 2024
ca26545
[BOT] post-merge updates
OCA-git-bot Sep 7, 2024
77b42fe
Update translation files
weblate Sep 7, 2024
906feee
Translated using Weblate (Italian)
mymage Sep 9, 2024
36616b3
Translated using Weblate (Finnish)
jarmokortetjarvi Sep 23, 2024
906ee04
[FIX] contract : ignore date constraint for a note
florian-dacosta Dec 3, 2024
4fa293a
[BOT] post-merge updates
OCA-git-bot Dec 3, 2024
c27d1a3
[IMP] Add INVOICEMONTHNAME marker to line description
stenext May 8, 2023
8810372
[I18N] contract: Spanish translations
victoralmau Dec 5, 2024
4d43d8f
[BOT] post-merge updates
OCA-git-bot Dec 5, 2024
e3dc036
Update translation files
weblate Dec 5, 2024
1d2e7ad
Translated using Weblate (Italian)
mymage Dec 6, 2024
36e1c6c
[FIX] contract: link contract instead of move
carlos-lopez-tecnativa Dec 24, 2024
faca699
[BOT] post-merge updates
OCA-git-bot Dec 24, 2024
e4fa340
[IMP] contract: Use %m instead of %B to obtain month
victoralmau Dec 20, 2024
a2daaf6
[BOT] post-merge updates
OCA-git-bot Jan 7, 2025
586a8fa
[IMP] contract: Add contract lines entry point for reporting
rousseldenis May 15, 2022
6f7c4a8
[UPD] Update contract.pot
Jan 9, 2025
fc986ce
[BOT] post-merge updates
OCA-git-bot Jan 9, 2025
feb698e
Update translation files
weblate Jan 9, 2025
809b078
Translated using Weblate (Spanish)
victoralmau Jan 10, 2025
55a4ca7
[IMP] contract: Terminate contract lines with last_date_invoiced if i…
sergio-teruel Jan 9, 2025
c61b40e
Translated using Weblate (Italian)
mymage Jan 10, 2025
46c3676
[UPD] Update contract.pot
Jan 10, 2025
fca78ea
[BOT] post-merge updates
OCA-git-bot Jan 10, 2025
6d0eb75
Update translation files
weblate Jan 10, 2025
e986b86
Translated using Weblate (Italian)
mymage Jan 11, 2025
5d78416
[IMP] contract Report correction, prevent unintended styling when usi…
arielbarreiros96 Jan 10, 2025
ff035fc
[BOT] post-merge updates
OCA-git-bot Jan 14, 2025
d7827df
[IMP] contract: pre-commit auto fixes
AlvRM2002 Jan 17, 2025
de34045
[MIG] contract: Migration to 18.0
AlvRM2002 Jan 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
172 changes: 172 additions & 0 deletions contract/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,172 @@
================================
Recurring - Contracts Management
================================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:529e8cc27173aa110daa9fdf18e2efcc0d361ca15a9366bbb0266b4f066b4a98
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png
:target: https://odoo-community.org/page/development-status
:alt: Production/Stable
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fcontract-lightgray.png?logo=github
:target: https://github.com/OCA/contract/tree/17.0/contract
:alt: OCA/contract
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/contract-17-0/contract-17-0-contract
: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/contract&target_branch=17.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module enables contracts management with recurring invoicing
functions. Also you can print and send by email contract report.

It works for customer contract and supplier contracts.

Contracts are shown in portal.

**Table of contents**

.. contents::
:local:

Configuration
=============

To view discount field in contract line, you need to set *Discount on
lines* in user access rights.

Contracts can be viewed on the portal (list and detail) if the user
logged into the portal is a follower of the contract.

Usage
=====

1. Contracts are in Invoicing -> Customers -> Customer and Invoicing ->
Vendors -> Supplier Contracts
2. When creating a contract, fill fields for selecting the invoicing
parameters:

- a journal
- a price list (optional)

3. And add the lines to be invoiced with:

- the product with a description, a quantity and a price
- the recurrence parameters: interval (days, weeks, months, months
last day or years), start date, date of next invoice (automatically
computed, can be modified) and end date (optional)
- auto-price, for having a price automatically obtained from the
price list
- #START# - #END# or #INVOICEMONTHNAME# in the description field to
display the start/end date or the start month of the invoiced
period in the invoice line description
- pre-paid (invoice at period start) or post-paid (invoice at start
of next period)

4. The "Generate Recurring Invoices from Contracts" cron runs daily to
generate the invoices. If you are in debug mode, you can click on the
invoice creation button.
5. The *Show recurring invoices* shortcut on contracts shows all
invoices created from the contract.
6. The contract report can be printed from the Print menu
7. The contract can be sent by email with the *Send by Email* button
8. Contract templates can be created from the Configuration -> Contracts
-> Contract Templates menu. They allow to define default journal,
price list and lines when creating a contract. To use it, just select
the template on the contract and fields will be filled automatically.

- Contracts appear in portal to following users in every contract:

|image|

|image1|

|image2|

.. |image| image:: https://raw.githubusercontent.com/OCA/contract/17.0/contract/static/src/screenshots/portal-my.png
.. |image1| image:: https://raw.githubusercontent.com/OCA/contract/17.0/contract/static/src/screenshots/portal-list.png
.. |image2| image:: https://raw.githubusercontent.com/OCA/contract/17.0/contract/static/src/screenshots/portal-detail.png

Known issues / Roadmap
======================

- Recover states and others functional fields in Contracts.
- Add recurrence flag at template level.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/contract/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/contract/issues/new?body=module:%20contract%0Aversion:%2017.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.

Credits
=======

Authors
-------

* Tecnativa
* ACSONE SA/NV

Contributors
------------

- Angel Moya <[email protected]>

- Dave Lasley <[email protected]>

- Miquel Raïch <[email protected]>

- Souheil Bejaoui <[email protected]>

- Thomas Binsfeld <[email protected]>

- Guillaume Vandamme <[email protected]>

- Raphaël Reverdy <[email protected]>

- `Tecnativa <https://www.tecnativa.com>`__:

- Pedro M. Baeza
- Carlos Dauden
- Vicent Cubells
- Rafael Blasco
- Víctor Martínez

- Iván Antón <[email protected]>

- `APSL <https://www.apsl.tech>`__:

- Antoni Marroig <[email protected]>

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

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.

This module is part of the `OCA/contract <https://github.com/OCA/contract/tree/17.0/contract>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
3 changes: 3 additions & 0 deletions contract/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from . import controllers
from . import models
from . import wizards
54 changes: 54 additions & 0 deletions contract/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Copyright 2004-2010 OpenERP SA
# Copyright 2014-2018 Tecnativa - Pedro M. Baeza
# Copyright 2015 Domatix
# Copyright 2016-2018 Tecnativa - Carlos Dauden
# Copyright 2017 Tecnativa - Vicent Cubells
# Copyright 2016-2017 LasLabs Inc.
# Copyright 2018-2019 ACSONE SA/NV
# Copyright 2020-2021 Tecnativa - Pedro M. Baeza
# Copyright 2020 Tecnativa - Víctor Martínez
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "Recurring - Contracts Management",
"version": "18.0.1.0.0",
"category": "Contract Management",
"license": "AGPL-3",
"author": "Tecnativa, ACSONE SA/NV, Odoo Community Association (OCA)",
"website": "https://github.com/OCA/contract",
"depends": ["base", "account", "product", "portal"],
"development_status": "Production/Stable",
"data": [
"security/groups.xml",
"security/contract_tag.xml",
"security/ir.model.access.csv",
"security/contract_security.xml",
"security/contract_terminate_reason.xml",
"report/report_contract.xml",
"report/contract_views.xml",
"data/contract_cron.xml",
"data/contract_renew_cron.xml",
"data/mail_template.xml",
"data/template_mail_notification.xml",
"data/mail_message_subtype.xml",
"data/ir_ui_menu.xml",
"wizards/contract_line_wizard.xml",
"wizards/contract_manually_create_invoice.xml",
"wizards/contract_contract_terminate.xml",
"views/contract_tag.xml",
"views/abstract_contract_line.xml",
"views/contract.xml",
"views/contract_line.xml",
"views/contract_template.xml",
"views/contract_template_line.xml",
"views/res_partner_view.xml",
"views/res_config_settings.xml",
"views/contract_terminate_reason.xml",
"views/contract_portal_templates.xml",
],
"assets": {
"web.assets_frontend": ["contract/static/src/scss/frontend.scss"],
"web.assets_tests": ["contract/static/src/js/contract_portal_tour.esm.js"],
},
"installable": True,
}
3 changes: 3 additions & 0 deletions contract/controllers/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from . import main
107 changes: 107 additions & 0 deletions contract/controllers/main.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
# Copyright 2020-2022 Tecnativa - Víctor Martínez
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from odoo import http
from odoo.exceptions import AccessError, MissingError
from odoo.http import request

from odoo.addons.portal.controllers.portal import CustomerPortal
from odoo.addons.portal.controllers.portal import pager as portal_pager


class PortalContract(CustomerPortal):
def _prepare_home_portal_values(self, counters):
values = super()._prepare_home_portal_values(counters)
if "contract_count" in counters:
contract_model = request.env["contract.contract"]
contract_count = (
contract_model.search_count([])
if contract_model.check_access("read", raise_exception=False)
else 0
)
values["contract_count"] = contract_count
return values

def _contract_get_page_view_values(self, contract, access_token, **kwargs):
values = {
"page_name": "Contracts",
"contract": contract,
}
return self._get_page_view_values(
contract, access_token, values, "my_contracts_history", False, **kwargs
)

def _get_filter_domain(self, kw):
return []

@http.route(
["/my/contracts", "/my/contracts/page/<int:page>"],
type="http",
auth="user",
website=True,
)
def portal_my_contracts(
self, page=1, date_begin=None, date_end=None, sortby=None, **kw
):
values = self._prepare_portal_layout_values()
contract_obj = request.env["contract.contract"]
# Avoid error if the user does not have access.
if not contract_obj.check_access("read", raise_exception=False):
return request.redirect("/my")
domain = self._get_filter_domain(kw)
searchbar_sortings = {
"date": {"label": self.env._("Date"), "order": "recurring_next_date desc"},
"name": {"label": self.env._("Name"), "order": "name desc"},
"code": {"label": self.env._("Reference"), "order": "code desc"},
}
# default sort by order
if not sortby:
sortby = "date"
order = searchbar_sortings[sortby]["order"]
# count for pager
contract_count = contract_obj.search_count(domain)
# pager
pager = portal_pager(
url="/my/contracts",
url_args={
"date_begin": date_begin,
"date_end": date_end,
"sortby": sortby,
},
total=contract_count,
page=page,
step=self._items_per_page,
)
# content according to pager and archive selected
contracts = contract_obj.search(
domain, order=order, limit=self._items_per_page, offset=pager["offset"]
)
request.session["my_contracts_history"] = contracts.ids[:100]
values.update(
{
"date": date_begin,
"contracts": contracts,
"page_name": "Contracts",
"pager": pager,
"default_url": "/my/contracts",
"searchbar_sortings": searchbar_sortings,
"sortby": sortby,
}
)
return request.render("contract.portal_my_contracts", values)

@http.route(
["/my/contracts/<int:contract_contract_id>"],
type="http",
auth="public",
website=True,
)
def portal_my_contract_detail(self, contract_contract_id, access_token=None, **kw):
try:
contract_sudo = self._document_check_access(
"contract.contract", contract_contract_id, access_token
)
except (AccessError, MissingError):
return request.redirect("/my")
values = self._contract_get_page_view_values(contract_sudo, access_token, **kw)
return request.render("contract.portal_contract_page", values)
12 changes: 12 additions & 0 deletions contract/data/contract_cron.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">
<record model="ir.cron" id="contract_cron_for_invoice">
<field name="name">Generate Recurring Invoices from Contracts</field>
<field name="model_id" ref="model_contract_contract" />
<field name="state">code</field>
<field name="code">model.cron_recurring_create_invoice()</field>
<field name="user_id" ref="base.user_root" />
<field name="interval_number">1</field>
<field name="interval_type">days</field>
</record>
</odoo>
12 changes: 12 additions & 0 deletions contract/data/contract_renew_cron.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">
<record model="ir.cron" id="contract_line_cron_for_renew">
<field name="name">Renew Contract lines</field>
<field name="model_id" ref="model_contract_line" />
<field name="state">code</field>
<field name="code">model.cron_renew_contract_line()</field>
<field name="user_id" ref="base.user_root" />
<field name="interval_number">1</field>
<field name="interval_type">days</field>
</record>
</odoo>
9 changes: 9 additions & 0 deletions contract/data/ir_ui_menu.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<menuitem
id="menu_config_contract"
name="Contracts"
sequence="1"
parent="account.menu_finance_configuration"
/>
</odoo>
15 changes: 15 additions & 0 deletions contract/data/mail_message_subtype.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">
<record id="mail_message_subtype_invoice_created" model="mail.message.subtype">
<field name="name">Invoice created</field>
<field name="res_model">contract.contract</field>
</record>
<record
id="mail_message_subtype_contract_modification"
model="mail.message.subtype"
>
<field name="name">Contract modifications</field>
<field name="res_model">contract.contract</field>
<field name="default" eval="False" />
</record>
</odoo>
Loading
Loading