From 90eefb2977470208f6d31191dbe7befe704ef7eb Mon Sep 17 00:00:00 2001
From: zy <82248909@qq.com>
Date: Tue, 18 Nov 2025 18:15:17 +0800
Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=9B=91=E6=8E=A7=E6=8E=A5?=
=?UTF-8?q?=E5=8F=A3=EF=BC=8C=E8=B0=83=E6=95=B4Maven=E4=BE=9D=E8=B5=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
jeecg-boot-base-core/pom.xml | 16 ++
.../zhkj-admin-cloud-start/pom.xml | 10 +
pom.xml | 2 +-
.../controller/BigScreenController.java | 18 +-
.../controller/SurvConfigController.java | 28 +--
.../SurvDeviceDeployController.java | 58 +++++
.../appmana/mapper/SurvConfigMapper.java | 4 +
.../appmana/mapper/xml/SurvConfigMapper.xml | 47 ++++
.../mapper/xml/SurvStationInfoMapper.xml | 2 +-
.../appmana/service/ISurvConfigService.java | 4 +
.../service/impl/CommonServiceImpl.java | 17 +-
.../service/impl/SurvConfigServiceImpl.java | 23 ++
.../jeecg/modules/appmana/utils/Iotutils.java | 17 +-
.../jeecg/modules/appmana/utils/YSUtils.java | 207 ++++++++++++++++++
.../SurvDeviceDeployController.java | 4 +-
.../controller/SurvStationInfoController.java | 11 +-
.../jeecg/system/applet/util/Iotutils.java | 10 +-
zh-module-applet/zh-applet-common/pom.xml | 2 +-
.../org/jeecg/common/entity/SurvConfig.java | 3 +
.../common/iot/common/DTOCamControl.java | 14 ++
.../common/iot/common/IotDeviceCtlResult.java | 15 ++
.../mybatis/typehandler/JsonTypeHandler.java | 53 +++--
22 files changed, 501 insertions(+), 64 deletions(-)
create mode 100644 zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/utils/YSUtils.java
create mode 100644 zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/iot/common/DTOCamControl.java
create mode 100644 zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/iot/common/IotDeviceCtlResult.java
diff --git a/jeecg-boot-base-core/pom.xml b/jeecg-boot-base-core/pom.xml
index f0bbce8..6e3460b 100644
--- a/jeecg-boot-base-core/pom.xml
+++ b/jeecg-boot-base-core/pom.xml
@@ -44,6 +44,16 @@
org.jeecgframework.boot
jeecg-boot-common
+
+
+ cn.hutool
+ hutool-core
+
+
+ cn.hutool
+ hutool-crypto
+
+
@@ -258,6 +268,12 @@
easy-captcha
1.6.2
+
+
+ cn.hutool
+ hutool-all
+ ${hutool.version}
+
\ No newline at end of file
diff --git a/jeecg-server-cloud/zhkj-admin-cloud-start/pom.xml b/jeecg-server-cloud/zhkj-admin-cloud-start/pom.xml
index 3555d6d..4d16d35 100644
--- a/jeecg-server-cloud/zhkj-admin-cloud-start/pom.xml
+++ b/jeecg-server-cloud/zhkj-admin-cloud-start/pom.xml
@@ -19,6 +19,16 @@
org.jeecgframework.boot
jeecg-boot-starter-cloud
+
+
+ cn.hutool
+ hutool-core
+
+
+ cn.hutool
+ hutool-crypto
+
+
diff --git a/pom.xml b/pom.xml
index c3bcc8b..2807a3f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -46,7 +46,7 @@
11.2.0.3
4.0
8.0.27
- 5.3.8
+ 5.8.22
3.5.1
diff --git a/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/controller/BigScreenController.java b/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/controller/BigScreenController.java
index 07f0e5d..2b8a9b3 100644
--- a/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/controller/BigScreenController.java
+++ b/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/controller/BigScreenController.java
@@ -10,6 +10,7 @@ import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.constant.IotConstants;
import org.jeecg.common.constant.PollutionConstants;
import org.jeecg.common.entity.*;
import org.jeecg.common.constant.enums.PollutionEnum;
@@ -18,6 +19,7 @@ import org.jeecg.common.util.oConvertUtils;
import org.jeecg.common.vo.*;
import org.jeecg.modules.appmana.service.*;
import org.jeecg.modules.appmana.utils.Iotutils;
+import org.jeecg.modules.appmana.utils.YSUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
@@ -99,6 +101,12 @@ public class BigScreenController {
@Value(value = "${ysy.secret}")
private String secret;
+ @Autowired
+ private Iotutils iotutils;
+
+ @Autowired
+ private ISurvConfigService survConfigService;
+
@ApiOperation("获取萤石云token")
@PostMapping(value = "/getYsToken")
@@ -890,7 +898,7 @@ public class BigScreenController {
//移除非摄像头设备
survStationInfo.getDeviceList().retainAll(remainList);
//补充在线状态
- survStationInfo.setDeviceList(Iotutils.addOnlineStatus(survStationInfo.getDeviceList()));
+ survStationInfo.setDeviceList(iotutils.addOnlineStatus(survStationInfo.getDeviceList()));
}
survStationInfo.setLatestData(returnArrs);
survStationInfo.setLatestSoilData(returnSoilArrs);
@@ -1038,7 +1046,7 @@ public class BigScreenController {
ent.setIotReverseUrl(deploy.getDeviceReverseIotUrl());
ent.setMapIcon(deploy.getMapIcon());
ent.setIds(deploy.getId());
- ent.setIsOnline(Iotutils.addOnlineStatus(deploy).getIsOnline());
+ ent.setIsOnline(iotutils.addOnlineStatus(deploy).getIsOnline());
returnList.add(ent);
}
}
@@ -1053,13 +1061,15 @@ public class BigScreenController {
@ApiOperation("获取首页站点侧数据")
public Result stationInfoWithCamera(@RequestParam(value = "stationCode",required = false)String stationCode){
//萤石云token
- String token = getYsToken();
+ //萤石云token
+ SurvConfig survConfig = survConfigService.getOneByTypeWithTenant("0", IotConstants.ysyAcess);
+ String token = new YSUtils().getYsToken(survConfig);
List stationList = survStationInfoService.getAllStationAndDevice(stationCode,PollutionConstants.CAMERA,token);
//补充在线状态
if(!stationList.isEmpty()){
for (SurvStationInfo survStationInfo : stationList) {
if(survStationInfo.getDeviceList()!=null && !survStationInfo.getDeviceList().isEmpty()){
- List deploys = Iotutils.addOnlineStatus(survStationInfo.getDeviceList());
+ List deploys = iotutils.addOnlineStatus(survStationInfo.getDeviceList());
survStationInfo.setDeviceList(deploys);
}
}
diff --git a/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/controller/SurvConfigController.java b/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/controller/SurvConfigController.java
index c0d9a7b..db45dd5 100644
--- a/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/controller/SurvConfigController.java
+++ b/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/controller/SurvConfigController.java
@@ -1,12 +1,12 @@
package org.jeecg.modules.appmana.controller;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.LinkedHashMap;
-import java.util.List;
+import java.util.*;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+
+import cn.hutool.json.JSONUtil;
+import org.apache.commons.lang3.StringUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.entity.SurvConfig;
@@ -59,19 +59,9 @@ public class SurvConfigController extends JeecgController queryWrapper = QueryGenerator.initQueryWrapper(survConfig, req.getParameterMap());
+// QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(survConfig, req.getParameterMap());
Page page = new Page(pageNo, pageSize);
- IPage pageList = survConfigService.page(page, queryWrapper);
- //补充字典
- if(!pageList.getRecords().isEmpty()){
- List types = pageList.getRecords().stream().map(SurvConfig::getConfigType).collect(Collectors.toList());
- List maps = survConfigService.getDictByCode("apply_config_type");
-// maps.stream().collect(Collectors.toMap())
- for (SurvConfig record : pageList.getRecords()) {
-
- }
- }
-
+ IPage pageList = survConfigService.pages(page, survConfig);
return Result.OK(pageList);
}
@@ -89,6 +79,9 @@ public class SurvConfigController extends JeecgController stationList = survStationInfoService.getAllStationAndDevice(stationCode,PollutionConstants.CAMERA,token);
+ //补充在线状态
+ if(!stationList.isEmpty()){
+ for (SurvStationInfo survStationInfo : stationList) {
+ if(survStationInfo.getDeviceList()!=null && !survStationInfo.getDeviceList().isEmpty()){
+ List deploys = iotutils.addOnlineStatus(survStationInfo.getDeviceList());
+ survStationInfo.setDeviceList(deploys);
+ }
+ }
+ }
+
+ return Result.ok(stationList);
+ }
}
diff --git a/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/SurvConfigMapper.java b/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/SurvConfigMapper.java
index 0e537e1..39075ad 100644
--- a/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/SurvConfigMapper.java
+++ b/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/SurvConfigMapper.java
@@ -1,5 +1,7 @@
package org.jeecg.modules.appmana.mapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.jeecg.common.entity.SurvConfig;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -22,4 +24,6 @@ public interface SurvConfigMapper extends BaseMapper {
SurvConfig getOneByTypeWithTenant(@Param("tenantId") String tenantId, @Param("type") String type);
List getDictByCode(String applyConfigType);
+
+ IPage getPages(Page page, @Param("query") SurvConfig survConfig);
}
diff --git a/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/xml/SurvConfigMapper.xml b/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/xml/SurvConfigMapper.xml
index 2c0ad3a..35c60b8 100644
--- a/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/xml/SurvConfigMapper.xml
+++ b/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/xml/SurvConfigMapper.xml
@@ -2,6 +2,32 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ID,CONFIG_NAME,CONFIG_KEY,CONFIG_VALUE,CONFIG_VALUE_SE,CONFIG_VALUE_SE2,CONFIG_VALUE_SE3,CONFIG_VALUE_SE4,CONFIG_JSON,CONFIG_TYPE,CONFIG_REMARK,TENANT_ID,RE_VISION,CREATED_BY,CREATE_TIME,UPDATED_BY,IS_DEL,UPDATED_TIME
+
+
+
@@ -19,4 +45,25 @@
and s.status = 1
order by s.sort_order asc, s.create_time DESC;
+
+
\ No newline at end of file
diff --git a/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/xml/SurvStationInfoMapper.xml b/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/xml/SurvStationInfoMapper.xml
index 4ba9eeb..afc72ed 100644
--- a/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/xml/SurvStationInfoMapper.xml
+++ b/zh-module-applet/zh-applet-admin/src/main/java/org/jeecg/modules/appmana/mapper/xml/SurvStationInfoMapper.xml
@@ -43,7 +43,7 @@