Commit Graph
15 Commits
Author SHA1 Message Date
Richard Mathot 7ac04d409e [FIX] delivery: invoice actual shipping cost
Since commit 78cc0b95f4, there was no more
way to invoice the actual price of a shipping (after the transfer).

In order to make that available again, we introduce a new field on the
sale order. This field automatically detects whether a sale order
contains a "delivery" line or not, at sale order confirmation
(action_confirm).

When the delivery order is processed, the actual shipping cost is thus
repercuted on the sale order if and only if the shipping price was not
"forced" at the sale order confirmation.

(and a few refactoring to avoid copy-pasting code lines)
2015-09-28 17:25:44 +02:00
Christophe Simonis 57168a9e90 [MERGE] forward port of branch saas-6 up to a669433 2015-09-23 14:34:26 +02:00
Richard Mathot 8c8fee29ea [FIX] delivery: it is better when parameters are passed in the right order 2015-09-22 11:14:47 +02:00
Richard Mathot ec7fb80775 [REM] delivery: unused field for now, should not have been merged in a223111b92 2015-09-21 10:20:03 +02:00
Nicolas Martinelli 78cc0b95f4 [FIX] delivery: remove deprecated methods and field
Due to new Sale module
2015-09-11 15:42:28 +02:00
Richard Mathot ca1749d0a0 [IMP] delivery: add an option to disable shipping while validating pickings
It allows people to only use the rating service of the sales orders
2015-09-11 15:27:15 +02:00
Josse Colpaert a934b9e1ba [IMP] delivery: add fields for retrieving the bulk weight and the weight of the packages of a picking
As the transporter interfaces will put a label on every package,
it is in handy to have a field with the list of the final packages
(and their weights) treated in  the picking.
We give a weight for the products that are not in a package also(bulk).
We only put the weight on the package in the views.

The weights in the product form views should appear entirely or not in
product / product templates (only when only 1 variant)
(attrs was only on the field, not label, ...)

The digits= for the weights are not needed as there is a decimal precision
on these fields.
2015-09-09 17:11:54 +02:00
Mahendra barad a223111b92 [IMP] delivery, website_sale_delivery: refactoring and usability
* migration to new API
* removed delivery.grid object, has been merged with delivery.carrier
* change view of delivery.carrier (price rules, etc.)
* tests from yml to py
* website : restrict the list of countries for delivery address in the shop
2015-09-01 08:14:16 +02:00
Nicolas Martinelli 2188733338 [IMP] delivery: adaptation due to the new Sale module
Major changes:
- No use of UoS anymore
- No invoice policy anymore

Reason: complete rewrite of the Sale module.

Responsible: fp, dbo, nim
2015-08-27 18:10:18 +02:00
Christophe Simonis 95ac2cfd10 [MERGE] forward port of branch saas-6 up to be58335 2015-08-06 16:09:19 +02:00
Richard Mathot dca43ecd4d [FIX] delivery: store estimated delivery price 2015-08-06 10:35:17 +02:00
Richard Mathot 271ab79666 [FIX] delivery: do not always recompute estimated shipping price
When a SO is not in draft AND uses an external shipping provider, it
does not make sens to re-poll the provider for the price (and this is
quite slow)
2015-08-05 16:43:15 +02:00
Josse Colpaert edd1e04eb8 [IMP] sale, purchase, stock_account: Refactor invoicing on picking
- Added reverse for purchase_ids/purchase_line_ids/invoice_ids/invoice_line_ids
- Put first everything in a dictionary by invoice to create and
then create invoice by invoice
2015-07-27 16:59:08 +02:00
Christophe Simonis a304194936 [MERGE] forward port of branch saas-6 up to 81b5c60 2015-06-25 00:26:31 +02:00
Richard Mathot 3098ab7fd1 [IMP] delivery: basic pluggable support for shipping integration
Add a `delivery_type` selection field on delivery.carrier.
The default is `grid` i.e. a static pricing grid with rules
to compute the delivery costs.

Future module will however be able to extend the `delivery_type`
selection to add new keys, such as `fedex` or `ups` and provide
custom implementations for the various API methods, as described
below.

In order to add your own external provider, follow these steps:

 1. Create your model MyProvider that _inherits `delivery.carrier`
 2. Extend the selection field `delivery_type` with a pair
    ('<my_provider' , 'My Provider')
 3. Implement API methods as required:
    <my_provider>_get_shipping_price_from_so
    <my_provider>_send_shipping
    <my_provider>_open_tracking_page
    <my_provider>_cancel_shipment
2015-06-24 13:54:31 +02:00