diff --git a/src/KPI Generator/Reportings/Project/ProjectReporting.cs b/src/KPI Generator/Reportings/Project/ProjectReporting.cs index e3fd25a5c3337b1f28c010bb4924e21180affdda..1f4316489131ed2e50d025aba511fc5764f2959b 100644 --- a/src/KPI Generator/Reportings/Project/ProjectReporting.cs +++ b/src/KPI Generator/Reportings/Project/ProjectReporting.cs @@ -1,11 +1,9 @@ using Coscine.Database.Models; using Coscine.Database.ReturnObjects; - -using Newtonsoft.Json; +using Coscine.ResourceTypes; using KPIGenerator.Utils; +using Newtonsoft.Json; using static KPIGenerator.Utils.CommandLineOptions; -using Coscine.Database.DataModel; -using Coscine.ResourceTypes; namespace KPIGenerator.Reportings.Project; @@ -14,6 +12,7 @@ public class ProjectReporting : Reporting<ProjectReportingOptions> private readonly ProjectModel _projectModel; private readonly ResourceModel _resourceModel; private readonly ProjectRoleModel _projectRoleModel; + private readonly ProjectQuotaModel _projectQuotaModel; private readonly ResourceTypeModel _resourceTypeModel; public ProjectReporting(ProjectReportingOptions options) : base(options) @@ -21,6 +20,7 @@ public class ProjectReporting : Reporting<ProjectReportingOptions> ReportingFileName = "projects.json"; _projectModel = new ProjectModel(); _projectRoleModel = new ProjectRoleModel(); + _projectQuotaModel = new ProjectQuotaModel(); _resourceModel = new ResourceModel(); _resourceTypeModel = new ResourceTypeModel(); } @@ -63,6 +63,7 @@ public class ProjectReporting : Reporting<ProjectReportingOptions> Members = _projectRoleModel.GetAllWhere(x => x.ProjectId == projectReturnObject.Id).Count(), ResourceTypeQuota = GetResourceTypeQuota(projectReturnObject.Id) }; + returnObjects.Add(projectReportEntry); } return returnObjects; } @@ -92,7 +93,10 @@ public class ProjectReporting : Reporting<ProjectReportingOptions> private List<ProjectQuotaReturnObject> GetResourceTypeQuota(Guid projectId) { - var resourceTypes = _resourceTypeModel.GetAllWhere(x => x.Enabled == true && x.); + // TODO! + var types = ResourceTypeFactory.Instance.GetResourceTypes(); + var quotas = _projectQuotaModel.GetAllWhere(x => x.ProjectId == projectId); + var resourceTypes = _resourceTypeModel.GetAllWhere(x => types.Any(e => e.Equals(x.DisplayName))); return resourceTypes.Select(x => Helpers.CreateProjectQuotaReturnObject(x, projectId)).ToList(); }