From b9ffa1820dcaa20b4e8741b4dc5d02d8f03473e0 Mon Sep 17 00:00:00 2001 From: puhui999 Date: Tue, 20 May 2025 16:09:21 +0800 Subject: [PATCH 1/2] =?UTF-8?q?perf:=E3=80=90INFRA=20=E5=9F=BA=E7=A1=80?= =?UTF-8?q?=E8=AE=BE=E6=96=BD=E3=80=91=E4=BC=98=E5=8C=96=E4=B8=80=E4=BA=9B?= =?UTF-8?q?=20todo=20=E6=8F=90=E5=88=B0=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mybatis/core/dataobject/BaseDO.java | 10 ++++++++ .../codegen/vo/CodegenCreateListReqVO.java | 2 +- .../admin/codegen/vo/CodegenUpdateReqVO.java | 4 ++-- .../vo/column/CodegenColumnSaveReqVO.java | 3 +-- .../vo/table/CodegenTablePageReqVO.java | 4 ---- .../vo/table/CodegenTableSaveReqVO.java | 3 +-- .../admin/config/ConfigController.java | 10 ++++---- .../admin/config/vo/ConfigPageReqVO.java | 4 ---- .../admin/config/vo/ConfigSaveReqVO.java | 3 +-- .../admin/db/DataSourceConfigController.java | 4 ++-- .../db/vo/DataSourceConfigSaveReqVO.java | 4 ++-- .../demo/demo01/Demo01ContactController.java | 6 ++--- .../demo01/vo/Demo01ContactPageReqVO.java | 4 ---- .../erp/Demo03StudentErpController.java | 18 +++++++------- .../erp/vo/Demo03StudentErpPageReqVO.java | 4 ---- .../inner/Demo03StudentInnerController.java | 6 ++--- .../inner/vo/Demo03StudentInnerPageReqVO.java | 4 ---- .../normal/Demo03StudentNormalController.java | 6 ++--- .../vo/Demo03StudentNormalPageReqVO.java | 4 ---- .../admin/file/FileConfigController.java | 5 ++-- .../file/vo/config/FileConfigPageReqVO.java | 4 ---- .../file/vo/config/FileConfigSaveReqVO.java | 2 +- .../admin/file/vo/file/FilePageReqVO.java | 4 ---- .../admin/file/vo/file/FileUploadReqVO.java | 3 +-- .../controller/admin/job/JobController.java | 4 ++-- .../admin/job/vo/job/JobPageReqVO.java | 4 ---- .../admin/job/vo/job/JobRespVO.java | 2 +- .../admin/job/vo/job/JobSaveReqVO.java | 3 +-- .../admin/job/vo/log/JobLogPageReqVO.java | 4 ---- .../admin/logger/ApiAccessLogController.java | 6 ++--- .../admin/logger/ApiErrorLogController.java | 8 +++---- .../apiaccesslog/ApiAccessLogPageReqVO.java | 4 ---- .../vo/apierrorlog/ApiErrorLogPageReqVO.java | 4 ---- .../admin/redis/RedisController.java | 2 +- .../app/file/vo/AppFileUploadReqVO.java | 3 +-- .../dal/dataobject/file/FileConfigDO.java | 3 ++- .../infra/dal/mysql/job/JobLogMapper.java | 2 +- .../dal/mysql/logger/ApiAccessLogMapper.java | 2 +- .../dal/mysql/logger/ApiErrorLogMapper.java | 4 ++-- .../infra/service/codegen/CodegenService.java | 6 ++--- .../service/codegen/inner/CodegenBuilder.java | 1 - .../service/codegen/inner/CodegenEngine.java | 8 +++---- .../infra/service/config/ConfigService.java | 1 - .../service/config/ConfigServiceImpl.java | 3 +-- .../service/db/DataSourceConfigService.java | 2 +- .../db/DataSourceConfigServiceImpl.java | 2 +- .../service/db/DatabaseTableService.java | 6 ++--- .../demo/demo01/Demo01ContactService.java | 2 +- .../demo/demo01/Demo01ContactServiceImpl.java | 2 +- .../demo03/erp/Demo03StudentErpService.java | 6 ++--- .../erp/Demo03StudentErpServiceImpl.java | 10 ++++---- .../inner/Demo03StudentInnerService.java | 2 +- .../inner/Demo03StudentInnerServiceImpl.java | 11 ++++----- .../normal/Demo03StudentNormalService.java | 2 +- .../Demo03StudentNormalServiceImpl.java | 11 ++++----- .../infra/service/file/FileConfigService.java | 3 +-- .../service/file/FileConfigServiceImpl.java | 14 +++++------ .../infra/service/file/FileService.java | 8 +++---- .../infra/service/job/JobLogService.java | 2 +- .../infra/service/job/JobLogServiceImpl.java | 2 +- .../module/infra/service/job/JobService.java | 5 ++-- .../infra/service/job/JobServiceImpl.java | 2 +- .../service/logger/ApiAccessLogService.java | 2 +- .../service/logger/ApiErrorLogService.java | 6 ++--- .../logger/ApiErrorLogServiceImpl.java | 2 +- .../codegen/java/controller/controller.vm | 12 +++++----- .../codegen/java/controller/vo/pageReqVO.vm | 2 -- .../src/main/resources/codegen/java/dal/do.vm | 10 ++++++-- .../resources/codegen/java/service/service.vm | 4 ++-- .../codegen/java/service/serviceImpl.vm | 15 ++++++------ .../vue3_vben5_antd/schema/api/api.ts.vm | 12 +++++----- .../vue3_vben5_antd/schema/views/index.vue.vm | 24 +++++++++---------- .../schema/views/modules/list_sub_erp.vue.vm | 24 +++++++++---------- 73 files changed, 177 insertions(+), 223 deletions(-) diff --git a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/dataobject/BaseDO.java b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/dataobject/BaseDO.java index fc5f0a3014..2ad883b44d 100644 --- a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/dataobject/BaseDO.java +++ b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/dataobject/BaseDO.java @@ -53,4 +53,14 @@ public abstract class BaseDO implements Serializable, TransPojo { @TableLogic private Boolean deleted; + /** + * 把 creator、createTime、updateTime、updater 都清空,避免前端直接传递 creator 之类的字段,直接就被更新了。 + */ + public void clean(){ + this.creator = null; + this.createTime = null; + this.updater = null; + this.updateTime = null; + } + } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/CodegenCreateListReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/CodegenCreateListReqVO.java index 5e73377d76..cd00e8a91b 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/CodegenCreateListReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/CodegenCreateListReqVO.java @@ -1,9 +1,9 @@ package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo; import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; import lombok.Data; -import jakarta.validation.constraints.NotNull; import java.util.List; @Schema(description = "管理后台 - 基于数据库的表结构,创建代码生成器的表和字段定义 Request VO") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/CodegenUpdateReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/CodegenUpdateReqVO.java index e8a8515cdb..d381ec6548 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/CodegenUpdateReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/CodegenUpdateReqVO.java @@ -3,10 +3,10 @@ package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo; import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.column.CodegenColumnSaveReqVO; import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table.CodegenTableSaveReqVO; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Data; - import jakarta.validation.Valid; import jakarta.validation.constraints.NotNull; +import lombok.Data; + import java.util.List; @Schema(description = "管理后台 - 代码生成表和字段的修改 Request VO") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/column/CodegenColumnSaveReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/column/CodegenColumnSaveReqVO.java index 18067c2fa8..9579d790b6 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/column/CodegenColumnSaveReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/column/CodegenColumnSaveReqVO.java @@ -1,9 +1,8 @@ package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.column; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Data; - import jakarta.validation.constraints.NotNull; +import lombok.Data; @Schema(description = "管理后台 - 代码生成字段定义创建/修改 Request VO") @Data diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/table/CodegenTablePageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/table/CodegenTablePageReqVO.java index 032a9d82ff..7bd26d6ede 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/table/CodegenTablePageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/table/CodegenTablePageReqVO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -13,8 +11,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Schema(description = "管理后台 - 表定义分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class CodegenTablePageReqVO extends PageParam { @Schema(description = "表名称,模糊匹配", example = "yudao") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/table/CodegenTableSaveReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/table/CodegenTableSaveReqVO.java index 201d94d2e2..5f12e3dc71 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/table/CodegenTableSaveReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/table/CodegenTableSaveReqVO.java @@ -5,10 +5,9 @@ import cn.iocoder.yudao.module.infra.enums.codegen.CodegenSceneEnum; import cn.iocoder.yudao.module.infra.enums.codegen.CodegenTemplateTypeEnum; import com.fasterxml.jackson.annotation.JsonIgnore; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Data; - import jakarta.validation.constraints.AssertTrue; import jakarta.validation.constraints.NotNull; +import lombok.Data; @Schema(description = "管理后台 - 代码生成表定义创建/修改 Response VO") @Data diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/ConfigController.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/ConfigController.java index 7de4138b54..43e64c02a9 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/ConfigController.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/ConfigController.java @@ -5,7 +5,9 @@ import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; -import cn.iocoder.yudao.module.infra.controller.admin.config.vo.*; +import cn.iocoder.yudao.module.infra.controller.admin.config.vo.ConfigPageReqVO; +import cn.iocoder.yudao.module.infra.controller.admin.config.vo.ConfigRespVO; +import cn.iocoder.yudao.module.infra.controller.admin.config.vo.ConfigSaveReqVO; import cn.iocoder.yudao.module.infra.convert.config.ConfigConvert; import cn.iocoder.yudao.module.infra.dal.dataobject.config.ConfigDO; import cn.iocoder.yudao.module.infra.enums.ErrorCodeConstants; @@ -13,13 +15,13 @@ import cn.iocoder.yudao.module.infra.service.config.ConfigService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.Valid; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import jakarta.annotation.Resource; -import jakarta.servlet.http.HttpServletResponse; -import jakarta.validation.Valid; import java.io.IOException; import java.util.List; diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/vo/ConfigPageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/vo/ConfigPageReqVO.java index 8caec39d11..1a8a139651 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/vo/ConfigPageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/vo/ConfigPageReqVO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.infra.controller.admin.config.vo; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -13,8 +11,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Schema(description = "管理后台 - 参数配置分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class ConfigPageReqVO extends PageParam { @Schema(description = "数据源名称,模糊匹配", example = "名称") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/vo/ConfigSaveReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/vo/ConfigSaveReqVO.java index 0c791d6de6..bbde578ce4 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/vo/ConfigSaveReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/config/vo/ConfigSaveReqVO.java @@ -1,12 +1,11 @@ package cn.iocoder.yudao.module.infra.controller.admin.config.vo; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Data; - import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; +import lombok.Data; @Schema(description = "管理后台 - 参数配置创建/修改 Request VO") @Data diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/db/DataSourceConfigController.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/db/DataSourceConfigController.java index 7a897fa21e..ba952c9e93 100755 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/db/DataSourceConfigController.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/db/DataSourceConfigController.java @@ -9,12 +9,12 @@ import cn.iocoder.yudao.module.infra.service.db.DataSourceConfigService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; +import jakarta.validation.Valid; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import jakarta.annotation.Resource; -import jakarta.validation.Valid; import java.util.List; import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/db/vo/DataSourceConfigSaveReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/db/vo/DataSourceConfigSaveReqVO.java index 9a5b13c56b..def5eef575 100755 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/db/vo/DataSourceConfigSaveReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/db/vo/DataSourceConfigSaveReqVO.java @@ -1,8 +1,8 @@ package cn.iocoder.yudao.module.infra.controller.admin.db.vo; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.*; -import jakarta.validation.constraints.*; +import jakarta.validation.constraints.NotNull; +import lombok.Data; @Schema(description = "管理后台 - 数据源配置创建/修改 Request VO") @Data diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo01/Demo01ContactController.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo01/Demo01ContactController.java index 8574aef785..69bf6faaf3 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo01/Demo01ContactController.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo01/Demo01ContactController.java @@ -60,12 +60,12 @@ public class Demo01ContactController { return success(true); } - @DeleteMapping("/delete-batch") + @DeleteMapping("/delete-list") @Parameter(name = "ids", description = "编号", required = true) @Operation(summary = "批量删除示例联系人") @PreAuthorize("@ss.hasPermission('infra:demo01-contact:delete')") - public CommonResult deleteDemo01Contact(@RequestParam("ids") List ids) { - demo01ContactService.deleteDemo01ContactByIds(ids); + public CommonResult deleteDemo0iContactList(@RequestParam("ids") List ids) { + demo01ContactService.deleteDemo0iContactListByIds(ids); return success(true); } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo01/vo/Demo01ContactPageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo01/vo/Demo01ContactPageReqVO.java index 151813965c..07c4ba1756 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo01/vo/Demo01ContactPageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo01/vo/Demo01ContactPageReqVO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.infra.controller.admin.demo.demo01.vo; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -13,8 +11,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Schema(description = "管理后台 - 示例联系人分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class Demo01ContactPageReqVO extends PageParam { @Schema(description = "名字", example = "张三") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/erp/Demo03StudentErpController.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/erp/Demo03StudentErpController.java index 361e7f5364..18a90c19e8 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/erp/Demo03StudentErpController.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/erp/Demo03StudentErpController.java @@ -62,12 +62,12 @@ public class Demo03StudentErpController { return success(true); } - @DeleteMapping("/delete-batch") + @DeleteMapping("/delete-list") @Parameter(name = "ids", description = "编号", required = true) @Operation(summary = "批量删除学生") @PreAuthorize("@ss.hasPermission('infra:demo03-student:delete')") - public CommonResult deleteDemo03Student(@RequestParam("ids") List ids) { - demo03StudentErpService.deleteDemo03StudentByIds(ids); + public CommonResult deleteDemo03StudentList(@RequestParam("ids") List ids) { + demo03StudentErpService.deleteDemo03StudentListByIds(ids); return success(true); } @@ -136,12 +136,12 @@ public class Demo03StudentErpController { return success(true); } - @DeleteMapping("/demo03-course/delete-batch") + @DeleteMapping("/demo03-course/delete-list") @Parameter(name = "ids", description = "编号", required = true) @Operation(summary = "批量删除学生课程") @PreAuthorize("@ss.hasPermission('infra:demo03-student:delete')") - public CommonResult deleteDemo03Course(@RequestParam("ids") List ids) { - demo03StudentErpService.deleteDemo03CourseByIds(ids); + public CommonResult deleteDemo03CourseList(@RequestParam("ids") List ids) { + demo03StudentErpService.deleteDemo03CourseListByIds(ids); return success(true); } @@ -188,12 +188,12 @@ public class Demo03StudentErpController { return success(true); } - @DeleteMapping("/demo03-grade/delete-batch") + @DeleteMapping("/demo03-grade/delete-list") @Parameter(name = "ids", description = "编号", required = true) @Operation(summary = "批量删除学生班级") @PreAuthorize("@ss.hasPermission('infra:demo03-student:delete')") - public CommonResult deleteDemo03Grade(@RequestParam("ids") List ids) { - demo03StudentErpService.deleteDemo03GradeByIds(ids); + public CommonResult deleteDemo03GradeList(@RequestParam("ids") List ids) { + demo03StudentErpService.deleteDemo03GradeListByIds(ids); return success(true); } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/erp/vo/Demo03StudentErpPageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/erp/vo/Demo03StudentErpPageReqVO.java index d9b34c484b..5fcb656789 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/erp/vo/Demo03StudentErpPageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/erp/vo/Demo03StudentErpPageReqVO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.infra.controller.admin.demo.demo03.erp.vo; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -13,8 +11,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Schema(description = "管理后台 - 学生分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class Demo03StudentErpPageReqVO extends PageParam { @Schema(description = "名字", example = "芋艿") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/inner/Demo03StudentInnerController.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/inner/Demo03StudentInnerController.java index 214d1fe058..d76b3a89d0 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/inner/Demo03StudentInnerController.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/inner/Demo03StudentInnerController.java @@ -62,12 +62,12 @@ public class Demo03StudentInnerController { return success(true); } - @DeleteMapping("/delete-batch") + @DeleteMapping("/delete-list") @Parameter(name = "ids", description = "编号", required = true) @Operation(summary = "批量删除学生") @PreAuthorize("@ss.hasPermission('infra:demo03-student:delete')") - public CommonResult deleteDemo03Student(@RequestParam("ids") List ids) { - demo03StudentInnerService.deleteDemo03StudentByIds(ids); + public CommonResult deleteDemo03StudentList(@RequestParam("ids") List ids) { + demo03StudentInnerService.deleteDemo03StudentListByIds(ids); return success(true); } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/inner/vo/Demo03StudentInnerPageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/inner/vo/Demo03StudentInnerPageReqVO.java index d11fba7244..82c7265938 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/inner/vo/Demo03StudentInnerPageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/inner/vo/Demo03StudentInnerPageReqVO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.infra.controller.admin.demo.demo03.inner.vo; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -13,8 +11,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Schema(description = "管理后台 - 学生分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class Demo03StudentInnerPageReqVO extends PageParam { @Schema(description = "名字", example = "芋艿") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/normal/Demo03StudentNormalController.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/normal/Demo03StudentNormalController.java index df4b1b132b..e52160ca77 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/normal/Demo03StudentNormalController.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/normal/Demo03StudentNormalController.java @@ -62,12 +62,12 @@ public class Demo03StudentNormalController { return success(true); } - @DeleteMapping("/delete-batch") + @DeleteMapping("/delete-list") @Parameter(name = "ids", description = "编号", required = true) @Operation(summary = "批量删除学生") @PreAuthorize("@ss.hasPermission('infra:demo03-student:delete')") - public CommonResult deleteDemo03Student(@RequestParam("ids") List ids) { - demo03StudentNormalService.deleteDemo03StudentByIds(ids); + public CommonResult deleteDemo03StudentList(@RequestParam("ids") List ids) { + demo03StudentNormalService.deleteDemo03StudentListByIds(ids); return success(true); } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/normal/vo/Demo03StudentNormalPageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/normal/vo/Demo03StudentNormalPageReqVO.java index 2cc8ae2de5..8d6c76c846 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/normal/vo/Demo03StudentNormalPageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo03/normal/vo/Demo03StudentNormalPageReqVO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.infra.controller.admin.demo.demo03.normal.vo; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -13,8 +11,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Schema(description = "管理后台 - 学生分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class Demo03StudentNormalPageReqVO extends PageParam { @Schema(description = "名字", example = "芋艿") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/FileConfigController.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/FileConfigController.java index ecf6b6e073..a2e12c4e11 100755 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/FileConfigController.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/FileConfigController.java @@ -11,13 +11,12 @@ import cn.iocoder.yudao.module.infra.service.file.FileConfigService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; +import jakarta.validation.Valid; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import jakarta.annotation.Resource; -import jakarta.validation.Valid; - import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; @Tag(name = "管理后台 - 文件配置") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/config/FileConfigPageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/config/FileConfigPageReqVO.java index 481fa2af52..23b3077040 100755 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/config/FileConfigPageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/config/FileConfigPageReqVO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.infra.controller.admin.file.vo.config; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -13,8 +11,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Schema(description = "管理后台 - 文件配置分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class FileConfigPageReqVO extends PageParam { @Schema(description = "配置名", example = "S3 - 阿里云") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/config/FileConfigSaveReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/config/FileConfigSaveReqVO.java index f4bf7c2c99..211bee5de6 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/config/FileConfigSaveReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/config/FileConfigSaveReqVO.java @@ -1,9 +1,9 @@ package cn.iocoder.yudao.module.infra.controller.admin.file.vo.config; import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; import lombok.Data; -import jakarta.validation.constraints.NotNull; import java.util.Map; @Schema(description = "管理后台 - 文件配置创建/修改 Request VO") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/file/FilePageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/file/FilePageReqVO.java index 21c117867e..48d4c4377f 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/file/FilePageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/file/FilePageReqVO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.infra.controller.admin.file.vo.file; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -13,8 +11,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Schema(description = "管理后台 - 文件分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class FilePageReqVO extends PageParam { @Schema(description = "文件路径,模糊匹配", example = "yudao") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/file/FileUploadReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/file/FileUploadReqVO.java index 183462a892..4096f477e3 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/file/FileUploadReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/file/vo/file/FileUploadReqVO.java @@ -1,11 +1,10 @@ package cn.iocoder.yudao.module.infra.controller.admin.file.vo.file; import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; import lombok.Data; import org.springframework.web.multipart.MultipartFile; -import jakarta.validation.constraints.NotNull; - @Schema(description = "管理后台 - 上传文件 Request VO") @Data public class FileUploadReqVO { diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/JobController.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/JobController.java index 372b6391b1..bf4506d34f 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/JobController.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/JobController.java @@ -71,10 +71,10 @@ public class JobController { return success(true); } - @DeleteMapping("/delete") + @DeleteMapping("/delete") @Operation(summary = "删除定时任务") @Parameter(name = "id", description = "编号", required = true, example = "1024") - @PreAuthorize("@ss.hasPermission('infra:job:delete')") + @PreAuthorize("@ss.hasPermission('infra:job:delete')") public CommonResult deleteJob(@RequestParam("id") Long id) throws SchedulerException { jobService.deleteJob(id); diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobPageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobPageReqVO.java index 332833519c..67a6aaeee0 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobPageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobPageReqVO.java @@ -3,13 +3,9 @@ package cn.iocoder.yudao.module.infra.controller.admin.job.vo.job; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; @Schema(description = "管理后台 - 定时任务分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class JobPageReqVO extends PageParam { @Schema(description = "任务名称,模糊匹配", example = "测试任务") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobRespVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobRespVO.java index ea9cd5e3cd..aee0d9bcf1 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobRespVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobRespVO.java @@ -6,9 +6,9 @@ import cn.iocoder.yudao.module.infra.enums.DictTypeConstants; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; import lombok.Data; -import jakarta.validation.constraints.NotNull; import java.time.LocalDateTime; @Schema(description = "管理后台 - 定时任务 Response VO") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobSaveReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobSaveReqVO.java index b22060b3dc..a8e20fc7de 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobSaveReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/job/JobSaveReqVO.java @@ -1,10 +1,9 @@ package cn.iocoder.yudao.module.infra.controller.admin.job.vo.job; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Data; - import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; +import lombok.Data; @Schema(description = "管理后台 - 定时任务创建/修改 Request VO") @Data diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/log/JobLogPageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/log/JobLogPageReqVO.java index 1d3d49600f..2d8c30e448 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/log/JobLogPageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/job/vo/log/JobLogPageReqVO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.infra.controller.admin.job.vo.log; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -13,8 +11,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Schema(description = "管理后台 - 定时任务日志分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class JobLogPageReqVO extends PageParam { @Schema(description = "任务编号", example = "10") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/ApiAccessLogController.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/ApiAccessLogController.java index b4ee86c0d8..513b3ef21b 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/ApiAccessLogController.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/ApiAccessLogController.java @@ -12,15 +12,15 @@ import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiAccessLogDO; import cn.iocoder.yudao.module.infra.service.logger.ApiAccessLogService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.Valid; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import jakarta.annotation.Resource; -import jakarta.servlet.http.HttpServletResponse; -import jakarta.validation.Valid; import java.io.IOException; import java.util.List; diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/ApiErrorLogController.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/ApiErrorLogController.java index 25eb2e99c2..525bb9eda8 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/ApiErrorLogController.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/ApiErrorLogController.java @@ -14,13 +14,13 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameters; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.Valid; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import jakarta.annotation.Resource; -import jakarta.servlet.http.HttpServletResponse; -import jakarta.validation.Valid; import java.io.IOException; import java.util.List; @@ -63,7 +63,7 @@ public class ApiErrorLogController { @PreAuthorize("@ss.hasPermission('infra:api-error-log:export')") @ApiAccessLog(operateType = EXPORT) public void exportApiErrorLogExcel(@Valid ApiErrorLogPageReqVO exportReqVO, - HttpServletResponse response) throws IOException { + HttpServletResponse response) throws IOException { exportReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); List list = apiErrorLogService.getApiErrorLogPage(exportReqVO).getList(); // 导出 Excel diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/vo/apiaccesslog/ApiAccessLogPageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/vo/apiaccesslog/ApiAccessLogPageReqVO.java index c17c111220..1da136bc5c 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/vo/apiaccesslog/ApiAccessLogPageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/vo/apiaccesslog/ApiAccessLogPageReqVO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apiaccesslog; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -13,8 +11,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Schema(description = "管理后台 - API 访问日志分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class ApiAccessLogPageReqVO extends PageParam { @Schema(description = "用户编号", example = "666") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/vo/apierrorlog/ApiErrorLogPageReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/vo/apierrorlog/ApiErrorLogPageReqVO.java index 2ceb0d033d..9611f69c9b 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/vo/apierrorlog/ApiErrorLogPageReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/logger/vo/apierrorlog/ApiErrorLogPageReqVO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apierrorlog; import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -13,8 +11,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Schema(description = "管理后台 - API 错误日志分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class ApiErrorLogPageReqVO extends PageParam { @Schema(description = "用户编号", example = "666") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/redis/RedisController.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/redis/RedisController.java index 88f29f9a82..7ddfc0bea7 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/redis/RedisController.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/redis/RedisController.java @@ -5,6 +5,7 @@ import cn.iocoder.yudao.module.infra.controller.admin.redis.vo.RedisMonitorRespV import cn.iocoder.yudao.module.infra.convert.redis.RedisConvert; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; import org.springframework.data.redis.connection.RedisServerCommands; import org.springframework.data.redis.core.RedisCallback; import org.springframework.data.redis.core.StringRedisTemplate; @@ -13,7 +14,6 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import jakarta.annotation.Resource; import java.util.Properties; import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/app/file/vo/AppFileUploadReqVO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/app/file/vo/AppFileUploadReqVO.java index fe01e03582..fde120a067 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/app/file/vo/AppFileUploadReqVO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/app/file/vo/AppFileUploadReqVO.java @@ -1,11 +1,10 @@ package cn.iocoder.yudao.module.infra.controller.app.file.vo; import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; import lombok.Data; import org.springframework.web.multipart.MultipartFile; -import jakarta.validation.constraints.NotNull; - @Schema(description = "用户 App - 上传文件 Request VO") @Data public class AppFileUploadReqVO { diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/dataobject/file/FileConfigDO.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/dataobject/file/FileConfigDO.java index 92d617e330..4387983a0d 100755 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/dataobject/file/FileConfigDO.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/dataobject/file/FileConfigDO.java @@ -79,7 +79,8 @@ public class FileConfigDO extends BaseDO { @Override public Object parse(String json) { - FileClientConfig config = JsonUtils.parseObjectQuietly(json, new TypeReference<>() {}); + FileClientConfig config = JsonUtils.parseObjectQuietly(json, new TypeReference<>() { + }); if (config != null) { return config; } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/job/JobLogMapper.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/job/JobLogMapper.java index 58ac6daf15..3902339aec 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/job/JobLogMapper.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/job/JobLogMapper.java @@ -34,7 +34,7 @@ public interface JobLogMapper extends BaseMapperX { * 物理删除指定时间之前的日志 * * @param createTime 最大时间 - * @param limit 删除条数,防止一次删除太多 + * @param limit 删除条数,防止一次删除太多 * @return 删除条数 */ @Delete("DELETE FROM infra_job_log WHERE create_time < #{createTime} LIMIT #{limit}") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/logger/ApiAccessLogMapper.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/logger/ApiAccessLogMapper.java index dce30829f5..820c4b1416 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/logger/ApiAccessLogMapper.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/logger/ApiAccessLogMapper.java @@ -36,7 +36,7 @@ public interface ApiAccessLogMapper extends BaseMapperX { * 物理删除指定时间之前的日志 * * @param createTime 最大时间 - * @param limit 删除条数,防止一次删除太多 + * @param limit 删除条数,防止一次删除太多 * @return 删除条数 */ @Delete("DELETE FROM infra_api_access_log WHERE create_time < #{createTime} LIMIT #{limit}") diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/logger/ApiErrorLogMapper.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/logger/ApiErrorLogMapper.java index b597d79294..f220696aed 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/logger/ApiErrorLogMapper.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/logger/ApiErrorLogMapper.java @@ -35,10 +35,10 @@ public interface ApiErrorLogMapper extends BaseMapperX { * 物理删除指定时间之前的日志 * * @param createTime 最大时间 - * @param limit 删除条数,防止一次删除太多 + * @param limit 删除条数,防止一次删除太多 * @return 删除条数 */ @Delete("DELETE FROM infra_api_error_log WHERE create_time < #{createTime} LIMIT #{limit}") - Integer deleteByCreateTimeLt(@Param("createTime") LocalDateTime createTime, @Param("limit")Integer limit); + Integer deleteByCreateTimeLt(@Param("createTime") LocalDateTime createTime, @Param("limit") Integer limit); } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/CodegenService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/CodegenService.java index 0d15c9db25..7adc9f7f1c 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/CodegenService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/CodegenService.java @@ -22,7 +22,7 @@ public interface CodegenService { * 基于数据库的表结构,创建代码生成器的表定义 * * @param author 作者 - * @param reqVO 表信息 + * @param reqVO 表信息 * @return 创建的表定义的编号数组 */ List createCodegenList(String author, CodegenCreateListReqVO reqVO); @@ -92,8 +92,8 @@ public interface CodegenService { * 获得数据库自带的表定义列表 * * @param dataSourceConfigId 数据源的配置编号 - * @param name 表名称 - * @param comment 表描述 + * @param name 表名称 + * @param comment 表描述 * @return 表定义列表 */ List getDatabaseTableList(Long dataSourceConfigId, String name, String comment); diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/inner/CodegenBuilder.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/inner/CodegenBuilder.java index b529c49818..06f0478f7c 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/inner/CodegenBuilder.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/inner/CodegenBuilder.java @@ -214,7 +214,6 @@ public class CodegenBuilder { // description、memo、remark if (StrUtil.endWithAnyIgnoreCase(column.getColumnName(), "description", "memo", "remark")) { column.setExample(randomEle(new String[]{"你猜", "随便", "你说的对"})); - return; } } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/inner/CodegenEngine.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/inner/CodegenEngine.java index 40fbee99fd..7f71022039 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/inner/CodegenEngine.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/inner/CodegenEngine.java @@ -221,7 +221,7 @@ public class CodegenEngine { this.templateEngine = new VelocityEngine(config); // 设置 javaxEnable,按照是否使用 JDK17 来判断 this.jakartaEnable = SystemUtil.getJavaInfo().isJavaVersionAtLeast(1700) // 17.00 * 100 - && ClassUtils.isPresent("jakarta.annotation.Resource", ClassUtils.getDefaultClassLoader()); + && ClassUtils.isPresent("jakarta.annotation.Resource", ClassUtils.getDefaultClassLoader()); // 设置 cloudEnable,按照是否使用 Spring Cloud 来判断 this.cloudEnable = ClassUtils.isPresent("cn.iocoder.yudao.module.infra.framework.rpc.config.RpcConfiguration", ClassUtils.getDefaultClassLoader()); @@ -264,9 +264,9 @@ public class CodegenEngine { /** * 生成代码 * - * @param table 表定义 - * @param columns table 的字段定义数组 - * @param subTables 子表数组,当且仅当主子表时使用 + * @param table 表定义 + * @param columns table 的字段定义数组 + * @param subTables 子表数组,当且仅当主子表时使用 * @param subColumnsList subTables 的字段定义数组 * @return 生成的代码,key 是路径,value 是对应代码 */ diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/config/ConfigService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/config/ConfigService.java index 8ff2fb1682..0087b83b92 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/config/ConfigService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/config/ConfigService.java @@ -4,7 +4,6 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.module.infra.controller.admin.config.vo.ConfigPageReqVO; import cn.iocoder.yudao.module.infra.controller.admin.config.vo.ConfigSaveReqVO; import cn.iocoder.yudao.module.infra.dal.dataobject.config.ConfigDO; - import jakarta.validation.Valid; /** diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/config/ConfigServiceImpl.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/config/ConfigServiceImpl.java index e01ae893e3..b0e5c53bef 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/config/ConfigServiceImpl.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/config/ConfigServiceImpl.java @@ -8,12 +8,11 @@ import cn.iocoder.yudao.module.infra.dal.dataobject.config.ConfigDO; import cn.iocoder.yudao.module.infra.dal.mysql.config.ConfigMapper; import cn.iocoder.yudao.module.infra.enums.config.ConfigTypeEnum; import com.google.common.annotations.VisibleForTesting; +import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; -import jakarta.annotation.Resource; - import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.module.infra.enums.ErrorCodeConstants.*; diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DataSourceConfigService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DataSourceConfigService.java index 747f80943b..bb741660e8 100755 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DataSourceConfigService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DataSourceConfigService.java @@ -2,8 +2,8 @@ package cn.iocoder.yudao.module.infra.service.db; import cn.iocoder.yudao.module.infra.controller.admin.db.vo.DataSourceConfigSaveReqVO; import cn.iocoder.yudao.module.infra.dal.dataobject.db.DataSourceConfigDO; - import jakarta.validation.Valid; + import java.util.List; /** diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DataSourceConfigServiceImpl.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DataSourceConfigServiceImpl.java index 79ba102532..3e9ed4ff3c 100755 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DataSourceConfigServiceImpl.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DataSourceConfigServiceImpl.java @@ -7,10 +7,10 @@ import cn.iocoder.yudao.module.infra.dal.dataobject.db.DataSourceConfigDO; import cn.iocoder.yudao.module.infra.dal.mysql.db.DataSourceConfigMapper; import com.baomidou.dynamic.datasource.creator.DataSourceProperty; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties; +import jakarta.annotation.Resource; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; -import jakarta.annotation.Resource; import java.util.List; import java.util.Objects; diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DatabaseTableService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DatabaseTableService.java index 9fd2ee9d6d..c58b125c14 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DatabaseTableService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/db/DatabaseTableService.java @@ -15,8 +15,8 @@ public interface DatabaseTableService { * 获得表列表,基于表名称 + 表描述进行模糊匹配 * * @param dataSourceConfigId 数据源配置的编号 - * @param nameLike 表名称,模糊匹配 - * @param commentLike 表描述,模糊匹配 + * @param nameLike 表名称,模糊匹配 + * @param commentLike 表描述,模糊匹配 * @return 表列表 */ List getTableList(Long dataSourceConfigId, String nameLike, String commentLike); @@ -25,7 +25,7 @@ public interface DatabaseTableService { * 获得指定表名 * * @param dataSourceConfigId 数据源配置的编号 - * @param tableName 表名称 + * @param tableName 表名称 * @return 表 */ TableInfo getTable(Long dataSourceConfigId, String tableName); diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo01/Demo01ContactService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo01/Demo01ContactService.java index 0e97c9ff6a..9c1c072afd 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo01/Demo01ContactService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo01/Demo01ContactService.java @@ -42,7 +42,7 @@ public interface Demo01ContactService { * * @param ids 编号 */ - void deleteDemo01ContactByIds(List ids); + void deleteDemo0iContactListByIds(List ids); /** * 获得示例联系人 diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo01/Demo01ContactServiceImpl.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo01/Demo01ContactServiceImpl.java index 5f74253102..fb6e19f967 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo01/Demo01ContactServiceImpl.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo01/Demo01ContactServiceImpl.java @@ -55,7 +55,7 @@ public class Demo01ContactServiceImpl implements Demo01ContactService { } @Override - public void deleteDemo01ContactByIds(List ids) { + public void deleteDemo0iContactListByIds(List ids) { // 校验存在 validateDemo01ContactExists(ids); // 删除 diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpService.java index 4a374100f2..8a03586206 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpService.java @@ -45,7 +45,7 @@ public interface Demo03StudentErpService { * * @param ids 编号 */ - void deleteDemo03StudentByIds(List ids); + void deleteDemo03StudentListByIds(List ids); /** * 获得学生 @@ -101,7 +101,7 @@ public interface Demo03StudentErpService { * * @param ids 编号 */ - void deleteDemo03CourseByIds(List ids); + void deleteDemo03CourseListByIds(List ids); /** * 获得学生课程 @@ -149,7 +149,7 @@ public interface Demo03StudentErpService { * * @param ids 编号 */ - void deleteDemo03GradeByIds(List ids); + void deleteDemo03GradeListByIds(List ids); /** * 获得学生班级 diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpServiceImpl.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpServiceImpl.java index 2329f27ec9..a34cbb708b 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpServiceImpl.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpServiceImpl.java @@ -71,7 +71,7 @@ public class Demo03StudentErpServiceImpl implements Demo03StudentErpService { @Override @Transactional(rollbackFor = Exception.class) - public void deleteDemo03StudentByIds(List ids) { + public void deleteDemo03StudentListByIds(List ids) { // 校验存在 validateDemo03StudentExists(ids); // 删除 @@ -123,7 +123,7 @@ public class Demo03StudentErpServiceImpl implements Demo03StudentErpService { // 校验存在 validateDemo03CourseExists(demo03Course.getId()); // 更新 - demo03Course.setUpdater(null).setUpdateTime(null); // 解决更新情况下:updateTime 不更新 + demo03Course.clean(); demo03CourseErpMapper.updateById(demo03Course); } @@ -136,7 +136,7 @@ public class Demo03StudentErpServiceImpl implements Demo03StudentErpService { } @Override - public void deleteDemo03CourseByIds(List ids) { + public void deleteDemo03CourseListByIds(List ids) { // 校验存在 validateDemo03CourseExists(ids); // 删除 @@ -192,7 +192,7 @@ public class Demo03StudentErpServiceImpl implements Demo03StudentErpService { // 校验存在 validateDemo03GradeExists(demo03Grade.getId()); // 更新 - demo03Grade.setUpdater(null).setUpdateTime(null); // 解决更新情况下:updateTime 不更新 + demo03Grade.clean(); demo03GradeErpMapper.updateById(demo03Grade); } @@ -205,7 +205,7 @@ public class Demo03StudentErpServiceImpl implements Demo03StudentErpService { } @Override - public void deleteDemo03GradeByIds(List ids) { + public void deleteDemo03GradeListByIds(List ids) { // 校验存在 validateDemo03GradeExists(ids); // 删除 diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/inner/Demo03StudentInnerService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/inner/Demo03StudentInnerService.java index cf1aa4f0f6..8c616022eb 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/inner/Demo03StudentInnerService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/inner/Demo03StudentInnerService.java @@ -44,7 +44,7 @@ public interface Demo03StudentInnerService { * * @param ids 编号 */ - void deleteDemo03StudentByIds(List ids); + void deleteDemo03StudentListByIds(List ids); /** * 获得学生 diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/inner/Demo03StudentInnerServiceImpl.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/inner/Demo03StudentInnerServiceImpl.java index de053d55ef..6faf857030 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/inner/Demo03StudentInnerServiceImpl.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/inner/Demo03StudentInnerServiceImpl.java @@ -83,7 +83,7 @@ public class Demo03StudentInnerServiceImpl implements Demo03StudentInnerService @Override @Transactional(rollbackFor = Exception.class) - public void deleteDemo03StudentByIds(List ids) { + public void deleteDemo03StudentListByIds(List ids) { // 校验存在 validateDemo03StudentExists(ids); // 删除 @@ -125,17 +125,17 @@ public class Demo03StudentInnerServiceImpl implements Demo03StudentInnerService } private void createDemo03CourseList(Long studentId, List list) { - list.forEach(o -> o.setStudentId(studentId)); + list.forEach(o -> o.setStudentId(studentId).clean()); demo03CourseInnerMapper.insertBatch(list); } private void updateDemo03CourseList(Long studentId, List list) { - list.forEach(o -> o.setStudentId(studentId)); + list.forEach(o -> o.setStudentId(studentId).clean()); List oldList = demo03CourseInnerMapper.selectListByStudentId(studentId); List> diffList = diffList(oldList, list, (oldVal, newVal) -> { boolean same = ObjectUtil.equal(oldVal.getId(), newVal.getId()); if (same) { - newVal.setId(oldVal.getId()).setUpdater(null).setUpdateTime(null); // 解决更新情况下:updateTime 不更新 + newVal.setId(oldVal.getId()); } return same; }); @@ -179,8 +179,7 @@ public class Demo03StudentInnerServiceImpl implements Demo03StudentInnerService if (demo03Grade == null) { return; } - demo03Grade.setStudentId(studentId); - demo03Grade.setUpdater(null).setUpdateTime(null); // 解决更新情况下:updateTime 不更新 + demo03Grade.setStudentId(studentId).clean(); demo03GradeInnerMapper.insertOrUpdate(demo03Grade); } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/normal/Demo03StudentNormalService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/normal/Demo03StudentNormalService.java index 7ba88f234f..5833509ddb 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/normal/Demo03StudentNormalService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/normal/Demo03StudentNormalService.java @@ -44,7 +44,7 @@ public interface Demo03StudentNormalService { * * @param ids 编号 */ - void deleteDemo03StudentByIds(List ids); + void deleteDemo03StudentListByIds(List ids); /** * 获得学生 diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/normal/Demo03StudentNormalServiceImpl.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/normal/Demo03StudentNormalServiceImpl.java index b4fb7ca250..ad3a663827 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/normal/Demo03StudentNormalServiceImpl.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/normal/Demo03StudentNormalServiceImpl.java @@ -83,7 +83,7 @@ public class Demo03StudentNormalServiceImpl implements Demo03StudentNormalServic @Override @Transactional(rollbackFor = Exception.class) - public void deleteDemo03StudentByIds(List ids) { + public void deleteDemo03StudentListByIds(List ids) { // 校验存在 validateDemo03StudentExists(ids); // 删除 @@ -125,17 +125,17 @@ public class Demo03StudentNormalServiceImpl implements Demo03StudentNormalServic } private void createDemo03CourseList(Long studentId, List list) { - list.forEach(o -> o.setStudentId(studentId)); + list.forEach(o -> o.setStudentId(studentId).clean()); demo03CourseNormalMapper.insertBatch(list); } private void updateDemo03CourseList(Long studentId, List list) { - list.forEach(o -> o.setStudentId(studentId)); + list.forEach(o -> o.setStudentId(studentId).clean()); List oldList = demo03CourseNormalMapper.selectListByStudentId(studentId); List> diffList = diffList(oldList, list, (oldVal, newVal) -> { boolean same = ObjectUtil.equal(oldVal.getId(), newVal.getId()); if (same) { - newVal.setId(oldVal.getId()).setUpdater(null).setUpdateTime(null); // 解决更新情况下:updateTime 不更新 + newVal.setId(oldVal.getId()); } return same; }); @@ -179,8 +179,7 @@ public class Demo03StudentNormalServiceImpl implements Demo03StudentNormalServic if (demo03Grade == null) { return; } - demo03Grade.setStudentId(studentId); - demo03Grade.setUpdater(null).setUpdateTime(null); // 解决更新情况下:updateTime 不更新 + demo03Grade.setStudentId(studentId).clean(); demo03GradeNormalMapper.insertOrUpdate(demo03Grade); } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileConfigService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileConfigService.java index 95ae94a016..b2bf491441 100755 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileConfigService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileConfigService.java @@ -1,11 +1,10 @@ package cn.iocoder.yudao.module.infra.service.file; import cn.iocoder.yudao.framework.common.pojo.PageResult; -import cn.iocoder.yudao.module.infra.framework.file.core.client.FileClient; import cn.iocoder.yudao.module.infra.controller.admin.file.vo.config.FileConfigPageReqVO; import cn.iocoder.yudao.module.infra.controller.admin.file.vo.config.FileConfigSaveReqVO; import cn.iocoder.yudao.module.infra.dal.dataobject.file.FileConfigDO; - +import cn.iocoder.yudao.module.infra.framework.file.core.client.FileClient; import jakarta.validation.Valid; /** diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileConfigServiceImpl.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileConfigServiceImpl.java index 37e2c46529..4e7bf47cc1 100755 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileConfigServiceImpl.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileConfigServiceImpl.java @@ -5,25 +5,25 @@ import cn.hutool.core.util.IdUtil; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.json.JsonUtils; import cn.iocoder.yudao.framework.common.util.validation.ValidationUtils; -import cn.iocoder.yudao.module.infra.framework.file.core.client.FileClient; -import cn.iocoder.yudao.module.infra.framework.file.core.client.FileClientConfig; -import cn.iocoder.yudao.module.infra.framework.file.core.client.FileClientFactory; -import cn.iocoder.yudao.module.infra.framework.file.core.enums.FileStorageEnum; import cn.iocoder.yudao.module.infra.controller.admin.file.vo.config.FileConfigPageReqVO; import cn.iocoder.yudao.module.infra.controller.admin.file.vo.config.FileConfigSaveReqVO; import cn.iocoder.yudao.module.infra.convert.file.FileConfigConvert; import cn.iocoder.yudao.module.infra.dal.dataobject.file.FileConfigDO; import cn.iocoder.yudao.module.infra.dal.mysql.file.FileConfigMapper; +import cn.iocoder.yudao.module.infra.framework.file.core.client.FileClient; +import cn.iocoder.yudao.module.infra.framework.file.core.client.FileClientConfig; +import cn.iocoder.yudao.module.infra.framework.file.core.client.FileClientFactory; +import cn.iocoder.yudao.module.infra.framework.file.core.enums.FileStorageEnum; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; +import jakarta.annotation.Resource; +import jakarta.validation.Validator; import lombok.Getter; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; -import jakarta.annotation.Resource; -import jakarta.validation.Validator; import java.time.Duration; import java.util.Map; import java.util.Objects; @@ -137,7 +137,7 @@ public class FileConfigServiceImpl implements FileConfigService { /** * 清空指定文件配置 * - * @param id 配置编号 + * @param id 配置编号 * @param master 是否主配置 */ private void clearCache(Long id, Boolean master) { diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileService.java index 247fe5f62a..01c2bba720 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/file/FileService.java @@ -25,10 +25,10 @@ public interface FileService { /** * 保存文件,并返回文件的访问路径 * - * @param content 文件内容 - * @param name 文件名称,允许空 + * @param content 文件内容 + * @param name 文件名称,允许空 * @param directory 目录,允许空 - * @param type 文件的 MIME 类型,允许空 + * @param type 文件的 MIME 类型,允许空 * @return 文件路径 */ String createFile(@NotEmpty(message = "文件内容不能为空") byte[] content, @@ -37,7 +37,7 @@ public interface FileService { /** * 生成文件预签名地址信息 * - * @param name 文件名 + * @param name 文件名 * @param directory 目录 * @return 预签名地址信息 */ diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobLogService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobLogService.java index f1e7e7c67e..2efff754a2 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobLogService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobLogService.java @@ -31,7 +31,7 @@ public interface JobLogService extends JobLogFrameworkService { /** * 清理 exceedDay 天前的任务日志 * - * @param exceedDay 超过多少天就进行清理 + * @param exceedDay 超过多少天就进行清理 * @param deleteLimit 清理的间隔条数 */ Integer cleanJobLog(Integer exceedDay, Integer deleteLimit); diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobLogServiceImpl.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobLogServiceImpl.java index bbf5f21bc4..a2abaff3b4 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobLogServiceImpl.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobLogServiceImpl.java @@ -5,12 +5,12 @@ import cn.iocoder.yudao.module.infra.controller.admin.job.vo.log.JobLogPageReqVO import cn.iocoder.yudao.module.infra.dal.dataobject.job.JobLogDO; import cn.iocoder.yudao.module.infra.dal.mysql.job.JobLogMapper; import cn.iocoder.yudao.module.infra.enums.job.JobLogStatusEnum; +import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; -import jakarta.annotation.Resource; import java.time.LocalDateTime; /** diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobService.java index 971fd1b62d..bce2a95570 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobService.java @@ -4,9 +4,8 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.module.infra.controller.admin.job.vo.job.JobPageReqVO; import cn.iocoder.yudao.module.infra.controller.admin.job.vo.job.JobSaveReqVO; import cn.iocoder.yudao.module.infra.dal.dataobject.job.JobDO; -import org.quartz.SchedulerException; - import jakarta.validation.Valid; +import org.quartz.SchedulerException; /** * 定时任务 Service 接口 @@ -33,7 +32,7 @@ public interface JobService { /** * 更新定时任务的状态 * - * @param id 任务编号 + * @param id 任务编号 * @param status 状态 */ void updateJobStatus(Long id, Integer status) throws SchedulerException; diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobServiceImpl.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobServiceImpl.java index 2ebf06619d..982e39ba43 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobServiceImpl.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/job/JobServiceImpl.java @@ -190,7 +190,7 @@ public class JobServiceImpl implements JobService { @Override public PageResult getJobPage(JobPageReqVO pageReqVO) { - return jobMapper.selectPage(pageReqVO); + return jobMapper.selectPage(pageReqVO); } private static void fillJobMonitorTimeoutEmpty(JobDO job) { diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiAccessLogService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiAccessLogService.java index 186d115250..65faa3f333 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiAccessLogService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiAccessLogService.java @@ -30,7 +30,7 @@ public interface ApiAccessLogService { /** * 清理 exceedDay 天前的访问日志 * - * @param exceedDay 超过多少天就进行清理 + * @param exceedDay 超过多少天就进行清理 * @param deleteLimit 清理的间隔条数 */ Integer cleanAccessLog(Integer exceedDay, Integer deleteLimit); diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiErrorLogService.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiErrorLogService.java index fd635b0904..b05ccf3d89 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiErrorLogService.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiErrorLogService.java @@ -1,7 +1,7 @@ package cn.iocoder.yudao.module.infra.service.logger; -import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiErrorLogCreateReqDTO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apierrorlog.ApiErrorLogPageReqVO; import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiErrorLogDO; @@ -30,7 +30,7 @@ public interface ApiErrorLogService { /** * 更新 API 错误日志已处理 * - * @param id API 日志编号 + * @param id API 日志编号 * @param processStatus 处理结果 * @param processUserId 处理人 */ @@ -39,7 +39,7 @@ public interface ApiErrorLogService { /** * 清理 exceedDay 天前的错误日志 * - * @param exceedDay 超过多少天就进行清理 + * @param exceedDay 超过多少天就进行清理 * @param deleteLimit 清理的间隔条数 */ Integer cleanErrorLog(Integer exceedDay, Integer deleteLimit); diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiErrorLogServiceImpl.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiErrorLogServiceImpl.java index a98c4b678e..e91c098941 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiErrorLogServiceImpl.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/logger/ApiErrorLogServiceImpl.java @@ -1,11 +1,11 @@ package cn.iocoder.yudao.module.infra.service.logger; +import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiErrorLogCreateReqDTO; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.common.util.string.StrUtils; import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder; import cn.iocoder.yudao.framework.tenant.core.util.TenantUtils; -import cn.iocoder.yudao.framework.common.biz.infra.logger.dto.ApiErrorLogCreateReqDTO; import cn.iocoder.yudao.module.infra.controller.admin.logger.vo.apierrorlog.ApiErrorLogPageReqVO; import cn.iocoder.yudao.module.infra.dal.dataobject.logger.ApiErrorLogDO; import cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiErrorLogMapper; diff --git a/yudao-module-infra/src/main/resources/codegen/java/controller/controller.vm b/yudao-module-infra/src/main/resources/codegen/java/controller/controller.vm index 4d5fcaeaec..9f63e240da 100644 --- a/yudao-module-infra/src/main/resources/codegen/java/controller/controller.vm +++ b/yudao-module-infra/src/main/resources/codegen/java/controller/controller.vm @@ -75,14 +75,14 @@ public class ${sceneEnum.prefixClass}${table.className}Controller { } #if ( $table.templateType != 2 && $deleteBatchEnable) - @DeleteMapping("/delete-batch") + @DeleteMapping("/delete-list") @Parameter(name = "ids", description = "编号", required = true) @Operation(summary = "批量删除${table.classComment}") #if ($sceneEnum.scene == 1) @PreAuthorize("@ss.hasPermission('${permissionPrefix}:delete')") #end - public CommonResult delete${simpleClassName}(@RequestParam("ids") List<${primaryColumn.javaType}> ids) { - ${classNameVar}Service.delete${simpleClassName}ByIds(ids); + public CommonResult delete${simpleClassName}List(@RequestParam("ids") List<${primaryColumn.javaType}> ids) { + ${classNameVar}Service.delete${simpleClassName}ListByIds(ids); return success(true); } #end @@ -244,14 +244,14 @@ public class ${sceneEnum.prefixClass}${table.className}Controller { } #if ($deleteBatchEnable) - @DeleteMapping("/${subSimpleClassName_strikeCase}/delete-batch") + @DeleteMapping("/${subSimpleClassName_strikeCase}/delete-list") @Parameter(name = "ids", description = "编号", required = true) @Operation(summary = "批量删除${subTable.classComment}") #if ($sceneEnum.scene == 1) @PreAuthorize("@ss.hasPermission('${permissionPrefix}:delete')") #end - public CommonResult delete${subSimpleClassName}(@RequestParam("ids") List<${subPrimaryColumn.javaType}> ids) { - ${classNameVar}Service.delete${subSimpleClassName}ByIds(ids); + public CommonResult delete${subSimpleClassName}List(@RequestParam("ids") List<${subPrimaryColumn.javaType}> ids) { + ${classNameVar}Service.delete${subSimpleClassName}ListByIds(ids); return success(true); } #end diff --git a/yudao-module-infra/src/main/resources/codegen/java/controller/vo/pageReqVO.vm b/yudao-module-infra/src/main/resources/codegen/java/controller/vo/pageReqVO.vm index 003bac902f..d0367a3df2 100644 --- a/yudao-module-infra/src/main/resources/codegen/java/controller/vo/pageReqVO.vm +++ b/yudao-module-infra/src/main/resources/codegen/java/controller/vo/pageReqVO.vm @@ -28,8 +28,6 @@ import static ${DateUtilsClassName}.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; @Schema(description = "${sceneEnum.name} - ${table.classComment}分页 Request VO") @Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) public class ${sceneEnum.prefixClass}${table.className}PageReqVO extends PageParam { #foreach ($column in $columns) diff --git a/yudao-module-infra/src/main/resources/codegen/java/dal/do.vm b/yudao-module-infra/src/main/resources/codegen/java/dal/do.vm index b1910b4f82..9e77deb262 100644 --- a/yudao-module-infra/src/main/resources/codegen/java/dal/do.vm +++ b/yudao-module-infra/src/main/resources/codegen/java/dal/do.vm @@ -77,17 +77,23 @@ public class ${table.className}DO extends BaseDO { private ${column.javaType} ${column.javaField}; #end #end - ## 特殊:主子表专属逻辑(非 ERP 模式) #if ( $voType == 20 && $subTables && $subTables.size() > 0 && $table.templateType != 11 ) #foreach ($subTable in $subTables) #set ($index = $foreach.count - 1) #if ( $subTable.subJoinMany) + /** + * ${subTable.classComment}列表 + */ @Schema(description = "${subTable.classComment}列表") + @TableField(exist = false) private List<${subTable.className}DO> ${subClassNameVars.get($index)}s; - #else + /** + * ${subTable.classComment} + */ @Schema(description = "${subTable.classComment}") + @TableField(exist = false) private ${subTable.className}DO ${subClassNameVars.get($index)}; #end #end diff --git a/yudao-module-infra/src/main/resources/codegen/java/service/service.vm b/yudao-module-infra/src/main/resources/codegen/java/service/service.vm index 4ced63c0f7..1cc68bf363 100644 --- a/yudao-module-infra/src/main/resources/codegen/java/service/service.vm +++ b/yudao-module-infra/src/main/resources/codegen/java/service/service.vm @@ -46,7 +46,7 @@ public interface ${table.className}Service { * * @param ids 编号 */ - void delete${simpleClassName}ByIds(List<${primaryColumn.javaType}> ids); + void delete${simpleClassName}ListByIds(List<${primaryColumn.javaType}> ids); #end /** @@ -149,7 +149,7 @@ public interface ${table.className}Service { * * @param ids 编号 */ - void delete${subSimpleClassName}ByIds(List<${subPrimaryColumn.javaType}> ids); + void delete${subSimpleClassName}ListByIds(List<${subPrimaryColumn.javaType}> ids); #end /** diff --git a/yudao-module-infra/src/main/resources/codegen/java/service/serviceImpl.vm b/yudao-module-infra/src/main/resources/codegen/java/service/serviceImpl.vm index 098f503c2c..306de9c3c1 100644 --- a/yudao-module-infra/src/main/resources/codegen/java/service/serviceImpl.vm +++ b/yudao-module-infra/src/main/resources/codegen/java/service/serviceImpl.vm @@ -169,7 +169,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service #if ( $subTables && $subTables.size() > 0) @Transactional(rollbackFor = Exception.class) #end - public void delete${simpleClassName}ByIds(List<${primaryColumn.javaType}> ids) { + public void delete${simpleClassName}ListByIds(List<${primaryColumn.javaType}> ids) { // 校验存在 validate${simpleClassName}Exists(ids); // 删除 @@ -328,7 +328,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service // 校验存在 validate${subSimpleClassName}Exists(${subClassNameVar}.getId()); // 更新 - ${subClassNameVar}.setUpdater(null).setUpdateTime(null); // 解决更新情况下:updateTime 不更新 + ${subClassNameVar}.clean(); // 解决更新情况下:updateTime 不更新 ${subClassNameVars.get($index)}Mapper.updateById(${subClassNameVar}); } @@ -342,7 +342,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service #if ($deleteBatchEnable) @Override - public void delete${subSimpleClassName}ByIds(List<${subPrimaryColumn.javaType}> ids) { + public void delete${subSimpleClassName}ListByIds(List<${subPrimaryColumn.javaType}> ids) { // 校验存在 validate${subSimpleClassName}Exists(ids); // 删除 @@ -374,17 +374,17 @@ public class ${table.className}ServiceImpl implements ${table.className}Service #else #if ( $subTable.subJoinMany) private void create${subSimpleClassName}List(${primaryColumn.javaType} ${subJoinColumn.javaField}, List<${subTable.className}DO> list) { - list.forEach(o -> o.set${SubJoinColumnName}(${subJoinColumn.javaField})); + list.forEach(o -> o.set${SubJoinColumnName}(${subJoinColumn.javaField}).clean()); ${subClassNameVars.get($index)}Mapper.insertBatch(list); } private void update${subSimpleClassName}List(${primaryColumn.javaType} ${subJoinColumn.javaField}, List<${subTable.className}DO> list) { - list.forEach(o -> o.set${SubJoinColumnName}(${subJoinColumn.javaField})); + list.forEach(o -> o.set${SubJoinColumnName}(${subJoinColumn.javaField}).clean()); List<${subTable.className}DO> oldList = ${subClassNameVar}Mapper.selectListBy${SubJoinColumnName}(${subJoinColumn.javaField}); List> diffList = diffList(oldList, list, (oldVal, newVal) -> { boolean same = ObjectUtil.equal(oldVal.getId(), newVal.getId()); if (same) { - newVal.setId(oldVal.getId()).setUpdater(null).setUpdateTime(null); // 解决更新情况下:updateTime 不更新 + newVal.setId(oldVal.getId()).clean(); // 解决更新情况下:updateTime 不更新 } return same; }); @@ -414,8 +414,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service if (${subClassNameVar} == null) { return; } - ${subClassNameVar}.set$SubJoinColumnName(${subJoinColumn.javaField}); - ${subClassNameVar}.setUpdater(null).setUpdateTime(null); // 解决更新情况下:updateTime 不更新 + ${subClassNameVar}.set$SubJoinColumnName(${subJoinColumn.javaField}).clean();// 解决更新情况下:updateTime 不更新 ${subClassNameVars.get($index)}Mapper.insertOrUpdate(${subClassNameVar}); } diff --git a/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/api/api.ts.vm b/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/api/api.ts.vm index 4bf8148c94..5a7602818e 100644 --- a/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/api/api.ts.vm +++ b/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/api/api.ts.vm @@ -90,9 +90,9 @@ export function delete${simpleClassName}(id: number) { } #if ( $table.templateType != 2 && $deleteBatchEnable) -// 批量删除${table.classComment} -export function delete${simpleClassName}ByIds(ids: number[]) { - return requestClient.delete(`${baseURL}/delete-batch?ids=${ids.join(',')}`) +/** 批量删除${table.classComment} */ +export function delete${simpleClassName}ListByIds(ids: number[]) { + return requestClient.delete(`${baseURL}/delete-list?ids=${ids.join(',')}`) } #end @@ -152,9 +152,9 @@ export function delete${subSimpleClassName}(id: number) { } #if ($deleteBatchEnable) -// 批量删除${subTable.classComment} -export function delete${subSimpleClassName}ByIds(ids: number[]) { - return requestClient.delete(`${baseURL}/${subSimpleClassName_strikeCase}/delete-batch?ids=${ids.join(',')}`) +/** 批量删除${subTable.classComment} */ +export function delete${subSimpleClassName}ListByIds(ids: number[]) { + return requestClient.delete(`${baseURL}/${subSimpleClassName_strikeCase}/delete-list?ids=${ids.join(',')}`) } #end diff --git a/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/views/index.vue.vm b/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/views/index.vue.vm index d0ae6e770e..ffbd052c57 100644 --- a/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/views/index.vue.vm +++ b/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/views/index.vue.vm @@ -22,7 +22,7 @@ import { useVbenVxeGrid } from '#/adapter/vxe-table'; #if (${table.templateType} == 2)## 树表接口 import { get${simpleClassName}List, delete${simpleClassName}, export${simpleClassName} } from '#/api/${table.moduleName}/${table.businessName}'; #else## 标准表接口 -import { get${simpleClassName}Page, delete${simpleClassName},#if ($deleteBatchEnable) delete${simpleClassName}ByIds,#end export${simpleClassName} } from '#/api/${table.moduleName}/${table.businessName}'; +import { get${simpleClassName}Page, delete${simpleClassName},#if ($deleteBatchEnable) delete${simpleClassName}ListByIds,#end export${simpleClassName} } from '#/api/${table.moduleName}/${table.businessName}'; #end import { downloadFileFromBlobPart, isEmpty } from '@vben/utils'; @@ -93,15 +93,6 @@ async function onDelete(row: ${simpleClassName}Api.${simpleClassName}) { } #if ($table.templateType != 2 && $deleteBatchEnable) -const deleteIds = ref([]) // 待删除${table.classComment} ID -const showDeleteBatchBtn = computed(() => isEmpty(deleteIds.value)); -function setDeleteIds({ - records, -}: { - records: ${simpleClassName}Api.${simpleClassName}[]; -}) { - deleteIds.value = records.map((item) => item.id); -} /** 批量删除${table.classComment} */ async function onDeleteBatch() { const hideLoading = message.loading({ @@ -110,13 +101,22 @@ async function onDeleteBatch() { key: 'action_process_msg', }); try { - await delete${simpleClassName}ByIds(deleteIds.value); + await delete${simpleClassName}ListByIds(deleteIds.value); message.success( $t('ui.actionMessage.deleteSuccess') ); onRefresh(); } finally { hideLoading(); } } + +const deleteIds = ref([]) // 待删除${table.classComment} ID +function setDeleteIds({ + records, +}: { + records: ${simpleClassName}Api.${simpleClassName}[]; +}) { + deleteIds.value = records.map((item) => item.id); +} #end /** 导出表格 */ @@ -268,7 +268,7 @@ const [Grid, gridApi] = useVbenVxeGrid({ type="primary" danger class="ml-2" - :disabled="showDeleteBatchBtn" + :disabled="isEmpty(deleteIds)" @click="onDeleteBatch" v-access:code="['${table.moduleName}:${simpleClassName_strikeCase}:delete']" > diff --git a/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/views/modules/list_sub_erp.vue.vm b/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/views/modules/list_sub_erp.vue.vm index b1b2406798..fbed4e1c13 100644 --- a/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/views/modules/list_sub_erp.vue.vm +++ b/yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/views/modules/list_sub_erp.vue.vm @@ -21,7 +21,7 @@ #if ($table.templateType == 11) ## erp - import { delete${subSimpleClassName},#if ($deleteBatchEnable) delete${subSimpleClassName}ByIds,#end get${subSimpleClassName}Page } from '#/api/${table.moduleName}/${table.businessName}'; + import { delete${subSimpleClassName},#if ($deleteBatchEnable) delete${subSimpleClassName}ListByIds,#end get${subSimpleClassName}Page } from '#/api/${table.moduleName}/${table.businessName}'; import { use${subSimpleClassName}GridFormSchema, use${subSimpleClassName}GridColumns } from '../data'; import { isEmpty } from '@vben/utils'; #else @@ -74,15 +74,6 @@ async function onDelete(row: ${simpleClassName}Api.${subSimpleClassName}) { } #if ($deleteBatchEnable) -const deleteIds = ref([]) // 待删除${subTable.classComment} ID -const showDeleteBatchBtn = computed(() => isEmpty(deleteIds.value)); -function setDeleteIds({ - records, -}: { - records: ${simpleClassName}Api.${subSimpleClassName}[]; -}) { - deleteIds.value = records.map((item) => item.id); -} /** 批量删除${subTable.classComment} */ async function onDeleteBatch() { const hideLoading = message.loading({ @@ -91,13 +82,22 @@ async function onDeleteBatch() { key: 'action_process_msg', }); try { - await delete${subSimpleClassName}ByIds(deleteIds.value); + await delete${subSimpleClassName}ListByIds(deleteIds.value); message.success( $t('ui.actionMessage.deleteSuccess') ); onRefresh(); } finally { hideLoading(); } } + +const deleteIds = ref([]) // 待删除${subTable.classComment} ID +function setDeleteIds({ + records, +}: { + records: ${simpleClassName}Api.${subSimpleClassName}[]; +}) { + deleteIds.value = records.map((item) => item.id); +} #end /** 表格操作按钮的回调函数 */ @@ -213,7 +213,7 @@ const onRefresh = async ()=> { type="primary" danger class="ml-2" - :disabled="showDeleteBatchBtn" + :disabled="isEmpty(deleteIds)" @click="onDeleteBatch" v-access:code="['${table.moduleName}:${simpleClassName_strikeCase}:delete']" > From 6982243370fcd5f3234b61a0b6d4dab109b991f3 Mon Sep 17 00:00:00 2001 From: puhui999 Date: Tue, 20 May 2025 16:34:40 +0800 Subject: [PATCH 2/2] =?UTF-8?q?perf:=E3=80=90INFRA=20=E5=9F=BA=E7=A1=80?= =?UTF-8?q?=E8=AE=BE=E6=96=BD=E3=80=91=E4=BC=98=E5=8C=96=E4=B8=80=E4=BA=9B?= =?UTF-8?q?=20todo=20=E6=8F=90=E5=88=B0=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mybatis/core/mapper/BaseMapperX.java | 7 ++++++ .../demo03/erp/Demo03CourseErpMapper.java | 2 +- .../demo/demo03/erp/Demo03GradeErpMapper.java | 2 +- .../demo03/inner/Demo03CourseInnerMapper.java | 2 +- .../demo03/inner/Demo03GradeInnerMapper.java | 2 +- .../normal/Demo03CourseNormalMapper.java | 2 +- .../normal/Demo03GradeNormalMapper.java | 2 +- .../erp/Demo03StudentErpServiceImpl.java | 22 ------------------- .../src/main/resources/codegen/java/dal/do.vm | 2 +- .../resources/codegen/java/dal/mapper_sub.vm | 2 +- .../codegen/java/service/serviceImpl.vm | 14 ------------ 11 files changed, 15 insertions(+), 44 deletions(-) diff --git a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/mapper/BaseMapperX.java b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/mapper/BaseMapperX.java index 167a0fc4ea..d7ad5fad8f 100644 --- a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/mapper/BaseMapperX.java +++ b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/mapper/BaseMapperX.java @@ -215,4 +215,11 @@ public interface BaseMapperX extends MPJBaseMapper { return delete(new LambdaQueryWrapper().eq(field, value)); } + default int deleteBatch(SFunction field, Collection values) { + if (CollUtil.isEmpty(values)) { + return 0; + } + return delete(new LambdaQueryWrapper().in(field, values)); + } + } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/erp/Demo03CourseErpMapper.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/erp/Demo03CourseErpMapper.java index c16d925265..cbd8707fb1 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/erp/Demo03CourseErpMapper.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/erp/Demo03CourseErpMapper.java @@ -28,7 +28,7 @@ public interface Demo03CourseErpMapper extends BaseMapperX { } default int deleteByStudentIds(List studentIds) { - return delete(Demo03CourseDO::getStudentId, studentIds); + return deleteBatch(Demo03CourseDO::getStudentId, studentIds); } } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/erp/Demo03GradeErpMapper.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/erp/Demo03GradeErpMapper.java index 6ea3d7b7e7..cf61430817 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/erp/Demo03GradeErpMapper.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/erp/Demo03GradeErpMapper.java @@ -32,7 +32,7 @@ public interface Demo03GradeErpMapper extends BaseMapperX { } default int deleteByStudentIds(List studentIds) { - return delete(Demo03GradeDO::getStudentId, studentIds); + return deleteBatch(Demo03GradeDO::getStudentId, studentIds); } } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/inner/Demo03CourseInnerMapper.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/inner/Demo03CourseInnerMapper.java index 225bd955fe..74e45c4d9f 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/inner/Demo03CourseInnerMapper.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/inner/Demo03CourseInnerMapper.java @@ -23,7 +23,7 @@ public interface Demo03CourseInnerMapper extends BaseMapperX { } default int deleteByStudentIds(List studentIds) { - return delete(Demo03CourseDO::getStudentId, studentIds); + return deleteBatch(Demo03CourseDO::getStudentId, studentIds); } } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/inner/Demo03GradeInnerMapper.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/inner/Demo03GradeInnerMapper.java index bedfd13d5f..bb91d24330 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/inner/Demo03GradeInnerMapper.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/inner/Demo03GradeInnerMapper.java @@ -23,7 +23,7 @@ public interface Demo03GradeInnerMapper extends BaseMapperX { } default int deleteByStudentIds(List studentIds) { - return delete(Demo03GradeDO::getStudentId, studentIds); + return deleteBatch(Demo03GradeDO::getStudentId, studentIds); } } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/normal/Demo03CourseNormalMapper.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/normal/Demo03CourseNormalMapper.java index 39e567ac3b..91ea89217a 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/normal/Demo03CourseNormalMapper.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/normal/Demo03CourseNormalMapper.java @@ -23,7 +23,7 @@ public interface Demo03CourseNormalMapper extends BaseMapperX { } default int deleteByStudentIds(List studentIds) { - return delete(Demo03CourseDO::getStudentId, studentIds); + return deleteBatch(Demo03CourseDO::getStudentId, studentIds); } } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/normal/Demo03GradeNormalMapper.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/normal/Demo03GradeNormalMapper.java index 641b0c0f8d..c883f90874 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/normal/Demo03GradeNormalMapper.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/mysql/demo/demo03/normal/Demo03GradeNormalMapper.java @@ -23,7 +23,7 @@ public interface Demo03GradeNormalMapper extends BaseMapperX { } default int deleteByStudentIds(List studentIds) { - return delete(Demo03GradeDO::getStudentId, studentIds); + return deleteBatch(Demo03GradeDO::getStudentId, studentIds); } } diff --git a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpServiceImpl.java b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpServiceImpl.java index a34cbb708b..a8317fd92b 100644 --- a/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpServiceImpl.java +++ b/yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/erp/Demo03StudentErpServiceImpl.java @@ -129,16 +129,12 @@ public class Demo03StudentErpServiceImpl implements Demo03StudentErpService { @Override public void deleteDemo03Course(Long id) { - // 校验存在 - validateDemo03CourseExists(id); // 删除 demo03CourseErpMapper.deleteById(id); } @Override public void deleteDemo03CourseListByIds(List ids) { - // 校验存在 - validateDemo03CourseExists(ids); // 删除 demo03CourseErpMapper.deleteByIds(ids); } @@ -154,13 +150,6 @@ public class Demo03StudentErpServiceImpl implements Demo03StudentErpService { } } - private void validateDemo03CourseExists(List ids) { - List list = demo03CourseErpMapper.selectByIds(ids); - if (CollUtil.isEmpty(list) || list.size() != ids.size()) { - throw exception(DEMO03_COURSE_NOT_EXISTS); - } - } - private void deleteDemo03CourseByStudentId(Long studentId) { demo03CourseErpMapper.deleteByStudentId(studentId); } @@ -198,16 +187,12 @@ public class Demo03StudentErpServiceImpl implements Demo03StudentErpService { @Override public void deleteDemo03Grade(Long id) { - // 校验存在 - validateDemo03GradeExists(id); // 删除 demo03GradeErpMapper.deleteById(id); } @Override public void deleteDemo03GradeListByIds(List ids) { - // 校验存在 - validateDemo03GradeExists(ids); // 删除 demo03GradeErpMapper.deleteByIds(ids); } @@ -223,13 +208,6 @@ public class Demo03StudentErpServiceImpl implements Demo03StudentErpService { } } - private void validateDemo03GradeExists(List ids) { - List list = demo03GradeErpMapper.selectByIds(ids); - if (CollUtil.isEmpty(list) || list.size() != ids.size()) { - throw exception(DEMO03_GRADE_NOT_EXISTS); - } - } - private void deleteDemo03GradeByStudentId(Long studentId) { demo03GradeErpMapper.deleteByStudentId(studentId); } diff --git a/yudao-module-infra/src/main/resources/codegen/java/dal/do.vm b/yudao-module-infra/src/main/resources/codegen/java/dal/do.vm index 8d256da72a..baf53f5986 100644 --- a/yudao-module-infra/src/main/resources/codegen/java/dal/do.vm +++ b/yudao-module-infra/src/main/resources/codegen/java/dal/do.vm @@ -77,8 +77,8 @@ public class ${table.className}DO extends BaseDO { private ${column.javaType} ${column.javaField}; #end #end + ## 特殊:主子表专属逻辑(非 ERP 模式) -## TODO @puhui999:这里空行看看,会不会多了一个哈 #if ( $voType == 20 && $subTables && $subTables.size() > 0 && $table.templateType != 11 ) #foreach ($subTable in $subTables) #set ($index = $foreach.count - 1) diff --git a/yudao-module-infra/src/main/resources/codegen/java/dal/mapper_sub.vm b/yudao-module-infra/src/main/resources/codegen/java/dal/mapper_sub.vm index 950000ce0a..40f2ff5491 100644 --- a/yudao-module-infra/src/main/resources/codegen/java/dal/mapper_sub.vm +++ b/yudao-module-infra/src/main/resources/codegen/java/dal/mapper_sub.vm @@ -56,7 +56,7 @@ public interface ${subTable.className}Mapper extends BaseMapperX<${subTable.clas #if ( $table.templateType != 2 && $deleteBatchEnable) default int deleteBy${SubJoinColumnName}s(List<${subJoinColumn.javaType}> ${subJoinColumn.javaField}s) { - return delete(${subTable.className}DO::get${SubJoinColumnName}, ${subJoinColumn.javaField}s); + return deleteBatch(${subTable.className}DO::get${SubJoinColumnName}, ${subJoinColumn.javaField}s); } #end diff --git a/yudao-module-infra/src/main/resources/codegen/java/service/serviceImpl.vm b/yudao-module-infra/src/main/resources/codegen/java/service/serviceImpl.vm index 45f33b1cb2..032047ed6a 100644 --- a/yudao-module-infra/src/main/resources/codegen/java/service/serviceImpl.vm +++ b/yudao-module-infra/src/main/resources/codegen/java/service/serviceImpl.vm @@ -334,18 +334,13 @@ public class ${table.className}ServiceImpl implements ${table.className}Service @Override public void delete${subSimpleClassName}(${subPrimaryColumn.javaType} id) { - // 校验存在 - validate${subSimpleClassName}Exists(id); // 删除 ${subClassNameVars.get($index)}Mapper.deleteById(id); } -## TODO @puhui999:批量删除的时候,要不直接删除,就不“校验存在”;ps:主子表删除的时候,子表的处理,也要处理下哈; #if ($deleteBatchEnable) @Override public void delete${subSimpleClassName}ListByIds(List<${subPrimaryColumn.javaType}> ids) { - // 校验存在 - validate${subSimpleClassName}Exists(ids); // 删除 ${subClassNameVars.get($index)}Mapper.deleteByIds(ids); } @@ -362,15 +357,6 @@ public class ${table.className}ServiceImpl implements ${table.className}Service } } -#if ($deleteBatchEnable) - private void validate${subSimpleClassName}Exists(List<${subPrimaryColumn.javaType}> ids) { - List<${subTable.className}DO> list = ${subClassNameVar}Mapper.selectByIds(ids); - if (CollUtil.isEmpty(list) || list.size() != ids.size()) { - throw exception(${simpleClassNameUnderlineCase.toUpperCase()}_NOT_EXISTS); - } - } -#end - ## 情况二:非 MASTER_ERP 时,支持批量的新增、修改操作 #else #if ( $subTable.subJoinMany)