Ver Fonte

【CHG】增加获取缓存中所有字典列表接口

ZhaoMn há 4 anos atrás
pai
commit
8843ccd7b7

+ 13 - 1
railway-admin/src/main/java/com/railway/web/controller/system/SysDictTypeController.java

@@ -5,6 +5,7 @@ import com.railway.common.constant.UserConstants;
 import com.railway.common.core.controller.BaseController;
 import com.railway.common.core.domain.AjaxResult;
 import com.railway.common.core.domain.entity.SysDictType;
+import com.railway.common.core.domain.vo.SysDictVo;
 import com.railway.common.core.page.TableDataInfo;
 import com.railway.common.enums.BusinessType;
 import com.railway.common.utils.poi.ExcelUtil;
@@ -122,9 +123,20 @@ public class SysDictTypeController extends BaseController {
   /**
    * 获取字典选择框列表
    */
-  @GetMapping("/optionselect")
+  @GetMapping("/optionSelect")
   public AjaxResult optionSelect() {
     List<SysDictType> dictTypes = dictTypeService.selectDictTypeAll();
     return AjaxResult.success(dictTypes);
   }
+
+  /**
+   * 获取缓存中所有字典列表
+   */
+  @ApiOperation(value = "获取缓存中所有字典列表", response = AjaxResult.class)
+  @GetMapping("/dictAll")
+  public AjaxResult dictAll() {
+    List<SysDictVo> dictAll = dictTypeService.selectDictAll();
+    return AjaxResult.success(dictAll);
+  }
+
 }

+ 1 - 1
railway-admin/src/main/java/com/railway/web/controller/system/SysPostController.java

@@ -110,7 +110,7 @@ public class SysPostController extends BaseController {
   /**
    * 获取岗位选择框列表
    */
-  @GetMapping("/optionselect")
+  @GetMapping("/optionSelect")
   public AjaxResult optionSelect() {
     List<SysPost> posts = postService.selectPostAll();
     return AjaxResult.success(posts);

+ 23 - 0
railway-common/src/main/java/com/railway/common/core/domain/vo/SysDictVo.java

@@ -0,0 +1,23 @@
+package com.railway.common.core.domain.vo;
+
+import com.railway.common.core.domain.entity.SysDictData;
+import java.io.Serializable;
+import java.util.List;
+import lombok.Data;
+
+/**
+ * @author zhaomn
+ */
+@Data
+public class SysDictVo implements Serializable {
+
+  /**
+   * 字典类型
+   */
+  private String dictType;
+
+  /**
+   * 字典项列表
+   */
+  private List<SysDictData> dictDataList;
+}

+ 2 - 2
railway-common/src/main/java/com/railway/common/core/redis/RedisCache.java

@@ -69,7 +69,7 @@ public class RedisCache {
    * @return true=设置成功;false=设置失败
    */
   public boolean expire(final String key, final long timeout, final TimeUnit unit) {
-    return redisTemplate.expire(key, timeout, unit);
+    return Boolean.TRUE.equals(redisTemplate.expire(key, timeout, unit));
   }
 
   /**
@@ -87,7 +87,7 @@ public class RedisCache {
    * 删除单个对象
    */
   public boolean deleteObject(final String key) {
-    return redisTemplate.delete(key);
+    return Boolean.TRUE.equals(redisTemplate.delete(key));
   }
 
   /**

+ 0 - 1
railway-system/src/main/java/com/railway/system/service/ISysDictDataService.java

@@ -39,7 +39,6 @@ public interface ISysDictDataService {
    * 批量删除字典数据信息
    *
    * @param dictCodes 需要删除的字典数据ID
-   * @return 结果
    */
   void deleteDictDataByIds(Long[] dictCodes);
 

+ 7 - 0
railway-system/src/main/java/com/railway/system/service/ISysDictTypeService.java

@@ -2,6 +2,7 @@ package com.railway.system.service;
 
 import com.railway.common.core.domain.entity.SysDictData;
 import com.railway.common.core.domain.entity.SysDictType;
+import com.railway.common.core.domain.vo.SysDictVo;
 import java.util.List;
 
 /**
@@ -11,6 +12,12 @@ import java.util.List;
  */
 public interface ISysDictTypeService {
 
+  /**
+   * 查询所有字典数据
+   * @return 缓存中的字典数据集合
+   */
+  List<SysDictVo> selectDictAll();
+
   /**
    * 根据条件分页查询字典类型
    *

+ 24 - 0
railway-system/src/main/java/com/railway/system/service/impl/SysDictTypeServiceImpl.java

@@ -3,12 +3,14 @@ package com.railway.system.service.impl;
 import com.railway.common.constant.UserConstants;
 import com.railway.common.core.domain.entity.SysDictData;
 import com.railway.common.core.domain.entity.SysDictType;
+import com.railway.common.core.domain.vo.SysDictVo;
 import com.railway.common.exception.ServiceException;
 import com.railway.common.utils.DictUtils;
 import com.railway.common.utils.StringUtils;
 import com.railway.system.mapper.SysDictDataMapper;
 import com.railway.system.mapper.SysDictTypeMapper;
 import com.railway.system.service.ISysDictTypeService;
+import java.util.ArrayList;
 import java.util.List;
 import javax.annotation.PostConstruct;
 import org.springframework.stereotype.Service;
@@ -39,6 +41,28 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService {
     loadingDictCache();
   }
 
+
+  /**
+   * 查询所有字典数据
+   *
+   * @return 缓存中的字典数据集合
+   */
+  @Override
+  public List<SysDictVo> selectDictAll() {
+    List<SysDictType> dictTypeList = selectDictTypeAll();
+    List<SysDictVo> dictList = new ArrayList<>();
+    for(SysDictType type : dictTypeList){
+      List<SysDictData> dictDatas = selectDictDataByType(type.getDictType());
+      if (StringUtils.isNotEmpty(dictDatas)) {
+        SysDictVo dictVo = new SysDictVo();
+        dictVo.setDictType(type.getDictType());
+        dictVo.setDictDataList(dictDatas);
+        dictList.add(dictVo);
+      }
+    }
+    return dictList;
+  }
+
   /**
    * 根据条件分页查询字典类型
    *