From d930624185268b84f429928c14f674302bb63bf5 Mon Sep 17 00:00:00 2001 From: dhb52 Date: Tue, 28 May 2024 08:55:01 +0800 Subject: [PATCH] =?UTF-8?q?refactor(sj=5F1.0.0):=20=E4=BD=BF=E7=94=A8@Vali?= =?UTF-8?q?d+@Validated=20=E6=A0=A1=E9=AA=8C=20Service=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E4=BC=A0=E9=80=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../server/web/service/JobService.java | 3 ++- .../web/service/impl/JobServiceImpl.java | 11 ++++++----- .../snailjob/server/web/util/ImportUtils.java | 18 ------------------ 3 files changed, 8 insertions(+), 24 deletions(-) diff --git a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/JobService.java b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/JobService.java index 973768422..c529c4188 100644 --- a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/JobService.java +++ b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/JobService.java @@ -7,6 +7,7 @@ import com.aizuda.snailjob.server.web.model.request.JobUpdateJobStatusRequestVO; import com.aizuda.snailjob.server.web.model.response.JobResponseVO; import com.aizuda.snailjob.template.datasource.persistence.po.Job; import jakarta.validation.Valid; +import jakarta.validation.constraints.NotEmpty; import java.util.List; import java.util.Set; @@ -39,7 +40,7 @@ public interface JobService { List getJobList(String groupName); - void importJobs(List requestList); + void importJobs(@Valid @NotEmpty(message = "导入数据不能为空") List requestList); String exportJobs(Set jobIds); diff --git a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/JobServiceImpl.java b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/JobServiceImpl.java index 359710697..ac8e1ca9c 100644 --- a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/JobServiceImpl.java +++ b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/JobServiceImpl.java @@ -5,10 +5,8 @@ import cn.hutool.core.lang.Assert; import cn.hutool.core.util.HashUtil; import cn.hutool.core.util.StrUtil; import com.aizuda.snailjob.common.core.constant.SystemConstants; -import com.aizuda.snailjob.common.core.context.SpringContext; import com.aizuda.snailjob.common.core.enums.StatusEnum; import com.aizuda.snailjob.common.core.util.JsonUtil; -import com.aizuda.snailjob.common.core.util.StreamUtils; import com.aizuda.snailjob.server.common.WaitStrategy; import com.aizuda.snailjob.server.common.config.SystemProperties; import com.aizuda.snailjob.server.common.enums.JobTaskExecutorSceneEnum; @@ -21,14 +19,16 @@ import com.aizuda.snailjob.server.job.task.support.JobPrepareHandler; import com.aizuda.snailjob.server.job.task.support.JobTaskConverter; import com.aizuda.snailjob.server.job.task.support.cache.ResidentTaskCache; import com.aizuda.snailjob.server.web.model.base.PageResult; -import com.aizuda.snailjob.server.web.model.request.*; +import com.aizuda.snailjob.server.web.model.request.JobQueryVO; +import com.aizuda.snailjob.server.web.model.request.JobRequestVO; +import com.aizuda.snailjob.server.web.model.request.JobUpdateJobStatusRequestVO; +import com.aizuda.snailjob.server.web.model.request.UserSessionVO; import com.aizuda.snailjob.server.web.model.response.JobResponseVO; import com.aizuda.snailjob.server.web.service.JobService; import com.aizuda.snailjob.server.web.service.convert.JobConverter; import com.aizuda.snailjob.server.web.service.convert.JobResponseVOConverter; import com.aizuda.snailjob.server.web.util.UserSessionUtils; import com.aizuda.snailjob.template.datasource.access.AccessTemplate; -import com.aizuda.snailjob.template.datasource.access.ConfigAccess; import com.aizuda.snailjob.template.datasource.persistence.mapper.JobMapper; import com.aizuda.snailjob.template.datasource.persistence.po.GroupConfig; import com.aizuda.snailjob.template.datasource.persistence.po.Job; @@ -36,10 +36,10 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.springframework.aop.framework.AopContext; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.validation.annotation.Validated; import java.util.List; import java.util.Objects; @@ -54,6 +54,7 @@ import java.util.Set; @Service @Slf4j @RequiredArgsConstructor +@Validated public class JobServiceImpl implements JobService { private final SystemProperties systemProperties; diff --git a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/util/ImportUtils.java b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/util/ImportUtils.java index 5a8ccb098..a7369623b 100644 --- a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/util/ImportUtils.java +++ b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/util/ImportUtils.java @@ -1,21 +1,14 @@ package com.aizuda.snailjob.server.web.util; import cn.hutool.core.io.FileUtil; -import cn.hutool.core.lang.Assert; import com.aizuda.snailjob.common.core.exception.SnailJobCommonException; import com.aizuda.snailjob.common.core.util.JsonUtil; -import com.aizuda.snailjob.server.common.exception.SnailJobServerException; import com.fasterxml.jackson.databind.JsonNode; -import jakarta.validation.ConstraintViolation; -import jakarta.validation.Validation; -import jakarta.validation.Validator; -import jakarta.validation.ValidatorFactory; import org.jetbrains.annotations.NotNull; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; import java.util.List; -import java.util.Set; public class ImportUtils { @@ -30,17 +23,6 @@ public class ImportUtils { JsonNode node = JsonUtil.toJson(file.getBytes()); List requestList = JsonUtil.parseList(JsonUtil.toJsonString(node), clazz); - Assert.notEmpty(requestList, () -> new SnailJobServerException("导入数据不能为空")); - - // 校验参数是否合法 - requestList.forEach(vo -> { - ValidatorFactory vf = Validation.buildDefaultValidatorFactory(); - Validator validator = vf.getValidator(); - Set> rules = validator.validate(vo); - rules.forEach(rule -> { - throw new SnailJobCommonException(rule.getMessage()); - }); - }); return requestList; }