|  |  | 
 |  |  | import com.moral.api.mapper.SysDictTypeMapper; | 
 |  |  | import com.moral.api.service.SysDictDataService; | 
 |  |  | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 
 |  |  | import com.moral.constant.RedisConstants; | 
 |  |  |  | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.data.redis.core.RedisTemplate; | 
 |  |  | import org.springframework.stereotype.Service; | 
 |  |  | import org.springframework.util.ObjectUtils; | 
 |  |  |  | 
 |  |  | import java.util.HashMap; | 
 |  |  | import java.util.List; | 
 |  |  | import java.util.Map; | 
 |  |  | import java.util.stream.Collectors; | 
 |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private SysDictTypeMapper sysDictTypeMapper; | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private RedisTemplate redisTemplate; | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public Map<String, Object> getSysDictDataByDictType(String type) { | 
 |  |  |         Map<String, Object> result = new HashMap<>(); | 
 |  |  |         //先从redis获取 | 
 |  |  |         Map<String, Object> sysDict = (Map<String, Object>) redisTemplate.opsForValue().get(RedisConstants.DICT_DATA_KEY); | 
 |  |  |         List<SysDictData> dictData = (List<SysDictData>) sysDict.get(type); | 
 |  |  |         for (SysDictData dictDatum : dictData) { | 
 |  |  |             result.put(dictDatum.getDataKey(), dictDatum.getDataValue()); | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         if (!ObjectUtils.isEmpty(result)) { | 
 |  |  |             return result; | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         //根据字典类型名字获取字典类型id | 
 |  |  |         QueryWrapper<SysDictType> sysDictTypeQueryWrapper = new QueryWrapper<>(); | 
 |  |  |         sysDictTypeQueryWrapper.select("id").eq("name", type); |