diff --git a/src/spaceone/dashboard/service/public_dashboard_service.py b/src/spaceone/dashboard/service/public_dashboard_service.py index 55d1e42..cfe5513 100644 --- a/src/spaceone/dashboard/service/public_dashboard_service.py +++ b/src/spaceone/dashboard/service/public_dashboard_service.py @@ -356,27 +356,25 @@ def share_dashboard(self, params_dict: dict) -> dict: updated_params, pub_dashboard_vo ) - # if pub_dashboard_vo.resource_group in ["DOMAIN", "WORKSPACE"]: - if pub_dashboard_vo.resource_group == "DOMAIN": - # Cascade update for widgets - pub_widget_mgr = PublicWidgetManager() - pub_widget_vos = pub_widget_mgr.filter_public_widgets( - dashboard_id=pub_dashboard_vo.dashboard_id, - domain_id=pub_dashboard_vo.domain_id, - ) - for pub_widget_vo in pub_widget_vos: - pub_widget_mgr.update_public_widget_by_vo(updated_params, pub_widget_vo) - - # Cascade update for data tables - pub_data_table_mgr = PublicDataTableManager() - pub_data_table_vos = pub_data_table_mgr.filter_public_data_tables( - dashboard_id=pub_dashboard_vo.dashboard_id, - domain_id=pub_dashboard_vo.domain_id, + # Cascade update for widgets + pub_widget_mgr = PublicWidgetManager() + pub_widget_vos = pub_widget_mgr.filter_public_widgets( + dashboard_id=pub_dashboard_vo.dashboard_id, + domain_id=pub_dashboard_vo.domain_id, + ) + for pub_widget_vo in pub_widget_vos: + pub_widget_mgr.update_public_widget_by_vo(updated_params, pub_widget_vo) + + # Cascade update for data tables + pub_data_table_mgr = PublicDataTableManager() + pub_data_table_vos = pub_data_table_mgr.filter_public_data_tables( + dashboard_id=pub_dashboard_vo.dashboard_id, + domain_id=pub_dashboard_vo.domain_id, + ) + for pub_data_table_vo in pub_data_table_vos: + pub_data_table_mgr.update_public_data_table_by_vo( + updated_params, pub_data_table_vo ) - for pub_data_table_vo in pub_data_table_vos: - pub_data_table_mgr.update_public_data_table_by_vo( - updated_params, pub_data_table_vo - ) return pub_dashboard_vo.to_dict() @@ -441,27 +439,25 @@ def unshare_dashboard(self, params_dict: dict) -> dict: updated_params, pub_dashboard_vo ) - # if pub_dashboard_vo.resource_group in ["DOMAIN", "WORKSPACE"]: - if pub_dashboard_vo.resource_group == "DOMAIN": - # Cascade update for widgets - pub_widget_mgr = PublicWidgetManager() - pub_widget_vos = pub_widget_mgr.filter_public_widgets( - dashboard_id=pub_dashboard_vo.dashboard_id, - domain_id=pub_dashboard_vo.domain_id, - ) - for pub_widget_vo in pub_widget_vos: - pub_widget_mgr.update_public_widget_by_vo(updated_params, pub_widget_vo) - - # Cascade update for data tables - pub_data_table_mgr = PublicDataTableManager() - pub_data_table_vos = pub_data_table_mgr.filter_public_data_tables( - dashboard_id=pub_dashboard_vo.dashboard_id, - domain_id=pub_dashboard_vo.domain_id, + # Cascade update for widgets + pub_widget_mgr = PublicWidgetManager() + pub_widget_vos = pub_widget_mgr.filter_public_widgets( + dashboard_id=pub_dashboard_vo.dashboard_id, + domain_id=pub_dashboard_vo.domain_id, + ) + for pub_widget_vo in pub_widget_vos: + pub_widget_mgr.update_public_widget_by_vo(updated_params, pub_widget_vo) + + # Cascade update for data tables + pub_data_table_mgr = PublicDataTableManager() + pub_data_table_vos = pub_data_table_mgr.filter_public_data_tables( + dashboard_id=pub_dashboard_vo.dashboard_id, + domain_id=pub_dashboard_vo.domain_id, + ) + for pub_data_table_vo in pub_data_table_vos: + pub_data_table_mgr.update_public_data_table_by_vo( + updated_params, pub_data_table_vo ) - for pub_data_table_vo in pub_data_table_vos: - pub_data_table_mgr.update_public_data_table_by_vo( - updated_params, pub_data_table_vo - ) return pub_dashboard_vo.to_dict() diff --git a/src/spaceone/dashboard/service/public_folder_service.py b/src/spaceone/dashboard/service/public_folder_service.py index f5c430c..d05babb 100644 --- a/src/spaceone/dashboard/service/public_folder_service.py +++ b/src/spaceone/dashboard/service/public_folder_service.py @@ -164,24 +164,23 @@ def share( updated_params, pub_folder_vo ) - if pub_folder_vo.resource_group == "DOMAIN": - pub_dashboard_svc = PublicDashboardService() - pub_dashboard_mgr = PublicDashboardManager() - pub_dashboard_vos = pub_dashboard_mgr.filter_public_dashboards( - folder_id=pub_folder_vo.folder_id, domain_id=pub_folder_vo.domain_id - ) + pub_dashboard_svc = PublicDashboardService() + pub_dashboard_mgr = PublicDashboardManager() + pub_dashboard_vos = pub_dashboard_mgr.filter_public_dashboards( + folder_id=pub_folder_vo.folder_id, domain_id=pub_folder_vo.domain_id + ) - for pub_dashboard_vo in pub_dashboard_vos: - pub_dashboard_svc.share_dashboard( - { - "dashboard_id": pub_dashboard_vo.dashboard_id, - "scope": params.scope, - "domain_id": params.domain_id, - "workspace_id": params.workspace_id, - "user_projects": params.user_projects, - "cascade": True, - } - ) + for pub_dashboard_vo in pub_dashboard_vos: + pub_dashboard_svc.share_dashboard( + { + "dashboard_id": pub_dashboard_vo.dashboard_id, + "scope": params.scope, + "domain_id": params.domain_id, + "workspace_id": params.workspace_id, + "user_projects": params.user_projects, + "cascade": True, + } + ) return PublicFolderResponse(**pub_folder_vo.to_dict()) @@ -232,23 +231,22 @@ def unshare( updated_params, pub_folder_vo ) - if pub_folder_vo.resource_group == "DOMAIN": - pub_dashboard_svc = PublicDashboardService() - pub_dashboard_mgr = PublicDashboardManager() - pub_dashboard_vos = pub_dashboard_mgr.filter_public_dashboards( - folder_id=pub_folder_vo.folder_id, domain_id=pub_folder_vo.domain_id - ) + pub_dashboard_svc = PublicDashboardService() + pub_dashboard_mgr = PublicDashboardManager() + pub_dashboard_vos = pub_dashboard_mgr.filter_public_dashboards( + folder_id=pub_folder_vo.folder_id, domain_id=pub_folder_vo.domain_id + ) - for pub_dashboard_vo in pub_dashboard_vos: - pub_dashboard_svc.unshare_dashboard( - { - "dashboard_id": pub_dashboard_vo.dashboard_id, - "domain_id": params.domain_id, - "workspace_id": params.workspace_id, - "user_projects": params.user_projects, - "cascade": True, - } - ) + for pub_dashboard_vo in pub_dashboard_vos: + pub_dashboard_svc.unshare_dashboard( + { + "dashboard_id": pub_dashboard_vo.dashboard_id, + "domain_id": params.domain_id, + "workspace_id": params.workspace_id, + "user_projects": params.user_projects, + "cascade": True, + } + ) return PublicFolderResponse(**pub_folder_vo.to_dict())