-
-
Notifications
You must be signed in to change notification settings - Fork 364
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
[14.0][MIG] delivery_auto_refresh: Migration to 14.0 #472
[14.0][MIG] delivery_auto_refresh: Migration to 14.0 #472
Conversation
Auto-refresh delivery price in sales orders =========================================== This module automates the delivery price handling for the following cases: * If you change any line in your draft sales order (SO), when saving, the delivery price will be adjusted without having to click on "→ Set price". * If specified in the system parameter, the delivery line can be also auto-added when creating/saving. * If you deliver a different quantity than the ordered one, the delivery price is adjusted on the linked SO when the picking is transferred. Configuration ============= * Activate developer mode. * Go to *Settings > Technical > Parameters > System Parameters*. * Locate the setting with key "delivery_auto_refresh.auto_add_delivery_line" or create a new one if not exists. * Put a non Falsy value (1, True...) if you want to add automatically the delivery line on save. Known issues / Roadmap ====================== * After confirming the sales order, the price of the delivery line (if exists) will be only updated after the picking is transferred, but not when you might modify the order lines. * There can be some duplicate delivery unset/set for assuring that the refresh is done on all cases. * On multiple deliveries, second and successive pickings update the delivery price, but you can't invoice the new delivery price. * This is only working from user interface, as there's no way of making compatible the auto-refresh intercepting create/write methods from sale order lines.
Currently translated at 100.0% (2 of 2 strings) Translation: delivery-carrier-12.0/delivery-carrier-12.0-delivery_auto_refresh Translate-URL: https://translation.odoo-community.org/projects/delivery-carrier-12-0/delivery-carrier-12-0-delivery_auto_refresh/zh_CN/
Currently translated at 100.0% (2 of 2 strings) Translation: delivery-carrier-12.0/delivery-carrier-12.0-delivery_auto_refresh Translate-URL: https://translation.odoo-community.org/projects/delivery-carrier-12-0/delivery-carrier-12-0-delivery_auto_refresh/zh_CN/
Currently translated at 100.0% (2 of 2 strings) Translation: delivery-carrier-12.0/delivery-carrier-12.0-delivery_auto_refresh Translate-URL: https://translation.odoo-community.org/projects/delivery-carrier-12-0/delivery-carrier-12-0-delivery_auto_refresh/pt_BR/
…+ add on create As the used method now has a check for not being used when the order is confirmed, so it collapses when you want to add the delivery line in that moment. Previous code didn't take into account the direct creation of the sales order.
For not having bad interaction with the rest of the tests.
new() doesn't invoke defaults, so you can get an SO without company for example, and interacts bad with other modules.
Currently translated at 100.0% (2 of 2 strings) Translation: delivery-carrier-12.0/delivery-carrier-12.0-delivery_auto_refresh Translate-URL: https://translation.odoo-community.org/projects/delivery-carrier-12-0/delivery-carrier-12-0-delivery_auto_refresh/sl/
In the core the onchange is now aligned with `partner_shipping_id` instead of `partner_id`. odoo/odoo@b6f91e3
…avoid error unmanaged
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: delivery-carrier-13.0/delivery-carrier-13.0-delivery_auto_refresh Translate-URL: https://translation.odoo-community.org/projects/delivery-carrier-13-0/delivery-carrier-13-0-delivery_auto_refresh/
… after refresh to prevent warning decoration
When the company has different currency than the pricelist asociated to the partner. The final price is converted to the currency of the pricelist. With this changes we achieve to avoid this recomputation and solve this problems on tests. TT26914
…n website The steps to reproduce the problem are these: - Set delivery_auto_refresh.auto_add_delivery_line. - Set a default delivery method on the user's partner. - Place a new ecommerce order with that user adding to the cart. Doing this steps we get the error: Record does not exist or has been deleted. (Record: sale.order.line(63,), User: 1)
We should get as the same default carrier as Odoo does. TT34020
Added new config paramerter that automates de voiding of the delivery line for the case of returning a picking that just didn't go away from the warehouse (due to several causes like the customer cancelling the sale order in the last minute). This will only be performed if the order wasn't already invoiced and the return was set to refund. TT30359
…n website The steps to reproduce the problem are these: - Set delivery_auto_refresh.auto_add_delivery_line. - Set a default delivery method on the user's partner. - Place a new ecommerce order with that user adding to the cart. Doing this steps we get the error: Record does not exist or has been deleted. (Record: sale.order.line(63,), User: 1)
We should get as the same default carrier as Odoo does. TT34020
Added new config paramerter that automates de voiding of the delivery line for the case of returning a picking that just didn't go away from the warehouse (due to several causes like the customer cancelling the sale order in the last minute). This will only be performed if the order wasn't already invoiced and the return was set to refund. TT30359
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: delivery-carrier-13.0/delivery-carrier-13.0-delivery_auto_refresh Translate-URL: https://translation.odoo-community.org/projects/delivery-carrier-13-0/delivery-carrier-13-0-delivery_auto_refresh/
…ts related to delivery_auto_refresh
… 14-delivery_auto_refresh_2 # Conflicts: # delivery_carrier_pricelist/tests/test_delivery_pricelist.py
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ilyasProgrammer please, do not add "Merge" commits. |
Yes, not the best way to do it. If this module's default values is interfering with other modules tests it would be better to set saner defaults or remove demo data that would provoke that. |
@ilyasProgrammer what do you think can you fix it ? |
Yeah, if it's about default values I'd rather tweak them or activate its behavior explicitly w/ a flag on the company or any other kind of configuration that might suit. |
If there were more than one delivery line, we'd get a singleton error when trying to refresh due to the need of taking the discount of the former lines. TT35025
When choosing the sale carrier from the header of the order form we should filter those carriers not available for the given shipping address the in the same way the wizard does it. TT35200
I'll try to find configuration-based variant to solve this. |
…d. It depends on partner. + Cherry picked 2 commits.
moved here #473 |
based on #466
Updated tests