5 コミット d6e3359173 ... 4d2c212415

作者 SHA1 メッセージ 日付
  liaoyitao 4d2c212415 Merge branch 'release/V1.0.0/test' of http://192.168.4.240:3000/LINK/LINK-SERVER into release/V2.0.0/test 1 ヶ月 前
  hellohaidie 6550c5c683 Merge remote-tracking branch 'origin/release/V1.0.0/test' into release/V1.0.0/test 1 ヶ月 前
  hellohaidie 3a7680d403 1.修改逻辑 1 ヶ月 前
  liaoyitao a7aec65a2b fix: 保存模型 1 ヶ月 前
  hellohaidie 0be721cb80 1.根据区域ID获取元素信息时,增加距离排序 3 ヶ月 前

+ 10 - 4
src/main/java/com/lqkj/link/module/zone/controller/ResourceController.java

@@ -205,13 +205,13 @@ public class ResourceController {
205 205
             )
206 206
     )
207 207
     @PostMapping("/" + VERSION_V1 + "/savePersonal")
208
-    public MessageBean<String> savePersonal(@RequestBody ModelCategory category,
208
+    public MessageBean<ModelCategory> savePersonal(@RequestBody ModelCategory category,
209 209
                                     HttpServletRequest request) {
210 210
         String authHeader = request.getHeader("Authorization");
211 211
         String userCode = jwtService.decryptUsernameWithHeader(authHeader);
212
-        String msg = resourceService.savePersonal(category, userCode);
213
-        if (StringUtils.isNotBlank(msg)) return MessageBean.error(msg);
214
-        return MessageBean.ok(null, "个人文件夹保存接口");
212
+        Map<String, Object> result = resourceService.savePersonal(category, userCode);
213
+        if (result.containsKey("msg")) return MessageBean.error(String.valueOf(result.get("msg")));
214
+        return MessageBean.ok((ModelCategory) result.get("category"), "个人文件夹保存接口");
215 215
     }
216 216
 
217 217
     @Operation(
@@ -231,4 +231,10 @@ public class ResourceController {
231 231
         return MessageBean.ok(resourceService.saveModel(modelInfo), "个人文件夹保存接口");
232 232
     }
233 233
 
234
+    @PostMapping("/" + VERSION_V1 + "/needRefresh")
235
+    public MessageBean<Boolean> needRefresh(HttpServletRequest request) {
236
+        String authHeader = request.getHeader("Authorization");
237
+        String userCode = jwtService.decryptUsernameWithHeader(authHeader);
238
+        return MessageBean.ok(resourceService.needRefreshResource(userCode), "资源更新检查");
239
+    }
234 240
 }

+ 7 - 0
src/main/java/com/lqkj/link/module/zone/repository/GeomInfoRepository.java

@@ -13,6 +13,13 @@ import java.util.Map;
13 13
 @Repository
14 14
 public interface GeomInfoRepository extends JpaRepository<GeomInfo, String> {
15 15
 
16
+    @Query(nativeQuery = true,
17
+        value = "with t1 as(select zone_id, st_makepoint(" +
18
+                    "(init_location -> 'translation' ->> 'x')\\:\\:float8, " +
19
+                    "(init_location -> 'translation' ->> 'y')\\:\\:float8, " +
20
+                    "(init_location -> 'translation' ->> 'z')\\:\\:float8) as init from zone_info where zone_id = :zoneId) " +
21
+                "select gi.* from geom_info gi, t1 where gi.zone_id = t1.zone_id order by st_distance(gi.geom, t1.init) "
22
+    )
16 23
     List<GeomInfo> findAllByZoneId(Integer zoneId);
17 24
 
18 25
     @Modifying

+ 13 - 8
src/main/java/com/lqkj/link/module/zone/service/ResourceService.java

@@ -1,5 +1,6 @@
1 1
 package com.lqkj.link.module.zone.service;
2 2
 
3
+import com.lqkj.link.module.authority.domain.UserInfo;
3 4
 import com.lqkj.link.module.authority.repository.UserInfoRepository;
4 5
 import com.lqkj.link.module.zone.domain.ModelCategory;
5 6
 import com.lqkj.link.module.zone.domain.ModelInfo;
@@ -15,10 +16,7 @@ import org.springframework.transaction.annotation.Transactional;
15 16
 
16 17
 import java.io.File;
17 18
 import java.io.IOException;
18
-import java.util.ArrayList;
19
-import java.util.List;
20
-import java.util.Map;
21
-import java.util.UUID;
19
+import java.util.*;
22 20
 import java.util.stream.Collectors;
23 21
 
24 22
 @Service
@@ -150,22 +148,29 @@ public class ResourceService {
150 148
         return infoRepository.listWitUserCode(userCode, categoryId, modelName);
151 149
     }
152 150
 
153
-    public String savePersonal(ModelCategory modelCategory, String userCode) {
151
+    public Map<String, Object> savePersonal(ModelCategory modelCategory, String userCode) {
152
+        Map<String, Object> result = new HashMap<>();
154 153
         if (modelCategory.getCategoryId() == 0) {
155 154
             modelCategory.setCategoryId(null);
156 155
         }
157 156
         Integer userId = userInfoRepository.findByUserCode(userCode).getUserId();
158 157
         if ((modelCategory.getCategoryId() != null && categoryRepository.hasSameNameByUserWithoutOne(modelCategory.getCategoryName(), modelCategory.getCategoryId(), userId))
159 158
                 || (modelCategory.getCategoryId() == null && categoryRepository.hasSameNameByUser(modelCategory.getCategoryName(), userId))) {
160
-            return "不能与已有文件夹重名!";
159
+            result.put("msg", "不能与已有文件夹重名!");
160
+            return result;
161 161
         }
162 162
         modelCategory.setUserId(userId);
163
-        categoryRepository.save(modelCategory);
164
-        return null;
163
+        modelCategory = categoryRepository.save(modelCategory);
164
+        result.put("category", modelCategory);
165
+        return result;
165 166
     }
166 167
 
167 168
     public ModelInfo saveModel(ModelInfo modelInfo) {
168 169
         return infoRepository.save(modelInfo);
169 170
     }
170 171
 
172
+    public Boolean needRefreshResource(String userCode) {
173
+        UserInfo userInfo = userInfoRepository.findByUserCode(userCode);
174
+        return userInfo.getRefreshResource() != null && userInfo.getRefreshResource();
175
+    }
171 176
 }