diff --git a/docsource/modules160-170.rst b/docsource/modules160-170.rst index 6af81bfe5af4..56a0c548bf09 100644 --- a/docsource/modules160-170.rst +++ b/docsource/modules160-170.rst @@ -120,7 +120,7 @@ Module coverage 16.0 -> 17.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | data_recycle | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| delivery | | | +| delivery | Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | delivery_mondialrelay | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -958,7 +958,7 @@ Module coverage 16.0 -> 17.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | stock_account | Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| |new| stock_delivery | | | +| |new| stock_delivery | Nothing to do | Split from delivery. | +---------------------------------------------------+----------------------+-------------------------------------------------+ | stock_dropshipping | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ diff --git a/openupgrade_scripts/scripts/delivery/17.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/delivery/17.0.1.0/noupdate_changes.xml index 6afe43e4db7e..1e194282c4fe 100644 --- a/openupgrade_scripts/scripts/delivery/17.0.1.0/noupdate_changes.xml +++ b/openupgrade_scripts/scripts/delivery/17.0.1.0/noupdate_changes.xml @@ -4,8 +4,8 @@ [('company_id', 'in', company_ids + [False])] - - + Standard delivery diff --git a/openupgrade_scripts/scripts/delivery/17.0.1.0/post-migration.py b/openupgrade_scripts/scripts/delivery/17.0.1.0/post-migration.py new file mode 100644 index 000000000000..c5e9af994bc3 --- /dev/null +++ b/openupgrade_scripts/scripts/delivery/17.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2024 Viindoo Technology Joint Stock Company (Viindoo) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "delivery", "17.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/delivery/17.0.1.0/pre-migration.py b/openupgrade_scripts/scripts/delivery/17.0.1.0/pre-migration.py new file mode 100644 index 000000000000..5efb15757bc1 --- /dev/null +++ b/openupgrade_scripts/scripts/delivery/17.0.1.0/pre-migration.py @@ -0,0 +1,81 @@ +from openupgradelib import openupgrade + +_xmlids_renames = [ + ( + "delivery.act_delivery_trackers_url", + "stock_delivery.act_delivery_trackers_url", + ), + ( + "delivery.access_choose_delivery_package", + "stock_delivery.access_choose_delivery_package", + ), + ( + "delivery.access_delivery_carrier_stock_user", + "stock_delivery.access_delivery_carrier_stock_user", + ), + ( + "delivery.access_delivery_carrier_stock_manager", + "stock_delivery.access_delivery_carrier_stock_manager", + ), + ( + "delivery.access_delivery_price_rule_stock_manager", + "stock_delivery.access_delivery_price_rule_stock_manager", + ), + ( + "delivery.access_delivery_zip_prefix_stock_manager", + "stock_delivery.access_delivery_zip_prefix_stock_manager", + ), + ( + "delivery.menu_action_delivery_carrier_form", + "stock_delivery.menu_action_delivery_carrier_form", + ), + ( + "delivery.menu_delivery_zip_prefix", + "stock_delivery.menu_delivery_zip_prefix", + ), + ( + "delivery.model_choose_delivery_package", + "stock_delivery.model_choose_delivery_package", + ), +] + + +def _delete_sql_constraints(env): + # Delete constraints to recreate it + openupgrade.delete_sql_constraint_safely( + env, "delivery", "delivery_carrier", "margin_not_under_100_percent" + ) + + +def _fill_stock_move_line_carrier_id(env): + """Field `carrier_id` on stock.move.line is now a stored field.""" + openupgrade.logged_query( + env.cr, + """ + ALTER TABLE stock_move_line + ADD COLUMN IF NOT EXISTS carrier_id INTEGER; + """, + ) + openupgrade.logged_query( + env.cr, + """ + UPDATE stock_move_line sml + SET carrier_id = sp.carrier_id + FROM stock_picking sp + WHERE sml.picking_id = sp.id; + """, + ) + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.rename_xmlids(env.cr, _xmlids_renames) + _delete_sql_constraints(env) + _fill_stock_move_line_carrier_id(env) + openupgrade.logged_query( # just to be sure + env.cr, + """ + UPDATE ir_module_module + SET state='to install' + WHERE name = 'stock_delivery' AND state='uninstalled'""", + ) diff --git a/openupgrade_scripts/scripts/delivery/17.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/delivery/17.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 000000000000..1d638470b6db --- /dev/null +++ b/openupgrade_scripts/scripts/delivery/17.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,95 @@ +---Models in module 'delivery'--- +model choose.delivery.package (moved to stock_delivery) [column['model_type']] +# DONE: pre-migration: moved to stock_delivery + +---Fields in module 'delivery'--- +delivery / delivery.carrier / fixed_margin (float) : NEW +delivery / delivery.carrier / invoice_policy (selection) : selection_keys is now '['estimated']' ('['estimated', 'real']') +# NOTHING TO DO + +delivery / sale.order / shipping_weight (float) : NEW hasdefault: compute +# NOTHING TO DO: new features + +delivery / stock.move.line / carrier_id (many2one) : is now stored +# DONE: pre-migration: Add new column & set value for it + +delivery / stock.move.line / carrier_name (char) : DEL +# NOTHING TO DO + +delivery / product.product / country_of_origin (many2one) : module is now 'stock_delivery' ('delivery') +delivery / product.product / hs_code (char) : module is now 'stock_delivery' ('delivery') +delivery / product.template / country_of_origin (many2one) : module is now 'stock_delivery' ('delivery') +delivery / product.template / hs_code (char) : module is now 'stock_delivery' ('delivery') +delivery / stock.move / weight (float) : module is now 'stock_delivery' ('delivery') +delivery / stock.move.line / carrier_id (many2one) : module is now 'stock_delivery' ('delivery') +delivery / stock.move.line / destination_country_code (char): module is now 'stock_delivery' ('delivery') +delivery / stock.move.line / sale_price (float) : module is now 'stock_delivery' ('delivery') +delivery / stock.package.type / package_carrier_type (selection): module is now 'stock_delivery' ('delivery') +delivery / stock.package.type / shipper_package_code (char) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / carrier_id (many2one) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / carrier_price (float) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / carrier_tracking_ref (char) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / carrier_tracking_url (char) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / delivery_type (selection) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / destination_country_code (char): module is now 'stock_delivery' ('delivery') +delivery / stock.picking / is_return_picking (boolean) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / package_ids (many2many) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / return_label_ids (one2many) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / shipping_weight (float) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / weight (float) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / weight_bulk (float) : module is now 'stock_delivery' ('delivery') +delivery / stock.picking / weight_uom_name (char) : module is now 'stock_delivery' ('delivery') +delivery / stock.quant.package / shipping_weight (float) : module is now 'stock_delivery' ('delivery') +delivery / stock.quant.package / weight (float) : module is now 'stock_delivery' ('delivery') +delivery / stock.quant.package / weight_is_kg (boolean) : module is now 'stock_delivery' ('delivery') +delivery / stock.quant.package / weight_uom_name (char) : module is now 'stock_delivery' ('delivery') +delivery / stock.quant.package / weight_uom_rounding (float) : module is now 'stock_delivery' ('delivery') +# NOTHING TO DO: Handled by ORM + +---XML records in module 'delivery'--- +DEL ir.actions.act_window: delivery.act_delivery_trackers_url [renamed to stock_delivery module] +# DONE: pre-migration: moved to stock_delivery + +NEW ir.model.access: delivery.access_delivery_price_rule_sale_manager +NEW ir.model.access: delivery.access_delivery_zip_prefix_sale_manager +DEL ir.model.access: delivery.access_choose_delivery_carrier_salesman +# NOTHING TO DO + +DEL ir.model.access: delivery.access_choose_delivery_package [renamed to stock_delivery module] +DEL ir.model.access: delivery.access_delivery_carrier_stock_manager [renamed to stock_delivery module] +DEL ir.model.access: delivery.access_delivery_carrier_stock_user [renamed to stock_delivery module] +DEL ir.model.access: delivery.access_delivery_price_rule_stock_manager [renamed to stock_delivery module] +DEL ir.model.access: delivery.access_delivery_zip_prefix_stock_manager [renamed to stock_delivery module] +# DONE: pre-migration: moved to stock_delivery + +ir.model.constraint: delivery.constraint_delivery_carrier_margin_not_under_100_percent (changed definition: is now 'check(margin >= -1)' ('check(margin >= -100)')) +# DONE pre-migration: safely delete constraint to recreate it + +DEL ir.ui.menu: delivery.menu_action_delivery_carrier_form [renamed to stock_delivery module] +DEL ir.ui.menu: delivery.menu_delivery_zip_prefix [renamed to stock_delivery module] +# DONE: pre-migration: moved to stock_delivery + +DEL ir.ui.view: delivery.choose_delivery_package_view_form +DEL ir.ui.view: delivery.delivery_stock_report_delivery_no_package_section_line +DEL ir.ui.view: delivery.delivery_tracking_url_warning_form +DEL ir.ui.view: delivery.label_package_template_view_delivery +DEL ir.ui.view: delivery.product_template_hs_code +DEL ir.ui.view: delivery.report_delivery_document2 +DEL ir.ui.view: delivery.report_package_barcode_delivery +DEL ir.ui.view: delivery.report_package_barcode_small_delivery +DEL ir.ui.view: delivery.report_shipping2 +DEL ir.ui.view: delivery.sale_order_portal_content_inherit_sale_stock_inherit_website_sale_delivery +DEL ir.ui.view: delivery.stock_move_line_view_search_delivery +DEL ir.ui.view: delivery.stock_package_type_form_delivery +DEL ir.ui.view: delivery.stock_package_type_tree_delivery +DEL ir.ui.view: delivery.stock_report_delivery_aggregated_move_lines_inherit_delivery +DEL ir.ui.view: delivery.stock_report_delivery_has_serial_move_line_inherit_delivery +DEL ir.ui.view: delivery.stock_report_delivery_package_section_line_inherit_delivery +DEL ir.ui.view: delivery.view_move_line_tree_detailed_delivery +DEL ir.ui.view: delivery.view_picking_type_form_delivery +DEL ir.ui.view: delivery.view_picking_withcarrier_out_form +DEL ir.ui.view: delivery.view_picking_withweight_internal_move_form +DEL ir.ui.view: delivery.view_quant_package_weight_form +DEL ir.ui.view: delivery.view_stock_rule_form_delivery +DEL ir.ui.view: delivery.vpicktree_view_tree +# NOTHING TO DO diff --git a/openupgrade_scripts/scripts/stock_delivery/17.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/stock_delivery/17.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 000000000000..4d828a089c24 --- /dev/null +++ b/openupgrade_scripts/scripts/stock_delivery/17.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,79 @@ +---Models in module 'stock_delivery'--- +model choose.delivery.package (moved from delivery) [transient] +# NOTHING TO DO + +---Fields in module 'stock_delivery'--- +stock_delivery / delivery.carrier / invoice_policy (False) : NEW selection_keys: ['estimated', 'real'], mode: modify +# NOTHING TO DO + +stock_delivery / product.product / country_of_origin (many2one) : previously in module delivery +stock_delivery / product.product / hs_code (char) : previously in module delivery +stock_delivery / product.template / country_of_origin (many2one) : previously in module delivery +stock_delivery / product.template / hs_code (char) : previously in module delivery +stock_delivery / stock.move / weight (float) : previously in module delivery +stock_delivery / stock.move.line / carrier_id (many2one) : previously in module delivery +stock_delivery / stock.move.line / destination_country_code (char): previously in module delivery +stock_delivery / stock.move.line / sale_price (float) : previously in module delivery +stock_delivery / stock.package.type / package_carrier_type (selection): previously in module delivery +stock_delivery / stock.package.type / shipper_package_code (char) : previously in module delivery +stock_delivery / stock.picking / carrier_id (many2one) : previously in module delivery +stock_delivery / stock.picking / carrier_price (float) : previously in module delivery +stock_delivery / stock.picking / carrier_tracking_ref (char) : previously in module delivery +stock_delivery / stock.picking / carrier_tracking_url (char) : previously in module delivery +stock_delivery / stock.picking / delivery_type (selection) : previously in module delivery +stock_delivery / stock.picking / destination_country_code (char): previously in module delivery +stock_delivery / stock.picking / is_return_picking (boolean) : previously in module delivery +stock_delivery / stock.picking / package_ids (many2many) : previously in module delivery +stock_delivery / stock.picking / return_label_ids (one2many) : previously in module delivery +stock_delivery / stock.picking / shipping_weight (float) : previously in module delivery +stock_delivery / stock.picking / weight (float) : previously in module delivery +stock_delivery / stock.picking / weight_bulk (float) : previously in module delivery +stock_delivery / stock.picking / weight_uom_name (char) : previously in module delivery +stock_delivery / stock.quant.package / shipping_weight (float) : previously in module delivery +stock_delivery / stock.quant.package / weight (float) : previously in module delivery +stock_delivery / stock.quant.package / weight_is_kg (boolean) : previously in module delivery +stock_delivery / stock.quant.package / weight_uom_name (char) : previously in module delivery +stock_delivery / stock.quant.package / weight_uom_rounding (float) : previously in module delivery +# NOTHING TO DO + +stock_delivery / delivery.carrier / route_ids (many2many) : NEW relation: stock.route +stock_delivery / stock.route / shipping_selectable (boolean) : NEW +# NOTHING TO DO: new feature that works only if shipping_selectable = True (by default is false) + +---XML records in module 'stock_delivery'--- +NEW ir.actions.act_window: stock_delivery.act_delivery_trackers_url [renamed from delivery module] +NEW ir.model.access: stock_delivery.access_choose_delivery_carrier_stock_user +NEW ir.model.access: stock_delivery.access_choose_delivery_package [renamed from delivery module] +NEW ir.model.access: stock_delivery.access_delivery_carrier_stock_manager [renamed from delivery module] +NEW ir.model.access: stock_delivery.access_delivery_carrier_stock_user [renamed from delivery module] +NEW ir.model.access: stock_delivery.access_delivery_price_rule_stock_manager [renamed from delivery module] +NEW ir.model.access: stock_delivery.access_delivery_zip_prefix_stock_manager [renamed from delivery module] +NEW ir.ui.menu: stock_delivery.menu_action_delivery_carrier_form [renamed from delivery module] +NEW ir.ui.menu: stock_delivery.menu_delivery_zip_prefix [renamed from delivery module] +NEW ir.ui.view: stock_delivery.choose_delivery_carrier_view_form +NEW ir.ui.view: stock_delivery.choose_delivery_package_view_form +NEW ir.ui.view: stock_delivery.delivery_stock_report_delivery_no_package_section_line +NEW ir.ui.view: stock_delivery.delivery_tracking_url_warning_form +NEW ir.ui.view: stock_delivery.label_package_template_view_delivery +NEW ir.ui.view: stock_delivery.product_template_hs_code +NEW ir.ui.view: stock_delivery.report_delivery_document2 +NEW ir.ui.view: stock_delivery.report_package_barcode_delivery +NEW ir.ui.view: stock_delivery.report_package_barcode_small_delivery +NEW ir.ui.view: stock_delivery.report_shipping2 +NEW ir.ui.view: stock_delivery.sale_order_portal_content_inherit_sale_stock_inherit_website_sale +NEW ir.ui.view: stock_delivery.stock_location_route_view_form_inherit_stock_delivery +NEW ir.ui.view: stock_delivery.stock_move_line_view_search_delivery +NEW ir.ui.view: stock_delivery.stock_package_type_form_delivery +NEW ir.ui.view: stock_delivery.stock_package_type_tree_delivery +NEW ir.ui.view: stock_delivery.stock_report_delivery_aggregated_move_lines_inherit_delivery +NEW ir.ui.view: stock_delivery.stock_report_delivery_has_serial_move_line_inherit_delivery +NEW ir.ui.view: stock_delivery.stock_report_delivery_package_section_line_inherit_delivery +NEW ir.ui.view: stock_delivery.view_delivery_carrier_form_inherit_stock_delivery +NEW ir.ui.view: stock_delivery.view_move_line_tree_detailed_delivery +NEW ir.ui.view: stock_delivery.view_picking_type_form_delivery +NEW ir.ui.view: stock_delivery.view_picking_withcarrier_out_form +NEW ir.ui.view: stock_delivery.view_picking_withweight_internal_move_form +NEW ir.ui.view: stock_delivery.view_quant_package_weight_form +NEW ir.ui.view: stock_delivery.view_stock_rule_form_delivery +NEW ir.ui.view: stock_delivery.vpicktree_view_tree +# NOTHING TO DO