Commit c4933976530a1b4bd80d081a8c094aa22d4653de
1 parent
a9c8f6c8
🔧 简化 dictType 和 dictData 模块的 VO
Showing
28 changed files
with
200 additions
and
500 deletions
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/dict/DictDataApiImpl.java
| 1 | package cn.iocoder.yudao.module.system.api.dict; | 1 | package cn.iocoder.yudao.module.system.api.dict; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | ||
| 3 | import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO; | 4 | import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO; |
| 4 | -import cn.iocoder.yudao.module.system.convert.dict.DictDataConvert; | ||
| 5 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; | 5 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; |
| 6 | import cn.iocoder.yudao.module.system.service.dict.DictDataService; | 6 | import cn.iocoder.yudao.module.system.service.dict.DictDataService; |
| 7 | import org.springframework.stereotype.Service; | 7 | import org.springframework.stereotype.Service; |
| @@ -28,13 +28,13 @@ public class DictDataApiImpl implements DictDataApi { | @@ -28,13 +28,13 @@ public class DictDataApiImpl implements DictDataApi { | ||
| 28 | @Override | 28 | @Override |
| 29 | public DictDataRespDTO getDictData(String dictType, String value) { | 29 | public DictDataRespDTO getDictData(String dictType, String value) { |
| 30 | DictDataDO dictData = dictDataService.getDictData(dictType, value); | 30 | DictDataDO dictData = dictDataService.getDictData(dictType, value); |
| 31 | - return DictDataConvert.INSTANCE.convert02(dictData); | 31 | + return BeanUtils.toBean(dictData, DictDataRespDTO.class); |
| 32 | } | 32 | } |
| 33 | 33 | ||
| 34 | @Override | 34 | @Override |
| 35 | public DictDataRespDTO parseDictData(String dictType, String label) { | 35 | public DictDataRespDTO parseDictData(String dictType, String label) { |
| 36 | DictDataDO dictData = dictDataService.parseDictData(dictType, label); | 36 | DictDataDO dictData = dictDataService.parseDictData(dictType, label); |
| 37 | - return DictDataConvert.INSTANCE.convert02(dictData); | 37 | + return BeanUtils.toBean(dictData, DictDataRespDTO.class); |
| 38 | } | 38 | } |
| 39 | 39 | ||
| 40 | } | 40 | } |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/DictDataController.java
| 1 | package cn.iocoder.yudao.module.system.controller.admin.dict; | 1 | package cn.iocoder.yudao.module.system.controller.admin.dict; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; | ||
| 4 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 4 | +import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||
| 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | ||
| 6 | import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; | 7 | import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; |
| 7 | import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; | 8 | import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; |
| 8 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.*; | ||
| 9 | -import cn.iocoder.yudao.module.system.convert.dict.DictDataConvert; | 9 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataPageReqVO; |
| 10 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataRespVO; | ||
| 11 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataSaveReqVO; | ||
| 12 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataSimpleRespVO; | ||
| 13 | +import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; | ||
| 10 | import cn.iocoder.yudao.module.system.service.dict.DictDataService; | 14 | import cn.iocoder.yudao.module.system.service.dict.DictDataService; |
| 11 | -import io.swagger.v3.oas.annotations.tags.Tag; | ||
| 12 | -import io.swagger.v3.oas.annotations.Parameter; | ||
| 13 | import io.swagger.v3.oas.annotations.Operation; | 15 | import io.swagger.v3.oas.annotations.Operation; |
| 16 | +import io.swagger.v3.oas.annotations.Parameter; | ||
| 17 | +import io.swagger.v3.oas.annotations.tags.Tag; | ||
| 14 | import org.springframework.security.access.prepost.PreAuthorize; | 18 | import org.springframework.security.access.prepost.PreAuthorize; |
| 15 | import org.springframework.validation.annotation.Validated; | 19 | import org.springframework.validation.annotation.Validated; |
| 16 | import org.springframework.web.bind.annotation.*; | 20 | import org.springframework.web.bind.annotation.*; |
| @@ -36,16 +40,16 @@ public class DictDataController { | @@ -36,16 +40,16 @@ public class DictDataController { | ||
| 36 | @PostMapping("/create") | 40 | @PostMapping("/create") |
| 37 | @Operation(summary = "新增字典数据") | 41 | @Operation(summary = "新增字典数据") |
| 38 | @PreAuthorize("@ss.hasPermission('system:dict:create')") | 42 | @PreAuthorize("@ss.hasPermission('system:dict:create')") |
| 39 | - public CommonResult<Long> createDictData(@Valid @RequestBody DictDataCreateReqVO reqVO) { | ||
| 40 | - Long dictDataId = dictDataService.createDictData(reqVO); | 43 | + public CommonResult<Long> createDictData(@Valid @RequestBody DictDataSaveReqVO createReqVO) { |
| 44 | + Long dictDataId = dictDataService.createDictData(createReqVO); | ||
| 41 | return success(dictDataId); | 45 | return success(dictDataId); |
| 42 | } | 46 | } |
| 43 | 47 | ||
| 44 | @PutMapping("/update") | 48 | @PutMapping("/update") |
| 45 | @Operation(summary = "修改字典数据") | 49 | @Operation(summary = "修改字典数据") |
| 46 | @PreAuthorize("@ss.hasPermission('system:dict:update')") | 50 | @PreAuthorize("@ss.hasPermission('system:dict:update')") |
| 47 | - public CommonResult<Boolean> updateDictData(@Valid @RequestBody DictDataUpdateReqVO reqVO) { | ||
| 48 | - dictDataService.updateDictData(reqVO); | 51 | + public CommonResult<Boolean> updateDictData(@Valid @RequestBody DictDataSaveReqVO updateReqVO) { |
| 52 | + dictDataService.updateDictData(updateReqVO); | ||
| 49 | return success(true); | 53 | return success(true); |
| 50 | } | 54 | } |
| 51 | 55 | ||
| @@ -63,14 +67,15 @@ public class DictDataController { | @@ -63,14 +67,15 @@ public class DictDataController { | ||
| 63 | // 无需添加权限认证,因为前端全局都需要 | 67 | // 无需添加权限认证,因为前端全局都需要 |
| 64 | public CommonResult<List<DictDataSimpleRespVO>> getSimpleDictDataList() { | 68 | public CommonResult<List<DictDataSimpleRespVO>> getSimpleDictDataList() { |
| 65 | List<DictDataDO> list = dictDataService.getDictDataList(); | 69 | List<DictDataDO> list = dictDataService.getDictDataList(); |
| 66 | - return success(DictDataConvert.INSTANCE.convertList(list)); | 70 | + return success(BeanUtils.toBean(list, DictDataSimpleRespVO.class)); |
| 67 | } | 71 | } |
| 68 | 72 | ||
| 69 | @GetMapping("/page") | 73 | @GetMapping("/page") |
| 70 | @Operation(summary = "/获得字典类型的分页列表") | 74 | @Operation(summary = "/获得字典类型的分页列表") |
| 71 | @PreAuthorize("@ss.hasPermission('system:dict:query')") | 75 | @PreAuthorize("@ss.hasPermission('system:dict:query')") |
| 72 | - public CommonResult<PageResult<DictDataRespVO>> getDictTypePage(@Valid DictDataPageReqVO reqVO) { | ||
| 73 | - return success(DictDataConvert.INSTANCE.convertPage(dictDataService.getDictDataPage(reqVO))); | 76 | + public CommonResult<PageResult<DictDataRespVO>> getDictTypePage(@Valid DictDataPageReqVO pageReqVO) { |
| 77 | + PageResult<DictDataDO> pageResult = dictDataService.getDictDataPage(pageReqVO); | ||
| 78 | + return success(BeanUtils.toBean(pageResult, DictDataRespVO.class)); | ||
| 74 | } | 79 | } |
| 75 | 80 | ||
| 76 | @GetMapping(value = "/get") | 81 | @GetMapping(value = "/get") |
| @@ -78,18 +83,20 @@ public class DictDataController { | @@ -78,18 +83,20 @@ public class DictDataController { | ||
| 78 | @Parameter(name = "id", description = "编号", required = true, example = "1024") | 83 | @Parameter(name = "id", description = "编号", required = true, example = "1024") |
| 79 | @PreAuthorize("@ss.hasPermission('system:dict:query')") | 84 | @PreAuthorize("@ss.hasPermission('system:dict:query')") |
| 80 | public CommonResult<DictDataRespVO> getDictData(@RequestParam("id") Long id) { | 85 | public CommonResult<DictDataRespVO> getDictData(@RequestParam("id") Long id) { |
| 81 | - return success(DictDataConvert.INSTANCE.convert(dictDataService.getDictData(id))); | 86 | + DictDataDO dictData = dictDataService.getDictData(id); |
| 87 | + return success(BeanUtils.toBean(dictData, DictDataRespVO.class)); | ||
| 82 | } | 88 | } |
| 83 | 89 | ||
| 84 | @GetMapping("/export") | 90 | @GetMapping("/export") |
| 85 | @Operation(summary = "导出字典数据") | 91 | @Operation(summary = "导出字典数据") |
| 86 | @PreAuthorize("@ss.hasPermission('system:dict:export')") | 92 | @PreAuthorize("@ss.hasPermission('system:dict:export')") |
| 87 | @OperateLog(type = EXPORT) | 93 | @OperateLog(type = EXPORT) |
| 88 | - public void export(HttpServletResponse response, @Valid DictDataExportReqVO reqVO) throws IOException { | ||
| 89 | - List<DictDataDO> list = dictDataService.getDictDataList(reqVO); | ||
| 90 | - List<DictDataExcelVO> data = DictDataConvert.INSTANCE.convertList02(list); | 94 | + public void export(HttpServletResponse response, @Valid DictDataPageReqVO exportReqVO) throws IOException { |
| 95 | + exportReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); | ||
| 96 | + List<DictDataDO> list = dictDataService.getDictDataPage(exportReqVO).getList(); | ||
| 91 | // 输出 | 97 | // 输出 |
| 92 | - ExcelUtils.write(response, "字典数据.xls", "数据列表", DictDataExcelVO.class, data); | 98 | + ExcelUtils.write(response, "字典数据.xls", "数据", DictDataRespVO.class, |
| 99 | + BeanUtils.toBean(list, DictDataRespVO.class)); | ||
| 93 | } | 100 | } |
| 94 | 101 | ||
| 95 | } | 102 | } |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/DictTypeController.java
| 1 | package cn.iocoder.yudao.module.system.controller.admin.dict; | 1 | package cn.iocoder.yudao.module.system.controller.admin.dict; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 4 | +import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||
| 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | ||
| 5 | import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; | 7 | import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; |
| 6 | import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; | 8 | import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; |
| 7 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.*; | ||
| 8 | -import cn.iocoder.yudao.module.system.convert.dict.DictTypeConvert; | 9 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypePageReqVO; |
| 10 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeRespVO; | ||
| 11 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeSaveReqVO; | ||
| 12 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeSimpleRespVO; | ||
| 9 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; | 13 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; |
| 10 | import cn.iocoder.yudao.module.system.service.dict.DictTypeService; | 14 | import cn.iocoder.yudao.module.system.service.dict.DictTypeService; |
| 11 | -import io.swagger.v3.oas.annotations.tags.Tag; | ||
| 12 | -import io.swagger.v3.oas.annotations.Parameter; | ||
| 13 | import io.swagger.v3.oas.annotations.Operation; | 15 | import io.swagger.v3.oas.annotations.Operation; |
| 16 | +import io.swagger.v3.oas.annotations.Parameter; | ||
| 17 | +import io.swagger.v3.oas.annotations.tags.Tag; | ||
| 14 | import org.springframework.security.access.prepost.PreAuthorize; | 18 | import org.springframework.security.access.prepost.PreAuthorize; |
| 15 | import org.springframework.validation.annotation.Validated; | 19 | import org.springframework.validation.annotation.Validated; |
| 16 | import org.springframework.web.bind.annotation.*; | 20 | import org.springframework.web.bind.annotation.*; |
| @@ -36,16 +40,16 @@ public class DictTypeController { | @@ -36,16 +40,16 @@ public class DictTypeController { | ||
| 36 | @PostMapping("/create") | 40 | @PostMapping("/create") |
| 37 | @Operation(summary = "创建字典类型") | 41 | @Operation(summary = "创建字典类型") |
| 38 | @PreAuthorize("@ss.hasPermission('system:dict:create')") | 42 | @PreAuthorize("@ss.hasPermission('system:dict:create')") |
| 39 | - public CommonResult<Long> createDictType(@Valid @RequestBody DictTypeCreateReqVO reqVO) { | ||
| 40 | - Long dictTypeId = dictTypeService.createDictType(reqVO); | 43 | + public CommonResult<Long> createDictType(@Valid @RequestBody DictTypeSaveReqVO createReqVO) { |
| 44 | + Long dictTypeId = dictTypeService.createDictType(createReqVO); | ||
| 41 | return success(dictTypeId); | 45 | return success(dictTypeId); |
| 42 | } | 46 | } |
| 43 | 47 | ||
| 44 | @PutMapping("/update") | 48 | @PutMapping("/update") |
| 45 | @Operation(summary = "修改字典类型") | 49 | @Operation(summary = "修改字典类型") |
| 46 | @PreAuthorize("@ss.hasPermission('system:dict:update')") | 50 | @PreAuthorize("@ss.hasPermission('system:dict:update')") |
| 47 | - public CommonResult<Boolean> updateDictType(@Valid @RequestBody DictTypeUpdateReqVO reqVO) { | ||
| 48 | - dictTypeService.updateDictType(reqVO); | 51 | + public CommonResult<Boolean> updateDictType(@Valid @RequestBody DictTypeSaveReqVO updateReqVO) { |
| 52 | + dictTypeService.updateDictType(updateReqVO); | ||
| 49 | return success(true); | 53 | return success(true); |
| 50 | } | 54 | } |
| 51 | 55 | ||
| @@ -58,11 +62,12 @@ public class DictTypeController { | @@ -58,11 +62,12 @@ public class DictTypeController { | ||
| 58 | return success(true); | 62 | return success(true); |
| 59 | } | 63 | } |
| 60 | 64 | ||
| 61 | - @Operation(summary = "/获得字典类型的分页列表") | ||
| 62 | @GetMapping("/page") | 65 | @GetMapping("/page") |
| 66 | + @Operation(summary = "获得字典类型的分页列表") | ||
| 63 | @PreAuthorize("@ss.hasPermission('system:dict:query')") | 67 | @PreAuthorize("@ss.hasPermission('system:dict:query')") |
| 64 | - public CommonResult<PageResult<DictTypeRespVO>> pageDictTypes(@Valid DictTypePageReqVO reqVO) { | ||
| 65 | - return success(DictTypeConvert.INSTANCE.convertPage(dictTypeService.getDictTypePage(reqVO))); | 68 | + public CommonResult<PageResult<DictTypeRespVO>> pageDictTypes(@Valid DictTypePageReqVO pageReqVO) { |
| 69 | + PageResult<DictTypeDO> pageResult = dictTypeService.getDictTypePage(pageReqVO); | ||
| 70 | + return success(BeanUtils.toBean(pageResult, DictTypeRespVO.class)); | ||
| 66 | } | 71 | } |
| 67 | 72 | ||
| 68 | @Operation(summary = "/查询字典类型详细") | 73 | @Operation(summary = "/查询字典类型详细") |
| @@ -70,26 +75,28 @@ public class DictTypeController { | @@ -70,26 +75,28 @@ public class DictTypeController { | ||
| 70 | @GetMapping(value = "/get") | 75 | @GetMapping(value = "/get") |
| 71 | @PreAuthorize("@ss.hasPermission('system:dict:query')") | 76 | @PreAuthorize("@ss.hasPermission('system:dict:query')") |
| 72 | public CommonResult<DictTypeRespVO> getDictType(@RequestParam("id") Long id) { | 77 | public CommonResult<DictTypeRespVO> getDictType(@RequestParam("id") Long id) { |
| 73 | - return success(DictTypeConvert.INSTANCE.convert(dictTypeService.getDictType(id))); | 78 | + DictTypeDO dictType = dictTypeService.getDictType(id); |
| 79 | + return success(BeanUtils.toBean(dictType, DictTypeRespVO.class)); | ||
| 74 | } | 80 | } |
| 75 | 81 | ||
| 76 | - @GetMapping("/list-all-simple") | 82 | + @GetMapping(value = {"/list-all-simple", "simple-list"}) |
| 77 | @Operation(summary = "获得全部字典类型列表", description = "包括开启 + 禁用的字典类型,主要用于前端的下拉选项") | 83 | @Operation(summary = "获得全部字典类型列表", description = "包括开启 + 禁用的字典类型,主要用于前端的下拉选项") |
| 78 | // 无需添加权限认证,因为前端全局都需要 | 84 | // 无需添加权限认证,因为前端全局都需要 |
| 79 | public CommonResult<List<DictTypeSimpleRespVO>> getSimpleDictTypeList() { | 85 | public CommonResult<List<DictTypeSimpleRespVO>> getSimpleDictTypeList() { |
| 80 | List<DictTypeDO> list = dictTypeService.getDictTypeList(); | 86 | List<DictTypeDO> list = dictTypeService.getDictTypeList(); |
| 81 | - return success(DictTypeConvert.INSTANCE.convertList(list)); | 87 | + return success(BeanUtils.toBean(list, DictTypeSimpleRespVO.class)); |
| 82 | } | 88 | } |
| 83 | 89 | ||
| 84 | @Operation(summary = "导出数据类型") | 90 | @Operation(summary = "导出数据类型") |
| 85 | @GetMapping("/export") | 91 | @GetMapping("/export") |
| 86 | @PreAuthorize("@ss.hasPermission('system:dict:query')") | 92 | @PreAuthorize("@ss.hasPermission('system:dict:query')") |
| 87 | @OperateLog(type = EXPORT) | 93 | @OperateLog(type = EXPORT) |
| 88 | - public void export(HttpServletResponse response, @Valid DictTypeExportReqVO reqVO) throws IOException { | ||
| 89 | - List<DictTypeDO> list = dictTypeService.getDictTypeList(reqVO); | ||
| 90 | - List<DictTypeExcelVO> data = DictTypeConvert.INSTANCE.convertList02(list); | ||
| 91 | - // 输出 | ||
| 92 | - ExcelUtils.write(response, "字典类型.xls", "类型列表", DictTypeExcelVO.class, data); | 94 | + public void export(HttpServletResponse response, @Valid DictTypePageReqVO exportReqVO) throws IOException { |
| 95 | + exportReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); | ||
| 96 | + List<DictTypeDO> list = dictTypeService.getDictTypePage(exportReqVO).getList(); | ||
| 97 | + // 导出 | ||
| 98 | + ExcelUtils.write(response, "字典类型.xls", "数据", DictTypeRespVO.class, | ||
| 99 | + BeanUtils.toBean(list, DictTypeRespVO.class)); | ||
| 93 | } | 100 | } |
| 94 | 101 | ||
| 95 | } | 102 | } |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/data/DictDataCreateReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.system.controller.admin.dict.vo.data; | ||
| 2 | - | ||
| 3 | -import io.swagger.v3.oas.annotations.media.Schema; | ||
| 4 | -import lombok.Data; | ||
| 5 | -import lombok.EqualsAndHashCode; | ||
| 6 | - | ||
| 7 | -@Schema(description = "管理后台 - 字典数据创建 Request VO") | ||
| 8 | -@Data | ||
| 9 | -@EqualsAndHashCode(callSuper = true) | ||
| 10 | -public class DictDataCreateReqVO extends DictDataBaseVO { | ||
| 11 | - | ||
| 12 | -} |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/data/DictDataExcelVO.java deleted
| 1 | -package cn.iocoder.yudao.module.system.controller.admin.dict.vo.data; | ||
| 2 | - | ||
| 3 | -import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat; | ||
| 4 | -import cn.iocoder.yudao.framework.excel.core.convert.DictConvert; | ||
| 5 | -import cn.iocoder.yudao.module.system.enums.DictTypeConstants; | ||
| 6 | -import com.alibaba.excel.annotation.ExcelProperty; | ||
| 7 | -import lombok.Data; | ||
| 8 | - | ||
| 9 | -/** | ||
| 10 | - * 字典数据 Excel 导出响应 VO | ||
| 11 | - */ | ||
| 12 | -@Data | ||
| 13 | -public class DictDataExcelVO { | ||
| 14 | - | ||
| 15 | - @ExcelProperty("字典编码") | ||
| 16 | - private Long id; | ||
| 17 | - | ||
| 18 | - @ExcelProperty("字典排序") | ||
| 19 | - private Integer sort; | ||
| 20 | - | ||
| 21 | - @ExcelProperty("字典标签") | ||
| 22 | - private String label; | ||
| 23 | - | ||
| 24 | - @ExcelProperty("字典键值") | ||
| 25 | - private String value; | ||
| 26 | - | ||
| 27 | - @ExcelProperty("字典类型") | ||
| 28 | - private String dictType; | ||
| 29 | - | ||
| 30 | - @ExcelProperty(value = "状态", converter = DictConvert.class) | ||
| 31 | - @DictFormat(DictTypeConstants.COMMON_STATUS) | ||
| 32 | - private Integer status; | ||
| 33 | - | ||
| 34 | -} |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/data/DictDataExportReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.system.controller.admin.dict.vo.data; | ||
| 2 | - | ||
| 3 | -import io.swagger.v3.oas.annotations.media.Schema; | ||
| 4 | -import lombok.Data; | ||
| 5 | - | ||
| 6 | -import javax.validation.constraints.Size; | ||
| 7 | - | ||
| 8 | -@Schema(description = "管理后台 - 字典类型导出 Request VO") | ||
| 9 | -@Data | ||
| 10 | -public class DictDataExportReqVO { | ||
| 11 | - | ||
| 12 | - @Schema(description = "字典标签", example = "芋道") | ||
| 13 | - @Size(max = 100, message = "字典标签长度不能超过100个字符") | ||
| 14 | - private String label; | ||
| 15 | - | ||
| 16 | - @Schema(description = "字典类型,模糊匹配", example = "sys_common_sex") | ||
| 17 | - @Size(max = 100, message = "字典类型类型长度不能超过100个字符") | ||
| 18 | - private String dictType; | ||
| 19 | - | ||
| 20 | - @Schema(description = "展示状态,参见 CommonStatusEnum 枚举类", example = "1") | ||
| 21 | - private Integer status; | ||
| 22 | - | ||
| 23 | -} |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/data/DictDataPageReqVO.java
| 1 | package cn.iocoder.yudao.module.system.controller.admin.dict.vo.data; | 1 | package cn.iocoder.yudao.module.system.controller.admin.dict.vo.data; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageParam; | 4 | import cn.iocoder.yudao.framework.common.pojo.PageParam; |
| 5 | +import cn.iocoder.yudao.framework.common.validation.InEnum; | ||
| 4 | import io.swagger.v3.oas.annotations.media.Schema; | 6 | import io.swagger.v3.oas.annotations.media.Schema; |
| 5 | import lombok.Data; | 7 | import lombok.Data; |
| 6 | import lombok.EqualsAndHashCode; | 8 | import lombok.EqualsAndHashCode; |
| @@ -21,6 +23,7 @@ public class DictDataPageReqVO extends PageParam { | @@ -21,6 +23,7 @@ public class DictDataPageReqVO extends PageParam { | ||
| 21 | private String dictType; | 23 | private String dictType; |
| 22 | 24 | ||
| 23 | @Schema(description = "展示状态,参见 CommonStatusEnum 枚举类", example = "1") | 25 | @Schema(description = "展示状态,参见 CommonStatusEnum 枚举类", example = "1") |
| 26 | + @InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}") | ||
| 24 | private Integer status; | 27 | private Integer status; |
| 25 | 28 | ||
| 26 | } | 29 | } |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/data/DictDataRespVO.java
| 1 | package cn.iocoder.yudao.module.system.controller.admin.dict.vo.data; | 1 | package cn.iocoder.yudao.module.system.controller.admin.dict.vo.data; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat; | ||
| 4 | +import cn.iocoder.yudao.framework.excel.core.convert.DictConvert; | ||
| 5 | +import cn.iocoder.yudao.module.system.enums.DictTypeConstants; | ||
| 6 | +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; | ||
| 7 | +import com.alibaba.excel.annotation.ExcelProperty; | ||
| 3 | import io.swagger.v3.oas.annotations.media.Schema; | 8 | import io.swagger.v3.oas.annotations.media.Schema; |
| 4 | -import lombok.AllArgsConstructor; | ||
| 5 | import lombok.Data; | 9 | import lombok.Data; |
| 6 | -import lombok.EqualsAndHashCode; | ||
| 7 | -import lombok.NoArgsConstructor; | ||
| 8 | 10 | ||
| 9 | import java.time.LocalDateTime; | 11 | import java.time.LocalDateTime; |
| 10 | 12 | ||
| 11 | @Schema(description = "管理后台 - 字典数据信息 Response VO") | 13 | @Schema(description = "管理后台 - 字典数据信息 Response VO") |
| 12 | @Data | 14 | @Data |
| 13 | -@NoArgsConstructor | ||
| 14 | -@AllArgsConstructor | ||
| 15 | -@EqualsAndHashCode(callSuper = true) | ||
| 16 | -public class DictDataRespVO extends DictDataBaseVO { | 15 | +@ExcelIgnoreUnannotated |
| 16 | +public class DictDataRespVO { | ||
| 17 | 17 | ||
| 18 | @Schema(description = "字典数据编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") | 18 | @Schema(description = "字典数据编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") |
| 19 | + @ExcelProperty("字典编码") | ||
| 19 | private Long id; | 20 | private Long id; |
| 20 | 21 | ||
| 22 | + @Schema(description = "显示顺序不能为空", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") | ||
| 23 | + @ExcelProperty("字典排序") | ||
| 24 | + private Integer sort; | ||
| 25 | + | ||
| 26 | + @Schema(description = "字典标签", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋道") | ||
| 27 | + @ExcelProperty("字典标签") | ||
| 28 | + private String label; | ||
| 29 | + | ||
| 30 | + @Schema(description = "字典值", requiredMode = Schema.RequiredMode.REQUIRED, example = "iocoder") | ||
| 31 | + @ExcelProperty("字典键值") | ||
| 32 | + private String value; | ||
| 33 | + | ||
| 34 | + @Schema(description = "字典类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "sys_common_sex") | ||
| 35 | + @ExcelProperty("字典类型") | ||
| 36 | + private String dictType; | ||
| 37 | + | ||
| 38 | + @Schema(description = "状态,见 CommonStatusEnum 枚举", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") | ||
| 39 | + @ExcelProperty(value = "状态", converter = DictConvert.class) | ||
| 40 | + @DictFormat(DictTypeConstants.COMMON_STATUS) | ||
| 41 | + private Integer status; | ||
| 42 | + | ||
| 43 | + @Schema(description = "颜色类型,default、primary、success、info、warning、danger", example = "default") | ||
| 44 | + private String colorType; | ||
| 45 | + | ||
| 46 | + @Schema(description = "css 样式", example = "btn-visible") | ||
| 47 | + private String cssClass; | ||
| 48 | + | ||
| 49 | + @Schema(description = "备注", example = "我是一个角色") | ||
| 50 | + private String remark; | ||
| 51 | + | ||
| 21 | @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "时间戳格式") | 52 | @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "时间戳格式") |
| 22 | private LocalDateTime createTime; | 53 | private LocalDateTime createTime; |
| 23 | 54 |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/data/DictDataBaseVO.java renamed to yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/data/DictDataSaveReqVO.java
| 1 | package cn.iocoder.yudao.module.system.controller.admin.dict.vo.data; | 1 | package cn.iocoder.yudao.module.system.controller.admin.dict.vo.data; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | ||
| 4 | +import cn.iocoder.yudao.framework.common.validation.InEnum; | ||
| 3 | import io.swagger.v3.oas.annotations.media.Schema; | 5 | import io.swagger.v3.oas.annotations.media.Schema; |
| 4 | import lombok.Data; | 6 | import lombok.Data; |
| 5 | 7 | ||
| @@ -7,12 +9,12 @@ import javax.validation.constraints.NotBlank; | @@ -7,12 +9,12 @@ import javax.validation.constraints.NotBlank; | ||
| 7 | import javax.validation.constraints.NotNull; | 9 | import javax.validation.constraints.NotNull; |
| 8 | import javax.validation.constraints.Size; | 10 | import javax.validation.constraints.Size; |
| 9 | 11 | ||
| 10 | -/** | ||
| 11 | - * 字典数据 Base VO,提供给添加、修改、详细的子 VO 使用 | ||
| 12 | - * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成 | ||
| 13 | - */ | 12 | +@Schema(description = "管理后台 - 字典数据创建/修改 Request VO") |
| 14 | @Data | 13 | @Data |
| 15 | -public class DictDataBaseVO { | 14 | +public class DictDataSaveReqVO { |
| 15 | + | ||
| 16 | + @Schema(description = "字典数据编号", example = "1024") | ||
| 17 | + private Long id; | ||
| 16 | 18 | ||
| 17 | @Schema(description = "显示顺序不能为空", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") | 19 | @Schema(description = "显示顺序不能为空", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") |
| 18 | @NotNull(message = "显示顺序不能为空") | 20 | @NotNull(message = "显示顺序不能为空") |
| @@ -35,11 +37,12 @@ public class DictDataBaseVO { | @@ -35,11 +37,12 @@ public class DictDataBaseVO { | ||
| 35 | 37 | ||
| 36 | @Schema(description = "状态,见 CommonStatusEnum 枚举", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") | 38 | @Schema(description = "状态,见 CommonStatusEnum 枚举", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") |
| 37 | @NotNull(message = "状态不能为空") | 39 | @NotNull(message = "状态不能为空") |
| 38 | -// @InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}") | 40 | + @InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}") |
| 39 | private Integer status; | 41 | private Integer status; |
| 40 | 42 | ||
| 41 | @Schema(description = "颜色类型,default、primary、success、info、warning、danger", example = "default") | 43 | @Schema(description = "颜色类型,default、primary、success、info、warning、danger", example = "default") |
| 42 | private String colorType; | 44 | private String colorType; |
| 45 | + | ||
| 43 | @Schema(description = "css 样式", example = "btn-visible") | 46 | @Schema(description = "css 样式", example = "btn-visible") |
| 44 | private String cssClass; | 47 | private String cssClass; |
| 45 | 48 |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/data/DictDataUpdateReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.system.controller.admin.dict.vo.data; | ||
| 2 | - | ||
| 3 | -import io.swagger.v3.oas.annotations.media.Schema; | ||
| 4 | -import lombok.Data; | ||
| 5 | -import lombok.EqualsAndHashCode; | ||
| 6 | - | ||
| 7 | -import javax.validation.constraints.NotNull; | ||
| 8 | - | ||
| 9 | -@Schema(description = "管理后台 - 字典数据更新 Request VO") | ||
| 10 | -@Data | ||
| 11 | -@EqualsAndHashCode(callSuper = true) | ||
| 12 | -public class DictDataUpdateReqVO extends DictDataBaseVO { | ||
| 13 | - | ||
| 14 | - @Schema(description = "字典数据编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") | ||
| 15 | - @NotNull(message = "字典数据编号不能为空") | ||
| 16 | - private Long id; | ||
| 17 | - | ||
| 18 | -} |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/type/DictTypeCreateReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.system.controller.admin.dict.vo.type; | ||
| 2 | - | ||
| 3 | -import io.swagger.v3.oas.annotations.media.Schema; | ||
| 4 | -import lombok.Data; | ||
| 5 | -import lombok.EqualsAndHashCode; | ||
| 6 | - | ||
| 7 | -import javax.validation.constraints.NotNull; | ||
| 8 | -import javax.validation.constraints.Size; | ||
| 9 | - | ||
| 10 | -@Schema(description = "管理后台 - 字典类型创建 Request VO") | ||
| 11 | -@Data | ||
| 12 | -@EqualsAndHashCode(callSuper = true) | ||
| 13 | -public class DictTypeCreateReqVO extends DictTypeBaseVO { | ||
| 14 | - | ||
| 15 | - @Schema(description = "字典类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "sys_common_sex") | ||
| 16 | - @NotNull(message = "字典类型不能为空") | ||
| 17 | - @Size(max = 100, message = "字典类型类型长度不能超过100个字符") | ||
| 18 | - private String type; | ||
| 19 | - | ||
| 20 | -} |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/type/DictTypeExcelVO.java deleted
| 1 | -package cn.iocoder.yudao.module.system.controller.admin.dict.vo.type; | ||
| 2 | - | ||
| 3 | -import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat; | ||
| 4 | -import cn.iocoder.yudao.framework.excel.core.convert.DictConvert; | ||
| 5 | -import cn.iocoder.yudao.module.system.enums.DictTypeConstants; | ||
| 6 | -import com.alibaba.excel.annotation.ExcelProperty; | ||
| 7 | -import lombok.Data; | ||
| 8 | - | ||
| 9 | -/** | ||
| 10 | - * 字典类型 Excel 导出响应 VO | ||
| 11 | - */ | ||
| 12 | -@Data | ||
| 13 | -public class DictTypeExcelVO { | ||
| 14 | - | ||
| 15 | - @ExcelProperty("字典主键") | ||
| 16 | - private Long id; | ||
| 17 | - | ||
| 18 | - @ExcelProperty("字典名称") | ||
| 19 | - private String name; | ||
| 20 | - | ||
| 21 | - @ExcelProperty("字典类型") | ||
| 22 | - private String type; | ||
| 23 | - | ||
| 24 | - @ExcelProperty(value = "状态", converter = DictConvert.class) | ||
| 25 | - @DictFormat(DictTypeConstants.COMMON_STATUS) | ||
| 26 | - private Integer status; | ||
| 27 | - | ||
| 28 | -} |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/type/DictTypeExportReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.system.controller.admin.dict.vo.type; | ||
| 2 | - | ||
| 3 | -import io.swagger.v3.oas.annotations.media.Schema; | ||
| 4 | -import lombok.Data; | ||
| 5 | -import org.springframework.format.annotation.DateTimeFormat; | ||
| 6 | - | ||
| 7 | -import java.time.LocalDateTime; | ||
| 8 | - | ||
| 9 | -import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; | ||
| 10 | - | ||
| 11 | -@Schema(description = "管理后台 - 字典类型分页列表 Request VO") | ||
| 12 | -@Data | ||
| 13 | -public class DictTypeExportReqVO { | ||
| 14 | - | ||
| 15 | - @Schema(description = "字典类型名称,模糊匹配", example = "芋道") | ||
| 16 | - private String name; | ||
| 17 | - | ||
| 18 | - @Schema(description = "字典类型,模糊匹配", example = "sys_common_sex") | ||
| 19 | - private String type; | ||
| 20 | - | ||
| 21 | - @Schema(description = "展示状态,参见 CommonStatusEnum 枚举类", example = "1") | ||
| 22 | - private Integer status; | ||
| 23 | - | ||
| 24 | - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) | ||
| 25 | - @Schema(description = "创建时间") | ||
| 26 | - private LocalDateTime[] createTime; | ||
| 27 | - | ||
| 28 | -} |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/type/DictTypeRespVO.java
| 1 | package cn.iocoder.yudao.module.system.controller.admin.dict.vo.type; | 1 | package cn.iocoder.yudao.module.system.controller.admin.dict.vo.type; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat; | ||
| 4 | +import cn.iocoder.yudao.framework.excel.core.convert.DictConvert; | ||
| 5 | +import cn.iocoder.yudao.module.system.enums.DictTypeConstants; | ||
| 6 | +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; | ||
| 7 | +import com.alibaba.excel.annotation.ExcelProperty; | ||
| 3 | import io.swagger.v3.oas.annotations.media.Schema; | 8 | import io.swagger.v3.oas.annotations.media.Schema; |
| 4 | -import lombok.AllArgsConstructor; | ||
| 5 | import lombok.Data; | 9 | import lombok.Data; |
| 6 | -import lombok.EqualsAndHashCode; | ||
| 7 | -import lombok.NoArgsConstructor; | ||
| 8 | 10 | ||
| 9 | import java.time.LocalDateTime; | 11 | import java.time.LocalDateTime; |
| 10 | 12 | ||
| 11 | @Schema(description = "管理后台 - 字典类型信息 Response VO") | 13 | @Schema(description = "管理后台 - 字典类型信息 Response VO") |
| 12 | @Data | 14 | @Data |
| 13 | -@NoArgsConstructor | ||
| 14 | -@AllArgsConstructor | ||
| 15 | -@EqualsAndHashCode(callSuper = true) | ||
| 16 | -public class DictTypeRespVO extends DictTypeBaseVO { | 15 | +@ExcelIgnoreUnannotated |
| 16 | +public class DictTypeRespVO { | ||
| 17 | 17 | ||
| 18 | @Schema(description = "字典类型编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") | 18 | @Schema(description = "字典类型编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") |
| 19 | + @ExcelProperty("字典主键") | ||
| 19 | private Long id; | 20 | private Long id; |
| 20 | 21 | ||
| 22 | + @Schema(description = "字典名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "性别") | ||
| 23 | + @ExcelProperty("字典名称") | ||
| 24 | + private String name; | ||
| 25 | + | ||
| 21 | @Schema(description = "字典类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "sys_common_sex") | 26 | @Schema(description = "字典类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "sys_common_sex") |
| 27 | + @ExcelProperty("字典类型") | ||
| 22 | private String type; | 28 | private String type; |
| 23 | 29 | ||
| 30 | + @Schema(description = "状态,参见 CommonStatusEnum 枚举类", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") | ||
| 31 | + @ExcelProperty(value = "状态", converter = DictConvert.class) | ||
| 32 | + @DictFormat(DictTypeConstants.COMMON_STATUS) | ||
| 33 | + private Integer status; | ||
| 34 | + | ||
| 35 | + @Schema(description = "备注", example = "快乐的备注") | ||
| 36 | + private String remark; | ||
| 37 | + | ||
| 24 | @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "时间戳格式") | 38 | @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "时间戳格式") |
| 25 | private LocalDateTime createTime; | 39 | private LocalDateTime createTime; |
| 26 | 40 |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/type/DictTypeBaseVO.java renamed to yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/type/DictTypeSaveReqVO.java
| @@ -7,18 +7,23 @@ import javax.validation.constraints.NotBlank; | @@ -7,18 +7,23 @@ import javax.validation.constraints.NotBlank; | ||
| 7 | import javax.validation.constraints.NotNull; | 7 | import javax.validation.constraints.NotNull; |
| 8 | import javax.validation.constraints.Size; | 8 | import javax.validation.constraints.Size; |
| 9 | 9 | ||
| 10 | -/** | ||
| 11 | - * 字典类型 Base VO,提供给添加、修改、详细的子 VO 使用 | ||
| 12 | - * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成 | ||
| 13 | - */ | 10 | +@Schema(description = "管理后台 - 字典类型创建/修改 Request VO") |
| 14 | @Data | 11 | @Data |
| 15 | -public class DictTypeBaseVO { | 12 | +public class DictTypeSaveReqVO { |
| 13 | + | ||
| 14 | + @Schema(description = "字典类型编号", example = "1024") | ||
| 15 | + private Long id; | ||
| 16 | 16 | ||
| 17 | @Schema(description = "字典名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "性别") | 17 | @Schema(description = "字典名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "性别") |
| 18 | @NotBlank(message = "字典名称不能为空") | 18 | @NotBlank(message = "字典名称不能为空") |
| 19 | @Size(max = 100, message = "字典类型名称长度不能超过100个字符") | 19 | @Size(max = 100, message = "字典类型名称长度不能超过100个字符") |
| 20 | private String name; | 20 | private String name; |
| 21 | 21 | ||
| 22 | + @Schema(description = "字典类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "sys_common_sex") | ||
| 23 | + @NotNull(message = "字典类型不能为空") | ||
| 24 | + @Size(max = 100, message = "字典类型类型长度不能超过 100 个字符") | ||
| 25 | + private String type; | ||
| 26 | + | ||
| 22 | @Schema(description = "状态,参见 CommonStatusEnum 枚举类", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") | 27 | @Schema(description = "状态,参见 CommonStatusEnum 枚举类", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") |
| 23 | @NotNull(message = "状态不能为空") | 28 | @NotNull(message = "状态不能为空") |
| 24 | private Integer status; | 29 | private Integer status; |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/type/DictTypeSimpleRespVO.java
| 1 | package cn.iocoder.yudao.module.system.controller.admin.dict.vo.type; | 1 | package cn.iocoder.yudao.module.system.controller.admin.dict.vo.type; |
| 2 | 2 | ||
| 3 | import io.swagger.v3.oas.annotations.media.Schema; | 3 | import io.swagger.v3.oas.annotations.media.Schema; |
| 4 | -import lombok.AllArgsConstructor; | ||
| 5 | import lombok.Data; | 4 | import lombok.Data; |
| 6 | -import lombok.NoArgsConstructor; | ||
| 7 | 5 | ||
| 8 | @Schema(description = "管理后台 - 字典类型精简信息 Response VO") | 6 | @Schema(description = "管理后台 - 字典类型精简信息 Response VO") |
| 9 | @Data | 7 | @Data |
| 10 | -@NoArgsConstructor | ||
| 11 | -@AllArgsConstructor | ||
| 12 | public class DictTypeSimpleRespVO { | 8 | public class DictTypeSimpleRespVO { |
| 13 | 9 | ||
| 14 | @Schema(description = "字典类型编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") | 10 | @Schema(description = "字典类型编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/vo/type/DictTypeUpdateReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.system.controller.admin.dict.vo.type; | ||
| 2 | - | ||
| 3 | -import io.swagger.v3.oas.annotations.media.Schema; | ||
| 4 | -import lombok.Data; | ||
| 5 | -import lombok.EqualsAndHashCode; | ||
| 6 | - | ||
| 7 | -import javax.validation.constraints.NotNull; | ||
| 8 | - | ||
| 9 | -@Schema(description = "管理后台 - 字典类型更新 Request VO") | ||
| 10 | -@Data | ||
| 11 | -@EqualsAndHashCode(callSuper = true) | ||
| 12 | -public class DictTypeUpdateReqVO extends DictTypeBaseVO { | ||
| 13 | - | ||
| 14 | - @Schema(description = "字典类型编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") | ||
| 15 | - @NotNull(message = "字典类型编号不能为空") | ||
| 16 | - private Long id; | ||
| 17 | - | ||
| 18 | -} |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/dict/AppDictDataController.java
| 1 | package cn.iocoder.yudao.module.system.controller.app.dict; | 1 | package cn.iocoder.yudao.module.system.controller.app.dict; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 4 | +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | ||
| 4 | import cn.iocoder.yudao.module.system.controller.app.dict.vo.AppDictDataRespVO; | 5 | import cn.iocoder.yudao.module.system.controller.app.dict.vo.AppDictDataRespVO; |
| 5 | -import cn.iocoder.yudao.module.system.convert.dict.DictDataConvert; | ||
| 6 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; | 6 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; |
| 7 | import cn.iocoder.yudao.module.system.service.dict.DictDataService; | 7 | import cn.iocoder.yudao.module.system.service.dict.DictDataService; |
| 8 | import io.swagger.v3.oas.annotations.Operation; | 8 | import io.swagger.v3.oas.annotations.Operation; |
| @@ -33,7 +33,7 @@ public class AppDictDataController { | @@ -33,7 +33,7 @@ public class AppDictDataController { | ||
| 33 | @Parameter(name = "type", description = "字典类型", required = true, example = "common_status") | 33 | @Parameter(name = "type", description = "字典类型", required = true, example = "common_status") |
| 34 | public CommonResult<List<AppDictDataRespVO>> getDictDataListByType(@RequestParam("type") String type) { | 34 | public CommonResult<List<AppDictDataRespVO>> getDictDataListByType(@RequestParam("type") String type) { |
| 35 | List<DictDataDO> list = dictDataService.getEnabledDictDataListByType(type); | 35 | List<DictDataDO> list = dictDataService.getEnabledDictDataListByType(type); |
| 36 | - return success(DictDataConvert.INSTANCE.convertList03(list)); | 36 | + return success(BeanUtils.toBean(list, AppDictDataRespVO.class)); |
| 37 | } | 37 | } |
| 38 | 38 | ||
| 39 | } | 39 | } |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/convert/dict/DictDataConvert.java deleted
| 1 | -package cn.iocoder.yudao.module.system.convert.dict; | ||
| 2 | - | ||
| 3 | -import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||
| 4 | -import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO; | ||
| 5 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.*; | ||
| 6 | -import cn.iocoder.yudao.module.system.controller.app.dict.vo.AppDictDataRespVO; | ||
| 7 | -import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; | ||
| 8 | -import org.mapstruct.Mapper; | ||
| 9 | -import org.mapstruct.factory.Mappers; | ||
| 10 | - | ||
| 11 | -import java.util.List; | ||
| 12 | - | ||
| 13 | -@Mapper | ||
| 14 | -public interface DictDataConvert { | ||
| 15 | - | ||
| 16 | - DictDataConvert INSTANCE = Mappers.getMapper(DictDataConvert.class); | ||
| 17 | - | ||
| 18 | - List<DictDataSimpleRespVO> convertList(List<DictDataDO> list); | ||
| 19 | - | ||
| 20 | - DictDataRespVO convert(DictDataDO bean); | ||
| 21 | - | ||
| 22 | - PageResult<DictDataRespVO> convertPage(PageResult<DictDataDO> page); | ||
| 23 | - | ||
| 24 | - DictDataDO convert(DictDataUpdateReqVO bean); | ||
| 25 | - | ||
| 26 | - DictDataDO convert(DictDataCreateReqVO bean); | ||
| 27 | - | ||
| 28 | - List<DictDataExcelVO> convertList02(List<DictDataDO> bean); | ||
| 29 | - | ||
| 30 | - DictDataRespDTO convert02(DictDataDO bean); | ||
| 31 | - | ||
| 32 | - List<AppDictDataRespVO> convertList03(List<DictDataDO> list); | ||
| 33 | - | ||
| 34 | -} |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/convert/dict/DictTypeConvert.java deleted
| 1 | -package cn.iocoder.yudao.module.system.convert.dict; | ||
| 2 | - | ||
| 3 | -import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||
| 4 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.*; | ||
| 5 | -import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; | ||
| 6 | -import org.mapstruct.Mapper; | ||
| 7 | -import org.mapstruct.factory.Mappers; | ||
| 8 | - | ||
| 9 | -import java.util.List; | ||
| 10 | - | ||
| 11 | -@Mapper | ||
| 12 | -public interface DictTypeConvert { | ||
| 13 | - | ||
| 14 | - DictTypeConvert INSTANCE = Mappers.getMapper(DictTypeConvert.class); | ||
| 15 | - | ||
| 16 | - PageResult<DictTypeRespVO> convertPage(PageResult<DictTypeDO> bean); | ||
| 17 | - | ||
| 18 | - DictTypeRespVO convert(DictTypeDO bean); | ||
| 19 | - | ||
| 20 | - DictTypeDO convert(DictTypeCreateReqVO bean); | ||
| 21 | - | ||
| 22 | - DictTypeDO convert(DictTypeUpdateReqVO bean); | ||
| 23 | - | ||
| 24 | - List<DictTypeSimpleRespVO> convertList(List<DictTypeDO> list); | ||
| 25 | - | ||
| 26 | - List<DictTypeExcelVO> convertList02(List<DictTypeDO> list); | ||
| 27 | - | ||
| 28 | -} |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/dict/DictDataMapper.java
| @@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.system.dal.mysql.dict; | @@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.system.dal.mysql.dict; | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
| 5 | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; | 5 | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; |
| 6 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataExportReqVO; | ||
| 7 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataPageReqVO; | 6 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataPageReqVO; |
| 8 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; | 7 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; |
| 9 | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | 8 | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| @@ -41,13 +40,6 @@ public interface DictDataMapper extends BaseMapperX<DictDataDO> { | @@ -41,13 +40,6 @@ public interface DictDataMapper extends BaseMapperX<DictDataDO> { | ||
| 41 | .orderByDesc(Arrays.asList(DictDataDO::getDictType, DictDataDO::getSort))); | 40 | .orderByDesc(Arrays.asList(DictDataDO::getDictType, DictDataDO::getSort))); |
| 42 | } | 41 | } |
| 43 | 42 | ||
| 44 | - default List<DictDataDO> selectList(DictDataExportReqVO reqVO) { | ||
| 45 | - return selectList(new LambdaQueryWrapperX<DictDataDO>() | ||
| 46 | - .likeIfPresent(DictDataDO::getLabel, reqVO.getLabel()) | ||
| 47 | - .eqIfPresent(DictDataDO::getDictType, reqVO.getDictType()) | ||
| 48 | - .eqIfPresent(DictDataDO::getStatus, reqVO.getStatus())); | ||
| 49 | - } | ||
| 50 | - | ||
| 51 | default List<DictDataDO> selectListByTypeAndStatus(String dictType, Integer status) { | 43 | default List<DictDataDO> selectListByTypeAndStatus(String dictType, Integer status) { |
| 52 | return selectList(new LambdaQueryWrapper<DictDataDO>() | 44 | return selectList(new LambdaQueryWrapper<DictDataDO>() |
| 53 | .eq(DictDataDO::getDictType, dictType) | 45 | .eq(DictDataDO::getDictType, dictType) |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/dict/DictTypeMapper.java
| @@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.system.dal.mysql.dict; | @@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.system.dal.mysql.dict; | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
| 5 | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; | 5 | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; |
| 6 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeExportReqVO; | ||
| 7 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypePageReqVO; | 6 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypePageReqVO; |
| 8 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; | 7 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; |
| 9 | import org.apache.ibatis.annotations.Mapper; | 8 | import org.apache.ibatis.annotations.Mapper; |
| @@ -11,7 +10,6 @@ import org.apache.ibatis.annotations.Param; | @@ -11,7 +10,6 @@ import org.apache.ibatis.annotations.Param; | ||
| 11 | import org.apache.ibatis.annotations.Update; | 10 | import org.apache.ibatis.annotations.Update; |
| 12 | 11 | ||
| 13 | import java.time.LocalDateTime; | 12 | import java.time.LocalDateTime; |
| 14 | -import java.util.List; | ||
| 15 | 13 | ||
| 16 | @Mapper | 14 | @Mapper |
| 17 | public interface DictTypeMapper extends BaseMapperX<DictTypeDO> { | 15 | public interface DictTypeMapper extends BaseMapperX<DictTypeDO> { |
| @@ -25,14 +23,6 @@ public interface DictTypeMapper extends BaseMapperX<DictTypeDO> { | @@ -25,14 +23,6 @@ public interface DictTypeMapper extends BaseMapperX<DictTypeDO> { | ||
| 25 | .orderByDesc(DictTypeDO::getId)); | 23 | .orderByDesc(DictTypeDO::getId)); |
| 26 | } | 24 | } |
| 27 | 25 | ||
| 28 | - default List<DictTypeDO> selectList(DictTypeExportReqVO reqVO) { | ||
| 29 | - return selectList(new LambdaQueryWrapperX<DictTypeDO>() | ||
| 30 | - .likeIfPresent(DictTypeDO::getName, reqVO.getName()) | ||
| 31 | - .likeIfPresent(DictTypeDO::getType, reqVO.getType()) | ||
| 32 | - .eqIfPresent(DictTypeDO::getStatus, reqVO.getStatus()) | ||
| 33 | - .betweenIfPresent(DictTypeDO::getCreateTime, reqVO.getCreateTime())); | ||
| 34 | - } | ||
| 35 | - | ||
| 36 | default DictTypeDO selectByType(String type) { | 26 | default DictTypeDO selectByType(String type) { |
| 37 | return selectOne(DictTypeDO::getType, type); | 27 | return selectOne(DictTypeDO::getType, type); |
| 38 | } | 28 | } |
| @@ -41,8 +31,7 @@ public interface DictTypeMapper extends BaseMapperX<DictTypeDO> { | @@ -41,8 +31,7 @@ public interface DictTypeMapper extends BaseMapperX<DictTypeDO> { | ||
| 41 | return selectOne(DictTypeDO::getName, name); | 31 | return selectOne(DictTypeDO::getName, name); |
| 42 | } | 32 | } |
| 43 | 33 | ||
| 44 | - int deleteById(@Param("id") Long id, @Param("deletedTime") LocalDateTime deletedTime); | ||
| 45 | - | ||
| 46 | @Update("UPDATE system_dict_type SET deleted = 1, deleted_time = #{deletedTime} WHERE id = #{id}") | 34 | @Update("UPDATE system_dict_type SET deleted = 1, deleted_time = #{deletedTime} WHERE id = #{id}") |
| 47 | void updateToDelete(@Param("id") Long id, @Param("deletedTime") LocalDateTime deletedTime); | 35 | void updateToDelete(@Param("id") Long id, @Param("deletedTime") LocalDateTime deletedTime); |
| 36 | + | ||
| 48 | } | 37 | } |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dict/DictDataService.java
| 1 | package cn.iocoder.yudao.module.system.service.dict; | 1 | package cn.iocoder.yudao.module.system.service.dict; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataCreateReqVO; | ||
| 5 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataExportReqVO; | ||
| 6 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataPageReqVO; | 4 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataPageReqVO; |
| 7 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataUpdateReqVO; | 5 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataSaveReqVO; |
| 8 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; | 6 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; |
| 9 | 7 | ||
| 10 | import java.util.Collection; | 8 | import java.util.Collection; |
| @@ -20,17 +18,17 @@ public interface DictDataService { | @@ -20,17 +18,17 @@ public interface DictDataService { | ||
| 20 | /** | 18 | /** |
| 21 | * 创建字典数据 | 19 | * 创建字典数据 |
| 22 | * | 20 | * |
| 23 | - * @param reqVO 字典数据信息 | 21 | + * @param createReqVO 字典数据信息 |
| 24 | * @return 字典数据编号 | 22 | * @return 字典数据编号 |
| 25 | */ | 23 | */ |
| 26 | - Long createDictData(DictDataCreateReqVO reqVO); | 24 | + Long createDictData(DictDataSaveReqVO createReqVO); |
| 27 | 25 | ||
| 28 | /** | 26 | /** |
| 29 | * 更新字典数据 | 27 | * 更新字典数据 |
| 30 | * | 28 | * |
| 31 | - * @param reqVO 字典数据信息 | 29 | + * @param updateReqVO 字典数据信息 |
| 32 | */ | 30 | */ |
| 33 | - void updateDictData(DictDataUpdateReqVO reqVO); | 31 | + void updateDictData(DictDataSaveReqVO updateReqVO); |
| 34 | 32 | ||
| 35 | /** | 33 | /** |
| 36 | * 删除字典数据 | 34 | * 删除字典数据 |
| @@ -49,18 +47,10 @@ public interface DictDataService { | @@ -49,18 +47,10 @@ public interface DictDataService { | ||
| 49 | /** | 47 | /** |
| 50 | * 获得字典数据分页列表 | 48 | * 获得字典数据分页列表 |
| 51 | * | 49 | * |
| 52 | - * @param reqVO 分页请求 | 50 | + * @param pageReqVO 分页请求 |
| 53 | * @return 字典数据分页列表 | 51 | * @return 字典数据分页列表 |
| 54 | */ | 52 | */ |
| 55 | - PageResult<DictDataDO> getDictDataPage(DictDataPageReqVO reqVO); | ||
| 56 | - | ||
| 57 | - /** | ||
| 58 | - * 获得字典数据列表 | ||
| 59 | - * | ||
| 60 | - * @param reqVO 列表请求 | ||
| 61 | - * @return 字典数据列表 | ||
| 62 | - */ | ||
| 63 | - List<DictDataDO> getDictDataList(DictDataExportReqVO reqVO); | 53 | + PageResult<DictDataDO> getDictDataPage(DictDataPageReqVO pageReqVO); |
| 64 | 54 | ||
| 65 | /** | 55 | /** |
| 66 | * 获得字典数据列表 | 56 | * 获得字典数据列表 |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dict/DictDataServiceImpl.java
| @@ -4,11 +4,9 @@ import cn.hutool.core.collection.CollUtil; | @@ -4,11 +4,9 @@ import cn.hutool.core.collection.CollUtil; | ||
| 4 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | 4 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; |
| 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | 6 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
| 7 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataCreateReqVO; | ||
| 8 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataExportReqVO; | 7 | +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; |
| 9 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataPageReqVO; | 8 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataPageReqVO; |
| 10 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataUpdateReqVO; | ||
| 11 | -import cn.iocoder.yudao.module.system.convert.dict.DictDataConvert; | 9 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataSaveReqVO; |
| 12 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; | 10 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; |
| 13 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; | 11 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; |
| 14 | import cn.iocoder.yudao.module.system.dal.mysql.dict.DictDataMapper; | 12 | import cn.iocoder.yudao.module.system.dal.mysql.dict.DictDataMapper; |
| @@ -55,15 +53,8 @@ public class DictDataServiceImpl implements DictDataService { | @@ -55,15 +53,8 @@ public class DictDataServiceImpl implements DictDataService { | ||
| 55 | } | 53 | } |
| 56 | 54 | ||
| 57 | @Override | 55 | @Override |
| 58 | - public PageResult<DictDataDO> getDictDataPage(DictDataPageReqVO reqVO) { | ||
| 59 | - return dictDataMapper.selectPage(reqVO); | ||
| 60 | - } | ||
| 61 | - | ||
| 62 | - @Override | ||
| 63 | - public List<DictDataDO> getDictDataList(DictDataExportReqVO reqVO) { | ||
| 64 | - List<DictDataDO> list = dictDataMapper.selectList(reqVO); | ||
| 65 | - list.sort(COMPARATOR_TYPE_AND_SORT); | ||
| 66 | - return list; | 56 | + public PageResult<DictDataDO> getDictDataPage(DictDataPageReqVO pageReqVO) { |
| 57 | + return dictDataMapper.selectPage(pageReqVO); | ||
| 67 | } | 58 | } |
| 68 | 59 | ||
| 69 | @Override | 60 | @Override |
| @@ -79,23 +70,29 @@ public class DictDataServiceImpl implements DictDataService { | @@ -79,23 +70,29 @@ public class DictDataServiceImpl implements DictDataService { | ||
| 79 | } | 70 | } |
| 80 | 71 | ||
| 81 | @Override | 72 | @Override |
| 82 | - public Long createDictData(DictDataCreateReqVO reqVO) { | ||
| 83 | - // 校验正确性 | ||
| 84 | - validateDictDataForCreateOrUpdate(null, reqVO.getValue(), reqVO.getDictType()); | 73 | + public Long createDictData(DictDataSaveReqVO createReqVO) { |
| 74 | + // 校验字典类型有效 | ||
| 75 | + validateDictTypeExists(createReqVO.getDictType()); | ||
| 76 | + // 校验字典数据的值的唯一性 | ||
| 77 | + validateDictDataValueUnique(null, createReqVO.getDictType(), createReqVO.getValue()); | ||
| 85 | 78 | ||
| 86 | // 插入字典类型 | 79 | // 插入字典类型 |
| 87 | - DictDataDO dictData = DictDataConvert.INSTANCE.convert(reqVO); | 80 | + DictDataDO dictData = BeanUtils.toBean(createReqVO, DictDataDO.class); |
| 88 | dictDataMapper.insert(dictData); | 81 | dictDataMapper.insert(dictData); |
| 89 | return dictData.getId(); | 82 | return dictData.getId(); |
| 90 | } | 83 | } |
| 91 | 84 | ||
| 92 | @Override | 85 | @Override |
| 93 | - public void updateDictData(DictDataUpdateReqVO reqVO) { | ||
| 94 | - // 校验正确性 | ||
| 95 | - validateDictDataForCreateOrUpdate(reqVO.getId(), reqVO.getValue(), reqVO.getDictType()); | 86 | + public void updateDictData(DictDataSaveReqVO updateReqVO) { |
| 87 | + // 校验自己存在 | ||
| 88 | + validateDictDataExists(updateReqVO.getId()); | ||
| 89 | + // 校验字典类型有效 | ||
| 90 | + validateDictTypeExists(updateReqVO.getDictType()); | ||
| 91 | + // 校验字典数据的值的唯一性 | ||
| 92 | + validateDictDataValueUnique(updateReqVO.getId(), updateReqVO.getDictType(), updateReqVO.getValue()); | ||
| 96 | 93 | ||
| 97 | // 更新字典类型 | 94 | // 更新字典类型 |
| 98 | - DictDataDO updateObj = DictDataConvert.INSTANCE.convert(reqVO); | 95 | + DictDataDO updateObj = BeanUtils.toBean(updateReqVO, DictDataDO.class); |
| 99 | dictDataMapper.updateById(updateObj); | 96 | dictDataMapper.updateById(updateObj); |
| 100 | } | 97 | } |
| 101 | 98 | ||
| @@ -113,15 +110,6 @@ public class DictDataServiceImpl implements DictDataService { | @@ -113,15 +110,6 @@ public class DictDataServiceImpl implements DictDataService { | ||
| 113 | return dictDataMapper.selectCountByDictType(dictType); | 110 | return dictDataMapper.selectCountByDictType(dictType); |
| 114 | } | 111 | } |
| 115 | 112 | ||
| 116 | - private void validateDictDataForCreateOrUpdate(Long id, String value, String dictType) { | ||
| 117 | - // 校验自己存在 | ||
| 118 | - validateDictDataExists(id); | ||
| 119 | - // 校验字典类型有效 | ||
| 120 | - validateDictTypeExists(dictType); | ||
| 121 | - // 校验字典数据的值的唯一性 | ||
| 122 | - validateDictDataValueUnique(id, dictType, value); | ||
| 123 | - } | ||
| 124 | - | ||
| 125 | @VisibleForTesting | 113 | @VisibleForTesting |
| 126 | public void validateDictDataValueUnique(Long id, String dictType, String value) { | 114 | public void validateDictDataValueUnique(Long id, String dictType, String value) { |
| 127 | DictDataDO dictData = dictDataMapper.selectByDictTypeAndValue(dictType, value); | 115 | DictDataDO dictData = dictDataMapper.selectByDictTypeAndValue(dictType, value); |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dict/DictTypeService.java
| 1 | package cn.iocoder.yudao.module.system.service.dict; | 1 | package cn.iocoder.yudao.module.system.service.dict; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeCreateReqVO; | ||
| 5 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeExportReqVO; | ||
| 6 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypePageReqVO; | 4 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypePageReqVO; |
| 7 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeUpdateReqVO; | 5 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeSaveReqVO; |
| 8 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; | 6 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; |
| 9 | 7 | ||
| 10 | import java.util.List; | 8 | import java.util.List; |
| @@ -19,17 +17,17 @@ public interface DictTypeService { | @@ -19,17 +17,17 @@ public interface DictTypeService { | ||
| 19 | /** | 17 | /** |
| 20 | * 创建字典类型 | 18 | * 创建字典类型 |
| 21 | * | 19 | * |
| 22 | - * @param reqVO 字典类型信息 | 20 | + * @param createReqVO 字典类型信息 |
| 23 | * @return 字典类型编号 | 21 | * @return 字典类型编号 |
| 24 | */ | 22 | */ |
| 25 | - Long createDictType(DictTypeCreateReqVO reqVO); | 23 | + Long createDictType(DictTypeSaveReqVO createReqVO); |
| 26 | 24 | ||
| 27 | /** | 25 | /** |
| 28 | * 更新字典类型 | 26 | * 更新字典类型 |
| 29 | * | 27 | * |
| 30 | - * @param reqVO 字典类型信息 | 28 | + * @param updateReqVO 字典类型信息 |
| 31 | */ | 29 | */ |
| 32 | - void updateDictType(DictTypeUpdateReqVO reqVO); | 30 | + void updateDictType(DictTypeSaveReqVO updateReqVO); |
| 33 | 31 | ||
| 34 | /** | 32 | /** |
| 35 | * 删除字典类型 | 33 | * 删除字典类型 |
| @@ -41,18 +39,10 @@ public interface DictTypeService { | @@ -41,18 +39,10 @@ public interface DictTypeService { | ||
| 41 | /** | 39 | /** |
| 42 | * 获得字典类型分页列表 | 40 | * 获得字典类型分页列表 |
| 43 | * | 41 | * |
| 44 | - * @param reqVO 分页请求 | 42 | + * @param pageReqVO 分页请求 |
| 45 | * @return 字典类型分页列表 | 43 | * @return 字典类型分页列表 |
| 46 | */ | 44 | */ |
| 47 | - PageResult<DictTypeDO> getDictTypePage(DictTypePageReqVO reqVO); | ||
| 48 | - | ||
| 49 | - /** | ||
| 50 | - * 获得字典类型列表 | ||
| 51 | - * | ||
| 52 | - * @param reqVO 列表请求 | ||
| 53 | - * @return 字典类型列表 | ||
| 54 | - */ | ||
| 55 | - List<DictTypeDO> getDictTypeList(DictTypeExportReqVO reqVO); | 45 | + PageResult<DictTypeDO> getDictTypePage(DictTypePageReqVO pageReqVO); |
| 56 | 46 | ||
| 57 | /** | 47 | /** |
| 58 | * 获得字典类型详情 | 48 | * 获得字典类型详情 |
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dict/DictTypeServiceImpl.java
| @@ -3,11 +3,9 @@ package cn.iocoder.yudao.module.system.service.dict; | @@ -3,11 +3,9 @@ package cn.iocoder.yudao.module.system.service.dict; | ||
| 3 | import cn.hutool.core.util.StrUtil; | 3 | import cn.hutool.core.util.StrUtil; |
| 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 5 | import cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils; | 5 | import cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils; |
| 6 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeCreateReqVO; | ||
| 7 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeExportReqVO; | 6 | +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; |
| 8 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypePageReqVO; | 7 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypePageReqVO; |
| 9 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeUpdateReqVO; | ||
| 10 | -import cn.iocoder.yudao.module.system.convert.dict.DictTypeConvert; | 8 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeSaveReqVO; |
| 11 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; | 9 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; |
| 12 | import cn.iocoder.yudao.module.system.dal.mysql.dict.DictTypeMapper; | 10 | import cn.iocoder.yudao.module.system.dal.mysql.dict.DictTypeMapper; |
| 13 | import com.google.common.annotations.VisibleForTesting; | 11 | import com.google.common.annotations.VisibleForTesting; |
| @@ -35,13 +33,8 @@ public class DictTypeServiceImpl implements DictTypeService { | @@ -35,13 +33,8 @@ public class DictTypeServiceImpl implements DictTypeService { | ||
| 35 | private DictTypeMapper dictTypeMapper; | 33 | private DictTypeMapper dictTypeMapper; |
| 36 | 34 | ||
| 37 | @Override | 35 | @Override |
| 38 | - public PageResult<DictTypeDO> getDictTypePage(DictTypePageReqVO reqVO) { | ||
| 39 | - return dictTypeMapper.selectPage(reqVO); | ||
| 40 | - } | ||
| 41 | - | ||
| 42 | - @Override | ||
| 43 | - public List<DictTypeDO> getDictTypeList(DictTypeExportReqVO reqVO) { | ||
| 44 | - return dictTypeMapper.selectList(reqVO); | 36 | + public PageResult<DictTypeDO> getDictTypePage(DictTypePageReqVO pageReqVO) { |
| 37 | + return dictTypeMapper.selectPage(pageReqVO); | ||
| 45 | } | 38 | } |
| 46 | 39 | ||
| 47 | @Override | 40 | @Override |
| @@ -55,24 +48,30 @@ public class DictTypeServiceImpl implements DictTypeService { | @@ -55,24 +48,30 @@ public class DictTypeServiceImpl implements DictTypeService { | ||
| 55 | } | 48 | } |
| 56 | 49 | ||
| 57 | @Override | 50 | @Override |
| 58 | - public Long createDictType(DictTypeCreateReqVO reqVO) { | ||
| 59 | - // 校验正确性 | ||
| 60 | - validateDictTypeForCreateOrUpdate(null, reqVO.getName(), reqVO.getType()); | 51 | + public Long createDictType(DictTypeSaveReqVO createReqVO) { |
| 52 | + // 校验字典类型的名字的唯一性 | ||
| 53 | + validateDictTypeNameUnique(null, createReqVO.getName()); | ||
| 54 | + // 校验字典类型的类型的唯一性 | ||
| 55 | + validateDictTypeUnique(null, createReqVO.getType()); | ||
| 61 | 56 | ||
| 62 | // 插入字典类型 | 57 | // 插入字典类型 |
| 63 | - DictTypeDO dictType = DictTypeConvert.INSTANCE.convert(reqVO) | ||
| 64 | - .setDeletedTime(LocalDateTimeUtils.EMPTY); // 唯一索引,避免 null 值 | 58 | + DictTypeDO dictType = BeanUtils.toBean(createReqVO, DictTypeDO.class); |
| 59 | + dictType.setDeletedTime(LocalDateTimeUtils.EMPTY); // 唯一索引,避免 null 值 | ||
| 65 | dictTypeMapper.insert(dictType); | 60 | dictTypeMapper.insert(dictType); |
| 66 | return dictType.getId(); | 61 | return dictType.getId(); |
| 67 | } | 62 | } |
| 68 | 63 | ||
| 69 | @Override | 64 | @Override |
| 70 | - public void updateDictType(DictTypeUpdateReqVO reqVO) { | ||
| 71 | - // 校验正确性 | ||
| 72 | - validateDictTypeForCreateOrUpdate(reqVO.getId(), reqVO.getName(), null); | 65 | + public void updateDictType(DictTypeSaveReqVO updateReqVO) { |
| 66 | + // 校验自己存在 | ||
| 67 | + validateDictTypeExists(updateReqVO.getId()); | ||
| 68 | + // 校验字典类型的名字的唯一性 | ||
| 69 | + validateDictTypeNameUnique(updateReqVO.getId(), updateReqVO.getName()); | ||
| 70 | + // 校验字典类型的类型的唯一性 | ||
| 71 | + validateDictTypeUnique(updateReqVO.getId(), updateReqVO.getType()); | ||
| 73 | 72 | ||
| 74 | // 更新字典类型 | 73 | // 更新字典类型 |
| 75 | - DictTypeDO updateObj = DictTypeConvert.INSTANCE.convert(reqVO); | 74 | + DictTypeDO updateObj = BeanUtils.toBean(updateReqVO, DictTypeDO.class); |
| 76 | dictTypeMapper.updateById(updateObj); | 75 | dictTypeMapper.updateById(updateObj); |
| 77 | } | 76 | } |
| 78 | 77 | ||
| @@ -93,15 +92,6 @@ public class DictTypeServiceImpl implements DictTypeService { | @@ -93,15 +92,6 @@ public class DictTypeServiceImpl implements DictTypeService { | ||
| 93 | return dictTypeMapper.selectList(); | 92 | return dictTypeMapper.selectList(); |
| 94 | } | 93 | } |
| 95 | 94 | ||
| 96 | - private void validateDictTypeForCreateOrUpdate(Long id, String name, String type) { | ||
| 97 | - // 校验自己存在 | ||
| 98 | - validateDictTypeExists(id); | ||
| 99 | - // 校验字典类型的名字的唯一性 | ||
| 100 | - validateDictTypeNameUnique(id, name); | ||
| 101 | - // 校验字典类型的类型的唯一性 | ||
| 102 | - validateDictTypeUnique(id, type); | ||
| 103 | - } | ||
| 104 | - | ||
| 105 | @VisibleForTesting | 95 | @VisibleForTesting |
| 106 | void validateDictTypeNameUnique(Long id, String name) { | 96 | void validateDictTypeNameUnique(Long id, String name) { |
| 107 | DictTypeDO dictType = dictTypeMapper.selectByName(name); | 97 | DictTypeDO dictType = dictTypeMapper.selectByName(name); |
yudao-module-system/yudao-module-system-biz/src/test/java/cn/iocoder/yudao/module/system/service/dict/DictDataServiceImplTest.java
| @@ -4,10 +4,8 @@ import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | @@ -4,10 +4,8 @@ import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | ||
| 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 5 | import cn.iocoder.yudao.framework.common.util.collection.ArrayUtils; | 5 | import cn.iocoder.yudao.framework.common.util.collection.ArrayUtils; |
| 6 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | 6 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; |
| 7 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataCreateReqVO; | ||
| 8 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataExportReqVO; | ||
| 9 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataPageReqVO; | 7 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataPageReqVO; |
| 10 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataUpdateReqVO; | 8 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataSaveReqVO; |
| 11 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; | 9 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO; |
| 12 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; | 10 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; |
| 13 | import cn.iocoder.yudao.module.system.dal.mysql.dict.DictDataMapper; | 11 | import cn.iocoder.yudao.module.system.dal.mysql.dict.DictDataMapper; |
| @@ -92,34 +90,6 @@ public class DictDataServiceImplTest extends BaseDbUnitTest { | @@ -92,34 +90,6 @@ public class DictDataServiceImplTest extends BaseDbUnitTest { | ||
| 92 | } | 90 | } |
| 93 | 91 | ||
| 94 | @Test | 92 | @Test |
| 95 | - public void testGetDictDataList_export() { | ||
| 96 | - // mock 数据 | ||
| 97 | - DictDataDO dbDictData = randomPojo(DictDataDO.class, o -> { // 等会查询到 | ||
| 98 | - o.setLabel("芋艿"); | ||
| 99 | - o.setDictType("yunai"); | ||
| 100 | - o.setStatus(CommonStatusEnum.ENABLE.getStatus()); | ||
| 101 | - }); | ||
| 102 | - dictDataMapper.insert(dbDictData); | ||
| 103 | - // 测试 label 不匹配 | ||
| 104 | - dictDataMapper.insert(cloneIgnoreId(dbDictData, o -> o.setLabel("艿"))); | ||
| 105 | - // 测试 dictType 不匹配 | ||
| 106 | - dictDataMapper.insert(cloneIgnoreId(dbDictData, o -> o.setDictType("nai"))); | ||
| 107 | - // 测试 status 不匹配 | ||
| 108 | - dictDataMapper.insert(cloneIgnoreId(dbDictData, o -> o.setStatus(CommonStatusEnum.DISABLE.getStatus()))); | ||
| 109 | - // 准备参数 | ||
| 110 | - DictDataExportReqVO reqVO = new DictDataExportReqVO(); | ||
| 111 | - reqVO.setLabel("芋"); | ||
| 112 | - reqVO.setDictType("yunai"); | ||
| 113 | - reqVO.setStatus(CommonStatusEnum.ENABLE.getStatus()); | ||
| 114 | - | ||
| 115 | - // 调用 | ||
| 116 | - List<DictDataDO> list = dictDataService.getDictDataList(reqVO); | ||
| 117 | - // 断言 | ||
| 118 | - assertEquals(1, list.size()); | ||
| 119 | - assertPojoEquals(dbDictData, list.get(0)); | ||
| 120 | - } | ||
| 121 | - | ||
| 122 | - @Test | ||
| 123 | public void testGetDictData() { | 93 | public void testGetDictData() { |
| 124 | // mock 数据 | 94 | // mock 数据 |
| 125 | DictDataDO dbDictData = randomDictDataDO(); | 95 | DictDataDO dbDictData = randomDictDataDO(); |
| @@ -136,8 +106,9 @@ public class DictDataServiceImplTest extends BaseDbUnitTest { | @@ -136,8 +106,9 @@ public class DictDataServiceImplTest extends BaseDbUnitTest { | ||
| 136 | @Test | 106 | @Test |
| 137 | public void testCreateDictData_success() { | 107 | public void testCreateDictData_success() { |
| 138 | // 准备参数 | 108 | // 准备参数 |
| 139 | - DictDataCreateReqVO reqVO = randomPojo(DictDataCreateReqVO.class, | ||
| 140 | - o -> o.setStatus(randomCommonStatus())); | 109 | + DictDataSaveReqVO reqVO = randomPojo(DictDataSaveReqVO.class, |
| 110 | + o -> o.setStatus(randomCommonStatus())) | ||
| 111 | + .setId(null); // 防止 id 被赋值 | ||
| 141 | // mock 方法 | 112 | // mock 方法 |
| 142 | when(dictTypeService.getDictType(eq(reqVO.getDictType()))).thenReturn(randomDictTypeDO(reqVO.getDictType())); | 113 | when(dictTypeService.getDictType(eq(reqVO.getDictType()))).thenReturn(randomDictTypeDO(reqVO.getDictType())); |
| 143 | 114 | ||
| @@ -147,7 +118,7 @@ public class DictDataServiceImplTest extends BaseDbUnitTest { | @@ -147,7 +118,7 @@ public class DictDataServiceImplTest extends BaseDbUnitTest { | ||
| 147 | assertNotNull(dictDataId); | 118 | assertNotNull(dictDataId); |
| 148 | // 校验记录的属性是否正确 | 119 | // 校验记录的属性是否正确 |
| 149 | DictDataDO dictData = dictDataMapper.selectById(dictDataId); | 120 | DictDataDO dictData = dictDataMapper.selectById(dictDataId); |
| 150 | - assertPojoEquals(reqVO, dictData); | 121 | + assertPojoEquals(reqVO, dictData, "id"); |
| 151 | } | 122 | } |
| 152 | 123 | ||
| 153 | @Test | 124 | @Test |
| @@ -156,7 +127,7 @@ public class DictDataServiceImplTest extends BaseDbUnitTest { | @@ -156,7 +127,7 @@ public class DictDataServiceImplTest extends BaseDbUnitTest { | ||
| 156 | DictDataDO dbDictData = randomDictDataDO(); | 127 | DictDataDO dbDictData = randomDictDataDO(); |
| 157 | dictDataMapper.insert(dbDictData);// @Sql: 先插入出一条存在的数据 | 128 | dictDataMapper.insert(dbDictData);// @Sql: 先插入出一条存在的数据 |
| 158 | // 准备参数 | 129 | // 准备参数 |
| 159 | - DictDataUpdateReqVO reqVO = randomPojo(DictDataUpdateReqVO.class, o -> { | 130 | + DictDataSaveReqVO reqVO = randomPojo(DictDataSaveReqVO.class, o -> { |
| 160 | o.setId(dbDictData.getId()); // 设置更新的 ID | 131 | o.setId(dbDictData.getId()); // 设置更新的 ID |
| 161 | o.setStatus(randomCommonStatus()); | 132 | o.setStatus(randomCommonStatus()); |
| 162 | }); | 133 | }); |
yudao-module-system/yudao-module-system-biz/src/test/java/cn/iocoder/yudao/module/system/service/dict/DictTypeServiceImplTest.java
| @@ -4,10 +4,8 @@ import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | @@ -4,10 +4,8 @@ import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | ||
| 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 5 | import cn.iocoder.yudao.framework.common.util.collection.ArrayUtils; | 5 | import cn.iocoder.yudao.framework.common.util.collection.ArrayUtils; |
| 6 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | 6 | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; |
| 7 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeCreateReqVO; | ||
| 8 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeExportReqVO; | ||
| 9 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypePageReqVO; | 7 | import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypePageReqVO; |
| 10 | -import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeUpdateReqVO; | 8 | +import cn.iocoder.yudao.module.system.controller.admin.dict.vo.type.DictTypeSaveReqVO; |
| 11 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; | 9 | import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictTypeDO; |
| 12 | import cn.iocoder.yudao.module.system.dal.mysql.dict.DictTypeMapper; | 10 | import cn.iocoder.yudao.module.system.dal.mysql.dict.DictTypeMapper; |
| 13 | import org.junit.jupiter.api.Test; | 11 | import org.junit.jupiter.api.Test; |
| @@ -75,38 +73,6 @@ public class DictTypeServiceImplTest extends BaseDbUnitTest { | @@ -75,38 +73,6 @@ public class DictTypeServiceImplTest extends BaseDbUnitTest { | ||
| 75 | } | 73 | } |
| 76 | 74 | ||
| 77 | @Test | 75 | @Test |
| 78 | - public void testGetDictTypeList_export() { | ||
| 79 | - // mock 数据 | ||
| 80 | - DictTypeDO dbDictType = randomPojo(DictTypeDO.class, o -> { // 等会查询到 | ||
| 81 | - o.setName("yunai"); | ||
| 82 | - o.setType("芋艿"); | ||
| 83 | - o.setStatus(CommonStatusEnum.ENABLE.getStatus()); | ||
| 84 | - o.setCreateTime(buildTime(2021, 1, 15)); | ||
| 85 | - }); | ||
| 86 | - dictTypeMapper.insert(dbDictType); | ||
| 87 | - // 测试 name 不匹配 | ||
| 88 | - dictTypeMapper.insert(cloneIgnoreId(dbDictType, o -> o.setName("tudou"))); | ||
| 89 | - // 测试 type 不匹配 | ||
| 90 | - dictTypeMapper.insert(cloneIgnoreId(dbDictType, o -> o.setType("土豆"))); | ||
| 91 | - // 测试 status 不匹配 | ||
| 92 | - dictTypeMapper.insert(cloneIgnoreId(dbDictType, o -> o.setStatus(CommonStatusEnum.DISABLE.getStatus()))); | ||
| 93 | - // 测试 createTime 不匹配 | ||
| 94 | - dictTypeMapper.insert(cloneIgnoreId(dbDictType, o -> o.setCreateTime(buildTime(2021, 1, 1)))); | ||
| 95 | - // 准备参数 | ||
| 96 | - DictTypeExportReqVO reqVO = new DictTypeExportReqVO(); | ||
| 97 | - reqVO.setName("nai"); | ||
| 98 | - reqVO.setType("艿"); | ||
| 99 | - reqVO.setStatus(CommonStatusEnum.ENABLE.getStatus()); | ||
| 100 | - reqVO.setCreateTime(buildBetweenTime(2021, 1, 10, 2021, 1, 20)); | ||
| 101 | - | ||
| 102 | - // 调用 | ||
| 103 | - List<DictTypeDO> list = dictTypeService.getDictTypeList(reqVO); | ||
| 104 | - // 断言 | ||
| 105 | - assertEquals(1, list.size()); | ||
| 106 | - assertPojoEquals(dbDictType, list.get(0)); | ||
| 107 | - } | ||
| 108 | - | ||
| 109 | - @Test | ||
| 110 | public void testGetDictType_id() { | 76 | public void testGetDictType_id() { |
| 111 | // mock 数据 | 77 | // mock 数据 |
| 112 | DictTypeDO dbDictType = randomDictTypeDO(); | 78 | DictTypeDO dbDictType = randomDictTypeDO(); |
| @@ -139,8 +105,9 @@ public class DictTypeServiceImplTest extends BaseDbUnitTest { | @@ -139,8 +105,9 @@ public class DictTypeServiceImplTest extends BaseDbUnitTest { | ||
| 139 | @Test | 105 | @Test |
| 140 | public void testCreateDictType_success() { | 106 | public void testCreateDictType_success() { |
| 141 | // 准备参数 | 107 | // 准备参数 |
| 142 | - DictTypeCreateReqVO reqVO = randomPojo(DictTypeCreateReqVO.class, | ||
| 143 | - o -> o.setStatus(randomEle(CommonStatusEnum.values()).getStatus())); | 108 | + DictTypeSaveReqVO reqVO = randomPojo(DictTypeSaveReqVO.class, |
| 109 | + o -> o.setStatus(randomEle(CommonStatusEnum.values()).getStatus())) | ||
| 110 | + .setId(null); // 避免 id 被赋值 | ||
| 144 | 111 | ||
| 145 | // 调用 | 112 | // 调用 |
| 146 | Long dictTypeId = dictTypeService.createDictType(reqVO); | 113 | Long dictTypeId = dictTypeService.createDictType(reqVO); |
| @@ -148,7 +115,7 @@ public class DictTypeServiceImplTest extends BaseDbUnitTest { | @@ -148,7 +115,7 @@ public class DictTypeServiceImplTest extends BaseDbUnitTest { | ||
| 148 | assertNotNull(dictTypeId); | 115 | assertNotNull(dictTypeId); |
| 149 | // 校验记录的属性是否正确 | 116 | // 校验记录的属性是否正确 |
| 150 | DictTypeDO dictType = dictTypeMapper.selectById(dictTypeId); | 117 | DictTypeDO dictType = dictTypeMapper.selectById(dictTypeId); |
| 151 | - assertPojoEquals(reqVO, dictType); | 118 | + assertPojoEquals(reqVO, dictType, "id"); |
| 152 | } | 119 | } |
| 153 | 120 | ||
| 154 | @Test | 121 | @Test |
| @@ -157,7 +124,7 @@ public class DictTypeServiceImplTest extends BaseDbUnitTest { | @@ -157,7 +124,7 @@ public class DictTypeServiceImplTest extends BaseDbUnitTest { | ||
| 157 | DictTypeDO dbDictType = randomDictTypeDO(); | 124 | DictTypeDO dbDictType = randomDictTypeDO(); |
| 158 | dictTypeMapper.insert(dbDictType);// @Sql: 先插入出一条存在的数据 | 125 | dictTypeMapper.insert(dbDictType);// @Sql: 先插入出一条存在的数据 |
| 159 | // 准备参数 | 126 | // 准备参数 |
| 160 | - DictTypeUpdateReqVO reqVO = randomPojo(DictTypeUpdateReqVO.class, o -> { | 127 | + DictTypeSaveReqVO reqVO = randomPojo(DictTypeSaveReqVO.class, o -> { |
| 161 | o.setId(dbDictType.getId()); // 设置更新的 ID | 128 | o.setId(dbDictType.getId()); // 设置更新的 ID |
| 162 | o.setStatus(randomEle(CommonStatusEnum.values()).getStatus()); | 129 | o.setStatus(randomEle(CommonStatusEnum.values()).getStatus()); |
| 163 | }); | 130 | }); |