Skip to content

Commit f720786

Browse files
committed
[OU-IMP] project: merge project_status
1 parent f3afe94 commit f720786

File tree

3 files changed

+70
-0
lines changed

3 files changed

+70
-0
lines changed

openupgrade_scripts/apriori.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@
9191
"survey_description": "survey",
9292
# OCA/project
9393
"project_mail_chatter": "project",
94+
"project_status": "project",
9495
"project_task_dependency": "project",
9596
"project_timeline_task_dependency": "project_timeline",
9697
# OCA/timesheet

openupgrade_scripts/scripts/project/15.0.1.2/post-migration.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
from openupgradelib import openupgrade
2+
import logging
3+
4+
_logger = logging.getLogger(__name__)
25

36

47
def _convert_project_task_assigned_users(env):
@@ -70,13 +73,27 @@ def _fill_project_task_display_project_id(env):
7073
)
7174

7275

76+
def _activate_project_stages_conditionally(env):
77+
"""Activate project stages if module project_status was installed"""
78+
if openupgrade.column_exists(
79+
env.cr,
80+
"project_project_stage",
81+
openupgrade.get_legacy_name("description"),
82+
):
83+
_logger.info("project_status module was installed so enable project stages")
84+
internal_group = env.ref("base.group_user")
85+
stage_group = env.ref("project.group_project_stages")
86+
internal_group.implied_ids += stage_group
87+
88+
7389
@openupgrade.migrate()
7490
def migrate(env, version):
7591
_convert_project_task_assigned_users(env)
7692
_add_followers_to_project_for_allowed_internal_users(env)
7793
_add_followers_to_project_for_allowed_portal_users(env)
7894
_add_followers_to_task_for_allowed_users(env)
7995
_fill_project_task_display_project_id(env)
96+
_activate_project_stages_conditionally(env)
8097
openupgrade.load_data(env.cr, "project", "15.0.1.2/noupdate_changes.xml")
8198
openupgrade.delete_record_translations(
8299
env.cr,

openupgrade_scripts/scripts/project/15.0.1.2/pre-migration.py

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,10 +71,62 @@ def rename_project_milestone_target_date(env):
7171
)
7272

7373

74+
def migrate_project_status(env):
75+
"""Migrate project_status module if installed to
76+
project.project.stages.
77+
"""
78+
if openupgrade.table_exists(env.cr, "project_status"):
79+
openupgrade.rename_models(
80+
env.cr, [("project.status", "project.project.stage")]
81+
)
82+
openupgrade.rename_tables(
83+
env.cr, [("project_status", "project_project_stage")]
84+
)
85+
openupgrade.rename_fields(
86+
env,
87+
[
88+
(
89+
"project.project.stage",
90+
"project_project_stage",
91+
"status_sequence",
92+
"sequence",
93+
),
94+
(
95+
"project.project",
96+
"project_project",
97+
"project_status",
98+
"stage_id",
99+
),
100+
]
101+
)
102+
openupgrade.rename_columns(
103+
env.cr,
104+
{
105+
"project_project_stage": [
106+
("company_id", None),
107+
("description", None),
108+
("is_closed", None),
109+
],
110+
},
111+
)
112+
# Delete project_status views
113+
xmlids_views = [
114+
"project.view_project",
115+
"project.edit_project",
116+
"project.project_project_view_form_simplified",
117+
"project.project_view_kanban",
118+
"project.view_project_project_filter",
119+
]
120+
openupgrade.delete_records_safely_by_xml_id(
121+
env, xmlids_views, delete_childs=True
122+
)
123+
124+
74125
@openupgrade.migrate()
75126
def migrate(env, version):
76127
openupgrade.rename_columns(env.cr, _column_renames)
77128
adapt_project_task_dependency(env)
78129
fill_project_project_allow_task_dependencies(env)
79130
fill_project_project_last_update_status(env)
80131
rename_project_milestone_target_date(env)
132+
migrate_project_status(env)

0 commit comments

Comments
 (0)