public void GetOverviewProject(IdentifierBase <Guid> identifierModel) { var contextHelper = new DbContextHelper(); using (var dbContext = new ProSManContext(contextHelper.CreateNewContextOptions())) { contextHelper.FillData(dbContext, identifierModel.Id, true, new ExtraEntitiesModel { Count = 2 }); var dashboardService = new DashboardService(dbContext); var overviewProject = dashboardService.GetOverviewProject(identifierModel.Id); Assert.True(overviewProject != null); Assert.True(overviewProject.AverageTasksInSprint > 0); Assert.True(overviewProject.TotalBacklogTasks > 0); Assert.True(overviewProject.TotalNonSprintTasks > 0); Assert.True(overviewProject.TotalSprints > 0); Assert.True(overviewProject.AverageHoursInSprint > 0); // check round to two digits after comma Assert.Equal(overviewProject.AverageTasksInSprint, Math.Round(overviewProject.AverageTasksInSprint, 2)); Assert.Equal(overviewProject.AverageHoursInSprint, Math.Round(overviewProject.AverageHoursInSprint, 2)); } }
/// <summary> /// Convert entity identifier to a CX /// </summary> public static CX FromModel <TBind>(this CX me, IdentifierBase <TBind> id) where TBind : VersionedEntityData <TBind>, new() { me.IDNumber.Value = id.Value; me.AssigningAuthority.FromModel(id.LoadProperty <AssigningAuthority>("Authority")); if (id.ExpiryDate.HasValue) { me.ExpirationDate.SetYearMonthDayPrecision(id.ExpiryDate.Value.Year, id.ExpiryDate.Value.Month, id.ExpiryDate.Value.Day); } if (id.IssueDate.HasValue) { me.EffectiveDate.SetYearMonthDayPrecision(id.IssueDate.Value.Year, id.IssueDate.Value.Month, id.IssueDate.Value.Day); } me.CheckDigit.Value = id.CheckDigit; me.CheckDigitScheme.Value = id.LoadProperty <AssigningAuthority>("Authority").GetCustomValidator()?.Name; // Identifier type if (id.IdentifierType?.TypeConceptKey.HasValue == true) { var refTerm = ApplicationServiceContext.Current.GetService <IConceptRepositoryService>().GetConceptReferenceTerm(id.IdentifierType.TypeConceptKey.Value, IdentifierTypeCodeSystem); me.IdentifierTypeCode.Value = refTerm?.Mnemonic; } else { me.IdentifierTypeCode.Value = "PT"; // EXTERNAL ID } return(me); }
/// <summary> /// Convert entity identifier to a CX /// </summary> public static CX FromModel <TBind>(this CX me, IdentifierBase <TBind> id) where TBind : VersionedEntityData <TBind>, new() { me.IDNumber.Value = id.Value; me.AssigningAuthority.FromModel(id.LoadProperty <AssigningAuthority>("Authority")); // Identifier type if (id.IdentifierType?.TypeConceptKey.HasValue == true) { var refTerm = ApplicationServiceContext.Current.GetService <IConceptRepositoryService>().GetConceptReferenceTerm(id.IdentifierType.TypeConceptKey.Value, IdentifierTypeCodeSystem); me.IdentifierTypeCode.Value = refTerm?.Mnemonic; } else { me.IdentifierTypeCode.Value = "PT"; // EXTERNAL ID } return(me); }
/// <summary> /// Converts a <see cref="IdentifierBase{TBoundModel}" /> instance to an <see cref="FhirIdentifier" /> instance. /// </summary> /// <typeparam name="TBoundModel">The type of the bound model.</typeparam> /// <param name="identifier">The identifier.</param> /// <returns>Returns the mapped FHIR identifier.</returns> public static FhirIdentifier ToFhirIdentifier <TBoundModel>(IdentifierBase <TBoundModel> identifier) where TBoundModel : VersionedEntityData <TBoundModel>, new() { traceSource.TraceEvent(EventLevel.Verbose, "Mapping entity identifier"); if (identifier == null) { return(null); } var imetaService = ApplicationServiceContext.Current.GetService <IAssigningAuthorityRepositoryService>(); var authority = imetaService.Get(identifier.AuthorityKey.Value); return(new FhirIdentifier { System = new FhirUri(new Uri(authority?.Url ?? $"urn:oid:{authority?.Oid}")), Type = ToFhirCodeableConcept(identifier.LoadProperty <IdentifierType>(nameof(EntityIdentifier.IdentifierType))?.TypeConcept), Value = identifier.Value }); }
public void GetDashboard(IdentifierBase <Guid> identifierModel) { var contextHelper = new DbContextHelper(); using (var dbContext = new ProSManContext(contextHelper.CreateNewContextOptions())) { contextHelper.FillData(dbContext, identifierModel.Id); var dashboardService = new DashboardService(dbContext); var dasboard = dashboardService.GetDashboard(EntityNameConstants.User); var project = dbContext.Projects .Where(c => c.Id == identifierModel.Id) .FirstOrDefault(); Assert.True(dasboard != null); Assert.True(dasboard.Projects != null); Assert.True(dasboard.Projects.Count > 0); } }
public void GetCategoryDashboard(IdentifierBase <Guid> identifierModel) { var contextHelper = new DbContextHelper(); using (var dbContext = new ProSManContext(contextHelper.CreateNewContextOptions())) { contextHelper.FillData(dbContext, identifierModel.Id); var dashboardService = new DashboardService(dbContext); var categoryDashboard = dashboardService.GetCategoryDashboard(identifierModel.Id); var category = dbContext.Categories .Where(c => c.ProjectId == identifierModel.Id) .FirstOrDefault(); Assert.True(categoryDashboard != null); Assert.True(categoryDashboard.Count > 0); Assert.Contains(categoryDashboard, cd => cd.Name == category.Name); } }