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); }
public VehicleToMfrBodyCodeSearchViewModel Map(VehicleToMfrBodyCodeSearchResult source) { Guid guid; var viewModel = new VehicleToMfrBodyCodeSearchViewModel() { Facets = new VehicleToMfrBodyCodeSearchFacets() { MfrBodyCodes = source.Facets.Any(f => f.Name == "mfrBodyCodeName") ? source.Facets.First(f => f.Name == "mfrBodyCodeName") .Value.Select(item => ((SimpleValue)item).Value.ToString()).OrderBy(item => item) .ToArray() : default(string[]), Regions = source.Facets.Any(f => f.Name == "regionName") ? source.Facets.First(f => f.Name == "regionName") .Value.Select(item => ((SimpleValue)item).Value.ToString()).OrderBy(item => item) .ToArray() : default(string[]), VehicleTypeGroups = source.Facets.Any(f => f.Name == "vehicleTypeGroupName") ? source.Facets.First(f => f.Name == "vehicleTypeGroupName") .Value.Select(item => ((SimpleValue)item).Value.ToString()).OrderBy(item => item) .ToArray() : default(string[]), VehicleTypes = source.Facets.Any(f => f.Name == "vehicleTypeName") ? source.Facets.First(f => f.Name == "vehicleTypeName") .Value.Select(item => ((SimpleValue)item).Value.ToString()).OrderBy(item => item) .ToArray() : default(string[]), Years = source.Facets.Any(f => f.Name == "yearId") ? source.Facets.First(f => f.Name == "yearId") .Value.Select(item => ((SimpleValue)item).Value.ToString()).OrderBy(item => item) .ToArray() : default(string[]), Makes = source.Facets.Any(f => f.Name == "makeName") ? source.Facets.First(f => f.Name == "makeName") .Value.Select(item => ((SimpleValue)item).Value.ToString()).OrderBy(item => item) .ToArray() : default(string[]), Models = source.Facets.Any(f => f.Name == "modelName") ? source.Facets.First(f => f.Name == "modelName") .Value.Select(item => ((SimpleValue)item).Value.ToString()).OrderBy(item => item) .ToArray() : default(string[]), SubModels = source.Facets.Any(f => f.Name == "subModelName") ? source.Facets.First(f => f.Name == "subModelName") .Value.Select(item => ((SimpleValue)item).Value.ToString()).OrderBy(item => item) .ToArray() : default(string[]), }, Result = new VehicleToMfrBodyCodeSearchResultViewModel() { MfrBodyCodes = source.Documents.Distinct(new DistinctMfrBodyCodeIdComparer()) .Select(item => new MfrBodyCodeViewModel { Id = Convert.ToInt32(item.MfrBodyCodeId), Name = item.MfrBodyCodeName, ChangeRequestId = item.MfrBodyCodeChangeRequestId, }).ToList(), VehicleToMfrBodyCodes = source.Documents.Where(item => !Guid.TryParse(item.VehicleToMfrBodyCodeId, out guid)) .Select(item => new VehicleToMfrBodyCodeViewModel { Id = Convert.ToInt32(item.VehicleToMfrBodyCodeId), Vehicle = new VehicleViewModel { BaseVehicleId = item.BaseVehicleId ?? 0, Id = Convert.ToInt32(item.VehicleId), MakeId = item.MakeId ?? 0, MakeName = item.MakeName, ModelId = item.ModelId ?? 0, ModelName = item.ModelName, RegionId = item.RegionId ?? 0, RegionName = item.RegionName, SourceName = item.Source, SubModelId = item.SubModelId ?? 0, SubModelName = item.SubModelName, YearId = item.YearId ?? 0, ChangeRequestId = item.MfrBodyCodeChangeRequestId, }, MfrBodyCodeId = item.MfrBodyCodeId ?? 0, VehicleId = item.VehicleId ?? 0, Name = item.MfrBodyCodeName, MfrBodyCode = new MfrBodyCodeViewModel { Id = item.MfrBodyCodeId ?? 0 //just id is sufficient, it will used by check box selection events }, ChangeRequestId = item.VehicleToMfrBodyCodeChangeRequestId }).ToList() }, TotalCount = source.TotalCount != null && source.TotalCount > 1000 ? source.TotalCount : null, }; return(viewModel); }