private void FilterDraftMoratoriumByCreditor(BreathingSpaceResponse response) { var bsStatus = response.DebtorDetails.MoratoriumStatus; if (bsStatus == MoratoriumStatus.Draft) { throw new UnauthorizedHttpResponseException(); } }
public DebtorAddressViewModel(BreathingSpaceResponse accountSummary) { if (accountSummary.CurrentAddress != null) { CurrentAddress = new Address(accountSummary.CurrentAddress); } PreviousAddresses = accountSummary.PreviousAddresses? .Select(add => new Address(add)) ?? Enumerable.Empty <Address>() .ToList(); AddressHidden = accountSummary.DebtorDetails.AddressHidden; }
public CreditorDebtorDetailViewModel(BreathingSpaceResponse debtorDetail) { PersonalDetail = new DebtorPersonalDetailViewModel(debtorDetail.DebtorDetails); AddressDetail = new DebtorAddressViewModel(debtorDetail); NotificationDetail = new DebtorNotificationPartialViewModel(debtorDetail.DebtorDetails); BusinessDetails = debtorDetail.DebtorBusinessDetails ?.Select(b => new BusinessAddressViewModel( b.BusinessName, b.Address, debtorDetail.CurrentAddress, debtorDetail.DebtorDetails.AddressHidden, b.Id )) ?? Enumerable.Empty <BusinessAddressViewModel>(); }
public DebtorAccountSummaryViewModel(BreathingSpaceResponse accountSummary) { if (accountSummary is null) { throw new ArgumentNullException(nameof(accountSummary)); } DebtorDetail = new DebtorDetailViewModel(accountSummary); DebtDetails = accountSummary.DebtDetails? .Select(d => new DebtDetailViewModel( d, accountSummary.DebtorEligibilityReviews .FirstOrDefault(r => r.CreditorId == d.CreditorId))) .ToList(); MoneyAdviceOrganisation = new MoneyAdviceOrganisationViewModel(accountSummary.MoneyAdviserOrganization); DebtorTransfer = accountSummary.DebtorTransfer is null ? null: new DebtorTransferViewModel(DebtorDetail.PersonalDetail, MoneyAdviceOrganisation, accountSummary.DebtorTransfer); }
public void SetDebtorDetailCurrentAddress(BreathingSpaceResponse response) { if (response.CurrentAddress == null) { return; } if (!response.DebtorDetails.AddressHidden) { response.CurrentAddress = MapCurrentAddressResponse(response.CurrentAddress); return; } else { response.CurrentAddress = null; return; } }
public void FilterMoratoriumByCreditor(BreathingSpaceResponse response, Guid creditorId) { response.DebtDetails = response.DebtDetails.Where(d => d.CreditorId == creditorId); response.DebtorEligibilityReviews = response.DebtorEligibilityReviews.Where(d => d.CreditorId == creditorId); response.DebtorDetails.IsInMentalHealthMoratorium = null; foreach (var businessAddress in response.DebtorBusinessDetails) { SetBusinessAddress(businessAddress, response.CurrentAddress, response.DebtorDetails.AddressHidden); } SetDebtorDetailCurrentAddress(response); FilterMoratoriumTransferRequestByCreditor(response); FilterInactiveMoratoriumByCreditor(response); FilterDraftMoratoriumByCreditor(response); }
public DebtorDetailsResponse MapDebtorDetailPublicData(BreathingSpaceResponse response) { return(new DebtorDetailsResponse { FirstName = response.DebtorDetails.FirstName, MiddleName = response.DebtorDetails.MiddleName, LastName = response.DebtorDetails.LastName, DateOfBirth = response.DebtorDetails.DateOfBirth.Value.Date, AddressHidden = response.DebtorDetails.AddressHidden, MoratoriumStatus = response.DebtorDetails.MoratoriumStatus, IsInMentalHealthMoratorium = response.DebtorDetails.IsInMentalHealthMoratorium, ReferenceNumber = response.DebtorDetails.ReferenceNumber, StartsOn = response.DebtorDetails.StartsOn, EndsOn = response.DebtorDetails.EndsOn, CancellationDate = response.DebtorDetails.CancellationDate, CancellationReason = response.DebtorDetails.CancellationReason }); }
public CreditorBreathingSpaceViewModel(BreathingSpaceResponse breathingSpace) { if (breathingSpace is null) { throw new ArgumentNullException(nameof(breathingSpace)); } DebtorDetail = new CreditorDebtorDetailViewModel(breathingSpace); Debts = breathingSpace.DebtDetails .Select(debtDetail => new CreditorDebtPartialViewModel( debtDetail, DebtorDetail.PersonalDetail.ActiveMoratoriumEndDate, DebtorDetail.PersonalDetail.IsInMentalHealthMoratorium)) .ToList(); EligibilityReviews = breathingSpace.DebtorEligibilityReviews.ToList(); }
public DebtorDetailViewModel(BreathingSpaceResponse accountSummary) { PersonalDetail = new DebtorPersonalDetailViewModel(accountSummary.DebtorDetails); AddressDetail = new DebtorAddressViewModel(accountSummary); NotificationDetail = new DebtorNotificationPartialViewModel(accountSummary.DebtorDetails); BusinessDetails = accountSummary.DebtorBusinessDetails ?.Select(b => new BusinessAddressViewModel( b.BusinessName, b.Address, accountSummary.CurrentAddress, accountSummary.DebtorDetails.AddressHidden, b.Id )) ?? Enumerable.Empty <BusinessAddressViewModel>(); DebtorNominatedContactSummary = accountSummary.DebtorNominatedContactResponse != null ? new DebtorNominatedContactSummaryViewModel(accountSummary.DebtorNominatedContactResponse) : null; }
private void FilterInactiveMoratoriumByCreditor(BreathingSpaceResponse response) { var bsStatus = response.DebtorDetails.MoratoriumStatus; if (bsStatus != MoratoriumStatus.Active && bsStatus != MoratoriumStatus.Draft) { response.DebtorDetails = new DebtorDetailsResponse() { EndsOn = response.DebtorDetails.EndsOn, ReferenceNumber = response.DebtorDetails.ReferenceNumber, ModifiedOn = response.DebtorDetails.ModifiedOn, }; response.CurrentAddress = null; response.DebtorBusinessDetails = null; response.MoneyAdviserOrganization = null; response.PreviousAddresses = null; } }
public void SetDebtorDetailSensitiveData(BreathingSpaceResponse response, DynamicsGatewayOptions options) { response.PreviousAddresses = response.PreviousAddresses .Where(add => add.DateTo.HasValue) .Select(add => MapPreviousAddressResponse(add, true)) .ToList(); response.DebtorDetails.IsInMentalHealthMoratorium = response.DebtorDetails.IsInMentalHealthMoratorium; response.DebtorDetails.NotificationEmailAddress = response.DebtorDetails.NotificationEmailAddress; response.DebtorDetails.ContactPreference = response.DebtorDetails.ContactPreference; response.DebtorDetails.StartsOn = response.DebtorDetails.StartsOn; response.DebtorDetails.EndsOn = response.DebtorDetails.EndsOn; response.DebtorDetails.CreatedOn = response.DebtorDetails.CreatedOn; response.DebtorDetails.ModifiedOn = response.DebtorDetails.ModifiedOn; response.DebtorDetails.MoratoriumStatus = response.DebtorDetails.MoratoriumStatus; response.DebtorBusinessDetails = response.DebtorBusinessDetails .Select(b => new BusinessAddressResponse { BusinessName = b.BusinessName, Address = MapCurrentAddressResponse(b.Address) }) .ToList(); }
private void FilterMoratoriumTransferRequestByCreditor(BreathingSpaceResponse response) { response.DebtorTransfer = null; }