diff --git a/dk-api/api-system/src/main/java/org/dromara/system/api/RemoteConfigService.java b/dk-api/api-system/src/main/java/org/dromara/system/api/RemoteConfigService.java index 201967a..014763f 100644 --- a/dk-api/api-system/src/main/java/org/dromara/system/api/RemoteConfigService.java +++ b/dk-api/api-system/src/main/java/org/dromara/system/api/RemoteConfigService.java @@ -1,5 +1,7 @@ package org.dromara.system.api; +import java.util.List; + /** * 配置服务 * @@ -22,5 +24,5 @@ public interface RemoteConfigService { String selectStreamIp(); - String selectStreamType(String deviceSn); + List selectStreamType(String deviceSn); } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/PlayTextServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/PlayTextServiceImpl.java index fdc0179..d63d5c9 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/PlayTextServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/PlayTextServiceImpl.java @@ -10,6 +10,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; import io.seata.common.util.StringUtils; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections.CollectionUtils; import org.apache.dubbo.config.annotation.DubboReference; import org.dromara.common.sdk.cloudapi.device.*; import org.dromara.common.sdk.cloudapi.firmware.*; @@ -56,7 +57,6 @@ import org.dromara.system.api.RemoteConfigService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; import java.time.LocalDateTime; import java.util.*; @@ -124,16 +124,18 @@ public class PlayTextServiceImpl implements IPlayTextService { public HttpResultResponse streamType(Map objectMap) { String top = "task/image/disobey/streamType"; //发送mqtt - String s = remoteConfigService.selectStreamType(objectMap.get("deviceSn").toString()); - if (StringUtils.isNotEmpty(s)){ - String[] split = s.split(","); - objectMap.put("deptId",split[0]); - objectMap.put("deptName",split[1]); - objectMap.put("labelEn",split[2]); - objectMap.put("labelCn",split[3]); - StreamTypeDTO param = Convert.convert(StreamTypeDTO.class, objectMap); - gatewayPublish.publish(top,new CommonTopicRequest<>() - .setData(Objects.requireNonNull(param)),1); + List list = remoteConfigService.selectStreamType(objectMap.get("deviceSn").toString()); + if (CollectionUtils.isNotEmpty(list)){ + for (String s : list){ + String[] split = s.split(","); + objectMap.put("deptId",split[0]); + objectMap.put("deptName",split[1]); + objectMap.put("labelEn",split[2]); + objectMap.put("labelCn",split[3]); + StreamTypeDTO param = Convert.convert(StreamTypeDTO.class, objectMap); + gatewayPublish.publish(top,new CommonTopicRequest<>() + .setData(Objects.requireNonNull(param)),1); + } } return HttpResultResponse.error("请求成功"); } diff --git a/dk-modules/system/src/main/java/org/dromara/system/dubbo/RemoteConfigServiceImpl.java b/dk-modules/system/src/main/java/org/dromara/system/dubbo/RemoteConfigServiceImpl.java index 85cd78a..93b41a8 100644 --- a/dk-modules/system/src/main/java/org/dromara/system/dubbo/RemoteConfigServiceImpl.java +++ b/dk-modules/system/src/main/java/org/dromara/system/dubbo/RemoteConfigServiceImpl.java @@ -8,6 +8,8 @@ import org.dromara.system.domain.SysConfig; import org.dromara.system.service.ISysConfigService; import org.springframework.stereotype.Service; +import java.util.List; + /** * 配置服务 * @@ -37,9 +39,9 @@ public class RemoteConfigServiceImpl implements RemoteConfigService { } @Override - public String selectStreamType(String deviceSn) { - String ip =sysConfigService.selectStreamType(deviceSn); - return ip; + public List selectStreamType(String deviceSn) { + List list =sysConfigService.selectStreamType(deviceSn); + return list; } } diff --git a/dk-modules/system/src/main/java/org/dromara/system/service/ISysConfigService.java b/dk-modules/system/src/main/java/org/dromara/system/service/ISysConfigService.java index 5a7c566..981170b 100644 --- a/dk-modules/system/src/main/java/org/dromara/system/service/ISysConfigService.java +++ b/dk-modules/system/src/main/java/org/dromara/system/service/ISysConfigService.java @@ -86,6 +86,6 @@ public interface ISysConfigService { String selectStreamIp(); - String selectStreamType(String deviceSn); + List selectStreamType(String deviceSn); } diff --git a/dk-modules/system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java b/dk-modules/system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java index 721962c..e99a3d1 100644 --- a/dk-modules/system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java +++ b/dk-modules/system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java @@ -28,6 +28,7 @@ import org.springframework.stereotype.Service; import java.util.Arrays; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * 参数配置 服务层实现 @@ -211,10 +212,11 @@ public class SysConfigServiceImpl implements ISysConfigService { } @Override - public String selectStreamType(String deviceSn) { - SysConfig sysConfig = baseMapper.selectOne(new LambdaQueryWrapper() + public List selectStreamType(String deviceSn) { + List sysConfig = baseMapper.selectList(new LambdaQueryWrapper() .eq(SysConfig::getConfigKey, "streamType").eq(SysConfig::getConfigValue, deviceSn)); - return sysConfig.getRemark(); + List collect = sysConfig.stream().map(SysConfig::getRemark).collect(Collectors.toList()); + return collect; } }