|
@@ -1,26 +1,33 @@
|
|
|
package com.nb.web.service.system.service.impl;
|
|
package com.nb.web.service.system.service.impl;
|
|
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
|
|
+import cn.hutool.core.collection.CollectionUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
|
+import com.nb.common.config.utils.DictUtil;
|
|
|
import com.nb.core.exception.CustomException;
|
|
import com.nb.core.exception.CustomException;
|
|
|
import com.nb.web.service.system.common.dto.SysDictItemAddDTO;
|
|
import com.nb.web.service.system.common.dto.SysDictItemAddDTO;
|
|
|
import com.nb.web.service.system.common.dto.SysDictItemEditDTO;
|
|
import com.nb.web.service.system.common.dto.SysDictItemEditDTO;
|
|
|
import com.nb.web.service.system.common.dto.SysDictItemQueryDTO;
|
|
import com.nb.web.service.system.common.dto.SysDictItemQueryDTO;
|
|
|
|
|
+import com.nb.web.service.system.entity.SysDict;
|
|
|
import com.nb.web.service.system.entity.SysDictItem;
|
|
import com.nb.web.service.system.entity.SysDictItem;
|
|
|
import com.nb.web.service.system.mapper.SysDictItemMapper;
|
|
import com.nb.web.service.system.mapper.SysDictItemMapper;
|
|
|
import com.nb.web.service.system.service.ISysDictItemService;
|
|
import com.nb.web.service.system.service.ISysDictItemService;
|
|
|
import com.google.common.collect.Lists;
|
|
import com.google.common.collect.Lists;
|
|
|
|
|
+import com.nb.web.service.system.service.ISysDictService;
|
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
+import org.springframework.context.annotation.Lazy;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
import java.util.Arrays;
|
|
import java.util.Arrays;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
import java.util.Objects;
|
|
import java.util.Objects;
|
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* <p>
|
|
* <p>
|
|
@@ -33,6 +40,9 @@ import java.util.Objects;
|
|
|
@Service
|
|
@Service
|
|
|
public class SysDictItemServiceImpl extends ServiceImpl<SysDictItemMapper, SysDictItem> implements ISysDictItemService {
|
|
public class SysDictItemServiceImpl extends ServiceImpl<SysDictItemMapper, SysDictItem> implements ISysDictItemService {
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ @Lazy
|
|
|
|
|
+ private ISysDictService dictService;
|
|
|
@Override
|
|
@Override
|
|
|
public IPage<SysDictItem> page(Page reqPage, SysDictItemQueryDTO req) {
|
|
public IPage<SysDictItem> page(Page reqPage, SysDictItemQueryDTO req) {
|
|
|
if (Objects.isNull(req.getDictId())) {
|
|
if (Objects.isNull(req.getDictId())) {
|
|
@@ -71,6 +81,10 @@ public class SysDictItemServiceImpl extends ServiceImpl<SysDictItemMapper, SysDi
|
|
|
}
|
|
}
|
|
|
SysDictItem entity = BeanUtil.copyProperties(req, SysDictItem.class);
|
|
SysDictItem entity = BeanUtil.copyProperties(req, SysDictItem.class);
|
|
|
this.save(entity);
|
|
this.save(entity);
|
|
|
|
|
+ SysDict dict = dictService.getById(req.getDictId());
|
|
|
|
|
+ if (dict!=null&&StrUtil.isNotEmpty(dict.getDictCode())) {
|
|
|
|
|
+ DictUtil.clearDict(dict.getDictCode());
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -84,13 +98,32 @@ public class SysDictItemServiceImpl extends ServiceImpl<SysDictItemMapper, SysDi
|
|
|
}
|
|
}
|
|
|
SysDictItem entity = BeanUtil.copyProperties(req, SysDictItem.class);
|
|
SysDictItem entity = BeanUtil.copyProperties(req, SysDictItem.class);
|
|
|
this.updateById(entity);
|
|
this.updateById(entity);
|
|
|
|
|
+ SysDict dict = dictService.getById(req.getDictId());
|
|
|
|
|
+ if (dict!=null&&StrUtil.isNotEmpty(dict.getDictCode())) {
|
|
|
|
|
+ DictUtil.clearDict(dict.getDictCode());
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public void remove(String ids) {
|
|
public void remove(String ids) {
|
|
|
List<String> idList = Arrays.asList(ids.split(","));
|
|
List<String> idList = Arrays.asList(ids.split(","));
|
|
|
|
|
+ List<SysDictItem> sysDictItems = this.listByIds(idList);
|
|
|
|
|
+ if(CollectionUtil.isEmpty(sysDictItems)){
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
this.removeByIds(idList);
|
|
this.removeByIds(idList);
|
|
|
|
|
+
|
|
|
|
|
+ List<Long> dictIdCollect = sysDictItems.stream()
|
|
|
|
|
+ .map(SysDictItem::getDictId).distinct()
|
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
|
+ List<SysDict> dicts = dictService.listByIds(dictIdCollect);
|
|
|
|
|
+
|
|
|
|
|
+ for (SysDict dict : dicts) {
|
|
|
|
|
+ if (dict!=null&&StrUtil.isNotEmpty(dict.getDictCode())) {
|
|
|
|
|
+ DictUtil.clearDict(dict.getDictCode());
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|