From af6a08398e2bc22f3c8a3a615cbd9e23190be906 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期四, 12 五月 2022 10:55:44 +0800
Subject: [PATCH] update 优化 文件与图片上传组件 使用id存储回显

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictDataServiceImpl.java |  213 ++++++++++++++++++++++++++++------------------------
 1 files changed, 114 insertions(+), 99 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictDataServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictDataServiceImpl.java
index 9ccafc0..03de7c5 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictDataServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictDataServiceImpl.java
@@ -1,14 +1,16 @@
 package com.ruoyi.system.service.impl;
 
-import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.constant.Constants;
+import com.ruoyi.common.core.domain.PageQuery;
 import com.ruoyi.common.core.domain.entity.SysDictData;
-import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
 import com.ruoyi.common.core.page.TableDataInfo;
-import com.ruoyi.common.utils.DictUtils;
-import com.ruoyi.common.utils.PageUtils;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.redis.RedisUtils;
 import com.ruoyi.system.mapper.SysDictDataMapper;
 import com.ruoyi.system.service.ISysDictDataService;
+import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -16,108 +18,121 @@
 /**
  * 瀛楀吀 涓氬姟灞傚鐞�
  *
- * @author ruoyi
+ * @author Lion Li
  */
+@RequiredArgsConstructor
 @Service
-public class SysDictDataServiceImpl extends ServicePlusImpl<SysDictDataMapper, SysDictData, SysDictData> implements ISysDictDataService {
+public class SysDictDataServiceImpl implements ISysDictDataService {
 
-	@Override
-	public TableDataInfo<SysDictData> selectPageDictDataList(SysDictData dictData) {
-		LambdaQueryWrapper<SysDictData> lqw = new LambdaQueryWrapper<SysDictData>()
-			.eq(StrUtil.isNotBlank(dictData.getDictType()), SysDictData::getDictType, dictData.getDictType())
-			.like(StrUtil.isNotBlank(dictData.getDictLabel()), SysDictData::getDictLabel, dictData.getDictLabel())
-			.eq(StrUtil.isNotBlank(dictData.getStatus()), SysDictData::getStatus, dictData.getStatus())
-			.orderByAsc(SysDictData::getDictSort);
-		return PageUtils.buildDataInfo(page(PageUtils.buildPage(), lqw));
-	}
+    private final SysDictDataMapper baseMapper;
 
-	/**
-	 * 鏍规嵁鏉′欢鍒嗛〉鏌ヨ瀛楀吀鏁版嵁
-	 *
-	 * @param dictData 瀛楀吀鏁版嵁淇℃伅
-	 * @return 瀛楀吀鏁版嵁闆嗗悎淇℃伅
-	 */
-	@Override
-	public List<SysDictData> selectDictDataList(SysDictData dictData) {
-		return list(new LambdaQueryWrapper<SysDictData>()
-			.eq(StrUtil.isNotBlank(dictData.getDictType()), SysDictData::getDictType, dictData.getDictType())
-			.like(StrUtil.isNotBlank(dictData.getDictLabel()), SysDictData::getDictLabel, dictData.getDictLabel())
-			.eq(StrUtil.isNotBlank(dictData.getStatus()), SysDictData::getStatus, dictData.getStatus())
-			.orderByAsc(SysDictData::getDictSort));
-	}
+    @Override
+    public TableDataInfo<SysDictData> selectPageDictDataList(SysDictData dictData, PageQuery pageQuery) {
+        LambdaQueryWrapper<SysDictData> lqw = new LambdaQueryWrapper<SysDictData>()
+            .eq(StringUtils.isNotBlank(dictData.getDictType()), SysDictData::getDictType, dictData.getDictType())
+            .like(StringUtils.isNotBlank(dictData.getDictLabel()), SysDictData::getDictLabel, dictData.getDictLabel())
+            .eq(StringUtils.isNotBlank(dictData.getStatus()), SysDictData::getStatus, dictData.getStatus())
+            .orderByAsc(SysDictData::getDictSort);
+        Page<SysDictData> page = baseMapper.selectPage(pageQuery.build(), lqw);
+        return TableDataInfo.build(page);
+    }
 
-	/**
-	 * 鏍规嵁瀛楀吀绫诲瀷鍜屽瓧鍏搁敭鍊兼煡璇㈠瓧鍏告暟鎹俊鎭�
-	 *
-	 * @param dictType  瀛楀吀绫诲瀷
-	 * @param dictValue 瀛楀吀閿��
-	 * @return 瀛楀吀鏍囩
-	 */
-	@Override
-	public String selectDictLabel(String dictType, String dictValue) {
-		return getOne(new LambdaQueryWrapper<SysDictData>()
-			.select(SysDictData::getDictLabel)
-			.eq(SysDictData::getDictType, dictType)
-			.eq(SysDictData::getDictValue, dictValue))
-			.getDictLabel();
-	}
+    /**
+     * 鏍规嵁鏉′欢鍒嗛〉鏌ヨ瀛楀吀鏁版嵁
+     *
+     * @param dictData 瀛楀吀鏁版嵁淇℃伅
+     * @return 瀛楀吀鏁版嵁闆嗗悎淇℃伅
+     */
+    @Override
+    public List<SysDictData> selectDictDataList(SysDictData dictData) {
+        return baseMapper.selectList(new LambdaQueryWrapper<SysDictData>()
+            .eq(StringUtils.isNotBlank(dictData.getDictType()), SysDictData::getDictType, dictData.getDictType())
+            .like(StringUtils.isNotBlank(dictData.getDictLabel()), SysDictData::getDictLabel, dictData.getDictLabel())
+            .eq(StringUtils.isNotBlank(dictData.getStatus()), SysDictData::getStatus, dictData.getStatus())
+            .orderByAsc(SysDictData::getDictSort));
+    }
 
-	/**
-	 * 鏍规嵁瀛楀吀鏁版嵁ID鏌ヨ淇℃伅
-	 *
-	 * @param dictCode 瀛楀吀鏁版嵁ID
-	 * @return 瀛楀吀鏁版嵁
-	 */
-	@Override
-	public SysDictData selectDictDataById(Long dictCode) {
-		return getById(dictCode);
-	}
+    /**
+     * 鏍规嵁瀛楀吀绫诲瀷鍜屽瓧鍏搁敭鍊兼煡璇㈠瓧鍏告暟鎹俊鎭�
+     *
+     * @param dictType  瀛楀吀绫诲瀷
+     * @param dictValue 瀛楀吀閿��
+     * @return 瀛楀吀鏍囩
+     */
+    @Override
+    public String selectDictLabel(String dictType, String dictValue) {
+        return baseMapper.selectOne(new LambdaQueryWrapper<SysDictData>()
+                .select(SysDictData::getDictLabel)
+                .eq(SysDictData::getDictType, dictType)
+                .eq(SysDictData::getDictValue, dictValue))
+            .getDictLabel();
+    }
 
-	/**
-	 * 鎵归噺鍒犻櫎瀛楀吀鏁版嵁淇℃伅
-	 *
-	 * @param dictCodes 闇�瑕佸垹闄ょ殑瀛楀吀鏁版嵁ID
-	 * @return 缁撴灉
-	 */
-	@Override
-	public void deleteDictDataByIds(Long[] dictCodes) {
-		for (Long dictCode : dictCodes) {
-			SysDictData data = selectDictDataById(dictCode);
-            removeById(dictCode);
-			List<SysDictData> dictDatas = baseMapper.selectDictDataByType(data.getDictType());
-			DictUtils.setDictCache(data.getDictType(), dictDatas);
-		}
-	}
+    /**
+     * 鏍规嵁瀛楀吀鏁版嵁ID鏌ヨ淇℃伅
+     *
+     * @param dictCode 瀛楀吀鏁版嵁ID
+     * @return 瀛楀吀鏁版嵁
+     */
+    @Override
+    public SysDictData selectDictDataById(Long dictCode) {
+        return baseMapper.selectById(dictCode);
+    }
 
-	/**
-	 * 鏂板淇濆瓨瀛楀吀鏁版嵁淇℃伅
-	 *
-	 * @param data 瀛楀吀鏁版嵁淇℃伅
-	 * @return 缁撴灉
-	 */
-	@Override
-	public int insertDictData(SysDictData data) {
-		int row = baseMapper.insert(data);
-		if (row > 0) {
-			List<SysDictData> dictDatas = baseMapper.selectDictDataByType(data.getDictType());
-			DictUtils.setDictCache(data.getDictType(), dictDatas);
-		}
-		return row;
-	}
+    /**
+     * 鎵归噺鍒犻櫎瀛楀吀鏁版嵁淇℃伅
+     *
+     * @param dictCodes 闇�瑕佸垹闄ょ殑瀛楀吀鏁版嵁ID
+     */
+    @Override
+    public void deleteDictDataByIds(Long[] dictCodes) {
+        for (Long dictCode : dictCodes) {
+            SysDictData data = selectDictDataById(dictCode);
+            baseMapper.deleteById(dictCode);
+            List<SysDictData> dictDatas = baseMapper.selectDictDataByType(data.getDictType());
+            RedisUtils.setCacheObject(getCacheKey(data.getDictType()), dictDatas);
+        }
+    }
 
-	/**
-	 * 淇敼淇濆瓨瀛楀吀鏁版嵁淇℃伅
-	 *
-	 * @param data 瀛楀吀鏁版嵁淇℃伅
-	 * @return 缁撴灉
-	 */
-	@Override
-	public int updateDictData(SysDictData data) {
-		int row = baseMapper.updateById(data);
-		if (row > 0) {
-			List<SysDictData> dictDatas = baseMapper.selectDictDataByType(data.getDictType());
-			DictUtils.setDictCache(data.getDictType(), dictDatas);
-		}
-		return row;
-	}
+    /**
+     * 鏂板淇濆瓨瀛楀吀鏁版嵁淇℃伅
+     *
+     * @param data 瀛楀吀鏁版嵁淇℃伅
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertDictData(SysDictData data) {
+        int row = baseMapper.insert(data);
+        if (row > 0) {
+            List<SysDictData> dictDatas = baseMapper.selectDictDataByType(data.getDictType());
+            RedisUtils.setCacheObject(getCacheKey(data.getDictType()), dictDatas);
+        }
+        return row;
+    }
+
+    /**
+     * 淇敼淇濆瓨瀛楀吀鏁版嵁淇℃伅
+     *
+     * @param data 瀛楀吀鏁版嵁淇℃伅
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateDictData(SysDictData data) {
+        int row = baseMapper.updateById(data);
+        if (row > 0) {
+            List<SysDictData> dictDatas = baseMapper.selectDictDataByType(data.getDictType());
+            RedisUtils.setCacheObject(getCacheKey(data.getDictType()), dictDatas);
+        }
+        return row;
+    }
+
+    /**
+     * 璁剧疆cache key
+     *
+     * @param configKey 鍙傛暟閿�
+     * @return 缂撳瓨閿甼ey
+     */
+    String getCacheKey(String configKey) {
+        return Constants.SYS_DICT_KEY + configKey;
+    }
 }

--
Gitblit v1.9.3