Commit Graph

26 Commits

Author SHA1 Message Date
Stéphane Bidoul (ACSONE)
8d4a52baca [IMP] contract: support pre-paid for monthlylastday
monthlylastday is (almost) not a special case anymore \o/.
montlylastday is simply a montly period where the
periods are aligned on month boundaries.
The last bit of special casing is that postpaid generates
invoice the day after the last dasy of the period, except
for monthlylastday where the invoice is generated on the
last day of the period. This last exception will disappear
when we put the offset under user control.

This is a breaking change because the post-paid/pre-paid
mode becomes relevant for monthlylastday invoicing.
The field becomes visible in the UI. Code that generate
monthlylastday contract lines must now correctly set
the pre-paid/post-paid mode too. Some tests have had
to be adapted to reflect that.
2023-07-26 13:12:01 +00:00
sbejaoui
80c6b728a1 [12.0][FIX] - contract company must be the same as the sale order
When creating a contract from a sale order the company must be the sale order
company and not the user company
2023-07-26 13:12:01 +00:00
sbejaoui
fe302a6991 [12.0][IMP] - sale line linked to contracts must not be invoiced from sale order 2023-07-26 13:12:01 +00:00
sbejaoui
74aded7ac0 [12.0][IMP] - Improve unit tests 2023-07-26 13:12:01 +00:00
sbejaoui
abf0e682f0 [12.0][REF] - Split analytic accouts and contracts 2023-07-26 13:12:01 +00:00
sbejaoui
72922630c6 [12.0][IMP] - option to decide if we automaticallt create contract a sale confirm 2023-07-26 13:12:01 +00:00
sbejaoui
576754d0bd [IMP] - cancel contract line if the downsell/upsell comes before 2023-07-26 13:12:01 +00:00
sbejaoui
4cd468b7b2 [FIX] - Fix recurring_next_date 2023-07-26 13:12:01 +00:00
sbejaoui
2010e9bf36 [IMP] - Simplify sale order line creation for contract product 2023-07-26 13:12:01 +00:00
sbejaoui
46a01d178a [IMP] - Add unit test 2023-07-26 13:12:01 +00:00
sbejaoui
676787db9f [FIX] - fix unit tests 2023-07-26 13:12:01 +00:00
sbejaoui
864ab024d3 [FIX] - fix flake8 2023-07-26 13:12:01 +00:00
sbejaoui
06a1c8ae9e [FIX] - include date_end in the period if the product is_autorenew 2023-07-26 13:12:01 +00:00
sbejaoui
9538a7e057 [FIX] - fix onchange 2023-07-26 13:12:01 +00:00
sbejaoui
2de8494fcb [FIX] - on upsel, contract line should stop day - 1 2023-07-26 13:12:01 +00:00
sbejaoui
7c9bbd95ee [IMP] - link contract line and its successor in upsel case 2023-07-26 13:12:01 +00:00
sbejaoui
881eb87c2c [ADD] - Add renewal process with termination notice 2023-07-26 13:12:01 +00:00
sbejaoui
1f15f63951 [IMP] - Upsell/Downsell contract from sale order 2023-07-26 13:12:01 +00:00
sbejaoui
b6d8644583 [FIX] - Compute recurring_next_date before create contract line 2023-07-26 13:12:01 +00:00
sbejaoui
f7b0c0a327 [IMP] - Contract product are ignored on invoicing process
- Sale order line for contract product pass to nothing to invoice on order confirmation
- Contract Invoices are linked to sale order line
2023-07-26 13:12:01 +00:00
sbejaoui
33f6ad70bf [IMP] - Create contract on sale order confirmation
- On Sale Order confirmation, a contract is created for each contract template used on sale order lines
- A not finished contract can be mentioned on sale order line
- A sale order line linked to a contract will update it and don't create a new one if it had the same template
2023-07-26 13:12:01 +00:00
sbejaoui
03b9d23ae0 [IMP] - Add recurrence fields to product template and sale order line 2023-07-26 13:12:01 +00:00
sbejaoui
0a9bed157e [IMP] - Product with is_contract can be only of type service 2023-07-26 13:12:01 +00:00
Florent THOMAS
6f5e446a15 [FIX] contract_sale_generation: it doesn't create sales (#141)
* Change the method called in the view
* Complete the create_invoice method
* Bump version + authoring
* Correct bad call of method
  Small Documentation
* Add super call in python test
* FIX bad field names causing bad quantities in sale.order.line
2023-07-26 13:12:01 +00:00
Dave Lasley
2296997a48 [FIX] product_contract: Fix mock usage in tests 2023-07-26 13:12:01 +00:00
Ted Salmon
1c444627b9 [ADD] product_contract: Create module
* Add contract functionality to `product.templates`
* Add logic to create contracts from `sale.order` that contains contract products.
2023-07-26 13:12:01 +00:00