From 681ee2816cce98cc5520f980d2e01c587409545c Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期四, 20 二月 2025 11:07:51 +0800
Subject: [PATCH] 字典改为树结构
---
system/src/main/resources/mapper/system/SysDictDataMapper.xml | 6 +++++-
start/src/main/java/com/ycl/web/controller/system/SysDictDataController.java | 14 ++++++++++++++
common/src/main/java/com/ycl/common/core/domain/entity/SysDictData.java | 14 ++++++++++++--
3 files changed, 31 insertions(+), 3 deletions(-)
diff --git a/common/src/main/java/com/ycl/common/core/domain/entity/SysDictData.java b/common/src/main/java/com/ycl/common/core/domain/entity/SysDictData.java
index 2273964..b3c4045 100644
--- a/common/src/main/java/com/ycl/common/core/domain/entity/SysDictData.java
+++ b/common/src/main/java/com/ycl/common/core/domain/entity/SysDictData.java
@@ -11,7 +11,7 @@
/**
* 瀛楀吀鏁版嵁琛� sys_dict_data
- *
+ *
* @author ycl
*/
public class SysDictData extends BaseEntity
@@ -25,6 +25,8 @@
/** 瀛楀吀鎺掑簭 */
@Excel(name = "瀛楀吀鎺掑簭", cellType = ColumnType.NUMERIC)
private Long dictSort;
+
+ private Long parentId;
/** 瀛楀吀鏍囩 */
@Excel(name = "瀛楀吀鏍囩")
@@ -153,7 +155,15 @@
{
this.status = status;
}
-
+
+ public Long getParentId() {
+ return parentId;
+ }
+
+ public void setParentId(Long parentId) {
+ this.parentId = parentId;
+ }
+
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
diff --git a/start/src/main/java/com/ycl/web/controller/system/SysDictDataController.java b/start/src/main/java/com/ycl/web/controller/system/SysDictDataController.java
index aa2ba0c..97bf97d 100644
--- a/start/src/main/java/com/ycl/web/controller/system/SysDictDataController.java
+++ b/start/src/main/java/com/ycl/web/controller/system/SysDictDataController.java
@@ -97,6 +97,9 @@
@Log(title = "瀛楀吀鏁版嵁", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@Validated @RequestBody SysDictData dict) {
+ if (dict.getDictCode().equals(dict.getParentId())) {
+ return error("淇敼瀛楀吀'" + dict.getDictLabel() + "'澶辫触锛屼笂绾у瓧鍏镐笉鑳介�夋嫨鑷繁");
+ }
dict.setUpdateBy(getUsername());
return toAjax(dictDataService.updateDictData(dict));
}
@@ -111,4 +114,15 @@
dictDataService.deleteDictDataByIds(dictCodes);
return success();
}
+
+
+ /**
+ * 鑾峰彇瀛楀吀鍒楄〃锛堜笉鍒嗛〉锛�
+ */
+ @PreAuthorize("@ss.hasPermi('system:dict:list')")
+ @GetMapping("/dataList")
+ public AjaxResult dataList(SysDictData dictData) {
+ List<SysDictData> list = dictDataService.selectDictDataList(dictData);
+ return success(list);
+ }
}
diff --git a/system/src/main/resources/mapper/system/SysDictDataMapper.xml b/system/src/main/resources/mapper/system/SysDictDataMapper.xml
index 1bd884a..8cdd912 100644
--- a/system/src/main/resources/mapper/system/SysDictDataMapper.xml
+++ b/system/src/main/resources/mapper/system/SysDictDataMapper.xml
@@ -18,10 +18,11 @@
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
+ <result property="parentId" column="parent_id" />
</resultMap>
<sql id="selectDictDataVo">
- select dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark
+ select dict_code, dict_sort,parent_id, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark
from sys_dict_data
</sql>
@@ -75,6 +76,7 @@
update sys_dict_data
<set>
<if test="dictSort != null">dict_sort = #{dictSort},</if>
+ <if test="parentId != null">parent_id = #{parentId},</if>
<if test="dictLabel != null and dictLabel != ''">dict_label = #{dictLabel},</if>
<if test="dictValue != null and dictValue != ''">dict_value = #{dictValue},</if>
<if test="dictType != null and dictType != ''">dict_type = #{dictType},</if>
@@ -96,6 +98,7 @@
<insert id="insertDictData" parameterType="SysDictData">
insert into sys_dict_data(
<if test="dictSort != null">dict_sort,</if>
+ <if test="parentId != null">parent_id,</if>
<if test="dictLabel != null and dictLabel != ''">dict_label,</if>
<if test="dictValue != null and dictValue != ''">dict_value,</if>
<if test="dictType != null and dictType != ''">dict_type,</if>
@@ -108,6 +111,7 @@
create_time
)values(
<if test="dictSort != null">#{dictSort},</if>
+ <if test="parentId != null">#{parentId},</if>
<if test="dictLabel != null and dictLabel != ''">#{dictLabel},</if>
<if test="dictValue != null and dictValue != ''">#{dictValue},</if>
<if test="dictType != null and dictType != ''">#{dictType},</if>
--
Gitblit v1.8.0