From c036557db88c6297b9a626a892dce35c14ab8ee5 Mon Sep 17 00:00:00 2001 From: nickchange <126672920+nickchange@users.noreply.github.com> Date: 星期四, 09 十一月 2023 18:30:31 +0800 Subject: [PATCH] 11.6 --- cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java | 72 ++++++++++++++++++++++++++++-------- 1 files changed, 56 insertions(+), 16 deletions(-) diff --git a/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java b/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java index 375d74c..4e1dabd 100644 --- a/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java +++ b/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java @@ -6,6 +6,7 @@ import com.dsh.other.entity.*; import com.dsh.other.feignclient.model.*; import com.dsh.other.model.*; +import com.dsh.other.model.dto.siteDto.StoreInfoDto; import com.dsh.other.service.*; import com.dsh.other.util.GDMapGeocodingUtil; import com.dsh.other.util.ResultUtil; @@ -36,7 +37,14 @@ @Autowired private TBackRecordService backRecordService; + /** + * 获取根据门店id 获取店长信息 + */ + @RequestMapping(value = "/getStoreInfo") + public StoreInfoDto getStoreInfo(@RequestBody Integer id){ + return storeService.getStoreInfo(id); + } /** * 根据城市管理员id获取门店 */ @@ -114,28 +122,41 @@ String result = storeLon+","+storeLat; String distanceTOKilometer = gdMapGeocodingUtil.getDistanceTOKilometer(current, result); long l = 0; - try { - l = Long.parseLong(distanceTOKilometer); - }catch (Exception e){ - l = 0; - } +// try { +// l = Long.parseLong(distanceTOKilometer); +// }catch (Exception e){ +// l = 0; +// } StoreInfo info = new StoreInfo(); info.setStoreId(store.getId()); info.setStoreName(store.getName()); info.setStoreImg(store.getCoverDrawing()); - info.setDistance(l); - info.setStoreAddr(store.getAddress()); + info.setDistance((long) Double.parseDouble(distanceTOKilometer)); + + + String str = store.getAddress(); + str = str.substring(str.indexOf("省") + 1); + + // 去掉第一个“市”及之前的字符串 + str = str.substring(str.indexOf("市") + 1); + + // 去掉第一个“区”及之前的字符串 + str = str.substring(str.indexOf("区") + 1); + + info.setStoreAddr(str); info.setLatitude(storeLat); info.setLongitude(storeLon); + storeInfos.add(info); } - Comparator<StoreInfo> distanceComparator = new Comparator<StoreInfo>() { - @Override - public int compare(StoreInfo store1, StoreInfo store2) { - return Long.compare(store1.getDistance(), store2.getDistance()); - } - }; - Collections.sort(storeInfos, distanceComparator); +// Comparator<StoreInfo> distanceComparator = new Comparator<StoreInfo>() { +// @Override +// public int compare(StoreInfo store1, StoreInfo store2) { +// return Long.compare(store1.getDistance(), store2.getDistance()); +// } +// }; +// Collections.sort(storeInfos, distanceComparator); + storeInfos = storeInfos.stream().sorted(Comparator.comparing(StoreInfo::getDistance)).collect(Collectors.toList()); } return storeInfos; } @@ -246,6 +267,14 @@ } } + @ResponseBody + @PostMapping("/store/querySiteIdById") + public List<Integer> querySiteIdById(@RequestBody List<Integer> storeIds){ + List<Site> list = siteService.list(new LambdaQueryWrapper<Site>().in(Site::getStoreId, storeIds)); + List<Integer> collect = list.stream().map(Site::getId).collect(Collectors.toList()); + return collect; + } + @ResponseBody @@ -310,6 +339,17 @@ e.printStackTrace(); return null; } + } + + + @Autowired + private ISiteService siteService; + @ResponseBody + @PostMapping("/store/querySiteId") + public List<Integer> querySiteId(@RequestBody Integer storeId){ + List<Site> list = siteService.list(new LambdaQueryWrapper<Site>().eq(Site::getStoreId, storeId).eq(Site::getSign, 1)); + List<Integer> collect = list.stream().map(Site::getId).collect(Collectors.toList()); + return collect; } @@ -414,9 +454,9 @@ @ApiImplicitParams({ @ApiImplicitParam(value = "城市code", name = "cityCode", dataType = "string", required = true), }) - public ResultUtil<List<BaseVo>> queryStoreByCityCode(String cityCode){ + public ResultUtil<List<BaseVo>> queryStoreByCityCode(String provinceCode,String cityCode){ try { - List<BaseVo> list = storeService.queryStoreByCityCode(cityCode); + List<BaseVo> list = storeService.queryStoreByCityCode(provinceCode,cityCode); return ResultUtil.success(list); }catch (Exception e){ e.printStackTrace(); -- Gitblit v1.7.1