From 4329f5c19646b00d560d5e93e3dd852ac7e4462a Mon Sep 17 00:00:00 2001 From: tangwei Date: Mon, 13 Jul 2026 14:07:56 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BC=98=E5=8C=96=E9=94=9A=E7=82=B9?= =?UTF-8?q?=E7=BC=93=E5=AD=98=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yfd/platform/config/RedisConfig.java | 6 ++++++ .../service/impl/SdEngInfoBHServiceImpl.java | 12 +++++++++--- .../wq/service/impl/EnvWqDataServiceImpl.java | 2 +- .../wt/service/impl/SdWtMonitorServiceImpl.java | 10 ++++++++++ 4 files changed, 26 insertions(+), 4 deletions(-) diff --git a/backend/src/main/java/com/yfd/platform/config/RedisConfig.java b/backend/src/main/java/com/yfd/platform/config/RedisConfig.java index e5f1f5f9..1b2e0783 100644 --- a/backend/src/main/java/com/yfd/platform/config/RedisConfig.java +++ b/backend/src/main/java/com/yfd/platform/config/RedisConfig.java @@ -8,6 +8,7 @@ import com.fasterxml.jackson.annotation.PropertyAccessor; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; +import com.yfd.platform.utils.SecurityUtils; import org.springframework.cache.CacheManager; import org.springframework.cache.annotation.EnableCaching; import org.springframework.cache.interceptor.KeyGenerator; @@ -114,4 +115,9 @@ public class RedisConfig { public KeyGenerator cacheKeyGenerator() { return (target, method, params) -> target.getClass().getName() + "." + method.getName() + ":" + DigestUtil.md5Hex(JSONUtil.toJsonStr(params)); } + + @Bean("cacheKeyByUserGenerator") + public KeyGenerator cacheKeyByUserGenerator() { + return (target, method, params) -> SecurityUtils.getUserId()+"."+target.getClass().getName() + "." + method.getName() + ":" + DigestUtil.md5Hex(JSONUtil.toJsonStr(params)); + } } \ No newline at end of file diff --git a/backend/src/main/java/com/yfd/platform/qgc_base/service/impl/SdEngInfoBHServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_base/service/impl/SdEngInfoBHServiceImpl.java index d37e12a3..c2a4aba0 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_base/service/impl/SdEngInfoBHServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_base/service/impl/SdEngInfoBHServiceImpl.java @@ -2839,6 +2839,7 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl getEngPointKendoListCust(DataSourceRequest dataSourceRequest) { DataSourceResult result = new DataSourceResult<>(); result.setAggregates(new HashMap<>()); @@ -2975,10 +2976,15 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl result = new DataSourceResult<>(); Map pointParamMap = new HashMap<>(); StringBuilder pointSql = new StringBuilder(buildAlarmPointBaseSql()); -// DataScopeApplyResult scopeApplyResult = dataScopeFilterService.appendCurrentUserStationScope(pointSql, pointParamMap, "eng.STCD"); + DataScopeApplyResult scopeApplyResult = dataScopeFilterService.appendCurrentUserStationScope(pointSql, pointParamMap, "eng.STCD"); + if (scopeApplyResult.isEmptyResult()) { + result.setData(new ArrayList<>()); + result.setTotal(0L); + return result; + } List points= microservicDynamicSQLMapper.getAllListWithResultType( pointSql.toString(), pointParamMap, @@ -3004,7 +3010,7 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl> expressionRows = microservicDynamicSQLMapper.getAllList(buildAlarmPointLegendSql(), new HashMap<>()); List resultList = mergeAlarmPointData(points, qecCountMap, wqCountMap, expressionRows, yyyy); - DataSourceResult result = new DataSourceResult<>(); + result.setData(resultList); result.setTotal(resultList.size()); result.setAggregates(new HashMap<>()); diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/wq/service/impl/EnvWqDataServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_env/wq/service/impl/EnvWqDataServiceImpl.java index e45490d4..2fd5cc9a 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/wq/service/impl/EnvWqDataServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/wq/service/impl/EnvWqDataServiceImpl.java @@ -4557,7 +4557,7 @@ public class EnvWqDataServiceImpl implements EnvWqDataService { } @Override -// @Cacheable(cacheNames = "weCache#3600", keyGenerator = "cacheKeyGenerator") + @Cacheable(cacheNames = "wqCache#3600", keyGenerator = "cacheKeyByUserGenerator") public DataSourceResult getAnchorPointKendoListCust(DataSourceRequest dataSourceRequest) { DataSourceResult dataSourceResult = new DataSourceResult<>(); dataSourceResult.setAggregates(new HashMap<>()); diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/wt/service/impl/SdWtMonitorServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_env/wt/service/impl/SdWtMonitorServiceImpl.java index 1e3d7581..868bb3db 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/wt/service/impl/SdWtMonitorServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/wt/service/impl/SdWtMonitorServiceImpl.java @@ -34,6 +34,7 @@ import com.yfd.platform.utils.RedisCacheUtil; import com.yfd.platform.utils.SecurityUtils; import jakarta.annotation.Resource; import lombok.Data; +import org.springframework.cache.annotation.Cacheable; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -2846,6 +2847,7 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService { } @Override + @Cacheable(cacheNames = "dwCache#3600", keyGenerator = "cacheKeyByUserGenerator") public DataSourceResult getFacilityPointKendoListCust(DataSourceRequest dataSourceRequest) { DataSourceResult dataSourceResult = new DataSourceResult<>(); dataSourceResult.setAggregates(new HashMap<>()); @@ -2943,6 +2945,7 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService { } @Override + @Cacheable(cacheNames = "wtCache#3600", keyGenerator = "cacheKeyByUserGenerator") public DataSourceResult getEngTempPointListKendoListCust(DataSourceRequest dataSourceRequest) { DataSourceResult dataSourceResult = new DataSourceResult<>(); dataSourceResult.setAggregates(new HashMap<>()); @@ -3016,6 +3019,13 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService { // paramMap.put("dtinType", dtinType); // } + DataScopeApplyResult scopeApplyResult = dataScopeFilterService.appendCurrentUserStationScope(sql, paramMap, "t.RSTCD"); + if (scopeApplyResult.isEmptyResult()) { + dataSourceResult.setData(new ArrayList<>()); + dataSourceResult.setTotal(0L); + return dataSourceResult; + } + List sort = dataSourceRequest.getSort(); if (sort != null && !sort.isEmpty()) { sql.append(" ORDER BY ");