diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/controller/SystemQuartzJobController.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/controller/SystemQuartzJobController.java index fab68a79..10ee1714 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/controller/SystemQuartzJobController.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/controller/SystemQuartzJobController.java @@ -19,6 +19,7 @@ import cn.odboy.base.KitPageArgs; import cn.odboy.base.KitPageResult; import cn.odboy.system.dal.dataobject.SystemQuartzJobTb; import cn.odboy.system.dal.dataobject.SystemQuartzLogTb; +import cn.odboy.system.dal.model.SystemQuartzJobVo; import cn.odboy.system.dal.model.SystemQueryQuartzJobArgs; import cn.odboy.system.dal.model.SystemUpdateQuartzJobArgs; import cn.odboy.system.framework.operalog.OperationLog; @@ -86,7 +87,7 @@ public class SystemQuartzJobController { @ApiOperation("新增定时任务") @PostMapping(value = "/createQuartzJob") @PreAuthorize("@el.check('quartzJob:add')") - public ResponseEntity createQuartzJob(@Validated @RequestBody SystemQuartzJobTb args) { + public ResponseEntity createQuartzJob(@Validated @RequestBody SystemQuartzJobVo args) { systemQuartzJobService.createJob(args); return ResponseEntity.ok(null); } diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/dataobject/SystemQuartzJobTb.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/dataobject/SystemQuartzJobTb.java index 56a34d84..7df2e25e 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/dataobject/SystemQuartzJobTb.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/dataobject/SystemQuartzJobTb.java @@ -62,6 +62,5 @@ public class SystemQuartzJobTb extends KitBaseUserTimeTb { @NotBlank @ApiModelProperty(value = "备注") @TableField(updateStrategy = FieldStrategy.ALWAYS) - private String - description; + private String description; } \ No newline at end of file diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDeptVo.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDeptVo.java index eacacdbb..d8ded17c 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDeptVo.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDeptVo.java @@ -1,17 +1,71 @@ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemDeptTb; +import cn.odboy.base.KitBaseUserTimeTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; import io.swagger.annotations.ApiModelProperty; import java.util.List; +import java.util.Objects; import java.util.Set; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @Getter @Setter -public class SystemDeptVo extends SystemDeptTb { +public class SystemDeptVo extends KitBaseUserTimeTb { + @NotNull(groups = Update.class) + @ApiModelProperty(value = "ID", hidden = true) + private Long id; + @ApiModelProperty(value = "排序") + private Integer deptSort; + @NotBlank + @ApiModelProperty(value = "部门名称") + private String name; + @NotNull + @ApiModelProperty(value = "是否启用") + private Boolean enabled; + @ApiModelProperty(value = "上级部门") + private Long pid; + @ApiModelProperty(value = "子节点数目", hidden = true) + private Integer subCount = 0; + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SystemDeptVo dept = (SystemDeptVo) o; + return Objects.equals(id, dept.id) && Objects.equals(name, dept.name); + } + + @Override + public int hashCode() { + return Objects.hash(id, name); + } + + @ApiModelProperty(value = "是否有子节点") + public Boolean getHasChildren() { + return subCount > 0; + } + + @ApiModelProperty(value = "是否为叶子") + public Boolean getLeaf() { + return subCount <= 0; + } + + @ApiModelProperty(value = "标签名称") + public String getLabel() { + return name; + } + + /** + * 扩展字段 + */ @ApiModelProperty(value = "角色") private Set roles; @ApiModelProperty(value = "子部门") diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDictDetailVo.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDictDetailVo.java index 4a64efa3..72f43d2f 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDictDetailVo.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDictDetailVo.java @@ -15,16 +15,31 @@ */ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemDictDetailTb; +import cn.odboy.base.KitBaseUserTimeTb; import cn.odboy.system.dal.dataobject.SystemDictTb; import io.swagger.annotations.ApiModelProperty; +import jakarta.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @Getter @Setter -public class SystemDictDetailVo extends SystemDictDetailTb { +public class SystemDictDetailVo extends KitBaseUserTimeTb { + @NotNull(groups = Update.class) + @ApiModelProperty(value = "ID", hidden = true) + private Long id; + @ApiModelProperty(hidden = true) + private Long dictId; + @ApiModelProperty(value = "字典标签") + private String label; + @ApiModelProperty(value = "字典值") + private String value; + @ApiModelProperty(value = "排序") + private Integer dictSort = 999; + /** + * 扩展字段 + */ @ApiModelProperty(value = "字典") private SystemDictTb dict; } \ No newline at end of file diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemMenuVo.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemMenuVo.java index 4c32366e..c777afbd 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemMenuVo.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemMenuVo.java @@ -1,19 +1,84 @@ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemMenuTb; +import cn.odboy.base.KitBaseUserTimeTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; import io.swagger.annotations.ApiModelProperty; import java.util.List; +import java.util.Objects; import java.util.Set; -import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @Getter @Setter -@EqualsAndHashCode(callSuper = true) -public class SystemMenuVo extends SystemMenuTb { +public class SystemMenuVo extends KitBaseUserTimeTb { + @NotNull(groups = {Update.class}) + @ApiModelProperty(value = "ID", hidden = true) + private Long id; + @ApiModelProperty(value = "菜单标题") + private String title; + @ApiModelProperty(value = "菜单组件名称") + private String componentName; + @ApiModelProperty(value = "排序") + private Integer menuSort = 999; + @ApiModelProperty(value = "组件路径") + private String component; + @ApiModelProperty(value = "路由地址") + private String path; + @ApiModelProperty(value = "菜单类型,目录、菜单、按钮") + private Integer type; + @ApiModelProperty(value = "权限标识") + private String permission; + @ApiModelProperty(value = "菜单图标") + private String icon; + @ApiModelProperty(value = "缓存") + private Boolean cache; + @ApiModelProperty(value = "是否隐藏") + private Boolean hidden; + @ApiModelProperty(value = "上级菜单") + private Long pid; + @ApiModelProperty(value = "子节点数目", hidden = true) + private Integer subCount = 0; + @ApiModelProperty(value = "外链菜单") + private Boolean iFrame; + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SystemMenuVo menu = (SystemMenuVo) o; + return Objects.equals(id, menu.id); + } + + @Override + public int hashCode() { + return Objects.hash(id); + } + + @ApiModelProperty(value = "是否有子节点") + public Boolean getHasChildren() { + return subCount > 0; + } + + @ApiModelProperty(value = "是否为叶子") + public Boolean getLeaf() { + return subCount <= 0; + } + + @ApiModelProperty(value = "标签名称") + public String getLabel() { + return title; + } + + /** + * 附加属性 + */ @ApiModelProperty(value = "菜单角色") private Set roles; @ApiModelProperty(value = "子菜单") diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemOssStorageVo.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemOssStorageVo.java index c9b02b36..6f4461f2 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemOssStorageVo.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemOssStorageVo.java @@ -15,13 +15,43 @@ */ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemOssStorageTb; +import cn.odboy.base.KitBaseUserTimeTb; +import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @Getter @Setter -public class SystemOssStorageVo extends SystemOssStorageTb { +public class SystemOssStorageVo extends KitBaseUserTimeTb { + @ApiModelProperty("ID") + private Long id; + @ApiModelProperty("类型,比如minio") + private String serviceType; + @ApiModelProperty("服务地址") + private String endpoint; + @ApiModelProperty("存储桶名称") + private String bucketName; + @ApiModelProperty("完整文件名称") + private String fileName; + @ApiModelProperty("文件大小, 单位:字节") + private Long fileSize; + @ApiModelProperty("文件类型") + private String fileMime; + @ApiModelProperty("短文件名") + private String filePrefix; + @ApiModelProperty("文件后缀") + private String fileSuffix; + @ApiModelProperty("文件md5") + private String fileMd5; + @ApiModelProperty("文件链接") + private String fileUrl; + @ApiModelProperty("文件编码") + private String fileCode; + @ApiModelProperty("对象路径") + private String objectName; + /** + * 扩展字段 + */ private String fileSizeDesc; } diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemQuartzJobVo.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemQuartzJobVo.java index 5ef8e4ef..c049049e 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemQuartzJobVo.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemQuartzJobVo.java @@ -1,14 +1,48 @@ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemQuartzJobTb; +import cn.odboy.base.KitBaseUserTimeTb; import io.swagger.annotations.ApiModelProperty; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @Getter @Setter -public class SystemQuartzJobVo extends SystemQuartzJobTb { +public class SystemQuartzJobVo extends KitBaseUserTimeTb { + public static final String JOB_KEY = "JOB_KEY"; + @NotNull(groups = {Update.class}) + private Long id; + @ApiModelProperty(value = "定时器名称") + private String jobName; + @NotBlank + @ApiModelProperty(value = "Bean名称") + private String beanName; + @NotBlank + @ApiModelProperty(value = "方法名称") + private String methodName; + @ApiModelProperty(value = "参数") + private String params; + @NotBlank + @ApiModelProperty(value = "cron表达式") + private String cronExpression; + @ApiModelProperty(value = "状态:暂停或启动") + private Boolean isPause = false; + @ApiModelProperty(value = "负责人") + private String personInCharge; + @ApiModelProperty(value = "报警邮箱") + private String email; + @ApiModelProperty(value = "子任务") + private String subTask; + @ApiModelProperty(value = "失败后暂停") + private Boolean pauseAfterFailure; + @NotBlank + @ApiModelProperty(value = "备注") + private String description; + /** + * 扩展字段 + */ @ApiModelProperty(value = "用于子任务唯一标识", hidden = true) private String uuid; } diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemRoleVo.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemRoleVo.java index d7dbfcf7..d99bb541 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemRoleVo.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemRoleVo.java @@ -1,21 +1,59 @@ package cn.odboy.system.dal.model; +import cn.odboy.base.KitBaseUserTimeTb; +import cn.odboy.system.constant.SystemDataScopeEnum; import cn.odboy.system.dal.dataobject.SystemDeptTb; -import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.dataobject.SystemUserTb; import io.swagger.annotations.ApiModelProperty; +import java.util.Objects; import java.util.Set; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @Getter @Setter -public class SystemRoleVo extends SystemRoleTb { +public class SystemRoleVo extends KitBaseUserTimeTb { + @NotNull(groups = {Update.class}) + @ApiModelProperty(value = "ID", hidden = true) + private Long id; + @NotBlank + @ApiModelProperty(value = "名称", hidden = true) + private String name; + @ApiModelProperty(value = "数据权限,全部 、 本级 、 自定义") + private String dataScope = SystemDataScopeEnum.THIS_LEVEL.getValue(); + @ApiModelProperty(value = "级别,数值越小,级别越大") + private Integer level = 3; + @ApiModelProperty(value = "描述") + private String description; + /** + * 扩展字段 + */ @ApiModelProperty(value = "用户", hidden = true) private Set users; @ApiModelProperty(value = "菜单", hidden = true) private Set menus; @ApiModelProperty(value = "部门", hidden = true) private Set depts; + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SystemRoleVo role = (SystemRoleVo) o; + return Objects.equals(id, role.id); + } + + @Override + public int hashCode() { + return Objects.hash(id); + } + + } diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemSimpleUserVo.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemSimpleUserVo.java index 0fa39e00..2f2d1f50 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemSimpleUserVo.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemSimpleUserVo.java @@ -19,7 +19,6 @@ import cn.odboy.base.KitObject; import cn.odboy.system.dal.dataobject.SystemDeptTb; import cn.odboy.system.dal.dataobject.SystemJobTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModelProperty; import java.util.Set; import lombok.Data; @@ -36,7 +35,6 @@ public class SystemSimpleUserVo extends KitObject { @ApiModelProperty(value = "用户岗位") private Set jobs; private Long deptId; - @TableField(exist = false) private SystemDeptTb dept; @ApiModelProperty(value = "用户名称") private String username; diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemUserVo.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemUserVo.java index e0811d40..ecbdffd5 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemUserVo.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemUserVo.java @@ -1,11 +1,15 @@ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemDeptTb; import cn.odboy.system.dal.dataobject.SystemJobTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.dataobject.SystemUserTb; import io.swagger.annotations.ApiModelProperty; +import java.util.Date; +import java.util.Objects; import java.util.Set; +import jakarta.validation.constraints.Email; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @@ -13,10 +17,65 @@ import lombok.Setter; @Setter public class SystemUserVo extends SystemUserTb { + @NotNull(groups = Update.class) + @ApiModelProperty(value = "ID", hidden = true) + private Long id; + @ApiModelProperty(hidden = true) + private Long deptId; + @NotBlank + @ApiModelProperty(value = "用户名称") + private String username; + @NotBlank + @ApiModelProperty(value = "用户昵称") + private String nickName; + @Email + @NotBlank + @ApiModelProperty(value = "邮箱") + private String email; + @NotBlank + @ApiModelProperty(value = "电话号码") + private String phone; + @ApiModelProperty(value = "用户性别") + private String gender; + @ApiModelProperty(value = "头像真实名称", hidden = true) + private String avatarName; + @ApiModelProperty(value = "头像存储的路径", hidden = true) + private String avatarPath; + @ApiModelProperty(value = "密码") + private String password; + @NotNull + @ApiModelProperty(value = "是否启用") + private Boolean enabled; + @ApiModelProperty(value = "是否为admin账号", hidden = true) + private Boolean isAdmin = false; + @ApiModelProperty(value = "最后修改密码的时间", hidden = true) + private Date pwdResetTime; + + /** + * 扩展字段 + */ @ApiModelProperty(value = "用户部门") - private SystemDeptTb dept; + private SystemDeptVo dept; @ApiModelProperty(value = "用户角色") private Set roles; @ApiModelProperty(value = "用户岗位") private Set jobs; + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SystemUserVo user = (SystemUserVo) o; + return Objects.equals(id, user.id) && Objects.equals(username, user.username); + } + + @Override + public int hashCode() { + return Objects.hash(id, username); + } + } diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ActiveJobRegister.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ActiveJobRegister.java index 44b8d8fb..d5556faa 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ActiveJobRegister.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ActiveJobRegister.java @@ -13,10 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package cn.odboy.system.framework.quartz; -import cn.odboy.system.dal.dataobject.SystemQuartzJobTb; +import cn.odboy.system.dal.model.SystemQuartzJobVo; import cn.odboy.system.service.SystemQuartzJobService; import java.util.List; import lombok.extern.slf4j.Slf4j; @@ -41,7 +40,7 @@ public class ActiveJobRegister implements ApplicationRunner { */ @Override public void run(ApplicationArguments applicationArguments) { - List quartzJobs = systemQuartzJobService.listEnableQuartzJob(); + List quartzJobs = systemQuartzJobService.listEnableQuartzJob(); quartzJobs.forEach(quartzManage::addJob); log.info("Timing task injection complete"); } diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ExecutionJobBean.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ExecutionJobBean.java index 53646b96..f2c15a9a 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ExecutionJobBean.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ExecutionJobBean.java @@ -114,7 +114,7 @@ public class ExecutionJobBean extends QuartzJobBean { } } - private SystemSendEmailArgs taskAlarm(SystemQuartzJobTb quartzJob, String msg) { + private SystemSendEmailArgs taskAlarm(SystemQuartzJobVo quartzJob, String msg) { SystemSendEmailArgs sendEmailRequest = new SystemSendEmailArgs(); sendEmailRequest.setSubject("定时任务【" + quartzJob.getJobName() + "】执行失败,请尽快处理!"); Map data = new HashMap<>(16); diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/QuartzManage.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/QuartzManage.java index 1fc6fe5a..f6911e90 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/QuartzManage.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/QuartzManage.java @@ -13,13 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package cn.odboy.system.framework.quartz; import cn.odboy.framework.exception.BadRequestException; import cn.odboy.system.dal.dataobject.SystemQuartzJobTb; -import jakarta.annotation.Resource; +import cn.odboy.system.dal.model.SystemQuartzJobVo; import java.util.Date; +import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.quartz.CronScheduleBuilder; import org.quartz.CronTrigger; @@ -40,32 +40,26 @@ import org.springframework.stereotype.Component; public class QuartzManage { private static final String JOB_NAME = "TASK_"; - @Resource private Scheduler scheduler; - public void addJob(SystemQuartzJobTb quartzJob) { + public void addJob(SystemQuartzJobVo quartzJob) { try { // 构建job信息 JobDetail jobDetail = JobBuilder.newJob(ExecutionJobBean.class).withIdentity(JOB_NAME + quartzJob.getId()).build(); - // 通过触发器名和cron 表达式创建 Trigger Trigger trigger = TriggerBuilder.newTrigger().withIdentity(JOB_NAME + quartzJob.getId()).startNow() .withSchedule(CronScheduleBuilder.cronSchedule(quartzJob.getCronExpression())).build(); - trigger.getJobDataMap().put(SystemQuartzJobTb.JOB_KEY, quartzJob); - // 重置启动时间 ((CronTriggerImpl) trigger).setStartTime(new Date()); - // 执行定时任务,如果是持久化的,这里会报错,捕获输出 try { scheduler.scheduleJob(jobDetail, trigger); } catch (ObjectAlreadyExistsException e) { log.warn("定时任务已存在,跳过加载"); } - // 暂停任务 if (quartzJob.getIsPause()) { pauseJob(quartzJob); @@ -81,7 +75,7 @@ public class QuartzManage { * * @param quartzJob / */ - public void updateJobCron(SystemQuartzJobTb quartzJob) { + public void updateJobCron(SystemQuartzJobVo quartzJob) { try { TriggerKey triggerKey = TriggerKey.triggerKey(JOB_NAME + quartzJob.getId()); CronTrigger trigger = (CronTrigger) scheduler.getTrigger(triggerKey); @@ -95,7 +89,6 @@ public class QuartzManage { // 重置启动时间 ((CronTriggerImpl) trigger).setStartTime(new Date()); trigger.getJobDataMap().put(SystemQuartzJobTb.JOB_KEY, quartzJob); - scheduler.rescheduleJob(triggerKey, trigger); // 暂停任务 if (quartzJob.getIsPause()) { @@ -128,7 +121,7 @@ public class QuartzManage { * * @param quartzJob / */ - public void resumeJob(SystemQuartzJobTb quartzJob) { + public void resumeJob(SystemQuartzJobVo quartzJob) { try { TriggerKey triggerKey = TriggerKey.triggerKey(JOB_NAME + quartzJob.getId()); CronTrigger trigger = (CronTrigger) scheduler.getTrigger(triggerKey); @@ -149,7 +142,7 @@ public class QuartzManage { * * @param quartzJob / */ - public void runJobNow(SystemQuartzJobTb quartzJob) { + public void runJobNow(SystemQuartzJobVo quartzJob) { try { TriggerKey triggerKey = TriggerKey.triggerKey(JOB_NAME + quartzJob.getId()); CronTrigger trigger = (CronTrigger) scheduler.getTrigger(triggerKey); @@ -172,7 +165,7 @@ public class QuartzManage { * * @param quartzJob / */ - public void pauseJob(SystemQuartzJobTb quartzJob) { + public void pauseJob(SystemQuartzJobVo quartzJob) { try { JobKey jobKey = JobKey.jobKey(JOB_NAME + quartzJob.getId()); scheduler.pauseJob(jobKey); diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDataService.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDataService.java index 0089e2ad..2384e4cd 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDataService.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDataService.java @@ -18,7 +18,6 @@ package cn.odboy.system.service; import cn.hutool.core.collection.CollUtil; import cn.odboy.system.constant.SystemDataScopeEnum; import cn.odboy.system.dal.dataobject.SystemDeptTb; -import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.model.SystemDeptVo; import cn.odboy.system.dal.model.SystemRoleVo; import cn.odboy.system.dal.model.SystemUserVo; @@ -55,7 +54,7 @@ public class SystemDataService { // 查询用户角色 List roleList = systemUserRoleService.queryRoleByUsersId(user.getId()); // 获取对应的部门ID - for (SystemRoleTb role : roleList) { + for (SystemRoleVo role : roleList) { SystemDataScopeEnum dataScopeEnum = SystemDataScopeEnum.find(role.getDataScope()); switch (Objects.requireNonNull(dataScopeEnum)) { case THIS_LEVEL: @@ -78,7 +77,7 @@ public class SystemDataService { * @param role 角色 * @return 数据权限ID */ - private List queryCustomDataPermissionByArgs(List deptIds, SystemRoleTb role) { + private List queryCustomDataPermissionByArgs(List deptIds, SystemRoleVo role) { List deptList = systemRoleDeptService.listDeptByRoleId(role.getId()); for (SystemDeptTb dept : deptList) { deptIds.add(dept.getId()); diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDeptService.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDeptService.java index 06508f3f..113b2099 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDeptService.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDeptService.java @@ -83,7 +83,7 @@ public class SystemDeptService { @Transactional(rollbackFor = Exception.class) public void updateDeptById(SystemDeptTb args) { // 旧的部门 - Long oldPid = this.getDeptById(args.getId()).getPid(); + Long oldPid = this.getDeptVoById(args.getId()).getPid(); Long newPid = args.getPid(); if (args.getPid() != null && args.getId().equals(args.getPid())) { throw new BadRequestException("上级不能为自己"); @@ -103,10 +103,10 @@ public class SystemDeptService { @Transactional(rollbackFor = Exception.class) public void deleteDeptByIds(Set ids) { // 获取部门, 和其所有子部门 - Set depts = this.traverseDeptByIdWithPids(ids); + Set depts = this.traverseDeptByIdWithPids(ids); // 验证是否被角色或用户关联 this.verifyBindRelationByIds(depts); - for (SystemDeptTb dept : depts) { + for (SystemDeptVo dept : depts) { systemDeptMapper.deleteById(dept.getId()); this.updateDeptSubCnt(dept.getPid()); } @@ -211,8 +211,8 @@ public class SystemDeptService { * @param id / * @return / */ - public SystemDeptTb getDeptById(Long id) { - return systemDeptMapper.selectById(id); + public SystemDeptVo getDeptVoById(Long id) { + return KitBeanUtil.copyToClass(systemDeptMapper.selectById(id), SystemDeptVo.class); } /** @@ -222,8 +222,8 @@ public class SystemDeptService { * @param depts / * @return / */ - private Set queryRelationDeptByArgs(List deptTbList, Set depts) { - for (SystemDeptTb dept : deptTbList) { + private Set queryRelationDeptByArgs(List deptTbList, Set depts) { + for (SystemDeptVo dept : deptTbList) { depts.add(dept); List deptList = this.listDeptByPid(dept.getId()); if (CollUtil.isNotEmpty(deptList)) { @@ -254,13 +254,13 @@ public class SystemDeptService { * @param deptList / * @return / */ - private List querySuperiorDeptByPid(SystemDeptTb dept, List deptList) { + private List querySuperiorDeptByPid(SystemDeptVo dept, List deptList) { if (dept.getPid() == null) { deptList.addAll(this.listRootDept()); return deptList; } deptList.addAll(this.listDeptByPid(dept.getPid())); - return querySuperiorDeptByPid(this.getDeptById(dept.getPid()), deptList); + return querySuperiorDeptByPid(this.getDeptVoById(dept.getPid()), deptList); } private List listRootDept() { @@ -278,7 +278,7 @@ public class SystemDeptService { Set deptSet1 = new LinkedHashSet<>(); for (Long id : ids) { // 同级数据 - SystemDeptTb dept = this.getDeptById(id); + SystemDeptVo dept = this.getDeptVoById(id); // 上级数据 List depts = this.querySuperiorDeptByPid(dept, new ArrayList<>()); if (exclude) { @@ -314,7 +314,7 @@ public class SystemDeptService { } if (isChild) { deptSet.add(dept); - } else if (dept.getPid() != null && !deptNames.contains(this.getDeptById(dept.getPid()).getName())) { + } else if (dept.getPid() != null && !deptNames.contains(this.getDeptVoById(dept.getPid()).getName())) { deptSet.add(dept); } } @@ -332,8 +332,8 @@ public class SystemDeptService { * * @param deptSet / */ - public void verifyBindRelationByIds(Set deptSet) { - Set deptIds = deptSet.stream().map(SystemDeptTb::getId).collect(Collectors.toSet()); + public void verifyBindRelationByIds(Set deptSet) { + Set deptIds = deptSet.stream().map(SystemDeptVo::getId).collect(Collectors.toSet()); if (systemUserDeptService.countUserByDeptIds(deptIds) > 0) { throw new BadRequestException("所选部门存在用户关联,请解除后再试!"); } @@ -353,11 +353,11 @@ public class SystemDeptService { * * @param ids / */ - public Set traverseDeptByIdWithPids(Set ids) { - Set depts = new HashSet<>(); + public Set traverseDeptByIdWithPids(Set ids) { + Set depts = new HashSet<>(); for (Long id : ids) { // 根部门 - depts.add(this.getDeptById(id)); + depts.add(this.getDeptVoById(id)); // 子部门 List deptList = this.listDeptByPid(id); if (CollectionUtil.isNotEmpty(deptList)) { diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDictDetailService.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDictDetailService.java index 7d2521f9..ac725c76 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDictDetailService.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDictDetailService.java @@ -109,7 +109,7 @@ public class SystemDictDetailService { */ public KitPageResult searchDictDetail(SystemQueryDictDetailArgs args, Page page) { IPage iPage = systemDictDetailMapper.selectPageByArgs(page, args).convert(i -> KitBeanUtil.copyToClass(i, SystemDictDetailVo.class)); - List dictIds = iPage.getRecords().stream().map(SystemDictDetailTb::getDictId).collect(Collectors.toList()); + List dictIds = iPage.getRecords().stream().map(SystemDictDetailVo::getDictId).collect(Collectors.toList()); Map id2ItemMap = systemDictMapper.selectByIds(dictIds).stream().collect(Collectors.toMap(SystemDictTb::getId, i -> i)); for (SystemDictDetailVo record : iPage.getRecords()) { record.setDict(id2ItemMap.get(record.getDictId())); diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemMenuService.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemMenuService.java index f90a2a64..9fc343ac 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemMenuService.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemMenuService.java @@ -23,7 +23,6 @@ import cn.odboy.framework.exception.BadRequestException; import cn.odboy.system.constant.SystemYesOrNoChConst; import cn.odboy.system.constant.TransferProtocolConst; import cn.odboy.system.dal.dataobject.SystemMenuTb; -import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.model.SystemMenuExportRowVo; import cn.odboy.system.dal.model.SystemMenuMetaVo; import cn.odboy.system.dal.model.SystemMenuRouterVo; @@ -160,12 +159,12 @@ public class SystemMenuService { menuSet = this.queryChildMenuByArgs(menuList, menuSet); } List menuIds = - menuSet.stream().map(SystemMenuTb::getId).filter(Objects::nonNull).distinct().collect(Collectors.toList()); + menuSet.stream().map(SystemMenuVo::getId).filter(Objects::nonNull).distinct().collect(Collectors.toList()); if (CollUtil.isNotEmpty(menuIds)) { systemRoleMenuService.deleteRoleMenuByMenuIds(menuIds); systemMenuMapper.deleteByIds(menuIds); } - for (SystemMenuTb menu : menuSet) { + for (SystemMenuVo menu : menuSet) { this.updateMenuSubCnt(menu.getPid()); } } @@ -222,7 +221,7 @@ public class SystemMenuService { */ public List listMenuByUserId(Long currentUserId) { List roles = systemUserRoleService.queryRoleByUsersId(currentUserId); - Set roleIds = roles.stream().map(SystemRoleTb::getId).collect(Collectors.toSet()); + Set roleIds = roles.stream().map(SystemRoleVo::getId).collect(Collectors.toSet()); return new ArrayList<>(systemRoleMenuService.queryMenuByRoleIds(roleIds)); } @@ -270,7 +269,7 @@ public class SystemMenuService { * @param menus / * @return / */ - public List querySuperiorMenuByArgs(SystemMenuTb menu, List menus) { + public List querySuperiorMenuByArgs(SystemMenuVo menu, List menus) { if (menu.getPid() == null) { menus.addAll(this.listRootMenu()); return menus; @@ -364,7 +363,7 @@ public class SystemMenuService { * @param menuVo / * @return / */ - private SystemMenuRouterVo getMenuVo(SystemMenuTb menu, SystemMenuRouterVo menuVo) { + private SystemMenuRouterVo getMenuVo(SystemMenuVo menu, SystemMenuRouterVo menuVo) { SystemMenuRouterVo menuVo1 = new SystemMenuRouterVo(); menuVo1.setMeta(menuVo.getMeta()); // 非外链 @@ -435,7 +434,7 @@ public class SystemMenuService { List menuList = this.listMenuByPid(id); menuSet.add(this.getMenuVoById(id)); menuSet = this.queryChildMenuByArgs(menuList, menuSet); - return menuSet.stream().map(SystemMenuTb::getId).collect(Collectors.toSet()); + return menuSet.stream().map(SystemMenuVo::getId).collect(Collectors.toSet()); } public List listMenuSuperior(List ids) { @@ -443,7 +442,7 @@ public class SystemMenuService { List systemMenuTbs; if (CollectionUtil.isNotEmpty(ids)) { menus = new LinkedHashSet<>(this.listMenuByIds(ids)); - for (SystemMenuTb menu : menus) { + for (SystemMenuVo menu : menus) { List menuList = this.querySuperiorMenuByArgs(menu, new ArrayList<>()); for (SystemMenuVo data : menuList) { if (data.getId().equals(menu.getPid())) { diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemQuartzJobService.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemQuartzJobService.java index c8139fd4..c354699a 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemQuartzJobService.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemQuartzJobService.java @@ -79,7 +79,7 @@ public class SystemQuartzJobService { * @param args / */ @Transactional(rollbackFor = Exception.class) - public void createJob(SystemQuartzJobTb args) { + public void createJob(SystemQuartzJobVo args) { if (args.getId() != null) { throw new BadRequestException("无效参数id"); } @@ -88,7 +88,8 @@ public class SystemQuartzJobService { if (!CronExpression.isValidExpression(args.getCronExpression())) { throw new BadRequestException("cron表达式格式错误"); } - systemQuartzJobMapper.insert(args); + SystemQuartzJobTb record = KitBeanUtil.copyToClass(args, SystemQuartzJobTb.class); + systemQuartzJobMapper.insert(record); quartzManage.addJob(args); } @@ -110,9 +111,10 @@ public class SystemQuartzJobService { throw new BadRequestException("子任务中不能添加当前任务ID"); } } - SystemQuartzJobTb quartzJob = KitBeanUtil.copyToClass(args, SystemQuartzJobTb.class); - systemQuartzJobMapper.insertOrUpdate(quartzJob); - quartzManage.updateJobCron(quartzJob); + SystemQuartzJobTb jobTb = KitBeanUtil.copyToClass(args, SystemQuartzJobTb.class); + systemQuartzJobMapper.insertOrUpdate(jobTb); + SystemQuartzJobVo jobVo = KitBeanUtil.copyToClass(args, SystemQuartzJobVo.class); + quartzManage.updateJobCron(jobVo); } /** @@ -121,7 +123,7 @@ public class SystemQuartzJobService { * @param quartzJob / */ @Transactional(rollbackFor = Exception.class) - public void switchQuartzJobStatus(SystemQuartzJobTb quartzJob) { + public void switchQuartzJobStatus(SystemQuartzJobVo quartzJob) { // 置换暂停状态 if (quartzJob.getIsPause()) { quartzManage.resumeJob(quartzJob); @@ -130,7 +132,8 @@ public class SystemQuartzJobService { quartzManage.pauseJob(quartzJob); quartzJob.setIsPause(true); } - systemQuartzJobMapper.insertOrUpdate(quartzJob); + SystemQuartzJobTb quartzJobTb = KitBeanUtil.copyToClass(quartzJob, SystemQuartzJobTb.class); + systemQuartzJobMapper.insertOrUpdate(quartzJobTb); } /** @@ -138,7 +141,7 @@ public class SystemQuartzJobService { * * @param quartzJob / */ - public void startQuartzJob(SystemQuartzJobTb quartzJob) { + public void startQuartzJob(SystemQuartzJobVo quartzJob) { quartzManage.runJobNow(quartzJob); } @@ -263,31 +266,18 @@ public class SystemQuartzJobService { return systemQuartzLogMapper.selectList(wrapper); } - public SystemQuartzJobTb getQuartzJobById(Long id) { - return systemQuartzJobMapper.selectById(id); + public SystemQuartzJobVo getQuartzJobById(Long id) { + return KitBeanUtil.copyToClass(systemQuartzJobMapper.selectById(id), SystemQuartzJobVo.class); } - public List listEnableQuartzJob() { + public List listEnableQuartzJob() { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(SystemQuartzJobTb::getIsPause, 0); - return systemQuartzJobMapper.selectList(wrapper); + return KitBeanUtil.copyToList(systemQuartzJobMapper.selectList(wrapper), SystemQuartzJobVo.class); } public void exportQuartzJobXlsx(HttpServletResponse response, SystemQueryQuartzJobArgs args) { List systemQuartzJobTbs = this.queryQuartzJobByArgs(args); -// KitXlsxExportUtil.exportFile(response, "定时任务数据", systemQuartzJobTbs, SystemQuartzJobExportRowVo.class, -// (dataObject) -> { -// SystemQuartzJobExportRowVo rowVo = new SystemQuartzJobExportRowVo(); -// rowVo.setJobName(dataObject.getJobName()); -// rowVo.setBeanName(dataObject.getBeanName()); -// rowVo.setMethodName(dataObject.getMethodName()); -// rowVo.setParams(dataObject.getParams()); -// rowVo.setCronExpression(dataObject.getCronExpression()); -// rowVo.setIsPause(dataObject.getIsPause() ? "暂停中" : "运行中"); -// rowVo.setDescription(dataObject.getDescription()); -// rowVo.setCreateTime(dataObject.getCreateTime()); -// return CollUtil.newArrayList(rowVo); -// }); List rowVos = new ArrayList<>(); for (SystemQuartzJobTb dataObject : systemQuartzJobTbs) { SystemQuartzJobExportRowVo rowVo = new SystemQuartzJobExportRowVo(); diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemRoleService.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemRoleService.java index b584fa88..160ec15a 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemRoleService.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemRoleService.java @@ -21,7 +21,6 @@ import cn.hutool.core.lang.Dict; import cn.hutool.core.util.StrUtil; import cn.odboy.base.KitPageResult; import cn.odboy.framework.exception.BadRequestException; -import cn.odboy.system.dal.dataobject.SystemMenuTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.dataobject.SystemUserTb; import cn.odboy.system.dal.model.SystemCreateRoleArgs; @@ -94,7 +93,7 @@ public class SystemRoleService { @Transactional(rollbackFor = Exception.class) public void updateRoleById(SystemRoleVo args) { checkRoleLevels(args.getLevel()); - SystemRoleVo role = this.getRoleVoById(args.getId()); + SystemRoleTb role = this.getRoleTbById(args.getId()); SystemRoleTb role1 = this.getRoleByName(args.getName()); if (role1 != null && !role1.getId().equals(role.getId())) { throw new BadRequestException("角色名称已存在"); @@ -102,7 +101,6 @@ public class SystemRoleService { role.setName(args.getName()); role.setDescription(args.getDescription()); role.setDataScope(args.getDataScope()); - role.setDepts(args.getDepts()); role.setLevel(args.getLevel()); // 更新 systemRoleMapper.insertOrUpdate(role); @@ -114,8 +112,8 @@ public class SystemRoleService { } } - private SystemRoleVo getRoleVoById(Long id) { - return KitBeanUtil.copyToClass(systemRoleMapper.selectById(id), SystemRoleVo.class); + private SystemRoleTb getRoleTbById(Long id) { + return systemRoleMapper.selectById(id); } /** @@ -143,7 +141,7 @@ public class SystemRoleService { */ @Transactional(rollbackFor = Exception.class) public void deleteRoleByIds(Set ids) { - List roleLevels = systemRoleMapper.selectByIds(ids).stream().map(SystemRoleTb::getLevel).distinct().toList(); + List roleLevels = systemRoleMapper.selectByIds(ids).stream().map(SystemRoleTb::getLevel).distinct().collect(Collectors.toList()); for (Integer roleLevel : roleLevels) { checkRoleLevels(roleLevel); } @@ -223,7 +221,7 @@ public class SystemRoleService { return permissions.stream().map(SystemRoleCodeVo::new).collect(Collectors.toList()); } List roles = systemUserRoleService.queryRoleByUsersId(user.getId()); - permissions = roles.stream().flatMap(role -> role.getMenus().stream()).map(SystemMenuTb::getPermission) + permissions = roles.stream().flatMap(role -> role.getMenus().stream()).map(SystemMenuVo::getPermission) .filter(StrUtil::isNotBlank).collect(Collectors.toSet()); return permissions.stream().map(SystemRoleCodeVo::new).collect(Collectors.toList()); } @@ -271,7 +269,7 @@ public class SystemRoleService { */ private int checkRoleLevels(Integer level) { List levels = systemUserRoleService.queryRoleByUsersId(KitSecurityHelper.getCurrentUserId()).stream() - .map(SystemRoleTb::getLevel).toList(); + .map(SystemRoleVo::getLevel).collect(Collectors.toList()); int min = Collections.min(levels); if (level != null) { if (level < min) { @@ -283,6 +281,14 @@ public class SystemRoleService { public void exportRoleXlsx(HttpServletResponse response, SystemQueryRoleArgs args) { List systemRoleVos = this.queryRoleByArgs(args); +// KitXlsxExportUtil.exportFile(response, "角色数据", systemRoleVos, SystemRoleExportRowVo.class, (dataObject) -> { +// SystemRoleExportRowVo rowVo = new SystemRoleExportRowVo(); +// rowVo.setName(dataObject.getName()); +// rowVo.setLevel(dataObject.getLevel()); +// rowVo.setDescription(dataObject.getDescription()); +// rowVo.setCreateTime(dataObject.getCreateTime()); +// return CollUtil.newArrayList(rowVo); +// }); List rowVos = new ArrayList<>(); for (SystemRoleVo dataObject : systemRoleVos) { SystemRoleExportRowVo rowVo = new SystemRoleExportRowVo(); diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserRoleService.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserRoleService.java index 6b838e6a..b5f37ffe 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserRoleService.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserRoleService.java @@ -140,7 +140,7 @@ public class SystemUserRoleService { public void checkLevel(SystemUserVo args) { Integer currentLevel = Collections.min( this.queryRoleByUsersId(KitSecurityHelper.getCurrentUserId()).stream() - .map(SystemRoleTb::getLevel).collect(Collectors.toList())); + .map(SystemRoleVo::getLevel).collect(Collectors.toList())); Integer optLevel = this.getDeptLevelByRoles(args.getRoles()); if (currentLevel > optLevel) { throw new BadRequestException("角色权限不足"); diff --git a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserService.java b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserService.java index 9daa3a78..d1fc7e6e 100644 --- a/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserService.java +++ b/cutejava-springboot3/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserService.java @@ -26,7 +26,6 @@ import cn.odboy.framework.properties.AppProperties; import cn.odboy.framework.server.core.KitFileLocalUploadHelper; import cn.odboy.system.constant.SystemCaptchaBizEnum; import cn.odboy.system.constant.SystemZhConst; -import cn.odboy.system.dal.dataobject.SystemDeptTb; import cn.odboy.system.dal.dataobject.SystemJobTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.dataobject.SystemUserJobTb; @@ -34,6 +33,7 @@ import cn.odboy.system.dal.dataobject.SystemUserRoleTb; import cn.odboy.system.dal.dataobject.SystemUserTb; import cn.odboy.system.dal.model.SystemDeptVo; import cn.odboy.system.dal.model.SystemQueryUserArgs; +import cn.odboy.system.dal.model.SystemRoleVo; import cn.odboy.system.dal.model.SystemUpdateUserPasswordArgs; import cn.odboy.system.dal.model.SystemUserExportRowVo; import cn.odboy.system.dal.model.SystemUserVo; @@ -205,9 +205,9 @@ public class SystemUserService { for (Long id : ids) { Integer currentLevel = Collections.min( systemUserRoleService.queryRoleByUsersId(currentUserId).stream() - .map(SystemRoleTb::getLevel).collect(Collectors.toList())); + .map(SystemRoleVo::getLevel).collect(Collectors.toList())); Integer optLevel = Collections.min( - systemUserRoleService.queryRoleByUsersId(id).stream().map(SystemRoleTb::getLevel) + systemUserRoleService.queryRoleByUsersId(id).stream().map(SystemRoleVo::getLevel) .collect(Collectors.toList())); if (currentLevel > optLevel) { throw new BadRequestException( @@ -439,7 +439,7 @@ public class SystemUserService { SystemUserVo userVo = KitBeanUtil.copyToClass(user, SystemUserVo.class); // 查询关联的部门信息 if (user.getDeptId() != null) { - SystemDeptTb dept = systemDeptService.getDeptById(user.getDeptId()); + SystemDeptVo dept = systemDeptService.getDeptVoById(user.getDeptId()); userVo.setDept(dept); } // 查询关联的岗位信息 diff --git a/cutejava-springboot3/cutejava-starter/src/test/java/cn/odboy/SystemApplicationTests.java b/cutejava-springboot3/cutejava-starter/src/test/java/cn/odboy/SystemApplicationTests.java index 8ec5f6d7..c6471be7 100644 --- a/cutejava-springboot3/cutejava-starter/src/test/java/cn/odboy/SystemApplicationTests.java +++ b/cutejava-springboot3/cutejava-starter/src/test/java/cn/odboy/SystemApplicationTests.java @@ -13,13 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package cn.odboy; import cn.hutool.core.collection.CollUtil; -import cn.odboy.system.dal.dataobject.SystemDeptTb; import cn.odboy.system.dal.dataobject.SystemJobTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; +import cn.odboy.system.dal.model.SystemDeptVo; import cn.odboy.system.dal.model.SystemUserVo; import cn.odboy.system.service.SystemUserService; import java.util.Set; @@ -36,19 +35,19 @@ public class SystemApplicationTests { @Autowired private SystemUserService systemUserService; + public static void main(String[] args) { + } + @Test public void contextLoads() { - SystemDeptTb systemDept = new SystemDeptTb(); + SystemDeptVo systemDept = new SystemDeptVo(); systemDept.setId(2L); - SystemJobTb systemJob = new SystemJobTb(); systemJob.setId(11L); Set systemJobs = CollUtil.newHashSet(systemJob); - SystemRoleTb systemRole = new SystemRoleTb(); systemRole.setId(2L); Set systemRoles = CollUtil.newHashSet(systemRole); - String pwd = passwordEncoder.encode("123456"); for (int i = 100; i < 200; i++) { SystemUserVo systemUser = new SystemUserVo(); @@ -64,4 +63,3 @@ public class SystemApplicationTests { } } } - diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/controller/SystemQuartzJobController.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/controller/SystemQuartzJobController.java index 621dac5d..ffbf70f6 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/controller/SystemQuartzJobController.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/controller/SystemQuartzJobController.java @@ -19,6 +19,7 @@ import cn.odboy.base.KitPageArgs; import cn.odboy.base.KitPageResult; import cn.odboy.system.dal.dataobject.SystemQuartzJobTb; import cn.odboy.system.dal.dataobject.SystemQuartzLogTb; +import cn.odboy.system.dal.model.SystemQuartzJobVo; import cn.odboy.system.dal.model.SystemQueryQuartzJobArgs; import cn.odboy.system.dal.model.SystemUpdateQuartzJobArgs; import cn.odboy.system.framework.operalog.OperationLog; @@ -86,7 +87,7 @@ public class SystemQuartzJobController { @ApiOperation("新增定时任务") @PostMapping(value = "/createQuartzJob") @PreAuthorize("@el.check('quartzJob:add')") - public ResponseEntity createQuartzJob(@Validated @RequestBody SystemQuartzJobTb args) { + public ResponseEntity createQuartzJob(@Validated @RequestBody SystemQuartzJobVo args) { systemQuartzJobService.createJob(args); return ResponseEntity.ok(null); } diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/dataobject/SystemQuartzJobTb.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/dataobject/SystemQuartzJobTb.java index 9c35c714..80d4d6ec 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/dataobject/SystemQuartzJobTb.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/dataobject/SystemQuartzJobTb.java @@ -62,6 +62,5 @@ public class SystemQuartzJobTb extends KitBaseUserTimeTb { @NotBlank @ApiModelProperty(value = "备注") @TableField(updateStrategy = FieldStrategy.ALWAYS) - private String - description; + private String description; } \ No newline at end of file diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDeptVo.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDeptVo.java index eacacdbb..3ba9e2f7 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDeptVo.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDeptVo.java @@ -1,17 +1,71 @@ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemDeptTb; +import cn.odboy.base.KitBaseUserTimeTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; import io.swagger.annotations.ApiModelProperty; import java.util.List; +import java.util.Objects; import java.util.Set; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @Getter @Setter -public class SystemDeptVo extends SystemDeptTb { +public class SystemDeptVo extends KitBaseUserTimeTb { + @NotNull(groups = Update.class) + @ApiModelProperty(value = "ID", hidden = true) + private Long id; + @ApiModelProperty(value = "排序") + private Integer deptSort; + @NotBlank + @ApiModelProperty(value = "部门名称") + private String name; + @NotNull + @ApiModelProperty(value = "是否启用") + private Boolean enabled; + @ApiModelProperty(value = "上级部门") + private Long pid; + @ApiModelProperty(value = "子节点数目", hidden = true) + private Integer subCount = 0; + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SystemDeptVo dept = (SystemDeptVo) o; + return Objects.equals(id, dept.id) && Objects.equals(name, dept.name); + } + + @Override + public int hashCode() { + return Objects.hash(id, name); + } + + @ApiModelProperty(value = "是否有子节点") + public Boolean getHasChildren() { + return subCount > 0; + } + + @ApiModelProperty(value = "是否为叶子") + public Boolean getLeaf() { + return subCount <= 0; + } + + @ApiModelProperty(value = "标签名称") + public String getLabel() { + return name; + } + + /** + * 扩展字段 + */ @ApiModelProperty(value = "角色") private Set roles; @ApiModelProperty(value = "子部门") diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDictDetailVo.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDictDetailVo.java index 4a64efa3..3118f9aa 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDictDetailVo.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemDictDetailVo.java @@ -15,16 +15,31 @@ */ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemDictDetailTb; +import cn.odboy.base.KitBaseUserTimeTb; import cn.odboy.system.dal.dataobject.SystemDictTb; import io.swagger.annotations.ApiModelProperty; +import javax.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @Getter @Setter -public class SystemDictDetailVo extends SystemDictDetailTb { +public class SystemDictDetailVo extends KitBaseUserTimeTb { + @NotNull(groups = Update.class) + @ApiModelProperty(value = "ID", hidden = true) + private Long id; + @ApiModelProperty(hidden = true) + private Long dictId; + @ApiModelProperty(value = "字典标签") + private String label; + @ApiModelProperty(value = "字典值") + private String value; + @ApiModelProperty(value = "排序") + private Integer dictSort = 999; + /** + * 扩展字段 + */ @ApiModelProperty(value = "字典") private SystemDictTb dict; } \ No newline at end of file diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemMenuVo.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemMenuVo.java index 3632c9f8..eac02041 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemMenuVo.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemMenuVo.java @@ -1,17 +1,84 @@ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemMenuTb; +import cn.odboy.base.KitBaseUserTimeTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; import io.swagger.annotations.ApiModelProperty; import java.util.List; +import java.util.Objects; import java.util.Set; +import javax.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @Getter @Setter -public class SystemMenuVo extends SystemMenuTb { +public class SystemMenuVo extends KitBaseUserTimeTb { + @NotNull(groups = {Update.class}) + @ApiModelProperty(value = "ID", hidden = true) + private Long id; + @ApiModelProperty(value = "菜单标题") + private String title; + @ApiModelProperty(value = "菜单组件名称") + private String componentName; + @ApiModelProperty(value = "排序") + private Integer menuSort = 999; + @ApiModelProperty(value = "组件路径") + private String component; + @ApiModelProperty(value = "路由地址") + private String path; + @ApiModelProperty(value = "菜单类型,目录、菜单、按钮") + private Integer type; + @ApiModelProperty(value = "权限标识") + private String permission; + @ApiModelProperty(value = "菜单图标") + private String icon; + @ApiModelProperty(value = "缓存") + private Boolean cache; + @ApiModelProperty(value = "是否隐藏") + private Boolean hidden; + @ApiModelProperty(value = "上级菜单") + private Long pid; + @ApiModelProperty(value = "子节点数目", hidden = true) + private Integer subCount = 0; + @ApiModelProperty(value = "外链菜单") + private Boolean iFrame; + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SystemMenuVo menu = (SystemMenuVo) o; + return Objects.equals(id, menu.id); + } + + @Override + public int hashCode() { + return Objects.hash(id); + } + + @ApiModelProperty(value = "是否有子节点") + public Boolean getHasChildren() { + return subCount > 0; + } + + @ApiModelProperty(value = "是否为叶子") + public Boolean getLeaf() { + return subCount <= 0; + } + + @ApiModelProperty(value = "标签名称") + public String getLabel() { + return title; + } + + /** + * 附加属性 + */ @ApiModelProperty(value = "菜单角色") private Set roles; @ApiModelProperty(value = "子菜单") diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemOssStorageVo.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemOssStorageVo.java index 0da271d7..9dcb04b8 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemOssStorageVo.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemOssStorageVo.java @@ -15,13 +15,43 @@ */ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemOssStorageTb; +import cn.odboy.base.KitBaseUserTimeTb; +import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @Getter @Setter -public class SystemOssStorageVo extends SystemOssStorageTb { +public class SystemOssStorageVo extends KitBaseUserTimeTb { + @ApiModelProperty("ID") + private Long id; + @ApiModelProperty("类型,比如minio") + private String serviceType; + @ApiModelProperty("服务地址") + private String endpoint; + @ApiModelProperty("存储桶名称") + private String bucketName; + @ApiModelProperty("完整文件名称") + private String fileName; + @ApiModelProperty("文件大小, 单位:字节") + private Long fileSize; + @ApiModelProperty("文件类型") + private String fileMime; + @ApiModelProperty("短文件名") + private String filePrefix; + @ApiModelProperty("文件后缀") + private String fileSuffix; + @ApiModelProperty("文件md5") + private String fileMd5; + @ApiModelProperty("文件链接") + private String fileUrl; + @ApiModelProperty("文件编码") + private String fileCode; + @ApiModelProperty("对象路径") + private String objectName; + /** + * 扩展字段 + */ private String fileSizeDesc; } diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemQuartzJobVo.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemQuartzJobVo.java index 5ef8e4ef..fed3436d 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemQuartzJobVo.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemQuartzJobVo.java @@ -1,14 +1,48 @@ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemQuartzJobTb; +import cn.odboy.base.KitBaseUserTimeTb; import io.swagger.annotations.ApiModelProperty; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @Getter @Setter -public class SystemQuartzJobVo extends SystemQuartzJobTb { +public class SystemQuartzJobVo extends KitBaseUserTimeTb { + public static final String JOB_KEY = "JOB_KEY"; + @NotNull(groups = {Update.class}) + private Long id; + @ApiModelProperty(value = "定时器名称") + private String jobName; + @NotBlank + @ApiModelProperty(value = "Bean名称") + private String beanName; + @NotBlank + @ApiModelProperty(value = "方法名称") + private String methodName; + @ApiModelProperty(value = "参数") + private String params; + @NotBlank + @ApiModelProperty(value = "cron表达式") + private String cronExpression; + @ApiModelProperty(value = "状态:暂停或启动") + private Boolean isPause = false; + @ApiModelProperty(value = "负责人") + private String personInCharge; + @ApiModelProperty(value = "报警邮箱") + private String email; + @ApiModelProperty(value = "子任务") + private String subTask; + @ApiModelProperty(value = "失败后暂停") + private Boolean pauseAfterFailure; + @NotBlank + @ApiModelProperty(value = "备注") + private String description; + /** + * 扩展字段 + */ @ApiModelProperty(value = "用于子任务唯一标识", hidden = true) private String uuid; } diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemRoleVo.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemRoleVo.java index d7dbfcf7..22323928 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemRoleVo.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemRoleVo.java @@ -1,21 +1,59 @@ package cn.odboy.system.dal.model; +import cn.odboy.base.KitBaseUserTimeTb; +import cn.odboy.system.constant.SystemDataScopeEnum; import cn.odboy.system.dal.dataobject.SystemDeptTb; -import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.dataobject.SystemUserTb; import io.swagger.annotations.ApiModelProperty; +import java.util.Objects; import java.util.Set; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @Getter @Setter -public class SystemRoleVo extends SystemRoleTb { +public class SystemRoleVo extends KitBaseUserTimeTb { + @NotNull(groups = {Update.class}) + @ApiModelProperty(value = "ID", hidden = true) + private Long id; + @NotBlank + @ApiModelProperty(value = "名称", hidden = true) + private String name; + @ApiModelProperty(value = "数据权限,全部 、 本级 、 自定义") + private String dataScope = SystemDataScopeEnum.THIS_LEVEL.getValue(); + @ApiModelProperty(value = "级别,数值越小,级别越大") + private Integer level = 3; + @ApiModelProperty(value = "描述") + private String description; + /** + * 扩展字段 + */ @ApiModelProperty(value = "用户", hidden = true) private Set users; @ApiModelProperty(value = "菜单", hidden = true) private Set menus; @ApiModelProperty(value = "部门", hidden = true) private Set depts; + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SystemRoleVo role = (SystemRoleVo) o; + return Objects.equals(id, role.id); + } + + @Override + public int hashCode() { + return Objects.hash(id); + } + + } diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemSimpleUserVo.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemSimpleUserVo.java index fb5e3a75..ca9ed811 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemSimpleUserVo.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemSimpleUserVo.java @@ -19,7 +19,6 @@ import cn.odboy.base.KitObject; import cn.odboy.system.dal.dataobject.SystemDeptTb; import cn.odboy.system.dal.dataobject.SystemJobTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModelProperty; import java.util.Set; import lombok.Data; @@ -36,7 +35,6 @@ public class SystemSimpleUserVo extends KitObject { @ApiModelProperty(value = "用户岗位") private Set jobs; private Long deptId; - @TableField(exist = false) private SystemDeptTb dept; @ApiModelProperty(value = "用户名称") private String username; diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemUserVo.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemUserVo.java index e0811d40..a8ec8077 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemUserVo.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/dal/model/SystemUserVo.java @@ -1,11 +1,15 @@ package cn.odboy.system.dal.model; -import cn.odboy.system.dal.dataobject.SystemDeptTb; import cn.odboy.system.dal.dataobject.SystemJobTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.dataobject.SystemUserTb; import io.swagger.annotations.ApiModelProperty; +import java.util.Date; +import java.util.Objects; import java.util.Set; +import javax.validation.constraints.Email; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; @@ -13,10 +17,65 @@ import lombok.Setter; @Setter public class SystemUserVo extends SystemUserTb { + @NotNull(groups = Update.class) + @ApiModelProperty(value = "ID", hidden = true) + private Long id; + @ApiModelProperty(hidden = true) + private Long deptId; + @NotBlank + @ApiModelProperty(value = "用户名称") + private String username; + @NotBlank + @ApiModelProperty(value = "用户昵称") + private String nickName; + @Email + @NotBlank + @ApiModelProperty(value = "邮箱") + private String email; + @NotBlank + @ApiModelProperty(value = "电话号码") + private String phone; + @ApiModelProperty(value = "用户性别") + private String gender; + @ApiModelProperty(value = "头像真实名称", hidden = true) + private String avatarName; + @ApiModelProperty(value = "头像存储的路径", hidden = true) + private String avatarPath; + @ApiModelProperty(value = "密码") + private String password; + @NotNull + @ApiModelProperty(value = "是否启用") + private Boolean enabled; + @ApiModelProperty(value = "是否为admin账号", hidden = true) + private Boolean isAdmin = false; + @ApiModelProperty(value = "最后修改密码的时间", hidden = true) + private Date pwdResetTime; + + /** + * 扩展字段 + */ @ApiModelProperty(value = "用户部门") - private SystemDeptTb dept; + private SystemDeptVo dept; @ApiModelProperty(value = "用户角色") private Set roles; @ApiModelProperty(value = "用户岗位") private Set jobs; + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SystemUserVo user = (SystemUserVo) o; + return Objects.equals(id, user.id) && Objects.equals(username, user.username); + } + + @Override + public int hashCode() { + return Objects.hash(id, username); + } + } diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ActiveJobRegister.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ActiveJobRegister.java index 0090bc30..cf239c90 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ActiveJobRegister.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ActiveJobRegister.java @@ -15,7 +15,7 @@ */ package cn.odboy.system.framework.quartz; -import cn.odboy.system.dal.dataobject.SystemQuartzJobTb; +import cn.odboy.system.dal.model.SystemQuartzJobVo; import cn.odboy.system.service.SystemQuartzJobService; import java.util.List; import lombok.extern.slf4j.Slf4j; @@ -40,7 +40,7 @@ public class ActiveJobRegister implements ApplicationRunner { */ @Override public void run(ApplicationArguments applicationArguments) { - List quartzJobs = systemQuartzJobService.listEnableQuartzJob(); + List quartzJobs = systemQuartzJobService.listEnableQuartzJob(); quartzJobs.forEach(quartzManage::addJob); log.info("Timing task injection complete"); } diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ExecutionJobBean.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ExecutionJobBean.java index 06277748..eaeb6265 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ExecutionJobBean.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/ExecutionJobBean.java @@ -114,7 +114,7 @@ public class ExecutionJobBean extends QuartzJobBean { } } - private SystemSendEmailArgs taskAlarm(SystemQuartzJobTb quartzJob, String msg) { + private SystemSendEmailArgs taskAlarm(SystemQuartzJobVo quartzJob, String msg) { SystemSendEmailArgs sendEmailRequest = new SystemSendEmailArgs(); sendEmailRequest.setSubject("定时任务【" + quartzJob.getJobName() + "】执行失败,请尽快处理!"); Map data = new HashMap<>(16); diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/QuartzManage.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/QuartzManage.java index 96063bed..97f1bddf 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/QuartzManage.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/framework/quartz/QuartzManage.java @@ -17,6 +17,7 @@ package cn.odboy.system.framework.quartz; import cn.odboy.framework.exception.BadRequestException; import cn.odboy.system.dal.dataobject.SystemQuartzJobTb; +import cn.odboy.system.dal.model.SystemQuartzJobVo; import java.util.Date; import javax.annotation.Resource; import lombok.extern.slf4j.Slf4j; @@ -42,7 +43,7 @@ public class QuartzManage { @Resource private Scheduler scheduler; - public void addJob(SystemQuartzJobTb quartzJob) { + public void addJob(SystemQuartzJobVo quartzJob) { try { // 构建job信息 JobDetail jobDetail = @@ -74,7 +75,7 @@ public class QuartzManage { * * @param quartzJob / */ - public void updateJobCron(SystemQuartzJobTb quartzJob) { + public void updateJobCron(SystemQuartzJobVo quartzJob) { try { TriggerKey triggerKey = TriggerKey.triggerKey(JOB_NAME + quartzJob.getId()); CronTrigger trigger = (CronTrigger) scheduler.getTrigger(triggerKey); @@ -120,7 +121,7 @@ public class QuartzManage { * * @param quartzJob / */ - public void resumeJob(SystemQuartzJobTb quartzJob) { + public void resumeJob(SystemQuartzJobVo quartzJob) { try { TriggerKey triggerKey = TriggerKey.triggerKey(JOB_NAME + quartzJob.getId()); CronTrigger trigger = (CronTrigger) scheduler.getTrigger(triggerKey); @@ -141,7 +142,7 @@ public class QuartzManage { * * @param quartzJob / */ - public void runJobNow(SystemQuartzJobTb quartzJob) { + public void runJobNow(SystemQuartzJobVo quartzJob) { try { TriggerKey triggerKey = TriggerKey.triggerKey(JOB_NAME + quartzJob.getId()); CronTrigger trigger = (CronTrigger) scheduler.getTrigger(triggerKey); @@ -164,7 +165,7 @@ public class QuartzManage { * * @param quartzJob / */ - public void pauseJob(SystemQuartzJobTb quartzJob) { + public void pauseJob(SystemQuartzJobVo quartzJob) { try { JobKey jobKey = JobKey.jobKey(JOB_NAME + quartzJob.getId()); scheduler.pauseJob(jobKey); diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDataService.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDataService.java index ec7d8826..4440db33 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDataService.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDataService.java @@ -18,7 +18,6 @@ package cn.odboy.system.service; import cn.hutool.core.collection.CollUtil; import cn.odboy.system.constant.SystemDataScopeEnum; import cn.odboy.system.dal.dataobject.SystemDeptTb; -import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.model.SystemDeptVo; import cn.odboy.system.dal.model.SystemRoleVo; import cn.odboy.system.dal.model.SystemUserVo; @@ -55,7 +54,7 @@ public class SystemDataService { // 查询用户角色 List roleList = systemUserRoleService.queryRoleByUsersId(user.getId()); // 获取对应的部门ID - for (SystemRoleTb role : roleList) { + for (SystemRoleVo role : roleList) { SystemDataScopeEnum dataScopeEnum = SystemDataScopeEnum.find(role.getDataScope()); switch (Objects.requireNonNull(dataScopeEnum)) { case THIS_LEVEL: @@ -78,7 +77,7 @@ public class SystemDataService { * @param role 角色 * @return 数据权限ID */ - private List queryCustomDataPermissionByArgs(List deptIds, SystemRoleTb role) { + private List queryCustomDataPermissionByArgs(List deptIds, SystemRoleVo role) { List deptList = systemRoleDeptService.listDeptByRoleId(role.getId()); for (SystemDeptTb dept : deptList) { deptIds.add(dept.getId()); diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDeptService.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDeptService.java index f1ae8897..450f950e 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDeptService.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDeptService.java @@ -83,7 +83,7 @@ public class SystemDeptService { @Transactional(rollbackFor = Exception.class) public void updateDeptById(SystemDeptTb args) { // 旧的部门 - Long oldPid = this.getDeptById(args.getId()).getPid(); + Long oldPid = this.getDeptVoById(args.getId()).getPid(); Long newPid = args.getPid(); if (args.getPid() != null && args.getId().equals(args.getPid())) { throw new BadRequestException("上级不能为自己"); @@ -103,10 +103,10 @@ public class SystemDeptService { @Transactional(rollbackFor = Exception.class) public void deleteDeptByIds(Set ids) { // 获取部门, 和其所有子部门 - Set depts = this.traverseDeptByIdWithPids(ids); + Set depts = this.traverseDeptByIdWithPids(ids); // 验证是否被角色或用户关联 this.verifyBindRelationByIds(depts); - for (SystemDeptTb dept : depts) { + for (SystemDeptVo dept : depts) { systemDeptMapper.deleteById(dept.getId()); this.updateDeptSubCnt(dept.getPid()); } @@ -211,8 +211,8 @@ public class SystemDeptService { * @param id / * @return / */ - public SystemDeptTb getDeptById(Long id) { - return systemDeptMapper.selectById(id); + public SystemDeptVo getDeptVoById(Long id) { + return KitBeanUtil.copyToClass(systemDeptMapper.selectById(id), SystemDeptVo.class); } /** @@ -222,8 +222,8 @@ public class SystemDeptService { * @param depts / * @return / */ - private Set queryRelationDeptByArgs(List deptTbList, Set depts) { - for (SystemDeptTb dept : deptTbList) { + private Set queryRelationDeptByArgs(List deptTbList, Set depts) { + for (SystemDeptVo dept : deptTbList) { depts.add(dept); List deptList = this.listDeptByPid(dept.getId()); if (CollUtil.isNotEmpty(deptList)) { @@ -254,13 +254,13 @@ public class SystemDeptService { * @param deptList / * @return / */ - private List querySuperiorDeptByPid(SystemDeptTb dept, List deptList) { + private List querySuperiorDeptByPid(SystemDeptVo dept, List deptList) { if (dept.getPid() == null) { deptList.addAll(this.listRootDept()); return deptList; } deptList.addAll(this.listDeptByPid(dept.getPid())); - return querySuperiorDeptByPid(this.getDeptById(dept.getPid()), deptList); + return querySuperiorDeptByPid(this.getDeptVoById(dept.getPid()), deptList); } private List listRootDept() { @@ -278,7 +278,7 @@ public class SystemDeptService { Set deptSet1 = new LinkedHashSet<>(); for (Long id : ids) { // 同级数据 - SystemDeptTb dept = this.getDeptById(id); + SystemDeptVo dept = this.getDeptVoById(id); // 上级数据 List depts = this.querySuperiorDeptByPid(dept, new ArrayList<>()); if (exclude) { @@ -314,7 +314,7 @@ public class SystemDeptService { } if (isChild) { deptSet.add(dept); - } else if (dept.getPid() != null && !deptNames.contains(this.getDeptById(dept.getPid()).getName())) { + } else if (dept.getPid() != null && !deptNames.contains(this.getDeptVoById(dept.getPid()).getName())) { deptSet.add(dept); } } @@ -332,8 +332,8 @@ public class SystemDeptService { * * @param deptSet / */ - public void verifyBindRelationByIds(Set deptSet) { - Set deptIds = deptSet.stream().map(SystemDeptTb::getId).collect(Collectors.toSet()); + public void verifyBindRelationByIds(Set deptSet) { + Set deptIds = deptSet.stream().map(SystemDeptVo::getId).collect(Collectors.toSet()); if (systemUserDeptService.countUserByDeptIds(deptIds) > 0) { throw new BadRequestException("所选部门存在用户关联,请解除后再试!"); } @@ -353,11 +353,11 @@ public class SystemDeptService { * * @param ids / */ - public Set traverseDeptByIdWithPids(Set ids) { - Set depts = new HashSet<>(); + public Set traverseDeptByIdWithPids(Set ids) { + Set depts = new HashSet<>(); for (Long id : ids) { // 根部门 - depts.add(this.getDeptById(id)); + depts.add(this.getDeptVoById(id)); // 子部门 List deptList = this.listDeptByPid(id); if (CollectionUtil.isNotEmpty(deptList)) { diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDictDetailService.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDictDetailService.java index 0c33235a..f1c58b43 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDictDetailService.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemDictDetailService.java @@ -109,7 +109,7 @@ public class SystemDictDetailService { */ public KitPageResult searchDictDetail(SystemQueryDictDetailArgs args, Page page) { IPage iPage = systemDictDetailMapper.selectPageByArgs(page, args).convert(i -> KitBeanUtil.copyToClass(i, SystemDictDetailVo.class)); - List dictIds = iPage.getRecords().stream().map(SystemDictDetailTb::getDictId).collect(Collectors.toList()); + List dictIds = iPage.getRecords().stream().map(SystemDictDetailVo::getDictId).collect(Collectors.toList()); Map id2ItemMap = systemDictMapper.selectByIds(dictIds).stream().collect(Collectors.toMap(SystemDictTb::getId, i -> i)); for (SystemDictDetailVo record : iPage.getRecords()) { record.setDict(id2ItemMap.get(record.getDictId())); diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemMenuService.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemMenuService.java index 22e93bb3..886896b5 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemMenuService.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemMenuService.java @@ -23,7 +23,6 @@ import cn.odboy.framework.exception.BadRequestException; import cn.odboy.system.constant.SystemYesOrNoChConst; import cn.odboy.system.constant.TransferProtocolConst; import cn.odboy.system.dal.dataobject.SystemMenuTb; -import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.model.SystemMenuExportRowVo; import cn.odboy.system.dal.model.SystemMenuMetaVo; import cn.odboy.system.dal.model.SystemMenuRouterVo; @@ -160,12 +159,12 @@ public class SystemMenuService { menuSet = this.queryChildMenuByArgs(menuList, menuSet); } List menuIds = - menuSet.stream().map(SystemMenuTb::getId).filter(Objects::nonNull).distinct().collect(Collectors.toList()); + menuSet.stream().map(SystemMenuVo::getId).filter(Objects::nonNull).distinct().collect(Collectors.toList()); if (CollUtil.isNotEmpty(menuIds)) { systemRoleMenuService.deleteRoleMenuByMenuIds(menuIds); systemMenuMapper.deleteByIds(menuIds); } - for (SystemMenuTb menu : menuSet) { + for (SystemMenuVo menu : menuSet) { this.updateMenuSubCnt(menu.getPid()); } } @@ -222,7 +221,7 @@ public class SystemMenuService { */ public List listMenuByUserId(Long currentUserId) { List roles = systemUserRoleService.queryRoleByUsersId(currentUserId); - Set roleIds = roles.stream().map(SystemRoleTb::getId).collect(Collectors.toSet()); + Set roleIds = roles.stream().map(SystemRoleVo::getId).collect(Collectors.toSet()); return new ArrayList<>(systemRoleMenuService.queryMenuByRoleIds(roleIds)); } @@ -270,7 +269,7 @@ public class SystemMenuService { * @param menus / * @return / */ - public List querySuperiorMenuByArgs(SystemMenuTb menu, List menus) { + public List querySuperiorMenuByArgs(SystemMenuVo menu, List menus) { if (menu.getPid() == null) { menus.addAll(this.listRootMenu()); return menus; @@ -364,7 +363,7 @@ public class SystemMenuService { * @param menuVo / * @return / */ - private SystemMenuRouterVo getMenuVo(SystemMenuTb menu, SystemMenuRouterVo menuVo) { + private SystemMenuRouterVo getMenuVo(SystemMenuVo menu, SystemMenuRouterVo menuVo) { SystemMenuRouterVo menuVo1 = new SystemMenuRouterVo(); menuVo1.setMeta(menuVo.getMeta()); // 非外链 @@ -435,7 +434,7 @@ public class SystemMenuService { List menuList = this.listMenuByPid(id); menuSet.add(this.getMenuVoById(id)); menuSet = this.queryChildMenuByArgs(menuList, menuSet); - return menuSet.stream().map(SystemMenuTb::getId).collect(Collectors.toSet()); + return menuSet.stream().map(SystemMenuVo::getId).collect(Collectors.toSet()); } public List listMenuSuperior(List ids) { @@ -443,7 +442,7 @@ public class SystemMenuService { List systemMenuTbs; if (CollectionUtil.isNotEmpty(ids)) { menus = new LinkedHashSet<>(this.listMenuByIds(ids)); - for (SystemMenuTb menu : menus) { + for (SystemMenuVo menu : menus) { List menuList = this.querySuperiorMenuByArgs(menu, new ArrayList<>()); for (SystemMenuVo data : menuList) { if (data.getId().equals(menu.getPid())) { diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemQuartzJobService.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemQuartzJobService.java index 1f74d260..a1930149 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemQuartzJobService.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemQuartzJobService.java @@ -79,7 +79,7 @@ public class SystemQuartzJobService { * @param args / */ @Transactional(rollbackFor = Exception.class) - public void createJob(SystemQuartzJobTb args) { + public void createJob(SystemQuartzJobVo args) { if (args.getId() != null) { throw new BadRequestException("无效参数id"); } @@ -88,7 +88,8 @@ public class SystemQuartzJobService { if (!CronExpression.isValidExpression(args.getCronExpression())) { throw new BadRequestException("cron表达式格式错误"); } - systemQuartzJobMapper.insert(args); + SystemQuartzJobTb record = KitBeanUtil.copyToClass(args, SystemQuartzJobTb.class); + systemQuartzJobMapper.insert(record); quartzManage.addJob(args); } @@ -110,9 +111,10 @@ public class SystemQuartzJobService { throw new BadRequestException("子任务中不能添加当前任务ID"); } } - SystemQuartzJobTb quartzJob = KitBeanUtil.copyToClass(args, SystemQuartzJobTb.class); - systemQuartzJobMapper.insertOrUpdate(quartzJob); - quartzManage.updateJobCron(quartzJob); + SystemQuartzJobTb jobTb = KitBeanUtil.copyToClass(args, SystemQuartzJobTb.class); + systemQuartzJobMapper.insertOrUpdate(jobTb); + SystemQuartzJobVo jobVo = KitBeanUtil.copyToClass(args, SystemQuartzJobVo.class); + quartzManage.updateJobCron(jobVo); } /** @@ -121,7 +123,7 @@ public class SystemQuartzJobService { * @param quartzJob / */ @Transactional(rollbackFor = Exception.class) - public void switchQuartzJobStatus(SystemQuartzJobTb quartzJob) { + public void switchQuartzJobStatus(SystemQuartzJobVo quartzJob) { // 置换暂停状态 if (quartzJob.getIsPause()) { quartzManage.resumeJob(quartzJob); @@ -130,7 +132,8 @@ public class SystemQuartzJobService { quartzManage.pauseJob(quartzJob); quartzJob.setIsPause(true); } - systemQuartzJobMapper.insertOrUpdate(quartzJob); + SystemQuartzJobTb quartzJobTb = KitBeanUtil.copyToClass(quartzJob, SystemQuartzJobTb.class); + systemQuartzJobMapper.insertOrUpdate(quartzJobTb); } /** @@ -138,7 +141,7 @@ public class SystemQuartzJobService { * * @param quartzJob / */ - public void startQuartzJob(SystemQuartzJobTb quartzJob) { + public void startQuartzJob(SystemQuartzJobVo quartzJob) { quartzManage.runJobNow(quartzJob); } @@ -263,31 +266,18 @@ public class SystemQuartzJobService { return systemQuartzLogMapper.selectList(wrapper); } - public SystemQuartzJobTb getQuartzJobById(Long id) { - return systemQuartzJobMapper.selectById(id); + public SystemQuartzJobVo getQuartzJobById(Long id) { + return KitBeanUtil.copyToClass(systemQuartzJobMapper.selectById(id), SystemQuartzJobVo.class); } - public List listEnableQuartzJob() { + public List listEnableQuartzJob() { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(SystemQuartzJobTb::getIsPause, 0); - return systemQuartzJobMapper.selectList(wrapper); + return KitBeanUtil.copyToList(systemQuartzJobMapper.selectList(wrapper), SystemQuartzJobVo.class); } public void exportQuartzJobXlsx(HttpServletResponse response, SystemQueryQuartzJobArgs args) { List systemQuartzJobTbs = this.queryQuartzJobByArgs(args); -// KitXlsxExportUtil.exportFile(response, "定时任务数据", systemQuartzJobTbs, SystemQuartzJobExportRowVo.class, -// (dataObject) -> { -// SystemQuartzJobExportRowVo rowVo = new SystemQuartzJobExportRowVo(); -// rowVo.setJobName(dataObject.getJobName()); -// rowVo.setBeanName(dataObject.getBeanName()); -// rowVo.setMethodName(dataObject.getMethodName()); -// rowVo.setParams(dataObject.getParams()); -// rowVo.setCronExpression(dataObject.getCronExpression()); -// rowVo.setIsPause(dataObject.getIsPause() ? "暂停中" : "运行中"); -// rowVo.setDescription(dataObject.getDescription()); -// rowVo.setCreateTime(dataObject.getCreateTime()); -// return CollUtil.newArrayList(rowVo); -// }); List rowVos = new ArrayList<>(); for (SystemQuartzJobTb dataObject : systemQuartzJobTbs) { SystemQuartzJobExportRowVo rowVo = new SystemQuartzJobExportRowVo(); diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemRoleService.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemRoleService.java index bbd4c0ed..a190e68c 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemRoleService.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemRoleService.java @@ -21,7 +21,6 @@ import cn.hutool.core.lang.Dict; import cn.hutool.core.util.StrUtil; import cn.odboy.base.KitPageResult; import cn.odboy.framework.exception.BadRequestException; -import cn.odboy.system.dal.dataobject.SystemMenuTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.dataobject.SystemUserTb; import cn.odboy.system.dal.model.SystemCreateRoleArgs; @@ -94,7 +93,7 @@ public class SystemRoleService { @Transactional(rollbackFor = Exception.class) public void updateRoleById(SystemRoleVo args) { checkRoleLevels(args.getLevel()); - SystemRoleVo role = this.getRoleVoById(args.getId()); + SystemRoleTb role = this.getRoleTbById(args.getId()); SystemRoleTb role1 = this.getRoleByName(args.getName()); if (role1 != null && !role1.getId().equals(role.getId())) { throw new BadRequestException("角色名称已存在"); @@ -102,7 +101,6 @@ public class SystemRoleService { role.setName(args.getName()); role.setDescription(args.getDescription()); role.setDataScope(args.getDataScope()); - role.setDepts(args.getDepts()); role.setLevel(args.getLevel()); // 更新 systemRoleMapper.insertOrUpdate(role); @@ -114,8 +112,8 @@ public class SystemRoleService { } } - private SystemRoleVo getRoleVoById(Long id) { - return KitBeanUtil.copyToClass(systemRoleMapper.selectById(id), SystemRoleVo.class); + private SystemRoleTb getRoleTbById(Long id) { + return systemRoleMapper.selectById(id); } /** @@ -223,7 +221,7 @@ public class SystemRoleService { return permissions.stream().map(SystemRoleCodeVo::new).collect(Collectors.toList()); } List roles = systemUserRoleService.queryRoleByUsersId(user.getId()); - permissions = roles.stream().flatMap(role -> role.getMenus().stream()).map(SystemMenuTb::getPermission) + permissions = roles.stream().flatMap(role -> role.getMenus().stream()).map(SystemMenuVo::getPermission) .filter(StrUtil::isNotBlank).collect(Collectors.toSet()); return permissions.stream().map(SystemRoleCodeVo::new).collect(Collectors.toList()); } @@ -271,7 +269,7 @@ public class SystemRoleService { */ private int checkRoleLevels(Integer level) { List levels = systemUserRoleService.queryRoleByUsersId(KitSecurityHelper.getCurrentUserId()).stream() - .map(SystemRoleTb::getLevel).collect(Collectors.toList()); + .map(SystemRoleVo::getLevel).collect(Collectors.toList()); int min = Collections.min(levels); if (level != null) { if (level < min) { diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserRoleService.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserRoleService.java index c008421d..b5f37ffe 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserRoleService.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserRoleService.java @@ -18,7 +18,6 @@ package cn.odboy.system.service; import cn.hutool.core.collection.CollUtil; import cn.odboy.framework.exception.BadRequestException; import cn.odboy.system.dal.dataobject.SystemDeptTb; -import cn.odboy.system.dal.dataobject.SystemMenuTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.dataobject.SystemUserRoleTb; import cn.odboy.system.dal.model.SystemMenuVo; @@ -141,7 +140,7 @@ public class SystemUserRoleService { public void checkLevel(SystemUserVo args) { Integer currentLevel = Collections.min( this.queryRoleByUsersId(KitSecurityHelper.getCurrentUserId()).stream() - .map(SystemRoleTb::getLevel).collect(Collectors.toList())); + .map(SystemRoleVo::getLevel).collect(Collectors.toList())); Integer optLevel = this.getDeptLevelByRoles(args.getRoles()); if (currentLevel > optLevel) { throw new BadRequestException("角色权限不足"); diff --git a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserService.java b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserService.java index cc9a9a8a..b796b10d 100644 --- a/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserService.java +++ b/cutejava/cutejava-module-system/src/main/java/cn/odboy/system/service/SystemUserService.java @@ -26,7 +26,6 @@ import cn.odboy.framework.properties.AppProperties; import cn.odboy.framework.server.core.KitFileLocalUploadHelper; import cn.odboy.system.constant.SystemCaptchaBizEnum; import cn.odboy.system.constant.SystemZhConst; -import cn.odboy.system.dal.dataobject.SystemDeptTb; import cn.odboy.system.dal.dataobject.SystemJobTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; import cn.odboy.system.dal.dataobject.SystemUserJobTb; @@ -34,6 +33,7 @@ import cn.odboy.system.dal.dataobject.SystemUserRoleTb; import cn.odboy.system.dal.dataobject.SystemUserTb; import cn.odboy.system.dal.model.SystemDeptVo; import cn.odboy.system.dal.model.SystemQueryUserArgs; +import cn.odboy.system.dal.model.SystemRoleVo; import cn.odboy.system.dal.model.SystemUpdateUserPasswordArgs; import cn.odboy.system.dal.model.SystemUserExportRowVo; import cn.odboy.system.dal.model.SystemUserVo; @@ -205,9 +205,9 @@ public class SystemUserService { for (Long id : ids) { Integer currentLevel = Collections.min( systemUserRoleService.queryRoleByUsersId(currentUserId).stream() - .map(SystemRoleTb::getLevel).collect(Collectors.toList())); + .map(SystemRoleVo::getLevel).collect(Collectors.toList())); Integer optLevel = Collections.min( - systemUserRoleService.queryRoleByUsersId(id).stream().map(SystemRoleTb::getLevel) + systemUserRoleService.queryRoleByUsersId(id).stream().map(SystemRoleVo::getLevel) .collect(Collectors.toList())); if (currentLevel > optLevel) { throw new BadRequestException( @@ -439,7 +439,7 @@ public class SystemUserService { SystemUserVo userVo = KitBeanUtil.copyToClass(user, SystemUserVo.class); // 查询关联的部门信息 if (user.getDeptId() != null) { - SystemDeptTb dept = systemDeptService.getDeptById(user.getDeptId()); + SystemDeptVo dept = systemDeptService.getDeptVoById(user.getDeptId()); userVo.setDept(dept); } // 查询关联的岗位信息 diff --git a/cutejava/cutejava-starter/src/test/java/cn/odboy/SystemApplicationTests.java b/cutejava/cutejava-starter/src/test/java/cn/odboy/SystemApplicationTests.java index a5302327..6bcc021c 100644 --- a/cutejava/cutejava-starter/src/test/java/cn/odboy/SystemApplicationTests.java +++ b/cutejava/cutejava-starter/src/test/java/cn/odboy/SystemApplicationTests.java @@ -16,9 +16,9 @@ package cn.odboy; import cn.hutool.core.collection.CollUtil; -import cn.odboy.system.dal.dataobject.SystemDeptTb; import cn.odboy.system.dal.dataobject.SystemJobTb; import cn.odboy.system.dal.dataobject.SystemRoleTb; +import cn.odboy.system.dal.model.SystemDeptVo; import cn.odboy.system.dal.model.SystemUserVo; import cn.odboy.system.service.SystemUserService; import java.util.Set; @@ -40,7 +40,7 @@ public class SystemApplicationTests { @Test public void contextLoads() { - SystemDeptTb systemDept = new SystemDeptTb(); + SystemDeptVo systemDept = new SystemDeptVo(); systemDept.setId(2L); SystemJobTb systemJob = new SystemJobTb(); systemJob.setId(11L);