lyhzzz hace 2 años
padre
commit
e57684fd40

+ 30 - 0
src/main/java/com/fdkankan/ucenter/controller/CameraController.java

@@ -1,17 +1,26 @@
 package com.fdkankan.ucenter.controller;
 
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.fdkankan.common.exception.BusinessException;
 import com.fdkankan.common.util.JwtUtil;
 import com.fdkankan.ucenter.common.Result;
 import com.fdkankan.ucenter.constant.LoginConstant;
+import com.fdkankan.ucenter.entity.Camera;
+import com.fdkankan.ucenter.entity.CameraDetail;
+import com.fdkankan.ucenter.entity.User;
 import com.fdkankan.ucenter.service.ICameraDetailService;
 import com.fdkankan.ucenter.service.ICameraService;
 import com.fdkankan.ucenter.service.ISceneResourceService;
+import com.fdkankan.ucenter.service.IUserService;
 import com.fdkankan.ucenter.vo.request.CameraParam;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.List;
+import java.util.stream.Collectors;
+
 @RestController
 @RequestMapping("/user/camera")
 public class CameraController {
@@ -22,6 +31,8 @@ public class CameraController {
     ICameraService cameraService;
     @Autowired
     ISceneResourceService sceneResourceService;
+    @Autowired
+    IUserService userService;
 
     /**
      * 获取设备到期数量
@@ -116,4 +127,23 @@ public class CameraController {
         return Result.success(cameraService.getAllList(jsonObject.getString("childName"),token));
     }
 
+    /**
+     * 获取协作相机sn码集合
+     */
+    @PostMapping(value = "/getCooperationSnCodes")
+    public Result getCooperationSnCodes(@RequestHeader String token) throws Exception {
+        User user = userService.getByToken(token);
+        LambdaQueryWrapper<CameraDetail> condition = new LambdaQueryWrapper<>();
+        condition.eq(CameraDetail::getCooperationUser,user.getId());
+        condition.eq(CameraDetail::getGoodsId,10);
+        List<CameraDetail> list = cameraDetailService.list(condition);
+        if(CollectionUtils.isEmpty(list)){
+            return Result.success();
+        }
+        LambdaQueryWrapper<Camera>  condition2 = new LambdaQueryWrapper<>();
+        condition2.in(Camera::getId,list.stream().map(CameraDetail::getCameraId)
+                        .collect(Collectors.toList()));
+        List<Camera> cameraEntities = cameraService.list(condition2);
+        return Result.success(cameraEntities.stream().map(Camera::getSnCode).collect(Collectors.toList()));
+    }
 }