From ebe97f3bb8d18bd131fc0c5d48460c6586776598 Mon Sep 17 00:00:00 2001
From: Juliana <juliana@le-filament.com>
Date: Thu, 29 Dec 2022 14:21:32 +0100
Subject: [PATCH] [ADD]Add folder migration

---
 migrations/14.0.1.0.2/post-migration.py    | 82 ++++++++++++++++++++++
 migrations/14.0.1.0.2/upgrade_analysis.txt |  3 +
 2 files changed, 85 insertions(+)
 create mode 100644 migrations/14.0.1.0.2/post-migration.py
 create mode 100644 migrations/14.0.1.0.2/upgrade_analysis.txt

diff --git a/migrations/14.0.1.0.2/post-migration.py b/migrations/14.0.1.0.2/post-migration.py
new file mode 100644
index 0000000..fc431da
--- /dev/null
+++ b/migrations/14.0.1.0.2/post-migration.py
@@ -0,0 +1,82 @@
+# © 2022 Le Filament (<http://www.le-filament.com>)
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
+
+import logging
+
+from openupgradelib import openupgrade
+
+_logger = logging.getLogger(__name__)
+
+
+def update_status_project_accompagnement(env):
+    # Todo: Voir si on passe à Suivi ou Accompagnement et si on passe à Phase adhésion
+    # Confirmation docs à avoir
+    openupgrade.logged_query(
+        env.cr,
+        """
+        UPDATE res_partner rsp
+        SET project_status = '3_accompagnement'
+        WHERE rsp.project_status = '4_adhesion'
+        """,
+    )
+
+def update_status_project_soumis_cg(env):
+    openupgrade.logged_query(
+        env.cr,
+        """
+        UPDATE res_partner rsp
+        SET project_status = '4_suivi', membership_status='soumis_cg'
+        WHERE rsp.project_status = '5_cg'
+        """,
+    )
+
+# def update_status_project_suivi(env):
+#     openupgrade.logged_query(
+#         env.cr,
+#         """
+#         UPDATE res_partner rsp
+#         SET project_status = '4_suivi'
+#         WHERE rsp.project_status = '6_suivi'
+#         """,
+#     )
+#
+# def update_status_project_abandonne(env):
+#     openupgrade.logged_query(
+#         env.cr,
+#         """
+#         UPDATE res_partner rsp
+#         SET project_status = '5_abandonne'
+#         WHERE rsp.project_status = '7_abandonne'
+#         """,
+#     )
+#
+# def update_status_decede(env):
+#     openupgrade.logged_query(
+#         env.cr,
+#         """
+#         UPDATE res_partner rsp
+#         SET project_status = '6_decede'
+#         WHERE rsp.dissolution_date IS NOT NULL
+#         """,
+#     )
+
+def update_with_new_status(env):
+    openupgrade.logged_query(
+        env.cr,
+        """
+        UPDATE res_partner rsp
+        SET project_status = CASE
+        WHEN rsp.dissolution_date IS NOT NULL THEN '6_decede'
+        WHEN rsp.project_status = '6_suivi' THEN '4_suivi'
+        WHEN rsp.project_status = '7_abandonne' THEN '5_abandonne'
+        """,
+    )
+
+@openupgrade.migrate()
+def migrate(env, version):
+    update_status_project_accompagnement(env)
+    update_status_project_soumis_cg(env)
+    update_with_new_status(env)
+    # update_status_project_suivi(env)
+    # update_status_project_abandonne(env)
+    # update_status_decede(env)
diff --git a/migrations/14.0.1.0.2/upgrade_analysis.txt b/migrations/14.0.1.0.2/upgrade_analysis.txt
new file mode 100644
index 0000000..db54504
--- /dev/null
+++ b/migrations/14.0.1.0.2/upgrade_analysis.txt
@@ -0,0 +1,3 @@
+---Fields in module 'cgscop_partner'---
+cgscop_partner      / res.partner   / project_status (selection)          : selection_keys is now '['1_information','2_pre-diagnostic','3_accompagnement', '4_suivi', '5_abandonne', '6_decede'] ('['1_information','2_pre-diagnostic','3_accompagnement', '4_adhesion', '5_cg', '6_suivi', '7_abandonne']')
+cgscop_partner      / res.partner   / membership_status (selection)       : selection_keys is now '['not_member', 'adhesion', 'soumis_cg', 'member', 'out'] ('['not_member', 'adhesion', 'soumis_cg', 'member', 'out']')
-- 
GitLab