always return project and envs for reports page and check if workspace has projects

This commit is contained in:
dandds 2018-09-24 16:28:22 -04:00
parent 4f4c1892ba
commit 634ca1c76d
2 changed files with 10 additions and 8 deletions

View File

@ -215,16 +215,18 @@ class Reports:
@classmethod @classmethod
def monthly_totals(cls, workspace): def monthly_totals(cls, workspace):
if workspace.name in REPORT_FIXTURE_MAP: if workspace.name in REPORT_FIXTURE_MAP:
data = REPORT_FIXTURE_MAP[workspace.name]["monthly"] environments = REPORT_FIXTURE_MAP[workspace.name]["monthly"]
project_totals = _derive_project_totals(data)
workspace_totals = _derive_workspace_totals(project_totals)
else: else:
data = {} environments = {
project_totals = {} project.name: {env.name: {} for env in project.environments}
workspace_totals = {} for project in workspace.projects
}
project_totals = _derive_project_totals(environments)
workspace_totals = _derive_workspace_totals(project_totals)
return { return {
"environments": data, "environments": environments,
"projects": project_totals, "projects": project_totals,
"workspace": workspace_totals, "workspace": workspace_totals,
} }

View File

@ -103,7 +103,7 @@
{% set two_months_ago_index = two_months_ago.strftime('%m/%Y') %} {% set two_months_ago_index = two_months_ago.strftime('%m/%Y') %}
{% set reports_url = url_for("workspaces.workspace_reports", workspace_id=workspace.id) %} {% set reports_url = url_for("workspaces.workspace_reports", workspace_id=workspace.id) %}
{% if not monthly_totals['environments'] %} {% if not workspace.projects %}
{% set can_create_projects = user_can(permissions.ADD_APPLICATION_IN_WORKSPACE) %} {% set can_create_projects = user_can(permissions.ADD_APPLICATION_IN_WORKSPACE) %}
{% set message = 'This Workspace has no Cloud Environments setup, hence there is no spending data to report. Create a Project with some Cloud Environments to get started.' {% set message = 'This Workspace has no Cloud Environments setup, hence there is no spending data to report. Create a Project with some Cloud Environments to get started.'