Browse Source

查询场景以及子场景的摄像头

hym 4 years ago
parent
commit
35a7739141

+ 14 - 1
sms_water/src/main/java/com/huaxu/controller/CameraManageController.java

@@ -140,7 +140,7 @@ public class CameraManageController {
     /**
      * 获取单个摄像头信息
      *
-     * @param   主键id
+     * @param
      * @param
      * @return Response对象
      */
@@ -150,5 +150,18 @@ public class CameraManageController {
         List<CameraDto> cameraManages =cameraManageService.getCameraTree(0l);
         return new AjaxMessage<>(ResultStatus.OK, cameraManages);
     }
+    /**
+     * 获取单个摄像头信息
+     *
+     * @param  id 主键id
+     * @param
+     * @return Response对象
+     */
+    @RequestMapping(value = "getAllCameras", method = RequestMethod.POST)
+    @ApiOperation(value = "查询摄像头列表")
+    public AjaxMessage<List<CameraManage>> getAllCameras(Integer id) {
+        List<CameraManage> cameraManages =cameraManageService.getAllCameras(id);
+        return new AjaxMessage<>(ResultStatus.OK, cameraManages);
+    }
 
 }

+ 2 - 0
sms_water/src/main/java/com/huaxu/dao/CameraManageMapper.java

@@ -82,4 +82,6 @@ public interface CameraManageMapper {
     IPage<CameraManage> selectPage(IPage<CameraManage> page, CameraManage cameraManage);
 
     int deleteAll(List<Integer> ids);
+
+    List<CameraManage> getAllCameras(Integer id);
 }

+ 2 - 0
sms_water/src/main/java/com/huaxu/service/CameraManageService.java

@@ -82,4 +82,6 @@ public interface CameraManageService {
     int deleteAll(List<Integer> ids);
 
     List<CameraDto> getCameraTree(Long typeId);
+
+    List<CameraManage> getAllCameras(Integer id);
 }

+ 7 - 0
sms_water/src/main/java/com/huaxu/service/impl/CameraManageServiceImpl.java

@@ -339,6 +339,13 @@ public class CameraManageServiceImpl implements CameraManageService {
         List<CameraDto>cameraTree=getCameraTree(cameraDtos,0+"_senceType",1);
         return cameraTree;
     }
+
+    @Override
+    public List<CameraManage> getAllCameras(Integer id) {
+         ;
+        return cameraManageMapper.getAllCameras(id);
+    }
+
     public  List<CameraDto> getCameraTree(List<CameraDto> list, String key, Integer leve) {
         List<CameraDto> temList = newArrayList();
         if (list != null) {

+ 27 - 0
sms_water/src/main/resources/mapper/CameraManageMapper.xml

@@ -330,6 +330,33 @@
             </if>
         </where>
     </select>
+    <select id="getAllCameras" resultType="com.huaxu.entity.CameraManage">
+        SELECT
+            *
+        FROM
+            sms_camera_manage
+        WHERE
+            status=1 and    SCENE_ID IN (
+                SELECT DATA
+                           .id
+                FROM
+                    (
+                        SELECT
+                            @ids AS _ids,
+                            ( SELECT @ids := GROUP_CONCAT( id ) FROM sms_scene WHERE
+                        FIND_IN_SET( PARENT_SCENE_ID, @ids ) AND STATUS = 1 ) AS cids,
+                            @l := @l + 1 AS LEVEL
+                        FROM
+                            sms_scene,
+                            ( SELECT @ids := #{id}, @l := 0 ) b
+                        WHERE
+                            @ids IS NOT NULL
+                    ) id,
+                    sms_scene DATA
+                WHERE
+                    FIND_IN_SET( DATA.id, ID._ids )
+            )
+    </select>
     <update id="deleteAll">
         update sms_camera_manage set STATUS=0 where STATUS=1 and ID in
         <foreach collection="list" item="id" index="index" open="(" close=")" separator=",">