示例#1
0
        private async Task <string[]> RefreshSubModelsFacet(VehicleToMfrBodyCodeSearchInputModel vehicleToMfrBodyCodeSearchInputModel)
        {
            var applyFilters = new VehicleToMfrBodyCodeSearchFilters()
            {
                MfrBodyCodeId     = vehicleToMfrBodyCodeSearchInputModel.MfrBodyCodeId,
                StartYear         = Convert.ToInt32(vehicleToMfrBodyCodeSearchInputModel.StartYear),
                EndYear           = Convert.ToInt32(vehicleToMfrBodyCodeSearchInputModel.EndYear),
                Makes             = vehicleToMfrBodyCodeSearchInputModel.Makes,
                Models            = vehicleToMfrBodyCodeSearchInputModel.Models,
                VehicleTypes      = vehicleToMfrBodyCodeSearchInputModel.VehicleTypes,
                VehicleTypeGroups = vehicleToMfrBodyCodeSearchInputModel.VehicleTypeGroups,
                Regions           = vehicleToMfrBodyCodeSearchInputModel.Regions,
                MfrBodyCodes      = vehicleToMfrBodyCodeSearchInputModel.MfrBodyCodes
            };

            var result = await _vehicleToMfrBodyCodeSearchService.SearchAsync("", applyFilters.ToAzureSearchFilter(),
                                                                              new SearchOptions
            {
                FacetsToInclude = new List <string>
                {
                    "subModelName,count:1000",
                },
                RecordCount = 0
            });

            var vehicleToMfrBodyCodeSearchViewModel = _vehicleToMfrBodyCodeSearchViewModelMapper.Map(result);

            return(vehicleToMfrBodyCodeSearchViewModel.Facets.SubModels);
        }
示例#2
0
        private async Task <string[]> RefreshYearFacet(VehicleToMfrBodyCodeSearchInputModel vehicleToMfrBodyCodeSearchInputModel)
        {
            var applyFilters = new VehicleToMfrBodyCodeSearchFilters()
            {
                MfrBodyCodeId     = vehicleToMfrBodyCodeSearchInputModel.MfrBodyCodeId,
                Regions           = vehicleToMfrBodyCodeSearchInputModel.Regions,
                VehicleTypeGroups = vehicleToMfrBodyCodeSearchInputModel.VehicleTypeGroups,
                VehicleTypes      = vehicleToMfrBodyCodeSearchInputModel.VehicleTypes,
                MfrBodyCodes      = vehicleToMfrBodyCodeSearchInputModel.MfrBodyCodes,
            };

            var result = await _vehicleToMfrBodyCodeSearchService.SearchAsync("", applyFilters.ToAzureSearchFilter(),
                                                                              new SearchOptions
            {
                FacetsToInclude = new List <string>
                {
                    "yearId,count:1000",
                },
                RecordCount = 0
            });

            var vehicleToMfrBodyCodeSearchViewModel = _vehicleToMfrBodyCodeSearchViewModelMapper.Map(result);

            return(vehicleToMfrBodyCodeSearchViewModel.Facets.Years);
        }
示例#3
0
        public async Task <VehicleToMfrBodyCodeSearchViewModel> RefreshFacets(VehicleToMfrBodyCodeSearchInputModel vehicleToMfrBodyCodeSearchInputModel)
        {
            var vehicleToMfrBodyCodeSearchViewModel = new VehicleToMfrBodyCodeSearchViewModel
            {
                Facets = new VehicleToMfrBodyCodeSearchFacets
                {
                    Regions           = await RefreshRegionFacet(vehicleToMfrBodyCodeSearchInputModel),
                    VehicleTypeGroups = await RefreshVehicleTypeGroupFacet(vehicleToMfrBodyCodeSearchInputModel),
                    VehicleTypes      = await RefreshVehicleTypeFacet(vehicleToMfrBodyCodeSearchInputModel),
                    Years             = await RefreshYearFacet(vehicleToMfrBodyCodeSearchInputModel),
                    Makes             = await RefreshMakesFacet(vehicleToMfrBodyCodeSearchInputModel),
                    Models            = await RefreshModelsFacet(vehicleToMfrBodyCodeSearchInputModel),
                    SubModels         = await RefreshSubModelsFacet(vehicleToMfrBodyCodeSearchInputModel),
                    MfrBodyCodes      = await RefreshMfrBodyCodeFacet(vehicleToMfrBodyCodeSearchInputModel),
                }
            };

            return(vehicleToMfrBodyCodeSearchViewModel);
        }
示例#4
0
        public async Task <List <VehicleToMfrBodyCodeViewModel> > GetAssociations(VehicleToMfrBodyCodeSearchInputModel vehicleToMfrBodyCodeSearchInputModel)
        {
            List <VehicleToMfrBodyCodeViewModel> vehicleToMfrBodyCodes = new List <VehicleToMfrBodyCodeViewModel>();

            var applyFilters = new VehicleToMfrBodyCodeSearchFilters()
            {
                MfrBodyCodeId     = vehicleToMfrBodyCodeSearchInputModel.MfrBodyCodeId,
                StartYear         = Convert.ToInt32(vehicleToMfrBodyCodeSearchInputModel.StartYear),
                EndYear           = Convert.ToInt32(vehicleToMfrBodyCodeSearchInputModel.EndYear),
                Makes             = vehicleToMfrBodyCodeSearchInputModel.Makes,
                Models            = vehicleToMfrBodyCodeSearchInputModel.Models,
                SubModels         = vehicleToMfrBodyCodeSearchInputModel.SubModels,
                VehicleTypes      = vehicleToMfrBodyCodeSearchInputModel.VehicleTypes,
                VehicleTypeGroups = vehicleToMfrBodyCodeSearchInputModel.VehicleTypeGroups,
                Regions           = vehicleToMfrBodyCodeSearchInputModel.Regions,
            };

            bool isEndReached = false;
            int  pageNumber   = 1;

            do
            {
                var result = await _vehicleToMfrBodyCodeSearchService.SearchAsync("", applyFilters.ToAzureSearchFilter(),
                                                                                  new SearchOptions()
                {
                    RecordCount = 1000, PageNumber = pageNumber
                });

                if (result != null && result.Documents != null && result.Documents.Any())
                {
                    vehicleToMfrBodyCodes.AddRange(_vehicleToMfrBodyCodeViewModelMapper.Map(result));

                    pageNumber++;
                }
                else
                {
                    isEndReached = true;
                }
            } while (!isEndReached);

            return(vehicleToMfrBodyCodes);
        }
示例#5
0
        private async Task <string[]> RefreshMfrBodyCodeFacet(VehicleToMfrBodyCodeSearchInputModel vehicleToMfrBodyCodeSearchInputModel)
        {
            var applyFilters = new VehicleToMfrBodyCodeSearchFilters()
            {
            };

            var result = await _vehicleToMfrBodyCodeSearchService.SearchAsync("", applyFilters.ToAzureSearchFilter(),
                                                                              new SearchOptions
            {
                FacetsToInclude = new List <string>
                {
                    "mfrBodyCodeName,count:1000",
                },
                RecordCount = 0
            });

            var vehicleToMfrBodyCodeSearchViewModel = _vehicleToMfrBodyCodeSearchViewModelMapper.Map(result);

            return(vehicleToMfrBodyCodeSearchViewModel.Facets.MfrBodyCodes);
        }
示例#6
0
        public async Task <VehicleToMfrBodyCodeSearchViewModel> Search(
            VehicleToMfrBodyCodeSearchInputModel vehicleToMfrBodyCodeSearchInputModel)
        {
            var applyFilters = new VehicleToMfrBodyCodeSearchFilters()
            {
                MfrBodyCodeId     = vehicleToMfrBodyCodeSearchInputModel.MfrBodyCodeId,
                StartYear         = Convert.ToInt32(vehicleToMfrBodyCodeSearchInputModel.StartYear),
                EndYear           = Convert.ToInt32(vehicleToMfrBodyCodeSearchInputModel.EndYear),
                Makes             = vehicleToMfrBodyCodeSearchInputModel.Makes,
                Models            = vehicleToMfrBodyCodeSearchInputModel.Models,
                SubModels         = vehicleToMfrBodyCodeSearchInputModel.SubModels,
                VehicleTypes      = vehicleToMfrBodyCodeSearchInputModel.VehicleTypes,
                VehicleTypeGroups = vehicleToMfrBodyCodeSearchInputModel.VehicleTypeGroups,
                Regions           = vehicleToMfrBodyCodeSearchInputModel.Regions,
                MfrBodyCodes      = vehicleToMfrBodyCodeSearchInputModel.MfrBodyCodes
            };
            var result = await _vehicleToMfrBodyCodeSearchService.SearchAsync("", applyFilters.ToAzureSearchFilter(),
                                                                              new SearchOptions
            {
                FacetsToInclude = new List <string>
                {
                    "regionName,count:1000",
                    "vehicleTypeName,count:1000",
                    "vehicleTypeGroupName,count:1000",
                    "makeName,count:1000",
                    "modelName,count:1000",
                    "subModelName,count:1000",
                },
                RecordCount      = 1000,
                ReturnTotalCount = true,
            });

            var viewModel = _vehicleToMfrBodyCodeSearchViewModelMapper.Map(result);

            return(viewModel);
        }