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] delivery_multi_destination: Migration to 18.0 #909

Open
wants to merge 27 commits into
base: 18.0
Choose a base branch
from

Conversation

Borruso
Copy link

@Borruso Borruso commented Nov 27, 2024

Migration from 16.0 to 18.0

Issue: #889

pedrobaeza and others added 27 commits November 27, 2024 12:00
==================================================
Multiple destinations for the same delivery method
==================================================

Module `delivery` in version 8 allows to set different price rules depending
on the destination. This is what is called a delivery grid.

In version 9, for simplifying delivery methods, Odoo has plained the structure,
lowering destinations at delivery method level, and removing delivery grid
model.

This is not usable when you have different prices according the destination
of your delivery.

This module restores the same concept, reusing the same model for nesting
several "children" delivery methods, one per possible destination. It has been
designed to reuse all possible extensions to the base delivery, without the
need to create a glue module for having multiple destinations.

This module also handles if you're migrating from version 8 and you had
`delivery` module installed, to keep the delivery grids.

Installation
============

If you installed the module on a version 8 migrated database, some operations
will be done for recovering delivery grids. If so, you need to have
**openupgradelib** library installed.

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

To configure delivery methods with multiple destinations:

* Go to Inventory > Configuration > Delivery > Delivery Methods
* Create or edit an existing record.
* Select "Destination type" = "Multiple destinations".
* Introduce a line for each destination in the new tab "Destinations"
* Lines have priority, so you have to put first the lines with more restricted
  destinations.

Usage
=====

* When using the delivery method in a Sales order, delivery address will be
  used for computing the delivery price according introduced destinations.
OCA Transbot updated translations from Transifex
…#148)

* Don't show children carriers on many2one selections
* Don't search by default children carriers
* Add demo data

OCA Transbot updated translations from Transifex
* Standard procedure
* README by fragments
* Code changed to follow v11 logic
* Tests adapted and expanded
…lements

On a multi-destination carrier, that fields shouldn't be shown
…main one

When testing available carriers, we must return the main one if one of the
children matches, not returning the children itself.
…h multi

Handle the step of sending the shipping (triggered on picking validation) for
multi destination delivery. This means to manually check for fixing prices (as
the implementation doesn't check this part and always take the main carrier price,
not the subcarrier one.

Test for this use case done, although the rest of the cases are not covered by
tests yet.
[UPD] Update delivery_multi_destination.pot

[UPD] README.rst
[UPD] Update delivery_multi_destination.pot

[UPD] README.rst
When there is no carrier, destination_type is false and can cause error.
In the case, `one` destination_type should be used.

delivery_multi_destination 14.0.1.0.1
This reverts commit 0e28544.

This ismixing in the same commit other things for a non related problem that has
been fixed in a better way in the previous version, so we are reverting it and
applying the rest of the patches.
…sed on rules

If the destination carrier line is based on rules, the price is not
correctly fetched, as it's hardcoded to call `_get_price_available`
using picking's carrier, no matter the recordset from which you call it
(the self argument).

Thus, the only solution to get the proper value is to temporarily
replace the carrier on the picking on the calls chain, to restore it
before returning.

TT42862
… other companies

In the context where `carrier.child_ids` is being examined, all
existing subdestinations, no matter the company they have, are shown as
being in a sudo environment, so we need to filter them out those from
other companies.

TT43596
Currently translated at 100.0% (16 of 16 strings)

Translation: delivery-carrier-16.0/delivery-carrier-16.0-delivery_multi_destination
Translate-URL: https://translation.odoo-community.org/projects/delivery-carrier-16-0/delivery-carrier-16-0-delivery_multi_destination/pt_BR/
Currently translated at 100.0% (16 of 16 strings)

Translation: delivery-carrier-16.0/delivery-carrier-16.0-delivery_multi_destination
Translate-URL: https://translation.odoo-community.org/projects/delivery-carrier-16-0/delivery-carrier-16-0-delivery_multi_destination/it/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants