From 78f30eb6087e361093ec6914df4a2c9dc272d749 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dar=C3=ADo=20Lodeiros?= Date: Sun, 18 Sep 2022 18:58:23 +0200 Subject: [PATCH] [FIX]pms: migration pre compute --- pms/migrations/14.0.2.36.1/post-migration.py | 32 ------------- pms/migrations/14.0.2.36.1/pre-migration.py | 47 ++++++++++++++++++++ 2 files changed, 47 insertions(+), 32 deletions(-) delete mode 100644 pms/migrations/14.0.2.36.1/post-migration.py diff --git a/pms/migrations/14.0.2.36.1/post-migration.py b/pms/migrations/14.0.2.36.1/post-migration.py deleted file mode 100644 index 355a36033..000000000 --- a/pms/migrations/14.0.2.36.1/post-migration.py +++ /dev/null @@ -1,32 +0,0 @@ -import logging - -from openupgradelib import openupgrade - -_logger = logging.getLogger(__name__) - - -@openupgrade.migrate() -def migrate(env, version): - openupgrade.logged_query( - env.cr, - """ - UPDATE pms_reservation_line rl - SET sale_channel_id = r.sale_channel_origin_id - FROM pms_reservation r - WHERE r.id = rl.reservation_id - """, - ) - openupgrade.logged_query( - env.cr, - """ - UPDATE pms_service ser - SET sale_channel_origin_id = fol.sale_channel_origin_id - FROM pms_folio fol - WHERE fol.id = ser.folio_id - """, - ) - - _logger.info("Recompute reservations sale channel ids...") - env["pms.reservation"].search( - [("reservation_type", "!=", "out")] - )._compute_sale_channel_ids() diff --git a/pms/migrations/14.0.2.36.1/pre-migration.py b/pms/migrations/14.0.2.36.1/pre-migration.py index cc81dc010..c51680867 100644 --- a/pms/migrations/14.0.2.36.1/pre-migration.py +++ b/pms/migrations/14.0.2.36.1/pre-migration.py @@ -1,11 +1,58 @@ +import logging + from openupgradelib import openupgrade +_logger = logging.getLogger(__name__) + _field_renames = [ ("pms.folio", "pms_folio", "channel_type_id", "sale_channel_origin_id"), ("pms.reservation", "pms_reservation", "channel_type_id", "sale_channel_origin_id"), ] +_field_creates = [ + ( + "sale_channel_id", + "pms.reservation.line", + "pms_reservation_line", + "many2one", + "integer", + "pms", + ), + ( + "sale_channel_origin_id", + "pms.service", + "pms_service", + "many2one", + "integer", + "pms", + ), +] @openupgrade.migrate() def migrate(env, version): openupgrade.rename_fields(env, _field_renames) + openupgrade.add_fields(env, _field_creates) + openupgrade.logged_query( + env.cr, + """ + UPDATE pms_reservation_line rl + SET sale_channel_id = r.sale_channel_origin_id + FROM pms_reservation r + WHERE r.id = rl.reservation_id + """, + ) + + openupgrade.logged_query( + env.cr, + """ + UPDATE pms_service ser + SET sale_channel_origin_id = fol.sale_channel_origin_id + FROM pms_folio fol + WHERE fol.id = ser.folio_id + """, + ) + + _logger.info("Recompute reservations sale channel ids...") + env["pms.reservation"].search( + [("reservation_type", "!=", "out")] + )._compute_sale_channel_ids()