update 标签管理
This commit is contained in:
@@ -71,20 +71,6 @@ public interface ILawsTagService extends IService<LawsTag> {
|
||||
*/
|
||||
public void updateDictDelFlag(int isDelete,String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<LawsTag> queryList(LawsArea lawsArea);
|
||||
|
||||
/**
|
||||
* 根据所属模块、属性名称、英文名称是否一致还原数据
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
Integer queryExitData(LawsTag lawsTag) ;
|
||||
|
||||
|
||||
/**
|
||||
* 若区域下有标签字段 则无法删除
|
||||
|
||||
+14
-85
@@ -30,7 +30,6 @@ import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Description: 标签管理
|
||||
@@ -62,43 +61,17 @@ public class ILawsTagServiceImpl extends ServiceImpl<LawsTagMapper, LawsTag> imp
|
||||
public void add(LawsTag lawsTag) {
|
||||
|
||||
//校验--逻辑删除
|
||||
Integer count=queryExitData(lawsTag);
|
||||
if (count > 0) {
|
||||
lawsTag.setDelFlag(CommonConstant.DEL_FLAG_0);
|
||||
} else {
|
||||
Integer inputOrderNum = lawsTag.getOrderNum();
|
||||
//查询展示顺序相同的
|
||||
QueryWrapper<LawsTag> queryWrapper= new QueryWrapper<>();
|
||||
queryWrapper.eq("is_model", lawsTag.getIsModel())
|
||||
.eq("del_flag",CommonConstant.DEL_FLAG_0)
|
||||
.orderByAsc("order_num");
|
||||
queryWrapper.eq("order_num", inputOrderNum);
|
||||
Integer orderNumCount = lawsTagMapper.selectCount(queryWrapper);
|
||||
if(orderNumCount > 0) {//有重复展示顺序的,后面的号全+1
|
||||
//设置排序
|
||||
QueryWrapper<LawsTag> orderNumQueryWrapper = new QueryWrapper<>();
|
||||
orderNumQueryWrapper.ge("order_num", inputOrderNum)
|
||||
.eq("is_model", lawsTag.getIsModel())
|
||||
.eq("del_flag", CommonConstant.DEL_FLAG_0)
|
||||
.orderByAsc("order_num");
|
||||
List<LawsTag> geOrderNumList = list(orderNumQueryWrapper);
|
||||
|
||||
//判断相邻的序号,去掉不邻的
|
||||
for(int i = 0 ; i < geOrderNumList.size() ; i++) {
|
||||
if (geOrderNumList.size() == 1){
|
||||
break;
|
||||
}else if(i+1 >= geOrderNumList.size()){
|
||||
break;
|
||||
}else if (geOrderNumList.get(i + 1).getOrderNum() - geOrderNumList.get(i).getOrderNum() > 1) {
|
||||
int deleteStart = geOrderNumList.get(i+1).getOrderNum();
|
||||
geOrderNumList = geOrderNumList.stream().filter(e->e.getOrderNum() < deleteStart).collect(Collectors.toList());
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
geOrderNumList.stream().forEach(e -> e.setOrderNum(e.getOrderNum() + 1));
|
||||
saveOrUpdateBatch(geOrderNumList);
|
||||
}
|
||||
LambdaQueryWrapper<LawsTag> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(LawsTag::getIsModel, lawsTag.getIsModel())
|
||||
.eq(LawsTag::getDbFieldTxt, lawsTag.getDbFieldTxt())
|
||||
.eq(LawsTag::getDbFieldEnName, lawsTag.getDbFieldEnName())
|
||||
.eq(LawsTag::getDelFlag,1);
|
||||
LawsTag lawsTag1 = lawsTagMapper.selectOne(queryWrapper);
|
||||
if (lawsTag1 != null){
|
||||
lawsTag.setId(lawsTag1.getId());
|
||||
lawsTag.setDbFieldNameOld(lawsTag1.getDbFieldName());
|
||||
}
|
||||
else {
|
||||
//处理DBLength为null的情况,默认为100
|
||||
if (lawsTag.getDbLength() == null){
|
||||
lawsTag.setDbLength(100);
|
||||
@@ -117,22 +90,10 @@ public class ILawsTagServiceImpl extends ServiceImpl<LawsTagMapper, LawsTag> imp
|
||||
}
|
||||
}
|
||||
lawsTag.setDelFlag(CommonConstant.DEL_FLAG_0);
|
||||
//if(lawsTag.getIsModel().equals(TableNameEnum.FILE_TABLE_IS_MODEL.getValue())) {//设置文档库-表id
|
||||
// lawsTag.setCgformHeadId(TableNameEnum.FILE_TABLE_ID.getValue());
|
||||
//}else {//设置文档拆分-表id
|
||||
// lawsTag.setCgformHeadId(TableNameEnum.FILE_SPLIT_ID.getValue());
|
||||
//}
|
||||
lawsTag.setDbIsKey(Integer.valueOf(YesOrNoEnum.NO.getValue()));
|
||||
lawsTag.setDbIsNull(Integer.valueOf(YesOrNoEnum.YES.getValue()));
|
||||
//lawsTag.setDbPointLength(0); //默认为0
|
||||
lawsTag.setIsReadOnly(Integer.valueOf(FixedFieldEnum.NON_FIXED_FIELD_ENUM.getValue()));
|
||||
lawsTag.setIsShowForm(Integer.valueOf(YesOrNoEnum.YES.getValue()));
|
||||
Date now = new Date();
|
||||
lawsTag.setCreateTime(now);
|
||||
lawsTag.setUpdateTime(now);
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
lawsTag.setCreateBy(sysUser.getUsername());
|
||||
lawsTag.setUpdateBy(sysUser.getUsername());
|
||||
String pinYin = HanYuPinYinUtil.changeToNumberPinYin(lawsTag.getDbFieldTxt());
|
||||
lawsTag.setDbFieldName(pinYin.replace(" ","_"));
|
||||
String dbFieldName = lawsTag.getDbFieldName();
|
||||
@@ -140,14 +101,13 @@ public class ILawsTagServiceImpl extends ServiceImpl<LawsTagMapper, LawsTag> imp
|
||||
if (!Validator.isMatchRegex("^[a-zA-Z].*$", dbFieldName)){
|
||||
lawsTag.setDbFieldName("grp_" + dbFieldName);
|
||||
}
|
||||
|
||||
if (dbFieldName.length() > 64){
|
||||
throw new JeroBootException("tag.add.字段名称太长",dbFieldName);
|
||||
}
|
||||
executeDDL(lawsTag,"add");
|
||||
lawsTag.setDbFieldNameOld(dbFieldName);
|
||||
}
|
||||
save(lawsTag);
|
||||
executeDDL(lawsTag,"add");
|
||||
lawsTag.setDbFieldNameOld(lawsTag.getDbFieldName());
|
||||
saveOrUpdate(lawsTag);
|
||||
}
|
||||
|
||||
|
||||
@@ -159,7 +119,6 @@ public class ILawsTagServiceImpl extends ServiceImpl<LawsTagMapper, LawsTag> imp
|
||||
*/
|
||||
@Override
|
||||
public void editById(LawsTag lawsTag) {
|
||||
Integer inputOrderNum = lawsTag.getOrderNum();
|
||||
|
||||
//字段名称设置成拼音+下划线,存入数据库
|
||||
String pinYin = HanYuPinYinUtil.changeToNumberPinYin(lawsTag.getDbFieldTxt());
|
||||
@@ -288,36 +247,6 @@ public class ILawsTagServiceImpl extends ServiceImpl<LawsTagMapper, LawsTag> imp
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<LawsTag> queryList(LawsArea lawsArea) {
|
||||
QueryWrapper<LawsTag> updateWrapper=new QueryWrapper<>();
|
||||
updateWrapper.eq("is_model", lawsArea.getIsModel());
|
||||
return list(updateWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据所属模块、属性名称、英文名称是否一致还原数据
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Integer queryExitData(LawsTag lawsTag) {
|
||||
LambdaQueryWrapper<LawsTag> queryWrapper = new LambdaQueryWrapper<>();
|
||||
if (StringUtils.isNotBlank(lawsTag.getIsModel())) {
|
||||
queryWrapper.eq(LawsTag::getIsModel, lawsTag.getIsModel())
|
||||
.eq(LawsTag::getDbFieldTxt, lawsTag.getDbFieldTxt())
|
||||
.eq(LawsTag::getDbFieldEnName, lawsTag.getDbFieldEnName())
|
||||
.eq(LawsTag::getDelFlag,0);
|
||||
}
|
||||
Integer count = lawsTagMapper.selectCount(queryWrapper);
|
||||
return count;
|
||||
}
|
||||
|
||||
/**
|
||||
* 若区域下有标签字段 则无法删除
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user