Commit 53afc9d50ac876f48dbe4a00a8a2a9f09ff4abd2
1 parent
9705ae06
codegen:移除多余的 test 类
Showing
17 changed files
with
0 additions
and
800 deletions
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/test/TestDemoController.http deleted
| 1 | -### 请求 /infra/test-demo/get 接口 => 成功 | |
| 2 | -GET {{baseUrl}}/infra/test-demo/get?id=106 | |
| 3 | -Authorization: Bearer {{token}} | |
| 4 | -tenant-id: {{adminTenentId}} | |
| 5 | - | |
| 6 | -### 请求 /infra/test-demo/update 接口 => 成功 | |
| 7 | -PUT {{baseUrl}}/infra/test-demo/update | |
| 8 | -Authorization: Bearer {{token}} | |
| 9 | -tenant-id: {{adminTenentId}} | |
| 10 | -Content-Type: application/json | |
| 11 | - | |
| 12 | - | |
| 13 | -{ | |
| 14 | - "id": 106, | |
| 15 | - "name": "测试", | |
| 16 | - "status": "0", | |
| 17 | - "type": 1, | |
| 18 | - "category": 1 | |
| 19 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/test/TestDemoController.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.controller.admin.test; | |
| 2 | - | |
| 3 | -import cn.iocoder.yudao.framework.common.pojo.CommonResult; | |
| 4 | -import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 5 | -import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; | |
| 6 | -import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; | |
| 7 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.*; | |
| 8 | -import cn.iocoder.yudao.module.infra.convert.test.TestDemoConvert; | |
| 9 | -import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO; | |
| 10 | -import cn.iocoder.yudao.module.infra.service.test.TestDemoService; | |
| 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; | |
| 14 | -import org.springframework.security.access.prepost.PreAuthorize; | |
| 15 | -import org.springframework.validation.annotation.Validated; | |
| 16 | -import org.springframework.web.bind.annotation.*; | |
| 17 | - | |
| 18 | -import javax.annotation.Resource; | |
| 19 | -import javax.servlet.http.HttpServletResponse; | |
| 20 | -import javax.validation.Valid; | |
| 21 | -import java.io.IOException; | |
| 22 | -import java.util.Collection; | |
| 23 | -import java.util.List; | |
| 24 | - | |
| 25 | -import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; | |
| 26 | -import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT; | |
| 27 | - | |
| 28 | -@Tag(name = "管理后台 - 字典类型") | |
| 29 | -@RestController | |
| 30 | -@RequestMapping("/infra/test-demo") | |
| 31 | -@Validated | |
| 32 | -public class TestDemoController { | |
| 33 | - | |
| 34 | - @Resource | |
| 35 | - private TestDemoService testDemoService; | |
| 36 | - | |
| 37 | - @PostMapping("/create") | |
| 38 | - @Operation(summary = "创建字典类型") | |
| 39 | - @PreAuthorize("@ss.hasPermission('infra:test-demo:create')") | |
| 40 | - public CommonResult<Long> createTestDemo(@Valid @RequestBody TestDemoCreateReqVO createReqVO) { | |
| 41 | - return success(testDemoService.createTestDemo(createReqVO)); | |
| 42 | - } | |
| 43 | - | |
| 44 | - @PutMapping("/update") | |
| 45 | - @Operation(summary = "更新字典类型") | |
| 46 | - @PreAuthorize("@ss.hasPermission('infra:test-demo:update')") | |
| 47 | - public CommonResult<Boolean> updateTestDemo(@Valid @RequestBody TestDemoUpdateReqVO updateReqVO) { | |
| 48 | - testDemoService.updateTestDemo(updateReqVO); | |
| 49 | - return success(true); | |
| 50 | - } | |
| 51 | - | |
| 52 | - @DeleteMapping("/delete") | |
| 53 | - @Operation(summary = "删除字典类型") | |
| 54 | - @Parameter(name = "id", description = "编号", required = true) | |
| 55 | - @PreAuthorize("@ss.hasPermission('infra:test-demo:delete')") | |
| 56 | - public CommonResult<Boolean> deleteTestDemo(@RequestParam("id") Long id) { | |
| 57 | - testDemoService.deleteTestDemo(id); | |
| 58 | - return success(true); | |
| 59 | - } | |
| 60 | - | |
| 61 | - @GetMapping("/get") | |
| 62 | - @Operation(summary = "获得字典类型") | |
| 63 | - @Parameter(name = "id", description = "编号", required = true, example = "1024") | |
| 64 | - @PreAuthorize("@ss.hasPermission('infra:test-demo:query')") | |
| 65 | - public CommonResult<TestDemoRespVO> getTestDemo(@RequestParam("id") Long id) { | |
| 66 | - TestDemoDO testDemo = testDemoService.getTestDemo(id); | |
| 67 | - return success(TestDemoConvert.INSTANCE.convert(testDemo)); | |
| 68 | - } | |
| 69 | - | |
| 70 | - @GetMapping("/list") | |
| 71 | - @Operation(summary = "获得字典类型列表") | |
| 72 | - @Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048") | |
| 73 | - @PreAuthorize("@ss.hasPermission('infra:test-demo:query')") | |
| 74 | - public CommonResult<List<TestDemoRespVO>> getTestDemoList(@RequestParam("ids") Collection<Long> ids) { | |
| 75 | - List<TestDemoDO> list = testDemoService.getTestDemoList(ids); | |
| 76 | - return success(TestDemoConvert.INSTANCE.convertList(list)); | |
| 77 | - } | |
| 78 | - | |
| 79 | - @GetMapping("/page") | |
| 80 | - @Operation(summary = "获得字典类型分页") | |
| 81 | - @PreAuthorize("@ss.hasPermission('infra:test-demo:query')") public CommonResult<PageResult<TestDemoRespVO>> getTestDemoPage(@Valid TestDemoPageReqVO pageVO) { | |
| 82 | - PageResult<TestDemoDO> pageResult = testDemoService.getTestDemoPage(pageVO); | |
| 83 | - return success(TestDemoConvert.INSTANCE.convertPage(pageResult)); | |
| 84 | - } | |
| 85 | - | |
| 86 | - @GetMapping("/export-excel") | |
| 87 | - @Operation(summary = "导出字典类型 Excel") | |
| 88 | - @PreAuthorize("@ss.hasPermission('infra:test-demo:export')") @OperateLog(type = EXPORT) | |
| 89 | - public void exportTestDemoExcel(@Valid TestDemoExportReqVO exportReqVO, | |
| 90 | - HttpServletResponse response) throws IOException { | |
| 91 | - List<TestDemoDO> list = testDemoService.getTestDemoList(exportReqVO); | |
| 92 | - // 导出 Excel | |
| 93 | - List<TestDemoExcelVO> datas = TestDemoConvert.INSTANCE.convertList02(list); | |
| 94 | - ExcelUtils.write(response, "字典类型.xls", "数据", TestDemoExcelVO.class, datas); | |
| 95 | - } | |
| 96 | - | |
| 97 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/test/vo/TestDemoBaseVO.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.controller.admin.test.vo; | |
| 2 | -import io.swagger.v3.oas.annotations.media.Schema; | |
| 3 | -import lombok.*; | |
| 4 | -import javax.validation.constraints.*; | |
| 5 | - | |
| 6 | -/** | |
| 7 | -* 字典类型 Base VO,提供给添加、修改、详细的子 VO 使用 | |
| 8 | -* 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成 | |
| 9 | -*/ | |
| 10 | -@Data | |
| 11 | -public class TestDemoBaseVO { | |
| 12 | - | |
| 13 | - @Schema(description = "名字", requiredMode = Schema.RequiredMode.REQUIRED) | |
| 14 | - @NotNull(message = "名字不能为空") | |
| 15 | - private String name; | |
| 16 | - | |
| 17 | - @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED) | |
| 18 | - @NotNull(message = "状态不能为空") | |
| 19 | - private Integer status; | |
| 20 | - | |
| 21 | - @Schema(description = "类型", requiredMode = Schema.RequiredMode.REQUIRED) | |
| 22 | - @NotNull(message = "类型不能为空") | |
| 23 | - private Integer type; | |
| 24 | - | |
| 25 | - @Schema(description = "分类", requiredMode = Schema.RequiredMode.REQUIRED) | |
| 26 | - @NotNull(message = "分类不能为空") | |
| 27 | - private Integer category; | |
| 28 | - | |
| 29 | - @Schema(description = "备注") | |
| 30 | - private String remark; | |
| 31 | - | |
| 32 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/test/vo/TestDemoCreateReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.controller.admin.test.vo; | |
| 2 | -import io.swagger.v3.oas.annotations.media.Schema; | |
| 3 | -import lombok.*; | |
| 4 | - | |
| 5 | -@Schema(description = "管理后台 - 字典类型创建 Request VO") | |
| 6 | -@Data | |
| 7 | -@EqualsAndHashCode(callSuper = true) | |
| 8 | -@ToString(callSuper = true) | |
| 9 | -public class TestDemoCreateReqVO extends TestDemoBaseVO { | |
| 10 | - | |
| 11 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/test/vo/TestDemoExcelVO.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.controller.admin.test.vo; | |
| 2 | - | |
| 3 | -import lombok.*; | |
| 4 | - | |
| 5 | -import java.time.LocalDateTime; | |
| 6 | - | |
| 7 | -import com.alibaba.excel.annotation.ExcelProperty; | |
| 8 | - | |
| 9 | -/** | |
| 10 | - * 字典类型 Excel VO | |
| 11 | - * | |
| 12 | - * @author 芋道源码 | |
| 13 | - */ | |
| 14 | -@Data | |
| 15 | -public class TestDemoExcelVO { | |
| 16 | - | |
| 17 | - @ExcelProperty("编号") | |
| 18 | - private Long id; | |
| 19 | - | |
| 20 | - @ExcelProperty("名字") | |
| 21 | - private String name; | |
| 22 | - | |
| 23 | - @ExcelProperty("状态") | |
| 24 | - private Integer status; | |
| 25 | - | |
| 26 | - @ExcelProperty("类型") | |
| 27 | - private Integer type; | |
| 28 | - | |
| 29 | - @ExcelProperty("分类") | |
| 30 | - private Integer category; | |
| 31 | - | |
| 32 | - @ExcelProperty("备注") | |
| 33 | - private String remark; | |
| 34 | - | |
| 35 | - @ExcelProperty("创建时间") | |
| 36 | - private LocalDateTime createTime; | |
| 37 | - | |
| 38 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/test/vo/TestDemoExportReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.controller.admin.test.vo; | |
| 2 | -import io.swagger.v3.oas.annotations.media.Schema; | |
| 3 | -import lombok.*; | |
| 4 | - | |
| 5 | -import java.time.LocalDateTime; | |
| 6 | -import org.springframework.format.annotation.DateTimeFormat; | |
| 7 | - | |
| 8 | -import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; | |
| 9 | - | |
| 10 | -@Schema(description = "管理后台 - 字典类型 Excel 导出 Request VO,参数和 TestDemoPageReqVO 是一致的") | |
| 11 | -@Data | |
| 12 | -public class TestDemoExportReqVO { | |
| 13 | - | |
| 14 | - @Schema(description = "名字") | |
| 15 | - private String name; | |
| 16 | - | |
| 17 | - @Schema(description = "状态") | |
| 18 | - private Integer status; | |
| 19 | - | |
| 20 | - @Schema(description = "类型") | |
| 21 | - private Integer type; | |
| 22 | - | |
| 23 | - @Schema(description = "分类") | |
| 24 | - private Integer category; | |
| 25 | - | |
| 26 | - @Schema(description = "备注") | |
| 27 | - private String remark; | |
| 28 | - | |
| 29 | - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) | |
| 30 | - @Schema(description = "创建时间") | |
| 31 | - private LocalDateTime[] createTime; | |
| 32 | - | |
| 33 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/test/vo/TestDemoPageReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.controller.admin.test.vo; | |
| 2 | -import io.swagger.v3.oas.annotations.media.Schema; | |
| 3 | -import lombok.*; | |
| 4 | - | |
| 5 | -import java.time.LocalDateTime; | |
| 6 | -import cn.iocoder.yudao.framework.common.pojo.PageParam; | |
| 7 | -import org.springframework.format.annotation.DateTimeFormat; | |
| 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 | -@EqualsAndHashCode(callSuper = true) | |
| 14 | -@ToString(callSuper = true) | |
| 15 | -public class TestDemoPageReqVO extends PageParam { | |
| 16 | - | |
| 17 | - @Schema(description = "名字") | |
| 18 | - private String name; | |
| 19 | - | |
| 20 | - @Schema(description = "状态") | |
| 21 | - private Integer status; | |
| 22 | - | |
| 23 | - @Schema(description = "类型") | |
| 24 | - private Integer type; | |
| 25 | - | |
| 26 | - @Schema(description = "分类") | |
| 27 | - private Integer category; | |
| 28 | - | |
| 29 | - @Schema(description = "备注") | |
| 30 | - private String remark; | |
| 31 | - | |
| 32 | - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) | |
| 33 | - @Schema(description = "创建时间") | |
| 34 | - private LocalDateTime[] createTime; | |
| 35 | - | |
| 36 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/test/vo/TestDemoRespVO.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.controller.admin.test.vo; | |
| 2 | -import io.swagger.v3.oas.annotations.media.Schema; | |
| 3 | -import lombok.*; | |
| 4 | - | |
| 5 | -import java.time.LocalDateTime; | |
| 6 | - | |
| 7 | -@Schema(description = "管理后台 - 字典类型 Response VO") | |
| 8 | -@Data | |
| 9 | -@EqualsAndHashCode(callSuper = true) | |
| 10 | -@ToString(callSuper = true) | |
| 11 | -public class TestDemoRespVO extends TestDemoBaseVO { | |
| 12 | - | |
| 13 | - @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED) | |
| 14 | - private Long id; | |
| 15 | - | |
| 16 | - @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) | |
| 17 | - private LocalDateTime createTime; | |
| 18 | - | |
| 19 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/test/vo/TestDemoUpdateReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.controller.admin.test.vo; | |
| 2 | -import io.swagger.v3.oas.annotations.media.Schema; | |
| 3 | -import lombok.*; | |
| 4 | -import javax.validation.constraints.*; | |
| 5 | - | |
| 6 | -@Schema(description = "管理后台 - 字典类型更新 Request VO") | |
| 7 | -@Data | |
| 8 | -@EqualsAndHashCode(callSuper = true) | |
| 9 | -@ToString(callSuper = true) | |
| 10 | -public class TestDemoUpdateReqVO extends TestDemoBaseVO { | |
| 11 | - | |
| 12 | - @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED) | |
| 13 | - @NotNull(message = "编号不能为空") | |
| 14 | - private Long id; | |
| 15 | - | |
| 16 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/convert/test/TestDemoConvert.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.convert.test; | |
| 2 | - | |
| 3 | -import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 4 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoCreateReqVO; | |
| 5 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoExcelVO; | |
| 6 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoRespVO; | |
| 7 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoUpdateReqVO; | |
| 8 | -import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO; | |
| 9 | -import org.mapstruct.Mapper; | |
| 10 | -import org.mapstruct.factory.Mappers; | |
| 11 | - | |
| 12 | -import java.util.List; | |
| 13 | - | |
| 14 | -/** | |
| 15 | - * 字典类型 Convert | |
| 16 | - * | |
| 17 | - * @author 芋道源码 | |
| 18 | - */ | |
| 19 | -@Mapper | |
| 20 | -public interface TestDemoConvert { | |
| 21 | - | |
| 22 | - TestDemoConvert INSTANCE = Mappers.getMapper(TestDemoConvert.class); | |
| 23 | - | |
| 24 | - TestDemoDO convert(TestDemoCreateReqVO bean); | |
| 25 | - | |
| 26 | - TestDemoDO convert(TestDemoUpdateReqVO bean); | |
| 27 | - | |
| 28 | - TestDemoRespVO convert(TestDemoDO bean); | |
| 29 | - | |
| 30 | - List<TestDemoRespVO> convertList(List<TestDemoDO> list); | |
| 31 | - | |
| 32 | - PageResult<TestDemoRespVO> convertPage(PageResult<TestDemoDO> page); | |
| 33 | - | |
| 34 | - List<TestDemoExcelVO> convertList02(List<TestDemoDO> list); | |
| 35 | - | |
| 36 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/dal/dataobject/test/TestDemoDO.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.dal.dataobject.test; | |
| 2 | - | |
| 3 | -import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | |
| 4 | -import com.baomidou.mybatisplus.annotation.KeySequence; | |
| 5 | -import com.baomidou.mybatisplus.annotation.TableId; | |
| 6 | -import com.baomidou.mybatisplus.annotation.TableName; | |
| 7 | -import lombok.*; | |
| 8 | - | |
| 9 | -/** | |
| 10 | - * 字典类型 DO | |
| 11 | - * | |
| 12 | - * @author 芋道源码 | |
| 13 | - */ | |
| 14 | -@TableName("infra_test_demo") | |
| 15 | -@KeySequence("infra_test_demo_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 | |
| 16 | -@Data | |
| 17 | -@EqualsAndHashCode(callSuper = true) | |
| 18 | -@ToString(callSuper = true) | |
| 19 | -@Builder | |
| 20 | -@NoArgsConstructor | |
| 21 | -@AllArgsConstructor | |
| 22 | -public class TestDemoDO extends BaseDO { | |
| 23 | - | |
| 24 | - /** | |
| 25 | - * 编号 | |
| 26 | - */ | |
| 27 | - @TableId | |
| 28 | - private Long id; | |
| 29 | - /** | |
| 30 | - * 名字 | |
| 31 | - */ | |
| 32 | - private String name; | |
| 33 | - /** | |
| 34 | - * 状态 | |
| 35 | - */ | |
| 36 | - private Integer status; | |
| 37 | - /** | |
| 38 | - * 类型 | |
| 39 | - */ | |
| 40 | - private Integer type; | |
| 41 | - /** | |
| 42 | - * 分类 | |
| 43 | - */ | |
| 44 | - private Integer category; | |
| 45 | - /** | |
| 46 | - * 备注 | |
| 47 | - */ | |
| 48 | - private String remark; | |
| 49 | - | |
| 50 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/test/TestDemoMapper.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.dal.mysql.test; | |
| 2 | - | |
| 3 | -import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 4 | -import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | |
| 5 | -import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; | |
| 6 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoExportReqVO; | |
| 7 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoPageReqVO; | |
| 8 | -import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO; | |
| 9 | -import org.apache.ibatis.annotations.Mapper; | |
| 10 | - | |
| 11 | -import java.util.List; | |
| 12 | - | |
| 13 | -/** | |
| 14 | - * 字典类型 Mapper | |
| 15 | - * | |
| 16 | - * @author 芋道源码 | |
| 17 | - */ | |
| 18 | -@Mapper | |
| 19 | -public interface TestDemoMapper extends BaseMapperX<TestDemoDO> { | |
| 20 | - | |
| 21 | - default PageResult<TestDemoDO> selectPage(TestDemoPageReqVO reqVO) { | |
| 22 | - return selectPage(reqVO, new LambdaQueryWrapperX<TestDemoDO>() | |
| 23 | - .likeIfPresent(TestDemoDO::getName, reqVO.getName()) | |
| 24 | - .eqIfPresent(TestDemoDO::getStatus, reqVO.getStatus()) | |
| 25 | - .eqIfPresent(TestDemoDO::getType, reqVO.getType()) | |
| 26 | - .eqIfPresent(TestDemoDO::getCategory, reqVO.getCategory()) | |
| 27 | - .eqIfPresent(TestDemoDO::getRemark, reqVO.getRemark()) | |
| 28 | - .betweenIfPresent(TestDemoDO::getCreateTime, reqVO.getCreateTime()) | |
| 29 | - .orderByDesc(TestDemoDO::getId)); | |
| 30 | - } | |
| 31 | - | |
| 32 | - default List<TestDemoDO> selectList(TestDemoExportReqVO reqVO) { | |
| 33 | - return selectList(new LambdaQueryWrapperX<TestDemoDO>() | |
| 34 | - .likeIfPresent(TestDemoDO::getName, reqVO.getName()) | |
| 35 | - .eqIfPresent(TestDemoDO::getStatus, reqVO.getStatus()) | |
| 36 | - .eqIfPresent(TestDemoDO::getType, reqVO.getType()) | |
| 37 | - .eqIfPresent(TestDemoDO::getCategory, reqVO.getCategory()) | |
| 38 | - .eqIfPresent(TestDemoDO::getRemark, reqVO.getRemark()) | |
| 39 | - .betweenIfPresent(TestDemoDO::getCreateTime, reqVO.getCreateTime()) | |
| 40 | - .orderByDesc(TestDemoDO::getId)); | |
| 41 | - } | |
| 42 | - | |
| 43 | - List<TestDemoDO> selectList2(); | |
| 44 | - | |
| 45 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/service/test/TestDemoService.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.service.test; | |
| 2 | - | |
| 3 | -import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 4 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoCreateReqVO; | |
| 5 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoExportReqVO; | |
| 6 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoPageReqVO; | |
| 7 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoUpdateReqVO; | |
| 8 | -import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO; | |
| 9 | - | |
| 10 | -import javax.validation.Valid; | |
| 11 | -import java.util.Collection; | |
| 12 | -import java.util.List; | |
| 13 | - | |
| 14 | -/** | |
| 15 | - * 字典类型 Service 接口 | |
| 16 | - * | |
| 17 | - * @author 芋道源码 | |
| 18 | - */ | |
| 19 | -public interface TestDemoService { | |
| 20 | - | |
| 21 | - /** | |
| 22 | - * 创建字典类型 | |
| 23 | - * | |
| 24 | - * @param createReqVO 创建信息 | |
| 25 | - * @return 编号 | |
| 26 | - */ | |
| 27 | - Long createTestDemo(@Valid TestDemoCreateReqVO createReqVO); | |
| 28 | - | |
| 29 | - /** | |
| 30 | - * 更新字典类型 | |
| 31 | - * | |
| 32 | - * @param updateReqVO 更新信息 | |
| 33 | - */ | |
| 34 | - void updateTestDemo(@Valid TestDemoUpdateReqVO updateReqVO); | |
| 35 | - | |
| 36 | - /** | |
| 37 | - * 删除字典类型 | |
| 38 | - * | |
| 39 | - * @param id 编号 | |
| 40 | - */ | |
| 41 | - void deleteTestDemo(Long id); | |
| 42 | - | |
| 43 | - /** | |
| 44 | - * 获得字典类型 | |
| 45 | - * | |
| 46 | - * @param id 编号 | |
| 47 | - * @return 字典类型 | |
| 48 | - */ | |
| 49 | - TestDemoDO getTestDemo(Long id); | |
| 50 | - | |
| 51 | - /** | |
| 52 | - * 获得字典类型列表 | |
| 53 | - * | |
| 54 | - * @param ids 编号 | |
| 55 | - * @return 字典类型列表 | |
| 56 | - */ | |
| 57 | - List<TestDemoDO> getTestDemoList(Collection<Long> ids); | |
| 58 | - | |
| 59 | - /** | |
| 60 | - * 获得字典类型分页 | |
| 61 | - * | |
| 62 | - * @param pageReqVO 分页查询 | |
| 63 | - * @return 字典类型分页 | |
| 64 | - */ | |
| 65 | - PageResult<TestDemoDO> getTestDemoPage(TestDemoPageReqVO pageReqVO); | |
| 66 | - | |
| 67 | - /** | |
| 68 | - * 获得字典类型列表, 用于 Excel 导出 | |
| 69 | - * | |
| 70 | - * @param exportReqVO 查询条件 | |
| 71 | - * @return 字典类型列表 | |
| 72 | - */ | |
| 73 | - List<TestDemoDO> getTestDemoList(TestDemoExportReqVO exportReqVO); | |
| 74 | - | |
| 75 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/service/test/TestDemoServiceImpl.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.service.test; | |
| 2 | - | |
| 3 | -import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 4 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoCreateReqVO; | |
| 5 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoExportReqVO; | |
| 6 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoPageReqVO; | |
| 7 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoUpdateReqVO; | |
| 8 | -import cn.iocoder.yudao.module.infra.convert.test.TestDemoConvert; | |
| 9 | -import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO; | |
| 10 | -import cn.iocoder.yudao.module.infra.dal.mysql.test.TestDemoMapper; | |
| 11 | -import org.springframework.cache.annotation.CacheEvict; | |
| 12 | -import org.springframework.cache.annotation.Cacheable; | |
| 13 | -import org.springframework.stereotype.Service; | |
| 14 | -import org.springframework.validation.annotation.Validated; | |
| 15 | - | |
| 16 | -import javax.annotation.Resource; | |
| 17 | -import java.util.Collection; | |
| 18 | -import java.util.List; | |
| 19 | - | |
| 20 | -import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | |
| 21 | -import static cn.iocoder.yudao.module.infra.enums.ErrorCodeConstants.TEST_DEMO_NOT_EXISTS; | |
| 22 | - | |
| 23 | -/** | |
| 24 | - * 字典类型 Service 实现类 | |
| 25 | - * | |
| 26 | - * @author 芋道源码 | |
| 27 | - */ | |
| 28 | -@Service | |
| 29 | -@Validated | |
| 30 | -public class TestDemoServiceImpl implements TestDemoService { | |
| 31 | - | |
| 32 | - @Resource | |
| 33 | - private TestDemoMapper testDemoMapper; | |
| 34 | - | |
| 35 | - @Override | |
| 36 | - public Long createTestDemo(TestDemoCreateReqVO createReqVO) { | |
| 37 | - // 插入 | |
| 38 | - TestDemoDO testDemo = TestDemoConvert.INSTANCE.convert(createReqVO); | |
| 39 | - testDemoMapper.insert(testDemo); | |
| 40 | - // 返回 | |
| 41 | - return testDemo.getId(); | |
| 42 | - } | |
| 43 | - | |
| 44 | - @Override | |
| 45 | - @CacheEvict(value = "test", key = "#updateReqVO.id") | |
| 46 | - public void updateTestDemo(TestDemoUpdateReqVO updateReqVO) { | |
| 47 | - // 校验存在 | |
| 48 | - validateTestDemoExists(updateReqVO.getId()); | |
| 49 | - // 更新 | |
| 50 | - TestDemoDO updateObj = TestDemoConvert.INSTANCE.convert(updateReqVO); | |
| 51 | - testDemoMapper.updateById(updateObj); | |
| 52 | - } | |
| 53 | - | |
| 54 | - @Override | |
| 55 | - @CacheEvict(value = "test", key = "#id") | |
| 56 | - public void deleteTestDemo(Long id) { | |
| 57 | - // 校验存在 | |
| 58 | - validateTestDemoExists(id); | |
| 59 | - // 删除 | |
| 60 | - testDemoMapper.deleteById(id); | |
| 61 | - } | |
| 62 | - | |
| 63 | - private void validateTestDemoExists(Long id) { | |
| 64 | - if (testDemoMapper.selectById(id) == null) { | |
| 65 | - throw exception(TEST_DEMO_NOT_EXISTS); | |
| 66 | - } | |
| 67 | - } | |
| 68 | - | |
| 69 | - @Override | |
| 70 | - @Cacheable(cacheNames = "test", key = "#id") | |
| 71 | - public TestDemoDO getTestDemo(Long id) { | |
| 72 | - return testDemoMapper.selectById(id); | |
| 73 | - } | |
| 74 | - | |
| 75 | - @Override | |
| 76 | - public List<TestDemoDO> getTestDemoList(Collection<Long> ids) { | |
| 77 | - return testDemoMapper.selectBatchIds(ids); | |
| 78 | - } | |
| 79 | - | |
| 80 | - @Override | |
| 81 | - public PageResult<TestDemoDO> getTestDemoPage(TestDemoPageReqVO pageReqVO) { | |
| 82 | -// testDemoMapper.selectList2(); | |
| 83 | - return testDemoMapper.selectPage(pageReqVO); | |
| 84 | - } | |
| 85 | - | |
| 86 | - @Override | |
| 87 | - public List<TestDemoDO> getTestDemoList(TestDemoExportReqVO exportReqVO) { | |
| 88 | - return testDemoMapper.selectList(exportReqVO); | |
| 89 | - } | |
| 90 | - | |
| 91 | -} |
yudao-module-infra/yudao-module-infra-biz/src/main/resources/mapper/null/.gitkeep deleted
yudao-module-infra/yudao-module-infra-biz/src/main/resources/mapper/test/TestDemoMapper.xml deleted
| 1 | -<?xml version="1.0" encoding="UTF-8"?> | |
| 2 | -<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |
| 3 | -<mapper namespace="cn.iocoder.yudao.module.infra.dal.mysql.test.TestDemoMapper"> | |
| 4 | - | |
| 5 | - <!-- | |
| 6 | - 一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。 | |
| 7 | - 无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。 | |
| 8 | - 代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。 | |
| 9 | - 文档可见:https://www.iocoder.cn/MyBatis/x-plugins/ | |
| 10 | - --> | |
| 11 | - | |
| 12 | - <select id="selectList2" resultType="cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO"> | |
| 13 | - SELECT * FROM infra_test_demo | |
| 14 | - </select> | |
| 15 | - | |
| 16 | -</mapper> |
yudao-module-infra/yudao-module-infra-biz/src/test/java/cn/iocoder/yudao/module/infra/service/test/TestDemoServiceImplTest.java deleted
| 1 | -package cn.iocoder.yudao.module.infra.service.test; | |
| 2 | - | |
| 3 | -import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | |
| 4 | -import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 5 | -import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | |
| 6 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoCreateReqVO; | |
| 7 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoExportReqVO; | |
| 8 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoPageReqVO; | |
| 9 | -import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoUpdateReqVO; | |
| 10 | -import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO; | |
| 11 | -import cn.iocoder.yudao.module.infra.dal.mysql.test.TestDemoMapper; | |
| 12 | -import org.junit.jupiter.api.Test; | |
| 13 | -import org.springframework.context.annotation.Import; | |
| 14 | - | |
| 15 | -import javax.annotation.Resource; | |
| 16 | -import java.time.LocalDateTime; | |
| 17 | -import java.util.List; | |
| 18 | - | |
| 19 | -import static cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils.buildTime; | |
| 20 | -import static cn.iocoder.yudao.framework.common.util.object.ObjectUtils.cloneIgnoreId; | |
| 21 | -import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertPojoEquals; | |
| 22 | -import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertServiceException; | |
| 23 | -import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomLongId; | |
| 24 | -import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo; | |
| 25 | -import static cn.iocoder.yudao.module.infra.enums.ErrorCodeConstants.TEST_DEMO_NOT_EXISTS; | |
| 26 | -import static org.junit.jupiter.api.Assertions.*; | |
| 27 | - | |
| 28 | -/** | |
| 29 | - * {@link TestDemoServiceImpl} 的单元测试类 | |
| 30 | - * | |
| 31 | - * @author 芋道源码 | |
| 32 | - */ | |
| 33 | -@Import(TestDemoServiceImpl.class) | |
| 34 | -public class TestDemoServiceImplTest extends BaseDbUnitTest { | |
| 35 | - | |
| 36 | - @Resource | |
| 37 | - private TestDemoServiceImpl testDemoService; | |
| 38 | - | |
| 39 | - @Resource | |
| 40 | - private TestDemoMapper testDemoMapper; | |
| 41 | - | |
| 42 | - @Test | |
| 43 | - public void testCreateTestDemo_success() { | |
| 44 | - // 准备参数 | |
| 45 | - TestDemoCreateReqVO reqVO = randomPojo(TestDemoCreateReqVO.class); | |
| 46 | - | |
| 47 | - // 调用 | |
| 48 | - Long testDemoId = testDemoService.createTestDemo(reqVO); | |
| 49 | - // 断言 | |
| 50 | - assertNotNull(testDemoId); | |
| 51 | - // 校验记录的属性是否正确 | |
| 52 | - TestDemoDO testDemo = testDemoMapper.selectById(testDemoId); | |
| 53 | - assertPojoEquals(reqVO, testDemo); | |
| 54 | - } | |
| 55 | - | |
| 56 | - @Test | |
| 57 | - public void testUpdateTestDemo_success() { | |
| 58 | - // mock 数据 | |
| 59 | - TestDemoDO dbTestDemo = randomPojo(TestDemoDO.class); | |
| 60 | - testDemoMapper.insert(dbTestDemo);// @Sql: 先插入出一条存在的数据 | |
| 61 | - // 准备参数 | |
| 62 | - TestDemoUpdateReqVO reqVO = randomPojo(TestDemoUpdateReqVO.class, o -> { | |
| 63 | - o.setId(dbTestDemo.getId()); // 设置更新的 ID | |
| 64 | - }); | |
| 65 | - | |
| 66 | - // 调用 | |
| 67 | - testDemoService.updateTestDemo(reqVO); | |
| 68 | - // 校验是否更新正确 | |
| 69 | - TestDemoDO testDemo = testDemoMapper.selectById(reqVO.getId()); // 获取最新的 | |
| 70 | - assertPojoEquals(reqVO, testDemo); | |
| 71 | - } | |
| 72 | - | |
| 73 | - @Test | |
| 74 | - public void testUpdateTestDemo_notExists() { | |
| 75 | - // 准备参数 | |
| 76 | - TestDemoUpdateReqVO reqVO = randomPojo(TestDemoUpdateReqVO.class); | |
| 77 | - | |
| 78 | - // 调用, 并断言异常 | |
| 79 | - assertServiceException(() -> testDemoService.updateTestDemo(reqVO), TEST_DEMO_NOT_EXISTS); | |
| 80 | - } | |
| 81 | - | |
| 82 | - @Test | |
| 83 | - public void testDeleteTestDemo_success() { | |
| 84 | - // mock 数据 | |
| 85 | - TestDemoDO dbTestDemo = randomPojo(TestDemoDO.class); | |
| 86 | - testDemoMapper.insert(dbTestDemo);// @Sql: 先插入出一条存在的数据 | |
| 87 | - // 准备参数 | |
| 88 | - Long id = dbTestDemo.getId(); | |
| 89 | - | |
| 90 | - // 调用 | |
| 91 | - testDemoService.deleteTestDemo(id); | |
| 92 | - // 校验数据不存在了 | |
| 93 | - assertNull(testDemoMapper.selectById(id)); | |
| 94 | - } | |
| 95 | - | |
| 96 | - @Test | |
| 97 | - public void testDeleteTestDemo_notExists() { | |
| 98 | - // 准备参数 | |
| 99 | - Long id = randomLongId(); | |
| 100 | - | |
| 101 | - // 调用, 并断言异常 | |
| 102 | - assertServiceException(() -> testDemoService.deleteTestDemo(id), TEST_DEMO_NOT_EXISTS); | |
| 103 | - } | |
| 104 | - | |
| 105 | - @Test | |
| 106 | - public void testGetTestDemoPage() { | |
| 107 | - // mock 数据 | |
| 108 | - TestDemoDO dbTestDemo = randomPojo(TestDemoDO.class, o -> { // 等会查询到 | |
| 109 | - o.setName("芋道源码"); | |
| 110 | - o.setStatus(CommonStatusEnum.ENABLE.getStatus()); | |
| 111 | - o.setType(1); | |
| 112 | - o.setCategory(2); | |
| 113 | - o.setRemark("哈哈哈"); | |
| 114 | - o.setCreateTime(buildTime(2021, 11, 11)); | |
| 115 | - }); | |
| 116 | - testDemoMapper.insert(dbTestDemo); | |
| 117 | - // 测试 name 不匹配 | |
| 118 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setName("不匹配"))); | |
| 119 | - // 测试 status 不匹配 | |
| 120 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setStatus(CommonStatusEnum.DISABLE.getStatus()))); | |
| 121 | - // 测试 type 不匹配 | |
| 122 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setType(2))); | |
| 123 | - // 测试 category 不匹配 | |
| 124 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setCategory(1))); | |
| 125 | - // 测试 remark 不匹配 | |
| 126 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setRemark("呵呵呵"))); | |
| 127 | - // 测试 createTime 不匹配 | |
| 128 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setCreateTime(buildTime(2021, 12, 12)))); | |
| 129 | - // 准备参数 | |
| 130 | - TestDemoPageReqVO reqVO = new TestDemoPageReqVO(); | |
| 131 | - reqVO.setName("芋道"); | |
| 132 | - reqVO.setStatus(CommonStatusEnum.ENABLE.getStatus()); | |
| 133 | - reqVO.setType(1); | |
| 134 | - reqVO.setCategory(2); | |
| 135 | - reqVO.setRemark("哈哈哈"); | |
| 136 | - reqVO.setCreateTime((new LocalDateTime[]{buildTime(2021, 11, 10),buildTime(2021, 11, 12)})); | |
| 137 | - | |
| 138 | - // 调用 | |
| 139 | - PageResult<TestDemoDO> pageResult = testDemoService.getTestDemoPage(reqVO); | |
| 140 | - // 断言 | |
| 141 | - assertEquals(1, pageResult.getTotal()); | |
| 142 | - assertEquals(1, pageResult.getList().size()); | |
| 143 | - assertPojoEquals(dbTestDemo, pageResult.getList().get(0)); | |
| 144 | - } | |
| 145 | - | |
| 146 | - @Test | |
| 147 | - public void testGetTestDemoList() { | |
| 148 | - // mock 数据 | |
| 149 | - TestDemoDO dbTestDemo = randomPojo(TestDemoDO.class, o -> { // 等会查询到 | |
| 150 | - o.setName("芋道源码"); | |
| 151 | - o.setStatus(CommonStatusEnum.ENABLE.getStatus()); | |
| 152 | - o.setType(1); | |
| 153 | - o.setCategory(2); | |
| 154 | - o.setRemark("哈哈哈"); | |
| 155 | - o.setCreateTime(buildTime(2021, 11, 11)); | |
| 156 | - }); | |
| 157 | - testDemoMapper.insert(dbTestDemo); | |
| 158 | - // 测试 name 不匹配 | |
| 159 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setName("不匹配"))); | |
| 160 | - // 测试 status 不匹配 | |
| 161 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setStatus(CommonStatusEnum.DISABLE.getStatus()))); | |
| 162 | - // 测试 type 不匹配 | |
| 163 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setType(2))); | |
| 164 | - // 测试 category 不匹配 | |
| 165 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setCategory(1))); | |
| 166 | - // 测试 remark 不匹配 | |
| 167 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setRemark("呵呵呵"))); | |
| 168 | - // 测试 createTime 不匹配 | |
| 169 | - testDemoMapper.insert(cloneIgnoreId(dbTestDemo, o -> o.setCreateTime(buildTime(2021, 12, 12)))); | |
| 170 | - // 准备参数 | |
| 171 | - TestDemoExportReqVO reqVO = new TestDemoExportReqVO(); | |
| 172 | - reqVO.setName("芋道"); | |
| 173 | - reqVO.setStatus(CommonStatusEnum.ENABLE.getStatus()); | |
| 174 | - reqVO.setType(1); | |
| 175 | - reqVO.setCategory(2); | |
| 176 | - reqVO.setRemark("哈哈哈"); | |
| 177 | - reqVO.setCreateTime((new LocalDateTime[]{buildTime(2021, 11, 10),buildTime(2021, 11, 12)})); | |
| 178 | - | |
| 179 | - // 调用 | |
| 180 | - List<TestDemoDO> list = testDemoService.getTestDemoList(reqVO); | |
| 181 | - // 断言 | |
| 182 | - assertEquals(1, list.size()); | |
| 183 | - assertPojoEquals(dbTestDemo, list.get(0)); | |
| 184 | - } | |
| 185 | - | |
| 186 | -} |