diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/CommonGBChannelMapper.java b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/CommonGBChannelMapper.java
index caa8fa08..664329e4 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/CommonGBChannelMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/CommonGBChannelMapper.java
@@ -119,6 +119,7 @@ public interface CommonGBChannelMapper {
", gb_block = #{gbBlock}" +
", gb_address = #{gbAddress}" +
", gb_parental = #{gbParental}" +
+ ", gb_parent_id = #{gbParentId}" +
", gb_safety_way = #{gbSafetyWay}" +
", gb_register_way = #{gbRegisterWay}" +
", gb_cert_num = #{gbCertNum}" +
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/DeviceMapper.java b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/DeviceMapper.java
index 3df8b887..abac64bb 100755
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/DeviceMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/DeviceMapper.java
@@ -330,7 +330,11 @@ public interface DeviceMapper {
" FROM wvp_device de" +
" where 1 = 1 "+
" AND de.on_line=${status}"+
- " AND (coalesce(custom_name, name) LIKE '%${query}%' OR device_id LIKE '%${query}%' OR ip LIKE '%${query}%') " +
+ " AND (" +
+ " coalesce(custom_name, name) LIKE concat('%',#{query},'%') escape '/' " +
+ " OR device_id LIKE concat('%',#{query},'%') escape '/' " +
+ " OR ip LIKE concat('%',#{query},'%') escape '/')" +
+ " " +
" order by create_time desc "+
" ")
List getDeviceList(@Param("query") String query, @Param("status") Boolean status);
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/PlatformMapper.java b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/PlatformMapper.java
index 1fe7ba2a..b8080bb5 100755
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/PlatformMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/PlatformMapper.java
@@ -71,7 +71,7 @@ public interface PlatformMapper {
" ) as channel_count" +
" FROM wvp_platform pp where 1=1 " +
" " +
- " AND (pp.name LIKE concat('%',#{query},'%') OR pp.server_gb_id LIKE concat('%',#{query},'%') ) " +
+ " AND (pp.name LIKE concat('%',#{query},'%') escape '/' OR pp.server_gb_id LIKE concat('%',#{query},'%') escape '/' ) " +
" order by pp.id desc"+
" ")
List queryList(@Param("query") String query);
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/RegionMapper.java b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/RegionMapper.java
index 9021916a..f3114672 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/RegionMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/RegionMapper.java
@@ -26,7 +26,7 @@ public interface RegionMapper {
@Select(value = {" "})
@@ -79,7 +79,7 @@ public interface RegionMapper {
" where " +
" parent_id = #{parentId} " +
" parent_id is null " +
- " AND (device_id LIKE concat('%',#{query},'%') OR name LIKE concat('%',#{query},'%')) " +
+ " AND (device_id LIKE concat('%',#{query},'%') escape '/' OR name LIKE concat('%',#{query},'%') escape '/') " +
" ")
List queryForTree(@Param("query") String query, @Param("parentId") Integer parentId);
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/DeviceServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/DeviceServiceImpl.java
index d37af47a..e5279a92 100755
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/DeviceServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/DeviceServiceImpl.java
@@ -519,6 +519,11 @@ public class DeviceServiceImpl implements IDeviceService {
@Override
public PageInfo getAll(int page, int count, String query, Boolean status) {
PageHelper.startPage(page, count);
+ if (query != null) {
+ query = query.replaceAll("/", "//")
+ .replaceAll("%", "/%")
+ .replaceAll("_", "/_");
+ }
List all = deviceMapper.getDeviceList(query, status);
return new PageInfo<>(all);
}
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlatformServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlatformServiceImpl.java
index 19a5e56f..bc61f1ef 100755
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlatformServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlatformServiceImpl.java
@@ -159,6 +159,11 @@ public class PlatformServiceImpl implements IPlatformService {
@Override
public PageInfo queryPlatformList(int page, int count, String query) {
PageHelper.startPage(page, count);
+ if (query != null) {
+ query = query.replaceAll("/", "//")
+ .replaceAll("%", "/%")
+ .replaceAll("_", "/_");
+ }
List all = platformMapper.queryList(query);
return new PageInfo<>(all);
}
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/RegionServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/RegionServiceImpl.java
index fc4c016b..f40d8c42 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/RegionServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/RegionServiceImpl.java
@@ -97,6 +97,11 @@ public class RegionServiceImpl implements IRegionService {
@Override
public PageInfo query(String query, int page, int count) {
PageHelper.startPage(page, count);
+ if (query != null) {
+ query = query.replaceAll("/", "//")
+ .replaceAll("%", "/%")
+ .replaceAll("_", "/_");
+ }
List regionList = regionMapper.query(query, null);
return new PageInfo<>(regionList);
}
@@ -140,6 +145,11 @@ public class RegionServiceImpl implements IRegionService {
@Override
public List queryForTree(String query, Integer parent, Boolean hasChannel) {
+ if (query != null) {
+ query = query.replaceAll("/", "//")
+ .replaceAll("%", "/%")
+ .replaceAll("_", "/_");
+ }
List regionList = regionMapper.queryForTree(query, parent);
if (parent != null && hasChannel != null && hasChannel) {
Region parentRegion = regionMapper.queryOne(parent);
diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/CloudRecordServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/CloudRecordServiceImpl.java
index 4c521e44..725115fc 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/impl/CloudRecordServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/impl/CloudRecordServiceImpl.java
@@ -71,6 +71,11 @@ public class CloudRecordServiceImpl implements ICloudRecordService {
}
PageHelper.startPage(page, count);
+ if (query != null) {
+ query = query.replaceAll("/", "//")
+ .replaceAll("%", "/%")
+ .replaceAll("_", "/_");
+ }
List all = cloudRecordServiceMapper.getList(query, app, stream, startTimeStamp, endTimeStamp,
callId, mediaServerItems, null);
return new PageInfo<>(all);
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/CloudRecordServiceMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/CloudRecordServiceMapper.java
index af1b4242..1be9540e 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/dao/CloudRecordServiceMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/CloudRecordServiceMapper.java
@@ -41,7 +41,7 @@ public interface CloudRecordServiceMapper {
"select * " +
" from wvp_cloud_record " +
" where 0 = 0" +
- " AND (app LIKE concat('%',#{query},'%') OR stream LIKE concat('%',#{query},'%') ) " +
+ " AND (app LIKE concat('%',#{query},'%') escape '/' OR stream LIKE concat('%',#{query},'%') escape '/' ) " +
" and app=#{app}" +
" and stream=#{stream}" +
" and end_time >= #{startTimeStamp}" +
diff --git a/src/main/java/com/genersoft/iot/vmp/streamProxy/dao/provider/StreamProxyProvider.java b/src/main/java/com/genersoft/iot/vmp/streamProxy/dao/provider/StreamProxyProvider.java
index 653426f6..d43a94fe 100644
--- a/src/main/java/com/genersoft/iot/vmp/streamProxy/dao/provider/StreamProxyProvider.java
+++ b/src/main/java/com/genersoft/iot/vmp/streamProxy/dao/provider/StreamProxyProvider.java
@@ -36,13 +36,13 @@ public class StreamProxyProvider {
if (params.get("query") != null) {
sqlBuild.append(" AND ")
.append(" (")
- .append(" st.app LIKE ").append("'%").append(params.get("query")).append("%'")
+ .append(" st.app LIKE ").append("'%").append(params.get("query")).append("%' escape '/'")
.append(" OR")
- .append(" st.stream LIKE ").append("'%").append(params.get("query")).append("%'")
+ .append(" st.stream LIKE ").append("'%").append(params.get("query")).append("%' escape '/'")
.append(" OR")
- .append(" wdc.gb_device_id LIKE ").append("'%").append(params.get("query")).append("%'")
+ .append(" wdc.gb_device_id LIKE ").append("'%").append(params.get("query")).append("%' escape '/'")
.append(" OR")
- .append(" wdc.gb_name LIKE ").append("'%").append(params.get("query")).append("%'")
+ .append(" wdc.gb_name LIKE ").append("'%").append(params.get("query")).append("%' escape '/'")
.append(" )")
;
}
diff --git a/src/main/java/com/genersoft/iot/vmp/streamProxy/service/impl/StreamProxyServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/streamProxy/service/impl/StreamProxyServiceImpl.java
index 3721edb1..442fb6a6 100755
--- a/src/main/java/com/genersoft/iot/vmp/streamProxy/service/impl/StreamProxyServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/streamProxy/service/impl/StreamProxyServiceImpl.java
@@ -246,6 +246,11 @@ public class StreamProxyServiceImpl implements IStreamProxyService {
@Override
public PageInfo getAll(Integer page, Integer count, String query, Boolean pulling, String mediaServerId) {
PageHelper.startPage(page, count);
+ if (query != null) {
+ query = query.replaceAll("/", "//")
+ .replaceAll("%", "/%")
+ .replaceAll("_", "/_");
+ }
List all = streamProxyMapper.selectAll(query, pulling, mediaServerId);
return new PageInfo<>(all);
}
diff --git a/src/main/java/com/genersoft/iot/vmp/streamPush/dao/StreamPushMapper.java b/src/main/java/com/genersoft/iot/vmp/streamPush/dao/StreamPushMapper.java
index b3441435..64b81d58 100755
--- a/src/main/java/com/genersoft/iot/vmp/streamPush/dao/StreamPushMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/streamPush/dao/StreamPushMapper.java
@@ -48,8 +48,8 @@ public interface StreamPushMapper {
" on st.id = wdc.stream_push_id " +
" WHERE " +
" 1=1 " +
- " AND (st.app LIKE concat('%',#{query},'%') OR st.stream LIKE concat('%',#{query},'%') " +
- " OR wdc.gb_device_id LIKE concat('%',#{query},'%') OR wdc.gb_name LIKE concat('%',#{query},'%')) " +
+ " AND (st.app LIKE concat('%',#{query},'%') escape '/' OR st.stream LIKE concat('%',#{query},'%') escape '/' " +
+ " OR wdc.gb_device_id LIKE concat('%',#{query},'%') escape '/' OR wdc.gb_name LIKE concat('%',#{query},'%') escape '/') " +
" AND st.pushing=1" +
" AND st.pushing=0 " +
" AND st.media_server_id=#{mediaServerId} " +
diff --git a/src/main/java/com/genersoft/iot/vmp/streamPush/service/impl/StreamPushServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/streamPush/service/impl/StreamPushServiceImpl.java
index 15028e98..a8ca0b68 100755
--- a/src/main/java/com/genersoft/iot/vmp/streamPush/service/impl/StreamPushServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/streamPush/service/impl/StreamPushServiceImpl.java
@@ -175,6 +175,11 @@ public class StreamPushServiceImpl implements IStreamPushService {
@Override
public PageInfo getPushList(Integer page, Integer count, String query, Boolean pushing, String mediaServerId) {
PageHelper.startPage(page, count);
+ if (query != null) {
+ query = query.replaceAll("/", "//")
+ .replaceAll("%", "/%")
+ .replaceAll("_", "/_");
+ }
List all = streamPushMapper.selectAll(query, pushing, mediaServerId);
return new PageInfo<>(all);
}