diff --git a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/controller/DictTypeController.java b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/controller/DictTypeController.java index 6a3108286..653ec7470 100644 --- a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/controller/DictTypeController.java +++ b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/controller/DictTypeController.java @@ -13,7 +13,6 @@ import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData; import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; @@ -44,6 +43,18 @@ public class DictTypeController { return new SuccessResponseData(); } + /** + * 删除字典类型 + * + * @author fengshuonan + * @date 2018/7/25 下午12:36 + */ + @PostResource(name = "删除字典类型", path = "/dictType/deleteDictType", requiredPermission = false) + public ResponseData deleteDictType(@RequestBody @Validated(DictTypeRequest.delete.class) DictTypeRequest dictTypeRequest) { + this.dictTypeService.del(dictTypeRequest); + return new SuccessResponseData(); + } + /** * 修改字典类型 * @@ -68,18 +79,6 @@ public class DictTypeController { return new SuccessResponseData(); } - /** - * 删除字典类型 - * - * @author fengshuonan - * @date 2018/7/25 下午12:36 - */ - @PostResource(name = "删除字典类型", path = "/dictType/deleteDictType", requiredPermission = false) - public ResponseData deleteDictType(@RequestBody @Validated(DictTypeRequest.delete.class) DictTypeRequest dictTypeRequest) { - this.dictTypeService.del(dictTypeRequest); - return new SuccessResponseData(); - } - /** * 获取字典类型详情 * @@ -87,34 +86,8 @@ public class DictTypeController { * @date 2021/1/13 11:25 */ @GetResource(name = "获取字典类型详情", path = "/dictType/getDictDetail", requiredPermission = false) - public ResponseData getDictDetail(@RequestParam("dictTypeId") Long dictTypeId) { - SysDictType detail = this.dictTypeService.findDetail(dictTypeId); - return new SuccessResponseData(detail); - } - - /** - * 获取字典类型详情 - * - * @author fengshuonan - * @date 2021/1/13 11:25 - */ - @GetResource(name = "获取系统配置字典类型详情", path = "/dictType/getConfigDictTypeDetail", requiredPermission = false) - public ResponseData getConfigDictTypeDetail(DictTypeRequest dictTypeRequest) { - dictTypeRequest.setDictTypeCode(DictConstants.CONFIG_GROUP_DICT_TYPE_CODE); - SysDictType detail = this.dictTypeService.detailBy(dictTypeRequest); - return new SuccessResponseData(detail); - } - - /** - * 获取字典类型详情 - * - * @author fengshuonan - * @date 2021/1/13 11:25 - */ - @GetResource(name = "获取语种字典类型型详情", path = "/dictType/getTranslationDetail", requiredPermission = false) - public ResponseData getTranslationDetail(DictTypeRequest dictTypeRequest) { - dictTypeRequest.setDictTypeCode(DictConstants.LANGUAGES_DICT_TYPE_CODE); - SysDictType detail = this.dictTypeService.detailBy(dictTypeRequest); + public ResponseData getDictDetail(@RequestBody @Validated(BaseRequest.detail.class) DictTypeRequest dictTypeRequest) { + SysDictType detail = this.dictTypeService.detail(dictTypeRequest); return new SuccessResponseData(detail); } @@ -154,4 +127,31 @@ public class DictTypeController { return new SuccessResponseData(flag); } + + /** + * 获取字典类型详情 + * + * @author fengshuonan + * @date 2021/1/13 11:25 + */ + @GetResource(name = "获取系统配置字典类型详情", path = "/dictType/getConfigDictTypeDetail", requiredPermission = false) + public ResponseData getConfigDictTypeDetail(DictTypeRequest dictTypeRequest) { + dictTypeRequest.setDictTypeCode(DictConstants.CONFIG_GROUP_DICT_TYPE_CODE); + SysDictType detail = this.dictTypeService.detail(dictTypeRequest); + return new SuccessResponseData(detail); + } + + /** + * 获取字典类型详情 + * + * @author fengshuonan + * @date 2021/1/13 11:25 + */ + @GetResource(name = "获取语种字典类型型详情", path = "/dictType/getTranslationDetail", requiredPermission = false) + public ResponseData getTranslationDetail(DictTypeRequest dictTypeRequest) { + dictTypeRequest.setDictTypeCode(DictConstants.LANGUAGES_DICT_TYPE_CODE); + SysDictType detail = this.dictTypeService.detail(dictTypeRequest); + return new SuccessResponseData(detail); + } + } diff --git a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/mapper/DictTypeMapper.java b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/mapper/DictTypeMapper.java index 30583c142..f2829825f 100644 --- a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/mapper/DictTypeMapper.java +++ b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/mapper/DictTypeMapper.java @@ -1,12 +1,7 @@ package cn.stylefeng.roses.kernel.dict.modular.mapper; import cn.stylefeng.roses.kernel.dict.modular.entity.SysDictType; -import cn.stylefeng.roses.kernel.dict.modular.pojo.request.DictTypeRequest; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 字典类型表 Mapper 接口 @@ -16,24 +11,4 @@ import java.util.List; */ public interface DictTypeMapper extends BaseMapper { - /** - * 获取字典类型详情 - * - * @param dictTypeId 类型id - * @author huangyao - * @date 2021/1/10 17:25 - */ - SysDictType findDetail(@Param("dictTypeId") Long dictTypeId); - - /** - * 获取字典类型列表 - * - * @param page 分页对象 - * @param dictTypeRequest 字典类型对象 - * @return 字典列表 - * @author fengshuonan - * @date 2020/10/29 17:41 - */ - List findList(Page page, @Param("dictTypeRequest") DictTypeRequest dictTypeRequest); - } diff --git a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/mapper/mapping/DictTypeMapper.xml b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/mapper/mapping/DictTypeMapper.xml index 26aa109ea..2b13fe913 100644 --- a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/mapper/mapping/DictTypeMapper.xml +++ b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/mapper/mapping/DictTypeMapper.xml @@ -2,55 +2,4 @@ - - - - - diff --git a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/DictTypeService.java b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/DictTypeService.java index 4ef7b6d47..b02acdef0 100644 --- a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/DictTypeService.java +++ b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/DictTypeService.java @@ -25,6 +25,15 @@ public interface DictTypeService extends IService { */ void add(DictTypeRequest dictTypeRequest); + /** + * 删除字典类型 + * + * @param dictTypeRequest 字典类型请求 + * @author fengshuonan + * @date 2020/10/29 18:55 + */ + void del(DictTypeRequest dictTypeRequest); + /** * 修改字典类型 * @@ -44,13 +53,13 @@ public interface DictTypeService extends IService { void editStatus(DictTypeRequest dictTypeRequest); /** - * 删除字典类型 + * 查询-详情-按实体对象 * - * @param dictTypeRequest 字典类型请求 - * @author fengshuonan - * @date 2020/10/29 18:55 + * @param dictTypeRequest 参数对象 + * @author chenjinlong + * @date 2021/1/26 12:52 */ - void del(DictTypeRequest dictTypeRequest); + SysDictType detail(DictTypeRequest dictTypeRequest); /** * 获取字典类型列表 @@ -81,31 +90,4 @@ public interface DictTypeService extends IService { * @date 2020/10/29 18:56 */ boolean validateCodeAvailable(DictTypeRequest dictTypeRequest); - - /** - * 获取字典详情 - * - * @param dictTypeId 类型id - * @author huangyao - * @date 2021/1/10 17:27 - */ - SysDictType findDetail(Long dictTypeId); - - /** - * 查询-详情-按实体对象 - * - * @param dictTypeRequest 参数对象 - * @author chenjinlong - * @date 2021/1/26 12:52 - */ - SysDictType detailBy(DictTypeRequest dictTypeRequest); - - /** - * 查询-列表-按实体对象 - * - * @param dictTypeRequest 参数对象 - * @author chenjinlong - * @date 2021/1/26 12:52 - */ - List listBy(DictTypeRequest dictTypeRequest); } diff --git a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/impl/DictTypeServiceImpl.java b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/impl/DictTypeServiceImpl.java index 7164b4a5f..3f2bd0ce6 100644 --- a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/impl/DictTypeServiceImpl.java +++ b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/impl/DictTypeServiceImpl.java @@ -62,17 +62,35 @@ public class DictTypeServiceImpl extends ServiceImpl lambdaQueryWrapper = new LambdaUpdateWrapper<>(); + lambdaQueryWrapper.eq(SysDict::getDictTypeCode, oldSysDictType.getDictTypeCode()); + lambdaQueryWrapper.set(SysDict::getDelFlag, YesOrNotEnum.Y.getCode()); + dictService.update(lambdaQueryWrapper); + } + @Override public void edit(DictTypeRequest dictTypeRequest) { // 如果是系统级字典,只允许管理员操作 validateSystemTypeClassOperate(dictTypeRequest); - // 获取字典类型是否存在 - SysDictType oldSysDictType = this.baseMapper.selectById(dictTypeRequest.getDictTypeId()); - if (oldSysDictType == null) { - throw new DictException(DictExceptionEnum.DICT_TYPE_NOT_EXISTED, dictTypeRequest.getDictTypeId()); - } + // 获取字典类型 + SysDictType oldSysDictType = querySysDictType(dictTypeRequest); // 模型转化 BeanUtil.copyProperties(dictTypeRequest, oldSysDictType); @@ -92,11 +110,8 @@ public class DictTypeServiceImpl extends ServiceImpl list = this.findList(dictTypeRequest); + if (list.isEmpty()) { + return null; } - - // 字典类型删除 - sysDictType.setDelFlag(YesOrNotEnum.Y.getCode()); - this.baseMapper.updateById(sysDictType); - - // 逻辑删除所有改类型下的字典 - LambdaUpdateWrapper lambdaQueryWrapper = new LambdaUpdateWrapper<>(); - lambdaQueryWrapper.eq(SysDict::getDictTypeCode, sysDictType.getDictTypeCode()); - lambdaQueryWrapper.set(SysDict::getDelFlag, YesOrNotEnum.Y.getCode()); - dictService.update(lambdaQueryWrapper); + return list.get(0); } @Override public List findList(DictTypeRequest dictTypeRequest) { - return this.baseMapper.findList(null, dictTypeRequest); + LambdaQueryWrapper queryWrapper = this.createWrapper(dictTypeRequest); + return this.list(queryWrapper); } @Override public PageResult findPage(DictTypeRequest dictTypeRequest) { - - Page page = PageFactory.defaultPage(); - - if (dictTypeRequest == null) { - dictTypeRequest = new DictTypeRequest(); - } - - List list = this.baseMapper.findList(page, dictTypeRequest); - - return PageResultFactory.createPageResult(page.setRecords(list)); + LambdaQueryWrapper queryWrapper = this.createWrapper(dictTypeRequest); + Page page = this.page(PageFactory.defaultPage(), queryWrapper); + return PageResultFactory.createPageResult(page); } @Override @@ -170,26 +164,6 @@ public class DictTypeServiceImpl extends ServiceImpl list = this.listBy(dictTypeRequest); - if (list.isEmpty()) { - return null; - } - return list.get(0); - } - - @Override - public List listBy(DictTypeRequest dictTypeRequest) { - LambdaQueryWrapper queryWrapper = this.createWrapper(dictTypeRequest); - return this.list(queryWrapper); - } - /** * 校验dictTypeClass是否是系统字典,如果是系统字典只能超级管理员操作 * @@ -207,15 +181,13 @@ public class DictTypeServiceImpl extends ServiceImpl createWrapper(DictTypeRequest translationRequest) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + + // 查询未删除的 + queryWrapper.eq(SysDictType::getDelFlag, YesOrNotEnum.N.getCode()); + + if (ObjectUtil.isEmpty(translationRequest)) { + return queryWrapper; + } + + Long dictTypeId = translationRequest.getDictTypeId(); String dictTypeCode = translationRequest.getDictTypeCode(); String dictTypeName = translationRequest.getDictTypeName(); + + queryWrapper.eq(ObjectUtil.isNotNull(dictTypeId), SysDictType::getDictTypeId, dictTypeId); queryWrapper.eq(ObjectUtil.isNotNull(dictTypeCode), SysDictType::getDictTypeCode, dictTypeCode); queryWrapper.like(ObjectUtil.isNotNull(dictTypeName), SysDictType::getDictTypeName, dictTypeName); - queryWrapper.eq(SysDictType::getDelFlag, YesOrNotEnum.N.getCode()); return queryWrapper; }