浏览代码

激光场景列表用户信息

lyhzzz 1 年之前
父节点
当前提交
0d58793a67

+ 12 - 0
src/main/java/com/fdkankan/manage/httpClient/service/LaserService.java

@@ -114,6 +114,13 @@ public class LaserService {
                 List<String> numList = sceneVoList.parallelStream().map(SceneVo::getNum).collect(Collectors.toList());
                 coldStorageMap = sceneColdStorageService.getByNumList(numList);
             }
+            Set<String> snCodes = sceneVoList.parallelStream().map(SceneVo::getSnCode).collect(Collectors.toSet());
+
+            HashMap<String,User> snUserMap = userService.getUserBySn(snCodes);
+
+
+
+
             for (SceneVo sceneVo : sceneVoList) {
                 if(coldStorageMap != null){
                     SceneColdStorage sceneColdStorage = coldStorageMap.get(sceneVo.getNum());
@@ -121,6 +128,11 @@ public class LaserService {
                         sceneVo.setIsColdStorage(true);
                     }
                 }
+                User user = snUserMap.get(sceneVo.getSnCode());
+                if(user != null){
+                    sceneVo.setUserId(user.getId());
+                    sceneVo.setUserName(user.getUserName());
+                }
             }
             Page<SceneVo> voPage = new Page<>(param.getPageNum(),param.getPageSize());
             voPage.setRecords(sceneVoList);

+ 3 - 0
src/main/java/com/fdkankan/manage/service/ICameraService.java

@@ -9,6 +9,7 @@ import com.fdkankan.manage.vo.request.CameraParam;
 
 import java.util.HashMap;
 import java.util.List;
+import java.util.Set;
 
 /**
  * <p>
@@ -49,4 +50,6 @@ public interface ICameraService extends IService<Camera> {
     List<Camera> getLikeBySnCode(String snCode);
 
     HashMap<Long, Camera> getByIds(List<Long> cameraIds);
+
+    List<Camera> getBySnCodes(Set<String> snCodes);
 }

+ 3 - 0
src/main/java/com/fdkankan/manage/service/IUserService.java

@@ -9,6 +9,7 @@ import com.fdkankan.manage.vo.response.UserVo;
 
 import java.util.HashMap;
 import java.util.List;
+import java.util.Set;
 
 /**
  * <p>
@@ -41,4 +42,6 @@ public interface IUserService extends IService<User> {
     void updateUcenterUser(UserParam userParam);
 
     List<User> getLikeByUserName(String userName);
+
+    HashMap<String, User> getUserBySn(Set<String> snCodes);
 }

+ 3 - 0
src/main/java/com/fdkankan/manage/service/impl/CameraDetailServiceImpl.java

@@ -102,6 +102,9 @@ public class CameraDetailServiceImpl extends ServiceImpl<ICameraDetailMapper, Ca
 
     @Override
     public List<CameraDetail> getByCameraIds(List<Long> cameraIds) {
+        if(cameraIds.isEmpty()){
+            return new ArrayList<>();
+        }
         LambdaQueryWrapper<CameraDetail> wrapper = new LambdaQueryWrapper<>();
         wrapper.in(CameraDetail::getCameraId,cameraIds);
         return  this.list(wrapper);

+ 10 - 0
src/main/java/com/fdkankan/manage/service/impl/CameraServiceImpl.java

@@ -629,4 +629,14 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
         }
         return map;
     }
+
+    @Override
+    public List<Camera> getBySnCodes(Set<String> snCodes) {
+        if(snCodes.isEmpty()){
+            return new ArrayList<>();
+        }
+        LambdaQueryWrapper<Camera> wrapper = new LambdaQueryWrapper<>();
+        wrapper.in(Camera::getSnCode,snCodes);
+        return this.list(wrapper);
+    }
 }

+ 1 - 1
src/main/java/com/fdkankan/manage/service/impl/SceneProServiceImpl.java

@@ -751,7 +751,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
             Integer code = jsonObject.getInteger("code");
             if(code != 0){
                 log.error("场景重算失败:{},{}",num,jsonObject);
-                throw new BusinessException(ResultCode.SCENE_REBUILD_ERROR);
+                throw new BusinessException(ResultCode.SCENE_REBUILD_ERROR.code(), jsonObject.getString("msg"));
             }
         }catch (Exception e){
             throw new BusinessException(ResultCode.SCENE_REBUILD_ERROR);

+ 31 - 5
src/main/java/com/fdkankan/manage/service/impl/UserServiceImpl.java

@@ -11,12 +11,9 @@ import com.fdkankan.common.util.SecurityUtil;
 import com.fdkankan.manage.common.CacheUtil;
 import com.fdkankan.manage.common.OssPath;
 import com.fdkankan.manage.common.ResultCode;
-import com.fdkankan.manage.entity.CameraDetail;
-import com.fdkankan.manage.entity.SysUser;
-import com.fdkankan.manage.entity.UserIncrement;
+import com.fdkankan.manage.entity.*;
 import com.fdkankan.manage.exception.BusinessException;
 import com.fdkankan.manage.common.PageInfo;
-import com.fdkankan.manage.entity.User;
 import com.fdkankan.manage.httpClient.service.LaserService;
 import com.fdkankan.manage.mapper.IUserMapper;
 import com.fdkankan.manage.service.*;
@@ -47,6 +44,8 @@ public class UserServiceImpl extends ServiceImpl<IUserMapper, User> implements I
     @Autowired
     private IUserIncrementService userIncrementService;
     @Autowired
+    private ICameraService cameraService;
+    @Autowired
     private ICameraDetailService cameraDetailService;
     @Autowired
     private ISceneService sceneService;
@@ -167,10 +166,13 @@ public class UserServiceImpl extends ServiceImpl<IUserMapper, User> implements I
 
     @Override
     public HashMap<Long, User> getByIds(List<Long> userIds) {
+        HashMap<Long,User> map = new HashMap<>();
+        if(userIds.isEmpty()){
+            return map;
+        }
         LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
         wrapper.in(User::getId,userIds);
         List<User> list = this.list(wrapper);
-        HashMap<Long,User> map = new HashMap<>();
         list.forEach(entity -> map.put(entity.getId(),entity));
         return map;
     }
@@ -274,4 +276,28 @@ public class UserServiceImpl extends ServiceImpl<IUserMapper, User> implements I
         wrapper.like(User::getUserName,userName);
         return this.list(wrapper);
     }
+
+    @Override
+    public HashMap<String, User> getUserBySn(Set<String> snCodes) {
+        HashMap<Long,User> map = new HashMap<>();
+        HashMap<String,User> mapUser = new HashMap<>();
+        List<Camera> cameraList = cameraService.getBySnCodes(snCodes);
+        List<Long> cameraIds = cameraList.parallelStream().map(Camera::getId).collect(Collectors.toList());
+        List<CameraDetail> cameraDetails = cameraDetailService.getByCameraIds(cameraIds);
+        List<Long> userIds = cameraDetails.parallelStream().map(CameraDetail::getUserId).collect(Collectors.toList());
+        HashMap<Long, User> useMap  = this.getByIds(userIds);
+
+        for (CameraDetail cameraDetail : cameraDetails) {
+            if(cameraDetail.getUserId() != null){
+                User user = useMap.get(cameraDetail.getUserId());
+                if(user != null){
+                    map.put(cameraDetail.getCameraId(),user);
+                }
+            }
+        }
+
+        cameraList.forEach(e -> mapUser.put(e.getSnCode(),map.get(e.getId())));
+
+        return mapUser;
+    }
 }