From 5790d7573a83278667878e0f73104f8fc8ec5cf3 Mon Sep 17 00:00:00 2001
From: sgj <1442489573@qq.com>
Date: 星期二, 10 三月 2026 11:03:51 +0800
Subject: [PATCH] 巡检统计信息纠正
---
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/GatewaySerService.java | 117 +++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 86 insertions(+), 31 deletions(-)
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/GatewaySerService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/GatewaySerService.java
index 0c67c5d..7139b81 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/GatewaySerService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/GatewaySerService.java
@@ -12,6 +12,7 @@
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.service.ISysDeptService;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.*;
@@ -52,6 +53,7 @@
if (StringUtils.isNotBlank(parentId)) {
queryWrapper.likeRight("dept_id", parentId);
}
+ queryWrapper.orderByAsc("order_num");
return gatewaySerMapper.selectList(queryWrapper);
}
@@ -99,22 +101,52 @@
if (StringUtils.isEmpty(ser.getCompanyId())) {
ser.setCompanyId(ContextUtil.getCompanyId());
}
- if (StringUtils.isEmpty(ser.getDeptId())) {
- ser.setDeptId(ContextUtil.subDeptId(null));
+
+ //鍒ゆ柇鎺ュ彛璺緞
+ if (StringUtils.isEmpty(ser.getPlateNumUrl())) {
+ ser.setPlateNumUrl("/open/api/get-plateNum");
}
- if (StringUtils.isBlank(ser.getUpdateBy())) {
+ if (StringUtils.isEmpty(ser.getPlayUrl())) {
+ ser.setPlayUrl("/open/api/get-media");
+ }
+ if (StringUtils.isEmpty(ser.getSnapUrl())) {
+ ser.setSnapUrl("/open/api/snap-img");
+ }
+ if (StringUtils.isEmpty(ser.getPtzUrl())) {
+ ser.setPtzUrl("/open/api/ptz-media");
+ }
+
+ ser.setUpdateBy(ContextUtil.getLoginUserName());
+ ser.setUpdateTime(new Date());
+ if (StringUtils.isBlank(ser.getCreateBy())) {
ser.setCreateBy(ContextUtil.getLoginUserName());
ser.setCreateTime(new Date());
- ser.setUpdateBy(ContextUtil.getLoginUserName());
- ser.setUpdateTime(new Date());
gatewaySerMapper.insert(ser);
} else {
- ser.setUpdateBy(ContextUtil.getLoginUserName());
- ser.setUpdateTime(new Date());
gatewaySerMapper.updateById(ser);
}
refreshCache(ser.getCompanyId());
+ }
+
+ /**
+ * 寮傛鏇存柊缃戝叧鐘舵��
+ * @param ser 淇℃伅
+ * @param status 鐘舵��
+ * @param isUpdateTime 鏄惁鏇存柊蹇冭烦鏃堕棿
+ */
+ @Async
+ public void updateStatus(GatewaySer ser, String status, boolean isUpdateTime) {
+
+ if(isUpdateTime){
+ //蹇冭烦鏃堕棿
+ ser.setUpdateTime(new Date());
+ }
+
+ ser.setStatus(status);
+ gatewaySerMapper.updateById(ser);
+
+ setCacheSer(ser);
}
/**
@@ -127,35 +159,58 @@
//鍒犻櫎缂撳瓨
delCache(ser);
+ }
+ /**
+ * 鑾峰彇缁勭粐涓嬫墍鏈夌綉鍏充俊鎭�
+ * @param companyId
+ * @return
+ */
+ public List<GatewaySer> getCacheSer(String companyId) {
+ if (StringUtils.isEmpty(companyId)) {
+ companyId = ContextUtil.getCompanyId();
+ }
+
+ List<GatewaySer> result = new ArrayList<>();
+ String patten = RedisConst.buildKey(companyId, RedisConst.KEY_GATEWAY_SER_LIST) + "*";
+ Collection<String> keys = redisCache.keys(patten);
+ if (null != keys) {
+ for (String key : keys) {
+ result.add((GatewaySer) redisCache.getCacheObject(key));
+ }
+ }
+ if(result.isEmpty()){
+ result = getAllSer();
+ this.setCacheSer(result);
+ }
+ return result;
}
/**
* 鏍规嵁鍒嗘満ID鑾峰彇鍒嗘満淇℃伅
*
- * @param companyId
* @param deptId
* @return
*/
- public List<GatewaySer> getCacheSerByDeptId(String companyId, String deptId) {
+ public GatewaySer getCacheSerByDeptId(String deptId) {
if (StringUtils.isEmpty(deptId)) {
return null;
}
- if (StringUtils.isEmpty(companyId)) {
- companyId = ContextUtil.getCompanyId();
- }
- String patten = RedisConst.buildKey(companyId, RedisConst.KEY_DEVICE_SER_LIST, deptId) + "*";
+
+ String patten = RedisConst.buildKey(ContextUtil.getCompanyId(), RedisConst.KEY_GATEWAY_SER_LIST) + "*";
Collection<String> keys = redisCache.keys(patten);
if (null == keys) {
return null;
}
- List<GatewaySer> list = new ArrayList<>();
+ GatewaySer ser = null;
for (String key : keys) {
- list.add((GatewaySer) redisCache.getCacheObject(key));
+ ser = (GatewaySer) redisCache.getCacheObject(key);
+ if(deptId.equals(ser.getDeptId())){
+ return ser;
+ }
}
-
- return list;
+ return null;
}
/**
@@ -172,27 +227,27 @@
if (StringUtils.isEmpty(companyId)) {
companyId = ContextUtil.getCompanyId();
}
- String patten = RedisConst.buildKey(companyId, RedisConst.KEY_DEVICE_SER_LIST) + "*";
- Collection<String> keys = redisCache.keys(patten);
- if (null == keys) {
- return null;
- }
- List<GatewaySer> list = new ArrayList<>();
+ GatewaySer result = null;
GatewaySer ser = null;
- for (String key : keys) {
- ser = (GatewaySer) redisCache.getCacheObject(key);
- if(id.equals(ser.getId())){
- break;
+ String patten = RedisConst.buildKey(companyId, RedisConst.KEY_GATEWAY_SER_LIST) + "*";
+ Collection<String> keys = redisCache.keys(patten);
+ if (null != keys && !keys.isEmpty()) {
+ for (String key : keys) {
+ ser = (GatewaySer) redisCache.getCacheObject(key);
+ if(id.equals(ser.getId())){
+ result = ser;
+ break;
+ }
}
}
- if(null == ser){
- ser = getById(id);
- this.setCacheSer(ser);
+ if(null == result){
+ result = getById(id);
+ this.setCacheSer(result);
}
- return ser;
+ return result;
}
/**
--
Gitblit v1.9.3