public async Task <AddressSearchResult> GetModelListAsync(long?userId, string keyword, DateTime?startTime, DateTime?endTime, int pageIndex, int pageSize) { using (MyDbContext dbc = new MyDbContext()) { AddressSearchResult result = new AddressSearchResult(); var entities = dbc.GetAll <AddressEntity>().AsNoTracking(); if (userId != null) { entities = entities.Where(a => a.UserId == userId); } if (!string.IsNullOrEmpty(keyword)) { entities = entities.Where(g => g.Name.Contains(keyword) || g.Description.Contains(keyword)); } if (startTime != null) { entities = entities.Where(a => a.CreateTime >= startTime); } if (endTime != null) { entities = entities.Where(a => SqlFunctions.DateDiff("day", endTime, a.CreateTime) <= 0); } result.PageCount = (int)Math.Ceiling((await entities.LongCountAsync()) * 1.0f / pageSize); var addressResult = await entities.OrderByDescending(a => a.CreateTime).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync(); result.Address = addressResult.Select(a => ToDTO(a)).ToArray(); return(result); } }
public AddressSearchResult FindAddresses(string postcode) { _logger.Debug("Calling SearchProvider to find out the addresses for postcode {0}.", postcode); var addressSearchViewModel = new AddressSearchResult(); try { IEnumerable <Address> addresses = _addressSearchService.FindAddress(postcode).OrderBy(x => x.Uprn); addressSearchViewModel.Addresses = _apprenticeshipSearchMapper.Map <IEnumerable <Address>, IEnumerable <AddressViewModel> >(addresses); } catch (CustomException e) { var message = string.Format("FindAddresses for postcode {0} failed.", postcode); _logger.Error(message, e); addressSearchViewModel.ErrorMessage = e.Message; addressSearchViewModel.HasError = true; } catch (Exception e) { var message = string.Format("FindAddresses for postcode {0} failed.", postcode); _logger.Error(message, e); throw; } return(addressSearchViewModel); }
public async Task <AddressSearchResult> GetFullAddressByRecordId(string gnafId) { string serviceRequestedQueryString = "{0}/ProcessQueryStringRequest?Method=DataTools.Capture.Address.Predictive.Gnaf.RetrieveAddress&RecordId={1}&RequestKey={2}&OutputFormat=json"; var qualifiedQueryString = string.Format(serviceRequestedQueryString, _serviceURL, gnafId, _serviceRequestKey); var request = new HttpRequestMessage(HttpMethod.Get, qualifiedQueryString); var client = _clientFactory.CreateClient(); var response = await client.SendAsync(request); var singleResult = new AddressSearchResult(); if (response.IsSuccessStatusCode) { var result = response.Content.ReadAsStringAsync().Result; var kleberAddress = JsonConvert.DeserializeObject <KleberMultipleAddress>(result); if (kleberAddress != null && kleberAddress.DtResponse != null && kleberAddress.DtResponse.Result.Count() > 0) { singleResult = kleberAddress.DtResponse.Result[0]; } } return(singleResult); }
public async Task <ApiResult> List(AddressListModel model) { User user = JwtHelper.JwtDecrypt <User>(ControllerContext); AddressSearchResult result = await addressService.GetModelListAsync(user.Id, null, null, null, model.PageIndex, model.PageSize); AddressListApiModel res = new AddressListApiModel(); res.pageCount = result.PageCount; res.addressList = result.Address.Select(a => new AddressList { id = a.Id, address = a.Address, name = a.Name, mobile = a.Mobile, isDefault = a.IsDefault }).ToList(); return(new ApiResult { status = 1, data = res }); }
public async Task GetStreetUniqueId_ShouldReturnFirstResult_IfResponseNotNull() { // Arrange var map = new Map { Street = $"{_street}, {_usrn}" }; var firstResult = new AddressSearchResult { UniqueId = "654321", USRN = _usrn, Name = "Street, Town" }; var secondResult = new AddressSearchResult { UniqueId = "777777", USRN = "555555", Name = "Different Street" }; _mockVerintGateway .Setup(_ => _.GetStreetByUsrn(It.IsAny <string>())) .ReturnsAsync(new HttpResponse <List <AddressSearchResult> > { ResponseContent = new List <AddressSearchResult> { firstResult, secondResult } }); // Act var result = await _streetHelper.GetStreetUniqueId(map); // Assert Assert.Equal(firstResult.UniqueId, result.UniqueId); Assert.Equal(firstResult.USRN, result.USRN); Assert.Equal(firstResult.Name, result.Name); }
public async Task <ActionResult> GetGeoCode([FromRoute] string gnafId, [FromRoute] string displayLine) { string serviceRequestedQueryString = "{0}/ProcessQueryStringRequest?Method=DataTools.Capture.Address.Predictive.Gnaf.RetrieveGeocode&RecordId={1}&RequestKey={2}&OutputFormat=json"; var qualifiedQueryString = string.Format(serviceRequestedQueryString, _serviceURL, gnafId, _serviceRequestKey); var request = new HttpRequestMessage(HttpMethod.Get, qualifiedQueryString); var client = _clientFactory.CreateClient(); var response = await client.SendAsync(request); var singleResult = new AddressSearchResult(); if (response.IsSuccessStatusCode) { var result = response.Content.ReadAsStringAsync().Result; var kleberAddress = JsonConvert.DeserializeObject <KleberMultipleAddress>(result); if (kleberAddress != null && kleberAddress.DtResponse != null && kleberAddress.DtResponse.Result.Count() > 0) { singleResult = kleberAddress.DtResponse.Result[0]; singleResult.IsInWesternSydney = IsInWesternSydney(singleResult.Longitude, singleResult.Latitude); var fullAddress = await GetFullAddressByRecordId(gnafId); singleResult.DisplayLine = displayLine; singleResult.AddressLine = fullAddress.AddressLine; singleResult.Locality = fullAddress.Locality; singleResult.State = fullAddress.State; singleResult.Postcode = fullAddress.Postcode; } } return(Ok(singleResult)); }
public void Asr_Create() { var results = new AddressSearchResult(sc, new List <AddressSearchHit>()); }
public void Asr_Create() { var results = new AddressSearchResult(sc, new List <ProgramAddress>(), AddressSearchDetails.Code); }
public void Asr_Create() { var results = new AddressSearchResult(sc, new List<AddressSearchHit>()); }