bug53112修改

This commit is contained in:
xiejunyu
2022-05-26 10:08:45 +08:00
parent 25b3241625
commit f225642c4a
4 changed files with 18 additions and 13 deletions
@@ -84,7 +84,7 @@ public class SysDictItemController {
@CacheEvict(value= CacheConstant.SYS_DICT_CACHE, allEntries=true)
public Result<SysDictItem> add(@RequestBody SysDictItem sysDictItem) {
Result<SysDictItem> result = new Result<SysDictItem>();
sysDictItemService.setAddOrdderNum(sysDictItem);
sysDictItemService.setAddOrderNum(sysDictItem);
//查询同名数据
List<SysDictItem> exitDictItemList = sysDictItemMapper.selctItemByName(sysDictItem.getItemText(),sysDictItem.getDictId());
if(CollectionUtils.isNotEmpty(exitDictItemList)){
@@ -31,7 +31,7 @@ public interface ISysDictItemService extends IService<SysDictItem> {
*/
public void updateDictDelFlag(int delFlag,String id);
void setAddOrdderNum(SysDictItem sysDictItem);
void setAddOrderNum(SysDictItem sysDictItem);
void setEditOrderNum(SysDictItem sysDictItem);
}
@@ -57,23 +57,25 @@ public class SysDictItemServiceImpl extends ServiceImpl<SysDictItemMapper, SysDi
}
@Override
public void setAddOrdderNum(SysDictItem sysDictItem) {
public void setAddOrderNum(SysDictItem sysDictItem) {
Integer inputOrderNum = sysDictItem.getSortOrder();
if(inputOrderNum != null) {
//查询展示顺序相同的
QueryWrapper<SysDictItem> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("del_flag", CommonConstant.DEL_FLAG_0)
.eq("dict_id",sysDictItem.getDictId())
.orderByAsc("order_num");
queryWrapper.eq("order_num", inputOrderNum);
.eq("is_tag_dict",sysDictItem.getIsTagDict())
.orderByAsc("sort_order");
queryWrapper.eq("sort_order", inputOrderNum);
Integer orderNumCount = sysDictItemMapper.selectCount(queryWrapper);
if (orderNumCount > 0) {//有重复展示顺序的,后面的号全+1
//设置排序
QueryWrapper<SysDictItem> orderNumQueryWrapper = new QueryWrapper<>();
orderNumQueryWrapper.ge("order_num", inputOrderNum)
orderNumQueryWrapper.ge("sort_order", inputOrderNum)
.eq("dict_id",sysDictItem.getDictId())
.eq("del_flag", CommonConstant.DEL_FLAG_0)
.orderByAsc("order_num");
.eq("is_tag_dict",sysDictItem.getIsTagDict())
.orderByAsc("sort_order");
List<SysDictItem> geOrderNumList = list(orderNumQueryWrapper);
//判断相邻的序号,去掉不邻的
@@ -101,6 +103,7 @@ public class SysDictItemServiceImpl extends ServiceImpl<SysDictItemMapper, SysDi
QueryWrapper<SysDictItem> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("del_flag", CommonConstant.DEL_FLAG_0)
.eq("dict_id",sysDictItem.getDictId())
.eq("is_tag_dict",sysDictItem.getIsTagDict())
.orderByAsc("sort_order");
Integer orderNumData = list(queryWrapper).stream().filter(e -> e.getId().equals(sysDictItem.getId()))
.map(e -> e.getSortOrder()).collect(Collectors.toList()).get(0);
@@ -112,6 +115,7 @@ public class SysDictItemServiceImpl extends ServiceImpl<SysDictItemMapper, SysDi
orderNumQueryWrapper.ge("sort_order", inputOrderNum)
.eq("dict_id",sysDictItem.getDictId())
.eq("del_flag", CommonConstant.DEL_FLAG_0)
.eq("is_tag_dict",sysDictItem.getIsTagDict())
.orderByAsc("sort_order");
List<SysDictItem> geOrderNumList = list(orderNumQueryWrapper);