xiewj 1 năm trước cách đây
mục cha
commit
005336f303

+ 16 - 0
720yun_fd_manage/gis_service/src/main/java/com/gis/service/impl/WorkServiceImpl.java

@@ -441,6 +441,22 @@ public class WorkServiceImpl extends IBaseStrServiceImpl<WorkEntity, String> imp
             }else {
                 return Result.failure(ErrorEnum.FAILURE_SYS_3011.code(), "当前无操作权限");
             }
+        }else {
+            if (ObjectUtil.isNotEmpty(entity.getType())&&!entity.getType().equalsIgnoreCase("pro")){
+                JSONObject cameraList =fdkkClient.getCameraListByToken(getToken(),"3,4,5");
+                List<String> snCodes = new ArrayList<>();
+                if (cameraList.getInteger("code") == 0) {
+                    JSONArray data = cameraList.getJSONObject("data").getJSONArray("snCodes");
+                    for (Object datum : data) {
+                        snCodes.add(String.valueOf(datum));
+                    }
+                    if (!snCodes.contains(entity.getSnCode())) {
+                        return Result.failure(ErrorEnum.FAILURE_SYS_3011.code(), "当前无操作权限");
+                    }
+                } else {
+                    return Result.failure("获取四维用户激光数据失败");
+                }
+            }
         }
 
         // 更新作品信息

+ 16 - 0
720yun_fd_manage/gis_web/src/main/java/com/gis/web/controller/WorkController.java

@@ -178,6 +178,22 @@ public class WorkController extends BaseController {
             }else {
                 return Result.failure(ErrorEnum.FAILURE_SYS_3011.code(), "当前无操作权限");
             }
+        }else {
+            if (ObjectUtil.isNotEmpty(entity.getType())&&!entity.getType().equalsIgnoreCase("pro")){
+                JSONObject cameraList =fdkkClient.getCameraListByToken(getToken(),"3,4,5");
+                List<String> snCodes = new ArrayList<>();
+                if (cameraList.getInteger("code") == 0) {
+                    JSONArray data = cameraList.getJSONObject("data").getJSONArray("snCodes");
+                    for (Object datum : data) {
+                        snCodes.add(String.valueOf(datum));
+                    }
+                    if (!snCodes.contains(entity.getSnCode())) {
+                        return Result.failure(ErrorEnum.FAILURE_SYS_3011.code(), "当前无操作权限");
+                    }
+                } else {
+                    return Result.failure("获取四维用户激光数据失败");
+                }
+            }
         }
 
         redisUtil.set(RedisConstant.WORK_ID + workId, entity, 30, TimeUnit.SECONDS);