From 21506440d22a2f77d4bbeb4bb646a27b03bb9022 Mon Sep 17 00:00:00 2001
From: mrjackwang <30337754+mrjackwang@users.noreply.github.com>
Date: 星期一, 07 三月 2022 09:01:14 +0800
Subject: [PATCH] Merge branch 'wvp-28181-2.0' into wvp-28181-2.0
---
src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformChannelMapper.java | 44 +++++++++++++++++++++++++-------------------
1 files changed, 25 insertions(+), 19 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformChannelMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformChannelMapper.java
index 4f5de2b..f1d23f1 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformChannelMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformChannelMapper.java
@@ -21,28 +21,31 @@
* 鏌ヨ鍒楄〃閲屽凡缁忓叧鑱旂殑
*/
@Select("<script> "+
- "SELECT deviceAndChannelId FROM platform_gb_channel WHERE platformId='${platformId}' AND deviceAndChannelId in" +
- "<foreach collection='deviceAndChannelIds' open='(' item='id_' separator=',' close=')'> '${id_}'</foreach> ORDER BY deviceAndChannelId ASC" +
+ "SELECT deviceChannelId FROM platform_gb_channel WHERE platformId='${platformId}' AND deviceChannelId in" +
+ "<foreach collection='channelReduces' open='(' item='item' separator=',' close=')'> '${item.id}'</foreach>" +
"</script>")
- List<String> findChannelRelatedPlatform(String platformId, List<String> deviceAndChannelIds);
+ List<Integer> findChannelRelatedPlatform(String platformId, List<ChannelReduce> channelReduces);
@Insert("<script> "+
- "INSERT INTO platform_gb_channel (channelId, deviceId, platformId, deviceAndChannelId, catalogId) VALUES" +
+ "INSERT INTO platform_gb_channel (platformId, deviceChannelId, catalogId) VALUES" +
"<foreach collection='channelReducesToAdd' item='item' separator=','>" +
- " ('${item.channelId}','${item.deviceId}', '${platformId}', '${item.deviceId}_${item.channelId}' , '${item.catalogId}' )" +
+ " ('${platformId}', '${item.id}' , '${item.catalogId}' )" +
"</foreach>" +
"</script>")
int addChannels(String platformId, List<ChannelReduce> channelReducesToAdd);
-
@Delete("<script> "+
- "DELETE FROM platform_gb_channel WHERE platformId='${platformId}' AND deviceAndChannelId in" +
- "<foreach collection='channelReducesToDel' item='item' open='(' separator=',' close=')' > '${item.deviceId}_${item.channelId}'</foreach>" +
+ "DELETE FROM platform_gb_channel WHERE platformId='${platformId}' AND deviceChannelId in" +
+ "<foreach collection='channelReducesToDel' item='item' open='(' separator=',' close=')' > '${item.id}'</foreach>" +
"</script>")
int delChannelForGB(String platformId, List<ChannelReduce> channelReducesToDel);
@Delete("<script> "+
- "DELETE FROM platform_gb_channel WHERE deviceId='${deviceId}' " +
+ "DELETE FROM platform_gb_channel WHERE deviceChannelId in " +
+ "( select temp.deviceChannelId from " +
+ "(select pgc.deviceChannelId from platform_gb_channel pgc " +
+ "left join device_channel dc on dc.id = pgc.deviceChannelId where dc.deviceId =#{deviceId} " +
+ ") temp)" +
"</script>")
int delChannelForDeviceId(String deviceId);
@@ -51,18 +54,19 @@
"</script>")
int cleanChannelForGB(String platformId);
-
- @Select("SELECT * FROM device_channel WHERE deviceId = (SELECT deviceId FROM platform_gb_channel WHERE " +
- "platformId='${platformId}' AND channelId='${channelId}' ) AND channelId='${channelId}'")
+ @Select("SELECT dc.* FROM platform_gb_channel pgc left join device_channel dc on dc.id = pgc.deviceChannelId WHERE dc.channelId='${channelId}' and pgc.platformId='${platformId}'")
DeviceChannel queryChannelInParentPlatform(String platformId, String channelId);
-
- @Select("select dc.channelId as id, dc.name as name, pgc.platformId as platformId, pgc.catalogId as parentId, 0 as childrenCount, 1 as type " +
- "from device_channel dc left join platform_gb_channel pgc on dc.deviceId = pgc.deviceId and dc.channelId = pgc.channelId " +
- "where pgc.platformId=#{platformId} and pgc.catalogId=#{catalogId}")
+ @Select(" select dc.channelId as id, dc.name as name, pgc.platformId as platformId, pgc.catalogId as parentId, 0 as childrenCount, 1 as type " +
+ " from device_channel dc left join platform_gb_channel pgc on dc.id = pgc.deviceChannelId " +
+ " where pgc.platformId=#{platformId} and pgc.catalogId=#{catalogId}")
List<PlatformCatalog> queryChannelInParentPlatformAndCatalog(String platformId, String catalogId);
- @Select("SELECT * FROM device WHERE deviceId = (SELECT deviceId FROM platform_gb_channel WHERE platformId='${platformId}' AND channelId='${channelId}')")
+ @Select("select d.*\n" +
+ "from platform_gb_channel pgc\n" +
+ " left join device_channel dc on dc.id = pgc.deviceChannelId\n" +
+ " left join device d on dc.deviceId = d.deviceId\n" +
+ "where dc.channelId = #{channelId} and pgc.platformId=#{platformId}")
Device queryVideoDeviceByPlatformIdAndChannelId(String platformId, String channelId);
@Delete("<script> "+
@@ -71,7 +75,7 @@
int delByCatalogId(String id);
@Delete("<script> "+
- "DELETE FROM platform_gb_channel WHERE catalogId=#{parentId} AND platformId=#{platformId} AND channelId=#{id}" +
+ "DELETE FROM platform_gb_channel WHERE catalogId=#{parentId} AND platformId=#{platformId} AND channelId=#{id}" +
"</script>")
int delByCatalogIdAndChannelIdAndPlatformId(PlatformCatalog platformCatalog);
@@ -82,8 +86,10 @@
"parent_platform pp " +
"left join platform_gb_channel pgc on " +
"pp.serverGBId = pgc.platformId " +
+ "left join device_channel dc on " +
+ "dc.id = pgc.deviceChannelId " +
"WHERE " +
- "pgc.channelId = #{channelId} and pp.status = true " +
+ "dc.channelId = #{channelId} and pp.status = true " +
"AND pp.serverGBId IN" +
"<foreach collection='platforms' item='item' open='(' separator=',' close=')' > #{item}</foreach>" +
"</script> ")
--
Gitblit v1.8.0