private List <NearestAddressSearchHit> MapToGraphQLAddressHits(GetAddressInfoResult addressQueryResult) { List <NearestAddressSearchHit> result = new(); foreach (var addressHit in addressQueryResult.AddressHits) { result.Add(new NearestAddressSearchHit() { AccessAddress = MapAccessAddress(addressHit.Key, addressQueryResult), Distance = addressHit.Distance.Value }); } return(result); }
public static AccessAddressData MapAccessAddress(Guid accessAddressId, GetAddressInfoResult addressQueryResult) { var searchAccessAddress = addressQueryResult.AccessAddresses[accessAddressId]; var wgs84Coord = UTM32WGS84Converter.ConvertFromUTM32NToWGS84(searchAccessAddress.AddressPoint.X, searchAccessAddress.AddressPoint.Y); List <UnitAddress> unitAddresses = new(); foreach (var unitAddress in addressQueryResult.UnitAddresses) { if (unitAddress.AccessAddressId == searchAccessAddress.Id) { unitAddresses.Add(unitAddress); } } var mappedAccessAddress = new AccessAddressData() { Id = searchAccessAddress.Id, ExternalId = searchAccessAddress.ExternalId, HouseNumber = searchAccessAddress.HouseNumber, PostDistrictCode = searchAccessAddress.PostDistrictCode, PostDistrict = searchAccessAddress.PostDistrict, RoadCode = searchAccessAddress.RoadCode, RoadName = searchAccessAddress.RoadName, TownName = searchAccessAddress.TownName, MunicipalCode = searchAccessAddress.MunicipalCode, Xetrs = searchAccessAddress.AddressPoint.X, Yetrs = searchAccessAddress.AddressPoint.Y, Xwgs = wgs84Coord[0], Ywgs = wgs84Coord[1], UnitAddresses = unitAddresses }; return(mappedAccessAddress); }