From 010366d0f907365ce43321ef1501192e480bd762 Mon Sep 17 00:00:00 2001
From: sfd <sun.sunshine@163.com>
Date: 星期五, 23 五月 2025 16:12:37 +0800
Subject: [PATCH] 管路产能查看车间转码
---
aps-common/aps-common-security/src/main/java/com/aps/common/security/utils/DictUtils.java | 65 ++++++++++++++++++++++----------
1 files changed, 45 insertions(+), 20 deletions(-)
diff --git a/aps-common/aps-common-security/src/main/java/com/aps/common/security/utils/DictUtils.java b/aps-common/aps-common-security/src/main/java/com/aps/common/security/utils/DictUtils.java
index b3466a3..b1b7fe1 100644
--- a/aps-common/aps-common-security/src/main/java/com/aps/common/security/utils/DictUtils.java
+++ b/aps-common/aps-common-security/src/main/java/com/aps/common/security/utils/DictUtils.java
@@ -1,43 +1,43 @@
package com.aps.common.security.utils;
import java.util.Collection;
+import java.util.Collections;
import java.util.List;
+import java.util.Objects;
+
import com.alibaba.fastjson2.JSONArray;
import com.aps.common.core.constant.CacheConstants;
import com.aps.common.core.utils.SpringUtils;
import com.aps.common.core.utils.StringUtils;
import com.aps.common.redis.service.RedisService;
import com.aps.system.api.domain.SysDictData;
+import org.springframework.util.CollectionUtils;
/**
* 瀛楀吀宸ュ叿绫�
- *
+ *
* @author ruoyi
*/
-public class DictUtils
-{
+public class DictUtils {
/**
* 璁剧疆瀛楀吀缂撳瓨
- *
- * @param key 鍙傛暟閿�
+ *
+ * @param key 鍙傛暟閿�
* @param dictDatas 瀛楀吀鏁版嵁鍒楄〃
*/
- public static void setDictCache(String key, List<SysDictData> dictDatas)
- {
+ public static void setDictCache(String key, List<SysDictData> dictDatas) {
SpringUtils.getBean(RedisService.class).setCacheObject(getCacheKey(key), dictDatas);
}
/**
* 鑾峰彇瀛楀吀缂撳瓨
- *
+ *
* @param key 鍙傛暟閿�
* @return dictDatas 瀛楀吀鏁版嵁鍒楄〃
*/
- public static List<SysDictData> getDictCache(String key)
- {
+ public static List<SysDictData> getDictCache(String key) {
JSONArray arrayCache = SpringUtils.getBean(RedisService.class).getCacheObject(getCacheKey(key));
- if (StringUtils.isNotNull(arrayCache))
- {
+ if (StringUtils.isNotNull(arrayCache)) {
return arrayCache.toList(SysDictData.class);
}
return null;
@@ -45,31 +45,56 @@
/**
* 鍒犻櫎鎸囧畾瀛楀吀缂撳瓨
- *
+ *
* @param key 瀛楀吀閿�
*/
- public static void removeDictCache(String key)
- {
+ public static void removeDictCache(String key) {
SpringUtils.getBean(RedisService.class).deleteObject(getCacheKey(key));
}
/**
* 娓呯┖瀛楀吀缂撳瓨
*/
- public static void clearDictCache()
- {
+ public static void clearDictCache() {
Collection<String> keys = SpringUtils.getBean(RedisService.class).keys(CacheConstants.SYS_DICT_KEY + "*");
SpringUtils.getBean(RedisService.class).deleteObject(keys);
}
/**
* 璁剧疆cache key
- *
+ *
* @param configKey 鍙傛暟閿�
* @return 缂撳瓨閿甼ey
*/
- public static String getCacheKey(String configKey)
- {
+ public static String getCacheKey(String configKey) {
return CacheConstants.SYS_DICT_KEY + configKey;
}
+
+
+ public static interface CacheValue{
+ String get(String label);
+ }
+
+ /**
+ * 鏍规嵁瀛楀吀绫诲瀷鍜屽瓧鍏告爣绛捐幏鍙栧瓧鍏稿��
+ *
+ * @param dictType
+ * @return
+ */
+ public static CacheValue getCacheValue(String dictType) {
+
+ List<SysDictData> cacheData = StringUtils.isEmpty(dictType) ? Collections.emptyList() : getDictCache(dictType);
+ return label -> {
+ if (CollectionUtils.isEmpty(cacheData)){
+ return null;
+ }
+ if(StringUtils.isEmpty(label)){
+ return null;
+ }
+ return cacheData.stream().filter(item -> Objects.equals(item.getDictLabel(), label))
+ .findFirst()
+ .map(SysDictData::getDictValue)
+ .orElse(null);
+ };
+ }
}
--
Gitblit v1.9.3