private CommunicationRequest GetVacancyWithdrawnByQaCommunicationRequest(long vacancyReference) { var communicationRequest = new CommunicationRequest( CommunicationConstants.RequestType.VacancyWithdrawnByQa, CommunicationConstants.ParticipantResolverNames.VacancyParticipantsResolverName, CommunicationConstants.ServiceName); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.Vacancy, vacancyReference); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.ApprenticeshipServiceUrl, vacancyReference); return(communicationRequest); }
private Task RequestProviderCommunicationAsync(long ukprn) { var communicationRequest = new CommunicationRequest( CommunicationConstants.RequestType.ProviderBlockedProviderNotification, CommunicationConstants.ParticipantResolverNames.ProviderParticipantsResolverName, CommunicationConstants.ServiceName); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.Provider, ukprn); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.ApprenticeshipServiceConfig, null); return(_communicationQueueService.AddMessageAsync(communicationRequest)); }
private CommunicationRequest GetRejectedVacancyCommunicationRequest(long vacancyReference, long?providerUkprn) { var communicationRequest = new CommunicationRequest( CommunicationConstants.RequestType.VacancyRejectedByEmployer, CommunicationConstants.ParticipantResolverNames.VacancyParticipantsResolverName, CommunicationConstants.ServiceName); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.Vacancy, vacancyReference); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.ApprenticeshipServiceUrl, vacancyReference); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.Provider, providerUkprn); return(communicationRequest); }
public static CommunicationRequest GetProviderBlockedEmployerNotificationForLiveVacanciesRequest(long ukprn, string employerAccountId) { var communicationRequest = new CommunicationRequest( CommunicationConstants.RequestType.ProviderBlockedEmployerNotificationForLiveVacancies, CommunicationConstants.ParticipantResolverNames.EmployerParticipantsResolverName, CommunicationConstants.ServiceName); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.Provider, ukprn); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.Employer, employerAccountId); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.ApprenticeshipServiceConfig, null); return(communicationRequest); }
private CommunicationRequest GetReviewedVacancyCommunicationRequest(long vacancyReference, long ukprn, string employerAccountId) { var communicationRequest = new CommunicationRequest( CommunicationConstants.RequestType.VacancySubmittedForReview, CommunicationConstants.ParticipantResolverNames.EmployerParticipantsResolverName, CommunicationConstants.ServiceName); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.Vacancy, vacancyReference); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.ApprenticeshipServiceUrl, vacancyReference); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.Provider, ukprn); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.Employer, employerAccountId); return(communicationRequest); }
public static CommunicationRequest GetProviderBlockedEmployerNotificationForTransferredVacanciesRequest(long ukprn, string employerAccountId, int noOfVacancies) { var communicationRequest = new CommunicationRequest( CommunicationConstants.RequestType.ProviderBlockedEmployerNotificationForTransferredVacancies, CommunicationConstants.ParticipantResolverNames.EmployerParticipantsResolverName, CommunicationConstants.ServiceName); var text = "vacancy".ToQuantity(noOfVacancies) + (noOfVacancies == 1 ? " has been transferred" : " have been transferred"); communicationRequest.DataItems.Add(new CommunicationDataItem(CommunicationConstants.DataItemKeys.Employer.VacanciesTransferredCountText, text)); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.Provider, ukprn); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.Employer, employerAccountId); communicationRequest.AddEntity(CommunicationConstants.EntityTypes.ApprenticeshipServiceConfig, null); return(communicationRequest); }
public async Task WhenVacancyOwnedByProvider_GetProviderUsers() { var vacancy = _fixture .Build <Vacancy>() .With(v => v.OwnerType, OwnerType.Provider) .With(v => v.SubmittedByUser, _fixture.Create <VacancyUser>()) .Create(); _mockVacancyRepository.Setup(v => v.GetVacancyAsync(It.IsAny <long>())).ReturnsAsync(vacancy); var sut = GetSut(); var request = new CommunicationRequest(_fixture.Create <string>(), _fixture.Create <string>(), _fixture.Create <string>()); request.AddEntity(CommunicationConstants.EntityTypes.Vacancy, _fixture.Create <long>()); var participants = await sut.GetParticipantsAsync(request); participants.Count().Should().Be(2); participants.All(p => p.Name == OwnerType.Provider.ToString()); }
public async Task ShouldReturnVacancyOwnerAsPrimaryUser() { var user = _fixture.Build <VacancyUser>().With(v => v.UserId, PrimaryUserId).Create(); var vacancy = _fixture .Build <Vacancy>() .With(v => v.OwnerType, OwnerType.Provider) .With(v => v.SubmittedByUser, user) .Create(); _mockVacancyRepository.Setup(v => v.GetVacancyAsync(It.IsAny <long>())).ReturnsAsync(vacancy); var sut = GetSut(); var request = new CommunicationRequest(_fixture.Create <string>(), _fixture.Create <string>(), _fixture.Create <string>()); request.AddEntity(CommunicationConstants.EntityTypes.Vacancy, _fixture.Create <long>()); var participants = await sut.GetParticipantsAsync(request); participants.Count().Should().Be(2); participants.Single(p => p.UserId == PrimaryUserId).Participation.Should().Be(UserParticipation.PrimaryUser); participants.Single(p => p.UserId != PrimaryUserId).Participation.Should().Be(UserParticipation.SecondaryUser); }