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] contract #1136

Draft
wants to merge 274 commits into
base: 18.0
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
274 commits
Select commit Hold shift + click to select a range
0614375
[IMP] contract: Automatic prices for lines
pedrobaeza Dec 23, 2017
0c0bf00
[FIX] contract: Let billing users have access rights for contracts (#…
levkar Apr 1, 2018
26a82f2
[IMP] contract: Add extend existing invoice possibility
carlosdauden Mar 28, 2018
5966958
[IMP] contract_variable_quantity: Recompute price when changing qty
pedrobaeza Apr 24, 2018
f398cdd
[FIX] contract: Custom values overwrited by xml, missed noupdate
carlosdauden Jun 13, 2018
7c62d9c
[IMP] contract: possible error in migration if the column does not exist
jonerikceberio Jul 9, 2018
59be473
[FIX] analytic invoice/contract lines inheritance
katyukha Jun 26, 2018
7f0ebd6
[IMP] Fix README.rst
RoelAdriaans Jul 21, 2018
95610f9
Translated using Weblate (Dutch)
RoelAdriaans Jul 29, 2018
9320ea8
Translated using Weblate (German)
Aug 7, 2018
22d9192
[IMP] Add type to analytic account / contract
funbaker Sep 6, 2017
0d37bd5
[IMP] Make sure it works for sale and purchase contracts
MiquelRForgeFlow Jul 4, 2018
930db70
Translated using Weblate (German)
Aug 22, 2018
81e66e5
Translated using Weblate (Spanish)
etobella Sep 18, 2018
e792d13
Translated using Weblate (Portuguese (Portugal))
dreispt Sep 23, 2018
be3bcbf
[IMP] contract: Don't depend on external data
pedrobaeza Sep 29, 2018
0182eac
[FIX] Contract Spanish Translation
Oct 3, 2018
744b871
[MIG] contract: Migration to 12.0
sbejaoui Oct 25, 2018
d832110
Translated using Weblate (German)
Oct 30, 2018
732d14d
Translated using Weblate (Spanish)
mvrodriguez Feb 4, 2019
3ce761f
Translated using Weblate (Galician)
mvrodriguez Feb 4, 2019
b0ff458
Translated using Weblate (German)
marylla Feb 22, 2019
69ab81e
[FIX] Errors in navigation to customer invoices / vendor bills
JordiBForgeFlow Feb 4, 2019
c392ce3
Translated using Weblate (Italian)
primes2h Jun 26, 2019
670ca63
Translated using Weblate (French)
Jul 28, 2019
523a894
Translated using Weblate (Portuguese)
pedrocs-exo Aug 14, 2019
4d63f3b
Translated using Weblate (Portuguese (Brazil))
Sep 3, 2019
ea6bfb5
Translated using Weblate (German)
rschnapka Sep 3, 2019
7514349
Translated using Weblate (Chinese (Simplified))
liweijie0812 Sep 4, 2019
03993a9
Remove invalid Chinese translation files
liweijie0812 Sep 5, 2019
c90d913
[IMP] contract: Make recurrence mechanism on contract line
sbejaoui Oct 30, 2018
61d3db7
[REF+FIX+IMP] Contract: invoice creation + date start required for co…
ThomasBinsfeld Dec 18, 2018
132b9ad
[FIX+IMP] contract: several things
sbejaoui Dec 20, 2018
3f23ec4
[FIX] Contract: copy payment term on generated invoice
ThomasBinsfeld Jan 11, 2019
e229898
[IMP] - Should be able to stop a past contract line
sbejaoui Jan 11, 2019
c6c1a34
[ADD] Contract: fiscal position
ThomasBinsfeld Jan 16, 2019
d30538d
[FIX+IMP] contract: recurring_next_date is required if date_end is nu…
sbejaoui Jan 17, 2019
66e4963
[IMP] Contract: matching invoice view depending on contract type
ThomasBinsfeld Jan 21, 2019
a1cae3d
[ADD] - Add more value for auto_renew_rule_type
sbejaoui Jan 24, 2019
f8066e7
[FIX] Contract to Invoice: take contract vendor instead of partner's
ThomasBinsfeld Feb 20, 2019
b59ff62
[REF+FIX+IMP] contract: Several things
sbejaoui Feb 28, 2019
a3e1173
[IMP]pass the payment term to the contract from the partner
AaronHForgeFlow May 28, 2019
838f010
[REF] contract: Several things
ThomasBinsfeld May 28, 2019
5ffeb16
[IMP] - Make one migration from 12.0.1 to 12.0.4
sbejaoui Jul 15, 2019
c4a9d8d
[FIX+IMP+MIG] contract: Several refinements:
pedrobaeza Sep 13, 2019
7f6ea10
Translated using Weblate (Chinese (Simplified))
liweijie0812 Sep 17, 2019
1bf2874
[MIG+FIX] contract: Missing pieces for moving info from analytic acco…
pedrobaeza Sep 18, 2019
bf6a343
Add commercial_partner_id fields into contract module
hparfr Aug 14, 2019
616ea15
Translated using Weblate (Italian)
eLBati Oct 8, 2019
f40b289
[MIG] contract: Assign old partner's salesman to migrated contracts
pedrobaeza Oct 8, 2019
195fd47
Translated using Weblate (German)
marylla Oct 9, 2019
14ed487
[12.0][FIX] contract & contract_sale - security fix
enriquemartin Oct 9, 2019
f0411ae
Translated using Weblate (Catalan)
albertpons Oct 9, 2019
a270a04
Translated using Weblate (Portuguese (Brazil))
britoederr Oct 10, 2019
a93973f
[MIG] contract: Missing renaming of invoice link
pedrobaeza Oct 15, 2019
b591ef1
Translated using Weblate (Chinese (Simplified))
liweijie0812 Oct 16, 2019
03283cb
[MIG] contract: Create contract sequence for allowing to create records
pedrobaeza Oct 23, 2019
5e2f169
Translated using Weblate (Dutch)
thomaspot Oct 23, 2019
0eddd80
[IMP+FIX] contract: Add multi-company access rule for contract object…
sbejaoui Oct 25, 2019
a53f46f
Translated using Weblate (German)
rschnapka Oct 29, 2019
0f6ef9b
Translated using Weblate (Spanish)
josepmy Oct 29, 2019
97922a9
[FIX] contract: Fix performance issue on contract line read + Fix con…
sbejaoui Oct 30, 2019
c822bb0
[MIG] contract: No contract on AA without recurring invoices flag
pedrobaeza Nov 11, 2019
154463b
Translated using Weblate (Croatian)
badbole Nov 12, 2019
dd829d8
[IMP] contract: Fix test crash with other modules
sergio-teruel Nov 14, 2019
b0cc7da
[MIG][FIX] contract: Move contracts, but disable them
pedrobaeza Nov 18, 2019
80f3f58
Translated using Weblate (Croatian)
badbole Dec 2, 2019
781a238
[12.0][FIX] - Run onchange contract_type when changing the contract t…
sbejaoui Nov 26, 2019
ee32179
[FIX] contract: Don't execute onchange after invoice creation + Tests…
pedrobaeza Dec 2, 2019
5ae8dc6
[REF] contract: Several refactorings
sbidoul Dec 6, 2019
cd1aa40
Translated using Weblate (French)
Martronic-SA Dec 6, 2019
e1b8cb7
[REF+FIX+IMP] contract: Several refactorings + fixes + imps
sbidoul Dec 6, 2019
0b55a28
[FIX+REF] contract: Improve unit tests + add unit test for different …
sbejaoui Dec 9, 2019
a5f757a
[IMP] contract: display invoicing offset
sbidoul Dec 9, 2019
b9fdb08
Translated using Weblate (Portuguese (Brazil))
augustodinizl Dec 16, 2019
37dbcf1
[IMP+FIX] contract: Several things
sbejaoui Dec 21, 2019
7702ee8
Translated using Weblate (Italian)
scigghia Dec 26, 2019
fe6dd34
[IMP+FIX] contract: Add failing test for wrong invoicing date after c…
sbejaoui Dec 19, 2019
12dc6f2
[FIX] contract: Handle properly multi-company setups
pedrobaeza Jan 8, 2020
b93fbb4
Translated using Weblate (French)
gregory-moka Jan 9, 2020
9d77511
Added translation using Weblate (Spanish (Chile))
Jan 17, 2020
21d7f2e
Translated using Weblate (Spanish)
Jan 17, 2020
7b91724
Translated using Weblate (French)
qgroulard Jan 21, 2020
a03b458
[IMP] contract: remove redundant method
pedrobaeza Jan 8, 2020
0445b10
[12.0][IMP] - Add an action for contracts manual invoicing
sbejaoui Nov 13, 2019
8922f1a
Translated using Weblate (Italian)
Feb 4, 2020
ec3f05f
Translated using Weblate (Portuguese (Brazil))
marcelsavegnago Feb 12, 2020
4c4e79b
Translated using Weblate (Finnish)
jarmokortetjarvi Feb 13, 2020
918142a
Translated using Weblate (Portuguese)
pedrocs-exo Feb 17, 2020
be50926
Translated using Weblate (Finnish)
jarmokortetjarvi Feb 26, 2020
8ea6d9e
[IMP] contract: add analytic_tag_ids field in contract lines
Feb 28, 2020
7cf0467
[IMP] contract: Improve partner With running contracts search view fi…
sbejaoui Feb 12, 2020
9f5f0eb
Translated using Weblate (French)
svalaeys Mar 17, 2020
946af2e
[IMP] - Add contract tags
sbejaoui Oct 24, 2019
7d48503
Set company_id earlier in the invoice preparation process so that _on…
svalaeys Mar 23, 2020
5c2c358
Translated using Weblate (Spanish)
Mar 25, 2020
17c7555
[FIX] contract: Delete cascade line wizard
pedrobaeza Apr 1, 2020
f3bdebb
[IMP] - Place id attribute before model
sbejaoui Apr 2, 2020
a6662a8
[IMP] contract: add section and notes in contract line
Mar 17, 2020
d73f415
[FIX+IMP] contract: improve test coverage with new sections + fix sea…
pedrobaeza Apr 14, 2020
0d9ad5c
Translated using Weblate (German)
marylla May 6, 2020
ed57802
[FIX] contract: Select the correct sections/notes to be invoiced
Apr 28, 2020
7ea932f
[IMP] - Contract: add new recurring_rule_type quarterly and semesterly
sbejaoui Apr 14, 2020
a1891a9
Translated using Weblate (Spanish)
JorgeQuinteros May 21, 2020
a041374
[FIX] contract: Currency is not editable + pricelist from partner
pedrobaeza Jun 2, 2020
22bd651
Translated using Weblate (Portuguese (Brazil))
fcolus Jun 16, 2020
ad406f4
Translated using Weblate (Spanish)
pedrobaeza Jun 17, 2020
78db296
[FIX] contract: do not die if modified partner has contracts in sever…
Jun 25, 2020
63cee9f
[IMP] contract: Allow to set a manual currency
pedrobaeza Jun 5, 2020
13fcc65
Translated using Weblate (Slovenian)
sysadminmatmoz Jun 30, 2020
cdef2dc
[FIX] contract: multi-company assignment notification
Jul 28, 2020
e0c98c6
[12.0][FIX] - fiscal position, payment mode and pricelist obtained ac…
sbejaoui Aug 17, 2020
16fd98c
[IMP] : black, isort, prettier
pedrobaeza Jul 13, 2020
c48d8f8
[MIG] contract: Migration to 13.0
pedrobaeza Jul 14, 2020
9d2c771
[IMP+REF] contract: Allow to set recurrency at header level
pedrobaeza Jul 14, 2020
d6e21f7
[13.0][FIX] contract: Recompute recurring next date
rousseldenis Sep 9, 2020
9e71121
[IMP] contract: Set a condicion to avoid create lines on invoices
CarlosRoca13 Oct 28, 2020
1b3c62b
[FIX] contract: Only include 'section_and_note_one2many' js widget in…
victoralmau Nov 4, 2020
9242ccc
Translated using Weblate (Spanish (Argentina))
ibuioli Nov 22, 2020
2909200
[IMP] contract: Add followers to invoices created
victoralmau Nov 30, 2020
1370863
Translated using Weblate (Dutch)
bosd Dec 15, 2020
f8dca26
Translated using Weblate (Spanish (Argentina))
ibuioli Dec 22, 2020
16214ce
[IMP] contract: Portal
victoralmau Dec 16, 2020
1224b3d
[IMP] contract: JS tour on test assets
pedrobaeza Dec 25, 2020
e3811a1
[IMP] contract: Add contract modification + contract: Add fields to c…
victoralmau Dec 28, 2020
8d858b9
Translated using Weblate (Spanish (Argentina))
ibuioli Jan 10, 2021
172461c
[FIX] contract: Modification mail + Auto-create follower in contract …
victoralmau Jan 4, 2021
884f570
[13.0][FIX] contract: Impossible to create invoices from contract lin…
rousseldenis Jan 31, 2021
40bd7d4
[FIX] contract: Error in test_contract_invoice_followers
victoralmau Feb 2, 2021
e38acad
[FIX] contract: remove groupby if it is in context + consistency betw…
Feb 15, 2021
89d6972
[13.0][FIX] contract: consistency between contract count and contract…
newtratip Feb 23, 2021
422de34
[OU-FIX] contract: Don't alter v12 recurrence mechanism + Transfer co…
pedrobaeza Feb 27, 2021
de3b152
[FIX] contract: Changed modification_mail auto to appear like email a…
victoralmau Mar 17, 2021
ec69def
[IMP] contract: black, isort, prettier
ozono Apr 1, 2021
a94bd83
[MIG] contract: Migration to 14.0
ozono Apr 2, 2021
08affb6
[FIX] contract: restore readme images
ozono Apr 4, 2021
6c401b4
Added translation using Weblate (French (France))
Yvesldff Apr 11, 2021
42f931e
Translated using Weblate (Dutch)
bosd Apr 18, 2021
0326c41
[FIX] contract: Don't change period start date having line recurrence
pedrobaeza May 18, 2021
3a57c52
[13.0][FIX] contract: Set layout for section and note in portal template
rousseldenis Apr 30, 2021
72802bc
[IMP] contract: Improve code to show recurring_rule_type from contrac…
victoralmau May 24, 2021
4278315
Translated using Weblate (Spanish (Argentina))
ibuioli May 30, 2021
1fc9a4d
Translated using Weblate (Spanish (Argentina))
ibuioli Jun 14, 2021
e2de919
[FIX] contract: Cleanup values on line when invoicing
pedrobaeza Jul 1, 2021
0c952c2
Translated using Weblate (Turkish)
tate11 Aug 5, 2021
63c740c
[FIX] contract: fix an obvious crash when self is a multi-recordset
alexis-via Aug 30, 2021
912ea95
[FIX] contract: Fix invoice creation and salesperson assignment
joao-p-marques Sep 10, 2021
03d9c57
Translated using Weblate (Catalan)
pere-aquarian Sep 13, 2021
a4b957b
Translated using Weblate (Portuguese)
pedrocs-exo Oct 25, 2021
bfce4a1
[IMP] contract: black, isort, prettier
jcdrubay Oct 28, 2021
126a6dc
[MIG] contract: Migration to 15.0
jcdrubay Oct 28, 2021
b3a52d3
[FIX] contract: Avoid error in invoicing contracts crone
manuelregidor Oct 29, 2021
c79f734
[15.0][IMP] modify production beta to stable
JoanMForgeFlow Jan 25, 2022
064000a
[IMP] contract: Add discount + price_subtotal fields to the contract …
victoralmau Jan 25, 2022
69ed2ee
ADJ: When generating invoices from the Wizard to create invoices manu…
jcdrubay Feb 11, 2022
a97a440
Translated using Weblate (Catalan)
Noel000 Feb 25, 2022
4d4e7e9
Translated using Weblate (Spanish (Argentina))
ibuioli Feb 26, 2022
6ee9346
[FIX+IMP] contract: Several things
rousseldenis Feb 25, 2022
f9f10fd
Translated using Weblate (Catalan)
juliap98 Apr 7, 2022
f681a50
Translated using Weblate (Turkish)
tate11 Apr 19, 2022
153255b
[FIX] contract: add default_move_type in context
mariadforgeflow May 23, 2022
2ec63b8
[FIX+IMP] contract: lots of things
rousseldenis Nov 3, 2021
f5a1c78
[FIX] contract: change where security is given to group_account_invoi…
albariera Oct 7, 2021
0fd586b
[FIX] contract: Remove noupdate in mail template data
joao-p-marques Jun 7, 2021
bb5f4eb
Translated using Weblate (Spanish (Argentina))
ibuioli Jun 29, 2022
4f96b9f
Translated using Weblate (French)
gregory-moka Jul 4, 2022
7099f70
[15.0][IMP] contract : show tags with colors in the contract
chandni299 Jul 27, 2022
57e4e19
Translated using Weblate (Spanish (Argentina))
ibuioli Aug 2, 2022
fcdd89f
Translated using Weblate (French)
gregory-moka Aug 17, 2022
613f9c7
Translated using Weblate (German)
wpichler Aug 22, 2022
d6a1855
[IMP] contract: Use _prepare_home_portal_values() function.
victoralmau Sep 2, 2022
8af7d41
Translated using Weblate (Portuguese (Brazil))
douglascstd Sep 26, 2022
1dd8cfd
Translated using Weblate (Spanish)
pere-aquarian Oct 10, 2022
2e4c995
[IMP] contract: Set invoice_user_id field with Form() to apply the co…
victoralmau Oct 18, 2022
4cd29ba
[IMP] Add link to contract in invoice chatter
Sep 21, 2022
3b0e270
[FIX] contract: bug onchange date_start (comparison between bool and …
mourad-ehm May 13, 2022
9713450
[IMP] contract: Set fixed start dates in test contracts
victoralmau Dec 1, 2022
5178630
[FIX] contract: Switch string > title in buttons
pedrobaeza Nov 3, 2022
c383121
[MIG] contract: Migration to 16.0
wpichler Oct 24, 2022
a7288af
Translated using Weblate (Italian)
francesco-ooops Jul 12, 2023
28cffd8
Translated using Weblate (Italian)
mymage Jul 13, 2023
a59284c
Added translation using Weblate (Catalan (ca_ES))
miquelalzanillas Jul 18, 2023
04300d2
Translated using Weblate (German)
NICO-SOLUTIONS Jul 19, 2023
33e708a
[IMP] contract: Make portal link configurable
Jul 26, 2023
27201be
Translated using Weblate (Italian)
mymage Aug 1, 2023
dbdf348
Translated using Weblate (Spanish)
Ivorra78 Aug 2, 2023
2a11b0a
Translated using Weblate (Italian)
mymage Aug 22, 2023
e4ad935
Translated using Weblate (Spanish)
Ivorra78 Sep 4, 2023
41e9bab
[16.0][FIX] contract: invoice message create
carolinafernandez-tecnativa Oct 9, 2023
5a57533
Translated using Weblate (Italian)
mymage Oct 12, 2023
64987c9
Translated using Weblate (Portuguese (Brazil))
adrianojprado Oct 13, 2023
8764008
[FIX] No contract line and invoices when contract is archived
fkantelberg Jan 24, 2023
7c4e63d
Translated using Weblate (Italian)
mymage Oct 23, 2023
2fd9b5b
Translated using Weblate (Portuguese (Brazil))
adrianojprado Oct 28, 2023
5701018
Translated using Weblate (Italian)
mymage Oct 31, 2023
b48b8e2
Translated using Weblate (Italian)
alessandro-fiorino Nov 8, 2023
5c0d412
[FIX] contract: removed dateutil from dependencies
suniagajose Nov 8, 2023
73cc1f2
Translated using Weblate (Italian)
alessandro-fiorino Nov 8, 2023
6426fee
Translated using Weblate (Dutch)
ThijsvOers Nov 14, 2023
5a7663e
Translated using Weblate (Italian)
mymage Nov 14, 2023
04ee9bb
Translated using Weblate (Italian)
francesco-ooops Dec 15, 2023
a8562d8
Translated using Weblate (French)
remi-filament Dec 20, 2023
2a34990
Translated using Weblate (Italian)
mymage Dec 24, 2023
a5ffc61
[FIX] Show analytic distribution and hide analytic account
fkantelberg Nov 7, 2023
e8c4028
[MIG] contract: Remove analytic_account_id and add migration
fkantelberg Jan 4, 2024
80cc834
Translated using Weblate (Italian)
mymage Jan 25, 2024
3907d40
[FIX] contract: Change web_ribbon text to title to make it translatable
victoralmau Jan 30, 2024
7f2f6a5
[FIX] contract: Move migration to post migration
fkantelberg Feb 1, 2024
f8e1acb
[16.0] contract: Show discount lines for users with the group 'Discou…
fkantelberg Feb 9, 2024
cbe87a9
[IMP] contract: Protect line recurrrency change
pedrobaeza Jan 9, 2024
882a15e
Translated using Weblate (Italian)
mymage Feb 20, 2024
653cfda
[16.0][IMP] contract and contract_sale_generation: Add translations
aliciagaarzo Mar 11, 2024
a1da715
Translated using Weblate (French)
houzefa-abba Mar 13, 2024
0715b08
[FIX] contract: Fix modifications layout
pedrobaeza Mar 14, 2024
dc65a65
[IMP] contract: Remove buttons from contract lines if recurrence is n…
victoralmau Mar 12, 2024
7ed3387
Translated using Weblate (Italian)
francesco-ooops Mar 20, 2024
a8b27d5
[16.0][IMP] contract: improve visual
aliciagaarzo Mar 21, 2024
12ae6fb
[16.0][IMP] contract and contract_variable_quantity: improve visual o…
aliciagaarzo Apr 1, 2024
c8a7d57
[IMP] contract: black, isort, prettier
CRogos Mar 23, 2024
56d89a7
[MIG] contract: Migration to 17.0
CRogos Mar 27, 2024
f0adc30
[UPD] Update contract.pot
Apr 10, 2024
05115e3
[BOT] post-merge updates
OCA-git-bot Apr 10, 2024
1683c26
Update translation files
weblate Apr 10, 2024
17a0f4d
Translated using Weblate (Italian)
mymage Apr 11, 2024
10ba866
[17.0][IMP] contract: solve error for last_date_invoiced field
aliciagaarzo Apr 15, 2024
c815055
[BOT] post-merge updates
OCA-git-bot Apr 17, 2024
97a8965
[17.0][FIX] contract: report translations & change structure
peluko00 Apr 23, 2024
72d2217
Translated using Weblate (Spanish)
Ivorra78 Apr 24, 2024
ab75cdf
Translated using Weblate (Italian)
mymage May 6, 2024
04afbba
Translated using Weblate (Italian)
mymage May 30, 2024
7f5d0b8
Translated using Weblate (Swedish)
jakobkrabbe Jun 5, 2024
42c3b2b
[UPD] Update contract.pot
Jul 12, 2024
0eebdd5
Update translation files
weblate Jul 12, 2024
fa9d758
Translated using Weblate (Italian)
mymage Jul 29, 2024
17dd226
[FIX] contract: Fix error when sending contract by email
carolinafernandez-tecnativa Aug 12, 2024
3f2dca3
Translated using Weblate (Spanish)
pedrobaeza Aug 12, 2024
480bee8
[BOT] post-merge updates
OCA-git-bot Aug 14, 2024
6b88ef1
Translated using Weblate (Italian)
mymage Aug 20, 2024
7b3d963
[UPD] Update contract.pot
Aug 24, 2024
f5e8485
Update translation files
weblate Aug 24, 2024
98f95a0
[BOT] post-merge updates
OCA-git-bot Aug 26, 2024
d8ffaba
Translated using Weblate (Italian)
mymage Aug 26, 2024
a08c98c
Translated using Weblate (Italian)
mymage Aug 29, 2024
f6edf25
[FIX] contract: Link format error for messages posted when creates ma…
sergio-teruel Sep 3, 2024
1f5991d
[UPD] Update contract.pot
Sep 7, 2024
64fc3a2
[BOT] post-merge updates
OCA-git-bot Sep 7, 2024
d6d7fa3
Update translation files
weblate Sep 7, 2024
3d19aad
Translated using Weblate (Italian)
mymage Sep 9, 2024
3506728
Translated using Weblate (Finnish)
jarmokortetjarvi Sep 23, 2024
6a4d57f
[18.0][MIG] contract
sbejaoui Nov 4, 2024
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
171 changes: 171 additions & 0 deletions contract/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,171 @@
================================
Recurring - Contracts Management
================================

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

.. |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/18.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-18-0/contract-18-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=18.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# or #END# in the description field to display the start/end
date 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/18.0/contract/static/src/screenshots/portal-my.png
.. |image1| image:: https://raw.githubusercontent.com/OCA/contract/18.0/contract/static/src/screenshots/portal-list.png
.. |image2| image:: https://raw.githubusercontent.com/OCA/contract/18.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:%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.

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/18.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")
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"):
return request.redirect("/my")
domain = self._get_filter_domain(kw)
searchbar_sortings = {
"date": {"label": _("Date"), "order": "recurring_next_date desc"},
"name": {"label": _("Name"), "order": "name desc"},
"code": {"label": _("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