bug53551数据字典修改

This commit is contained in:
xiejunyu
2022-06-02 17:00:24 +08:00
parent 461247891c
commit 8759a47aff
2 changed files with 32 additions and 23 deletions
@@ -3,12 +3,13 @@ package com.jero.modules.enums;
public enum IsTagDict { public enum IsTagDict {
SYS_DICT_SYSTEM("系统数据字典标志值","0"), SYS_DICT_SYSTEM("系统数据字典标志值",0),
TAG_DICT("标签内容标志值",1),
; ;
String name; String name;
String value; Integer value;
private IsTagDict(String name, String value) { IsTagDict(String name, Integer value) {
this.name = name; this.name = name;
this.value = value; this.value = value;
} }
@@ -21,11 +22,11 @@ public enum IsTagDict {
this.name = name; this.name = name;
} }
public String getValue() { public Integer getValue() {
return value; return value;
} }
public void setValue(String value) { public void setValue(Integer value) {
this.value = value; this.value = value;
} }
} }
@@ -392,7 +392,8 @@ public class SysDictController {
//校验--不能重复数据 //校验--不能重复数据
QueryWrapper<SysDict> queryWrapper = new QueryWrapper<>(); QueryWrapper<SysDict> queryWrapper = new QueryWrapper<>();
//查询同一模块下,同名数据 //查询同一模块下,同名数据
queryWrapper.eq("dict_name",sysDict.getDictName()); queryWrapper.eq("dict_name",sysDict.getDictName())
.eq("is_tag_dict",sysDict.getIsTagDict());
List<SysDict> existDictList = this.sysDictService.list(queryWrapper); List<SysDict> existDictList = this.sysDictService.list(queryWrapper);
try { try {
if(!existDictList.isEmpty()) { if(!existDictList.isEmpty()) {
@@ -404,7 +405,8 @@ public class SysDictController {
result.error500("标签名称不能重复"); result.error500("标签名称不能重复");
} }
} else {//不是同名 } else {//不是同名
if(ObjectUtils.isNotEmpty(sysDict.getIsTagDict()) && sysDict.getIsTagDict() == 1){ if (ObjectUtils.isNotEmpty(sysDict.getIsTagDict())
&& sysDict.getIsTagDict() == IsTagDict.TAG_DICT.getValue()) {
String pinYin = HanYuPinYinUtil.changeToNumberPinYin(sysDict.getDictName()); String pinYin = HanYuPinYinUtil.changeToNumberPinYin(sysDict.getDictName());
sysDict.setDictCode(pinYin.replace(" ","_")); sysDict.setDictCode(pinYin.replace(" ","_"));
@@ -413,6 +415,10 @@ public class SysDictController {
sysDict.setDictName(sysDict.getDictName().replace(" ","")); sysDict.setDictName(sysDict.getDictName().replace(" ",""));
sysDictService.save(sysDict); sysDictService.save(sysDict);
}else if(sysDict.getIsTagDict() == IsTagDict.SYS_DICT_SYSTEM.getValue()){
sysDict.setCreateTime(new Date());
sysDict.setDelFlag(CommonConstant.DEL_FLAG_0);
sysDictService.save(sysDict);
} }
result.success("保存成功!"); result.success("保存成功!");
//添加成功后需要刷新缓存 //添加成功后需要刷新缓存
@@ -448,7 +454,8 @@ public class SysDictController {
//校验--不能重复数据 //校验--不能重复数据
QueryWrapper<SysDict> queryWrapper = new QueryWrapper<>(); QueryWrapper<SysDict> queryWrapper = new QueryWrapper<>();
//查询同一模块下,同名数据 //查询同一模块下,同名数据
queryWrapper.eq("dict_name", sysDict.getDictName()); queryWrapper.eq("dict_name", sysDict.getDictName())
.eq("is_tag_dict",sysDict.getIsTagDict());
List<SysDict> existDictList = this.sysDictService.list(queryWrapper); List<SysDict> existDictList = this.sysDictService.list(queryWrapper);
if (!existDictList.isEmpty()) { if (!existDictList.isEmpty()) {
if (existDictList.get(0).getId().equals(sysDict.getId())) {//已存在同名的数据,就是正在编辑的这个 if (existDictList.get(0).getId().equals(sysDict.getId())) {//已存在同名的数据,就是正在编辑的这个
@@ -458,25 +465,26 @@ public class SysDictController {
result.success("编辑成功!"); result.success("编辑成功!");
//编辑成功后需要刷新缓存 //编辑成功后需要刷新缓存
sysDictService.refreshCache(); sysDictService.refreshCache();
} else {//已存在同名的数据,不是正在编辑的这个
SysDict sysDictDB = existDictList.get(0);
//存在重复同名标签内容,且已删,恢复
if (sysDictDB.getDelFlag() == CommonConstant.DEL_FLAG_1) {
sysDictService.updateDictDelFlag(CommonConstant.DEL_FLAG_0, sysDictDB.getId());
} else {//存在重复同名标签内容,未删
result.error500("标签名称不能重复");
}
} }
} else {//不是同名 } else {//已存在同名的数据,不是正在编辑的这个
sysDict.setUpdateTime(new Date()); SysDict sysDictDB = existDictList.get(0);
boolean ok = sysDictService.updateById(sysDict); //存在重复同名标签内容,且已删,恢复
if (ok) { if (sysDictDB.getDelFlag() == CommonConstant.DEL_FLAG_1) {
result.success("编辑成功!"); sysDictService.updateDictDelFlag(CommonConstant.DEL_FLAG_0, sysDictDB.getId());
//编辑成功后需要刷新缓存 } else {//存在重复同名标签内容,未删
sysDictService.refreshCache(); result.error500("标签名称不能重复");
} }
} }
} else {//不是同名
sysDict.setUpdateTime(new Date());
boolean ok = sysDictService.updateById(sysDict);
if (ok) {
result.success("编辑成功!");
//编辑成功后需要刷新缓存
sysDictService.refreshCache();
}
} }
} }
} }
} }