JensionDzero 1 سال پیش
والد
کامیت
c8de09f12b

+ 5 - 4
ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TopologicalCommonController.java

@@ -7,6 +7,7 @@ import com.ruoyi.common.helper.LoginHelper;
 import com.ruoyi.common.utils.JsonUtils;
 import com.ruoyi.demo.constant.RedisContant;
 import com.ruoyi.demo.entity.WdInfo;
+import com.ruoyi.demo.entity.bo.PointBo;
 import com.ruoyi.demo.entity.vo.TopologicalWdAceeptVo;
 import com.ruoyi.demo.service.TopologicalCommonService;
 import com.ruoyi.demo.service.WdInfoService;
@@ -61,18 +62,18 @@ public class TopologicalCommonController {
     }
 
     @RequestMapping(path = "/map",produces = {MediaType.TEXT_EVENT_STREAM_VALUE})
-    public SseEmitter   map(TopologicalWdAceeptVo topologicalWdAceeptVo) throws IOException {
+    public SseEmitter map(TopologicalWdAceeptVo topologicalWdAceeptVo) throws IOException {
         String md5 = topologicalWdAceeptVo.getHash();
 
         //2.查看redis中是否存在有缓存
-        List<Point> wdCount = (List<Point>) redisTemplate.boundHashOps(RedisContant.TOPOLOGICAL_COMMON_MAP).get(md5);
+        List<PointBo> wdCount = (List<PointBo>) redisTemplate.boundHashOps(RedisContant.TOPOLOGICAL_COMMON_MAP).get(md5);
         if (wdCount != null) {
             SseEmitter sseEmitter = getSseEmitter(LoginHelper.getUserId());
             sendFragment(sseEmitter,wdCount);
             return sseEmitter;
         }
 
-        List<Point> map = topologicalCommonService.map(topologicalWdAceeptVo);
+        List<PointBo> map = topologicalCommonService.map(topologicalWdAceeptVo);
         redisTemplate.boundHashOps(RedisContant.TOPOLOGICAL_COMMON_MAP).put(md5,map);
         redisTemplate.expire(RedisContant.TOPOLOGICAL_COMMON_MAP,RedisContant.TOPOLOGICAL_COMMON_MAP_TIME, TimeUnit.MINUTES); //30分钟
         SseEmitter sseEmitter = getSseEmitter(LoginHelper.getUserId());
@@ -97,7 +98,7 @@ public class TopologicalCommonController {
         return sseEmitter1;
     }
 
-    public void sendFragment(SseEmitter sseEmitter,List<Point> wdCount){
+    public void sendFragment(SseEmitter sseEmitter,List<PointBo> wdCount){
         int size = 1000;
         int pages = wdCount.size()%size == 0 ? wdCount.size()/size:wdCount.size()/size+1;
         int p1 = 0,p2 = size;

+ 1 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/entity/bo/PointBo.java

@@ -6,6 +6,7 @@ import lombok.Data;
 public class PointBo {
     private String wdId;
     private String wdName;
+    private String addrCode;
     private double lat;
     private double lng;
 }

+ 2 - 1
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/WdInfoDao.java

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.demo.entity.TopologicalBuildingWd;
 import com.ruoyi.demo.entity.TopologicalHouseWd;
 import com.ruoyi.demo.entity.WdInfo;
+import com.ruoyi.demo.entity.bo.PointBo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.data.geo.Point;
@@ -19,5 +20,5 @@ public interface WdInfoDao extends BaseMapper<WdInfo> {
 
     Page<TopologicalHouseWd> selectTopologicalHouseList(Page<WdInfo> page,@Param(Constants.WRAPPER) QueryWrapper<WdInfo> queryWrapper);
 
-    List<Point> map(@Param(Constants.WRAPPER) QueryWrapper<WdInfo> queryWrapper);
+    List<PointBo> map(@Param(Constants.WRAPPER) QueryWrapper<WdInfo> queryWrapper);
 }

+ 2 - 1
ruoyi-demo/src/main/java/com/ruoyi/demo/service/TopologicalCommonService.java

@@ -3,6 +3,7 @@ package com.ruoyi.demo.service;
 
 
 import com.ruoyi.demo.entity.WdInfo;
+import com.ruoyi.demo.entity.bo.PointBo;
 import com.ruoyi.demo.entity.vo.TopologicalWdAceeptVo;
 import org.springframework.data.geo.Point;
 
@@ -11,5 +12,5 @@ import java.util.List;
 public interface TopologicalCommonService {
     public List<WdInfo> prefixSearch(String searchText,Integer size);
 
-    List<Point> map(TopologicalWdAceeptVo topologicalWdAceeptVo);
+    List<PointBo> map(TopologicalWdAceeptVo topologicalWdAceeptVo);
 }

+ 4 - 3
ruoyi-demo/src/main/java/com/ruoyi/demo/service/impl/TopologicalCommonServiceImpl.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.ruoyi.demo.entity.WdInfo;
+import com.ruoyi.demo.entity.bo.PointBo;
 import com.ruoyi.demo.entity.vo.TopologicalWdAceeptVo;
 import com.ruoyi.demo.mapper.WdInfoDao;
 import com.ruoyi.demo.service.TopologicalCommonService;
@@ -63,7 +64,7 @@ public class TopologicalCommonServiceImpl implements TopologicalCommonService {
      * @return
      */
     @Override
-    public List<Point> map(TopologicalWdAceeptVo topologicalWdAceeptVo) {
+    public List<PointBo> map(TopologicalWdAceeptVo topologicalWdAceeptVo) {
         List<String> aroundWdId = new ArrayList<>();
 
         //1.根据经纬度 找到 周边网点Id 及 距离
@@ -73,9 +74,9 @@ public class TopologicalCommonServiceImpl implements TopologicalCommonService {
 
         //2.查询符合的周边网点信息
         QueryWrapper<WdInfo> queryWrapper = new QueryWrapper<>();
-        queryWrapper.select("wd_id","wd_name","lat","lng")
+        queryWrapper.select("wd_id","wd_name","lat","lng","addr_code")
                 .in("wd_id",aroundWdId);
-        List<Point> wdInfos = wdInfoDao.map(queryWrapper);
+        List<PointBo> wdInfos = wdInfoDao.map(queryWrapper);
 
         return wdInfos;
     }