From 8a8d15aaa219142fe32b4ae8a074ea278eea2f47 Mon Sep 17 00:00:00 2001 From: liyj <1003249715@qq.com> Date: Tue, 10 Sep 2024 23:44:48 +0800 Subject: [PATCH] 1、根据经纬度查询问题属地接口 --- dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/web/SyRegionWebController.java | 22 +++++++++++ dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java | 40 ++++++++++++++++++++ dyh-service/dyh-disp/src/main/resources/config/application.yml | 4 +- dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/client/SyregionClientController.java | 28 +------------- 4 files changed, 66 insertions(+), 28 deletions(-) diff --git a/dyh-service/dyh-disp/src/main/resources/config/application.yml b/dyh-service/dyh-disp/src/main/resources/config/application.yml index cc100da..6b48760 100644 --- a/dyh-service/dyh-disp/src/main/resources/config/application.yml +++ b/dyh-service/dyh-disp/src/main/resources/config/application.yml @@ -2,8 +2,8 @@ spring: profiles: active: -# - dev - - test + - dev +# - test # - prod devtools: diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/client/SyregionClientController.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/client/SyregionClientController.java index 04481ea..286e328 100644 --- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/client/SyregionClientController.java +++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/client/SyregionClientController.java @@ -45,32 +45,8 @@ @GetMapping("/getQueAddrByBaiduiLngLat") public Object getQueAddrByBaiduiLngLat(@RequestParam(value = "lng") String lng, @RequestParam(value = "lat") String lat) { try { - QueAddrBaseDTO syRegionBaseDTO = new QueAddrBaseDTO(); - BaiduMapAddrDTO baiduMapAddrDTO = BaiduMapUtils.getAddrByLngLat(lng, lat, BaiduMapUtils.coordtype_bd09ll); - if (ObjectUtils.isNotEmpty(baiduMapAddrDTO)) { - QueryWrapper<SyRegion> syRegionQueryWrapper = new QueryWrapper<>(); - // 查询省 - syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getProvince()); - SyRegion province = service.getOne(syRegionQueryWrapper); - syRegionBaseDTO.setQueProv(province.getId()); - syRegionBaseDTO.setQueProvName(province.getName()); - // 查询市 - syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getCity()); - SyRegion city = service.getOne(syRegionQueryWrapper); - syRegionBaseDTO.setQueProv(city.getId()); - syRegionBaseDTO.setQueProvName(city.getName()); - // 查询区 - syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getDistrict()); - SyRegion district = service.getOne(syRegionQueryWrapper); - syRegionBaseDTO.setQueProv(district.getId()); - syRegionBaseDTO.setQueProvName(district.getName()); - // 查询街道 - syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getTown()); - SyRegion town = service.getOne(syRegionQueryWrapper); - syRegionBaseDTO.setQueProv(town.getId()); - syRegionBaseDTO.setQueProvName(town.getName()); - } - return ReturnSucUtils.getRepInfo(syRegionBaseDTO); + QueAddrBaseDTO queAddrBaseDTO = service.getQueAddrByBaiduiLngLat(lng, lat); + return ReturnSucUtils.getRepInfo(queAddrBaseDTO); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); } diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/web/SyRegionWebController.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/web/SyRegionWebController.java index 67ff856..820372a 100644 --- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/web/SyRegionWebController.java +++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/web/SyRegionWebController.java @@ -1,11 +1,16 @@ package cn.huge.module.kind.controller.web; +import cn.huge.base.common.utils.ObjectUtils; import cn.huge.base.common.utils.ReturnFailUtils; import cn.huge.base.common.utils.ReturnSucUtils; import cn.huge.module.kind.domain.dto.RegionSelectJSDTO; import cn.huge.module.kind.domain.dto.RegionSelectSaveDTO; import cn.huge.module.kind.domain.po.SyRegion; import cn.huge.module.kind.service.SyRegionService; +import cn.huge.module.sys.dto.QueAddrBaseDTO; +import cn.huge.module.utils.BaiduMapAddrDTO; +import cn.huge.module.utils.BaiduMapUtils; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.google.common.collect.Maps; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -185,4 +190,21 @@ } } + /** + * 根据百度地图经纬度获取街道 + * @url {ctx}/api/web/syRegion/getQueAddrByBaiduiLngLat + * @param lng 经度 + * @param lat 维度 + * @return + */ + @GetMapping("/getQueAddrByBaiduiLngLat") + public Object getQueAddrByBaiduiLngLat(@RequestParam(value = "lng") String lng, @RequestParam(value = "lat") String lat) { + try { + QueAddrBaseDTO queAddrBaseDTO = service.getQueAddrByBaiduiLngLat(lng, lat); + return ReturnSucUtils.getRepInfo(queAddrBaseDTO); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + } diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java index 6ec8322..b74fb2d 100644 --- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java +++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java @@ -3,10 +3,15 @@ import cn.huge.base.common.exception.ServiceException; import cn.huge.base.common.utils.DateUtils; import cn.huge.base.common.utils.IdUtils; +import cn.huge.base.common.utils.ObjectUtils; import cn.huge.module.client.api.impl.UtilsClientImpl; import cn.huge.module.kind.dao.mapper.SyRegionMapper; import cn.huge.module.kind.domain.dto.RegionSelectJSDTO; import cn.huge.module.kind.domain.po.SyRegion; +import cn.huge.module.sys.dto.QueAddrBaseDTO; +import cn.huge.module.utils.BaiduMapAddrDTO; +import cn.huge.module.utils.BaiduMapUtils; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -161,6 +166,41 @@ } } + /** + * 根据百度地图经纬度获取街道 + * @param lng + * @param lat + * @return + */ + public QueAddrBaseDTO getQueAddrByBaiduiLngLat(String lng, String lat){ + QueAddrBaseDTO queAddrBaseDTO = new QueAddrBaseDTO(); + BaiduMapAddrDTO baiduMapAddrDTO = BaiduMapUtils.getAddrByLngLat(lng, lat, BaiduMapUtils.coordtype_bd09ll); + if (ObjectUtils.isNotEmpty(baiduMapAddrDTO)) { + QueryWrapper<SyRegion> syRegionQueryWrapper = new QueryWrapper<>(); + // 查询省 + syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getProvince()); + SyRegion province = mapper.selectOne(syRegionQueryWrapper); + queAddrBaseDTO.setQueProv(province.getId()); + queAddrBaseDTO.setQueProvName(province.getName()); + // 查询市 + syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getCity()); + SyRegion city = mapper.selectOne(syRegionQueryWrapper); + queAddrBaseDTO.setQueProv(city.getId()); + queAddrBaseDTO.setQueProvName(city.getName()); + // 查询区 + syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getDistrict()); + SyRegion district = mapper.selectOne(syRegionQueryWrapper); + queAddrBaseDTO.setQueProv(district.getId()); + queAddrBaseDTO.setQueProvName(district.getName()); + // 查询街道 + syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getTown()); + SyRegion town = mapper.selectOne(syRegionQueryWrapper); + queAddrBaseDTO.setQueProv(town.getId()); + queAddrBaseDTO.setQueProvName(town.getName()); + } + return queAddrBaseDTO; + } + } -- Gitblit v1.8.0