private async Task <bool> BeExitingSameCountry(TransitState transitState, Guid?exitPointId, CancellationToken cancellationToken)
        {
            if (exitPointId.HasValue && transitState.CountryId.HasValue)
            {
                var exitPoint =
                    await entryOrExitPointRepository.GetById(exitPointId.Value);

                return(exitPoint.Country.Id == transitState.CountryId.Value);
            }

            return(false);
        }
Exemple #2
0
        public Core.TransitState Map(Domain.TransitState source)
        {
            var competentAuthority = Task.Run(() => competentAuthorityRepository.GetById(source.CompetentAuthorityId)).Result;

            return(new Core.TransitState
            {
                CountryName = Task.Run(() => countryRepository.GetById(source.CountryId)).Result.Name,
                EntryPointName = Task.Run(() => pointRepository.GetById(source.EntryPointId)).Result.Name,
                ExitPointName = Task.Run(() => pointRepository.GetById(source.ExitPointId)).Result.Name,
                CompetentAuthorityCode = competentAuthority.Code,
                CompetentAuthorityName = competentAuthority.Name
            });
        }
        public StateOfExportValidatorTests()
        {
            entryOrExitPointRepository = A.Fake<IEntryOrExitPointRepository>();
            competentAuthorityRepository = A.Fake<ICompetentAuthorityRepository>();

            validator = new StateOfExportValidator(entryOrExitPointRepository, competentAuthorityRepository);

            A.CallTo(() => entryOrExitPointRepository.GetById(TestableEntryOrExitPoint.Calais.Id))
                .Returns(TestableEntryOrExitPoint.Calais);
            A.CallTo(() => competentAuthorityRepository.GetById(TestableCompetentAuthority.FrenchAuthorityArdeche.Id))
                .Returns(TestableCompetentAuthority.FrenchAuthorityArdeche);
            A.CallTo(() => competentAuthorityRepository.GetById(TestableCompetentAuthority.EnvironmentAgency.Id))
                .Returns(TestableCompetentAuthority.EnvironmentAgency);
            A.CallTo(() => entryOrExitPointRepository.GetById(TestableEntryOrExitPoint.Dover.Id))
                .Returns(TestableEntryOrExitPoint.Dover);
        }
        public StateOfExportValidatorTests()
        {
            entryOrExitPointRepository   = A.Fake <IEntryOrExitPointRepository>();
            competentAuthorityRepository = A.Fake <ICompetentAuthorityRepository>();

            validator = new StateOfExportValidator(entryOrExitPointRepository, competentAuthorityRepository);

            A.CallTo(() => entryOrExitPointRepository.GetById(TestableEntryOrExitPoint.Calais.Id))
            .Returns(TestableEntryOrExitPoint.Calais);
            A.CallTo(() => competentAuthorityRepository.GetById(TestableCompetentAuthority.FrenchAuthorityArdeche.Id))
            .Returns(TestableCompetentAuthority.FrenchAuthorityArdeche);
            A.CallTo(() => competentAuthorityRepository.GetById(TestableCompetentAuthority.EnvironmentAgency.Id))
            .Returns(TestableCompetentAuthority.EnvironmentAgency);
            A.CallTo(() => entryOrExitPointRepository.GetById(TestableEntryOrExitPoint.Dover.Id))
            .Returns(TestableEntryOrExitPoint.Dover);
        }
        private async Task <bool> BeInSameCountry(StateOfExport stateOfExport, Guid?exitPointId, CancellationToken cancellationToken)
        {
            if (exitPointId.HasValue && stateOfExport.CountryId.HasValue)
            {
                var exitPoint = await entryOrExitPointRepository.GetById(exitPointId.Value);

                return(exitPoint.Country.Id == stateOfExport.CountryId.Value);
            }

            return(false);
        }
        private async Task <TransitStateData> GetTransitStateData(Core.ImportNotification.Draft.TransitState transitState)
        {
            var transitStateData = new TransitStateData
            {
                Id = transitState.Id,
                OrdinalPosition = transitState.OrdinalPosition
            };

            if (transitState.CountryId.HasValue)
            {
                var country = await countryRepository.GetById(transitState.CountryId.Value);

                transitStateData.Country = mapper.Map <CountryData>(country);
            }

            if (transitState.CompetentAuthorityId.HasValue)
            {
                var competentAuthority =
                    await competentAuthorityRepository.GetById(transitState.CompetentAuthorityId.Value);

                transitStateData.CompetentAuthority = mapper.Map <CompetentAuthorityData>(competentAuthority);
            }

            if (transitState.EntryPointId.HasValue)
            {
                var entryPoint = await entryOrExitPointRepository.GetById(transitState.EntryPointId.Value);

                transitStateData.EntryPoint = mapper.Map <EntryOrExitPointData>(entryPoint);
            }

            if (transitState.ExitPointId.HasValue)
            {
                var exitPoint = await entryOrExitPointRepository.GetById(transitState.ExitPointId.Value);

                transitStateData.ExitPoint = mapper.Map <EntryOrExitPointData>(exitPoint);
            }

            return(transitStateData);
        }
Exemple #7
0
        public StateOfExportData Map(Domain.ImportNotification.StateOfExport source)
        {
            if (source == null)
            {
                return(null);
            }

            var country            = Task.Run(() => countryRepository.GetById(source.CountryId)).Result;
            var competentAuthority = Task.Run(() => competentAuthorityRepository.GetById(source.CompetentAuthorityId)).Result;
            var exitPoint          = Task.Run(() => entryOrExitPointRepository.GetById(source.ExitPointId)).Result;

            return(new StateOfExportData
            {
                CompetentAuthority = competentAuthorityMap.Map(competentAuthority),
                Country = countryMap.Map(country),
                ExitPoint = entryOrExitPointMap.Map(exitPoint)
            });
        }
Exemple #8
0
        public Core.StateOfImport Map(Domain.StateOfImport source)
        {
            Core.StateOfImport result = null;

            if (source != null)
            {
                var competentAuthority = Task.Run(() => competentAuthorityRepository.GetById(source.CompetentAuthorityId)).Result;

                result = new Core.StateOfImport
                {
                    CompetentAuthorityCode = competentAuthority.Code,
                    CompetentAuthorityName = competentAuthority.Name,
                    EntryPointName         = Task.Run(() => pointRepository.GetById(source.EntryPointId)).Result.Name
                };
            }

            return(result);
        }
Exemple #9
0
        public async Task <Unit> HandleAsync(SetEntryPoint message)
        {
            var intraCountryExportAlloweds = await intraCountryExportAllowedRepository.GetAllAsync();

            var uksAuthorities = await unitedKingdomCompetentAuthorityRepository.GetAllAsync();

            var entryPoint = await entryOrExitPointRepository.GetById(message.EntryPointId);

            var transportRoute = await transportRouteRepository.GetByNotificationId(message.NotificationId);

            var validator = new TransportRouteValidation(intraCountryExportAlloweds, uksAuthorities);

            transportRoute.SetStateOfImportForNotification(new StateOfImport(transportRoute.StateOfImport.Country,
                                                                             transportRoute.StateOfImport.CompetentAuthority, entryPoint), validator);

            await context.SaveChangesAsync();

            return(Unit.Value);
        }
Exemple #10
0
        private async Task <bool> BeAnEntryPointInTheUK(Guid?entryPointId, CancellationToken cancellationToken)
        {
            var entryPoint = await entryOrExitPointRepository.GetById(entryPointId.Value);

            return(await IsCountryUnitedKingdom(entryPoint.Country));
        }