private async Task DeclineToaAsync(Enrollee enrollee) { enrollee.AddEnrolmentStatus(StatusType.Editable); await _businessEventService.CreateStatusChangeEventAsync(enrollee.Id, "Declined TOA"); await _context.SaveChangesAsync(); }
private async Task ProcessToaAsync(Enrollee enrollee, bool accept) { enrollee.AddEnrolmentStatus(StatusType.Editable); if (accept) { await SetGpid(enrollee); await _accessTermService.AcceptCurrentAccessTermAsync(enrollee); await _privilegeService.AssignPrivilegesToEnrolleeAsync(enrollee.Id, enrollee); await _businessEventService.CreateStatusChangeEventAsync(enrollee.Id, "Accepted TOA"); if (enrollee.AdjudicatorId != null) { await _enrolleeService.UpdateEnrolleeAdjudicator(enrollee.Id); await _businessEventService.CreateAdminActionEventAsync(enrollee.Id, "Admin disclaimed after TOA accepted"); } } else { await _businessEventService.CreateStatusChangeEventAsync(enrollee.Id, "Declined TOA"); } await _context.SaveChangesAsync(); }
private async Task RerunRulesAsync(Enrollee enrollee) { enrollee.AddEnrolmentStatus(StatusType.UnderReview); await _businessEventService.CreateStatusChangeEventAsync(enrollee.Id, "Adjudicator manually ran the enrollee application rules"); await this.ProcessEnrolleeApplicationRules(enrollee.Id); await _context.SaveChangesAsync(); }
private async Task DeclineProfileAsync(Enrollee enrollee) { enrollee.AddEnrolmentStatus(StatusType.Declined); await _businessEventService.CreateStatusChangeEventAsync(enrollee.Id, "Declined"); await _context.SaveChangesAsync(); await _agreementService.ExpireCurrentEnrolleeAgreementAsync(enrollee.Id); }
private async Task LockProfileAsync(Enrollee enrollee) { enrollee.AddEnrolmentStatus(StatusType.Locked); await _businessEventService.CreateStatusChangeEventAsync(enrollee.Id, "Locked"); await _context.SaveChangesAsync(); await _emailService.SendReminderEmailAsync(enrollee.Id); await _businessEventService.CreateEmailEventAsync(enrollee.Id, "Notified Enrollee"); }
private async Task EnableEditingAsync(Enrollee enrollee) { enrollee.AddEnrolmentStatus(StatusType.Editable); await _businessEventService.CreateStatusChangeEventAsync(enrollee.Id, "Enabled Editing"); await _context.SaveChangesAsync(); await _emailService.SendReminderEmailAsync(enrollee.Id); await _businessEventService.CreateEmailEventAsync(enrollee.Id, "Notified Enrollee"); }
private async Task EnableProfileAsync(Enrollee enrollee) { enrollee.AddEnrolmentStatus(StatusType.Editable); await _businessEventService.CreateStatusChangeEventAsync(enrollee.Id, "Enabled"); await _context.SaveChangesAsync(); await _emailService.SendReminderEmailAsync(enrollee); await _businessEventService.CreateEmailEventAsync(enrollee.Id, "Email to Enrollee after leaving the declined status"); }
private async Task ApproveApplicationAsync(Enrollee enrollee) { var newStatus = enrollee.AddEnrolmentStatus(StatusType.RequiresToa); newStatus.AddStatusReason(StatusReasonType.Manual); await _agreementService.CreateEnrolleeAgreementAsync(enrollee.Id); await _businessEventService.CreateStatusChangeEventAsync(enrollee.Id, "Manually Approved"); await _context.SaveChangesAsync(); await _emailService.SendReminderEmailAsync(enrollee.Id); await _businessEventService.CreateEmailEventAsync(enrollee.Id, "Notified Enrollee"); }
private async Task <bool> AcceptToaAsync(Enrollee enrollee, object additionalParameters) { if (enrollee.IdentityAssuranceLevel < 3) { // Enrollees with lower assurance levels cannot electronically sign, and so must upload a signed Agreement if (additionalParameters is Guid documentGuid) { var agreement = await _agreementService.GetCurrentAgreementAsync(enrollee.Id); var agreementDocument = await _agreementService.AddSignedAgreementDocumentAsync(agreement.Id, documentGuid); if (agreementDocument == null) { return(false); } } else { return(false); } } enrollee.AddEnrolmentStatus(StatusType.Editable); await SetGpid(enrollee); await _agreementService.AcceptCurrentEnrolleeAgreementAsync(enrollee.Id); await _privilegeService.AssignPrivilegesToEnrolleeAsync(enrollee.Id, enrollee); await _businessEventService.CreateStatusChangeEventAsync(enrollee.Id, "Accepted TOA"); await _enrolleeService.RemoveNotificationsAsync(enrollee.Id); if (enrollee.AdjudicatorId != null) { await _enrolleeService.UpdateEnrolleeAdjudicator(enrollee.Id); await _businessEventService.CreateAdminActionEventAsync(enrollee.Id, "Admin disclaimed after TOA accepted"); } await _context.SaveChangesAsync(); return(true); }
public async Task <int> CreateEnrolleeAsync(Enrollee enrollee) { if (enrollee == null) { throw new ArgumentNullException(nameof(enrollee), "Could not create an enrollee, the passed in Enrollee cannot be null."); } enrollee.AddEnrolmentStatus(StatusType.Editable); _context.Enrollees.Add(enrollee); var created = await _context.SaveChangesAsync(); if (created < 1) { throw new InvalidOperationException("Could not create enrollee."); } await this._businessEventService.CreateEnrolleeEventAsync(enrollee.Id, "Enrollee Created"); return(enrollee.Id); }
private async Task DeclineProfileAsync(Enrollee enrollee) { enrollee.AddEnrolmentStatus(StatusType.Declined); await _businessEventService.CreateStatusChangeEventAsync(enrollee.Id, "Declined"); await _context.SaveChangesAsync(); await _agreementService.ExpireCurrentEnrolleeAgreementAsync(enrollee.Id); await _enrolleeService.RemoveNotificationsAsync(enrollee.Id); if (_httpContext.HttpContext.User.HasVCIssuance()) { try { await _verifiableCredentialService.RevokeCredentialsAsync(enrollee.Id); } catch (Exception ex) { _logger.LogError("Error occurred attempting to revoke credentials through the Verifiable Credential agent: ${ex}", ex); } } }