feat:(1.3.0-beta1): 调整定时任务和工作流手动调度入参
This commit is contained in:
		
							parent
							
								
									37c4adb370
								
							
						
					
					
						commit
						3129dcb0dc
					
				@ -3,10 +3,7 @@ package com.aizuda.snailjob.server.web.controller;
 | 
			
		||||
import com.aizuda.snailjob.common.core.annotation.OriginalControllerReturnValue;
 | 
			
		||||
import com.aizuda.snailjob.server.web.annotation.LoginRequired;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.base.PageResult;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.ExportJobVO;
 | 
			
		||||
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.JobStatusUpdateRequestVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.*;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.response.JobResponseVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.service.JobService;
 | 
			
		||||
import com.aizuda.snailjob.server.web.util.ExportUtils;
 | 
			
		||||
@ -96,16 +93,8 @@ public class JobController {
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/trigger")
 | 
			
		||||
    @LoginRequired
 | 
			
		||||
    public Boolean trigger(@RequestParam(value = "jobId") Long jobId,
 | 
			
		||||
                           @RequestParam(value = "tmpArgsStr", required = false) String tmpArgsStr) {
 | 
			
		||||
        return jobService.trigger(jobId, tmpArgsStr);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/trigger/{jobId}")
 | 
			
		||||
    @LoginRequired
 | 
			
		||||
    public Boolean trigger(@PathVariable("jobId") Long jobId) {
 | 
			
		||||
        return jobService.trigger(jobId, null);
 | 
			
		||||
    public Boolean trigger(@RequestBody @Validated JobTriggerVO jobTrigger) {
 | 
			
		||||
        return jobService.trigger(jobTrigger);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping(value = "/import", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
 | 
			
		||||
 | 
			
		||||
@ -5,10 +5,7 @@ import com.aizuda.snailjob.common.core.annotation.OriginalControllerReturnValue;
 | 
			
		||||
import com.aizuda.snailjob.server.web.annotation.LoginRequired;
 | 
			
		||||
import com.aizuda.snailjob.server.web.annotation.RoleEnum;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.base.PageResult;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.CheckDecisionVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.ExportWorkflowVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.WorkflowQueryVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.WorkflowRequestVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.*;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.response.WorkflowDetailResponseVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.response.WorkflowResponseVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.service.WorkflowService;
 | 
			
		||||
@ -74,17 +71,10 @@ public class WorkflowController {
 | 
			
		||||
        return workflowService.deleteByIds(ids);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/trigger/{id}")
 | 
			
		||||
    @LoginRequired(role = RoleEnum.USER)
 | 
			
		||||
    public Boolean trigger(@PathVariable("id") Long id) {
 | 
			
		||||
        return workflowService.trigger(id,null);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/trigger")
 | 
			
		||||
    @LoginRequired(role = RoleEnum.USER)
 | 
			
		||||
    public Boolean trigger(@RequestParam(value = "id") Long id,
 | 
			
		||||
                           @RequestParam(value = "tmpWfContext", required = false) String tmpWfContext) {
 | 
			
		||||
        return workflowService.trigger(id, tmpWfContext);
 | 
			
		||||
    public Boolean trigger(@RequestBody @Validated WorkflowTriggerVO triggerVO) {
 | 
			
		||||
        return workflowService.trigger(triggerVO);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/workflow-name/list")
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,17 @@
 | 
			
		||||
package com.aizuda.snailjob.server.web.model.request;
 | 
			
		||||
 | 
			
		||||
import jakarta.validation.constraints.NotBlank;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@Data
 | 
			
		||||
public class JobTriggerVO {
 | 
			
		||||
 | 
			
		||||
    @NotBlank(message = "jobId 不能为空")
 | 
			
		||||
    private Long jobId;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 临时任务参数
 | 
			
		||||
     */
 | 
			
		||||
    private String tmpArgsStr;
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,17 @@
 | 
			
		||||
package com.aizuda.snailjob.server.web.model.request;
 | 
			
		||||
 | 
			
		||||
import jakarta.validation.constraints.NotBlank;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@Data
 | 
			
		||||
public class WorkflowTriggerVO {
 | 
			
		||||
 | 
			
		||||
    @NotBlank(message = "workflowId 不能为空")
 | 
			
		||||
    private Long workflowId;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 临时工作流上下文
 | 
			
		||||
     */
 | 
			
		||||
    private String tmpWfContext;
 | 
			
		||||
}
 | 
			
		||||
@ -1,10 +1,7 @@
 | 
			
		||||
package com.aizuda.snailjob.server.web.service;
 | 
			
		||||
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.base.PageResult;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.ExportJobVO;
 | 
			
		||||
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.JobStatusUpdateRequestVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.*;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.response.JobResponseVO;
 | 
			
		||||
import jakarta.validation.Valid;
 | 
			
		||||
import jakarta.validation.constraints.NotEmpty;
 | 
			
		||||
@ -32,7 +29,7 @@ public interface JobService {
 | 
			
		||||
 | 
			
		||||
    List<JobResponseVO> getJobNameList(String keywords, Long jobId, String groupName);
 | 
			
		||||
 | 
			
		||||
    boolean trigger(Long jobId, String tmpArgsStr);
 | 
			
		||||
    boolean trigger(JobTriggerVO jobTrigger);
 | 
			
		||||
 | 
			
		||||
    List<JobResponseVO> getJobList(String groupName);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -3,10 +3,7 @@ package com.aizuda.snailjob.server.web.service;
 | 
			
		||||
import cn.hutool.core.lang.Pair;
 | 
			
		||||
import com.aizuda.snailjob.server.common.dto.DecisionConfig;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.base.PageResult;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.CheckDecisionVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.ExportWorkflowVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.WorkflowQueryVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.WorkflowRequestVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.request.*;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.response.WorkflowDetailResponseVO;
 | 
			
		||||
import com.aizuda.snailjob.server.web.model.response.WorkflowResponseVO;
 | 
			
		||||
import jakarta.validation.Valid;
 | 
			
		||||
@ -33,7 +30,7 @@ public interface WorkflowService {
 | 
			
		||||
 | 
			
		||||
    Boolean updateStatus(Long id);
 | 
			
		||||
 | 
			
		||||
    Boolean trigger(Long id, String tmpWfContext);
 | 
			
		||||
    Boolean trigger(WorkflowTriggerVO triggerVO);
 | 
			
		||||
 | 
			
		||||
    List<WorkflowResponseVO> getWorkflowNameList(String keywords, Long workflowId, String groupName);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -239,8 +239,8 @@ public class JobServiceImpl implements JobService {
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean trigger(Long jobId, String tmpArgsStr) {
 | 
			
		||||
        Job job = jobMapper.selectById(jobId);
 | 
			
		||||
    public boolean trigger(JobTriggerVO jobTrigger) {
 | 
			
		||||
        Job job = jobMapper.selectById(jobTrigger.getJobId());
 | 
			
		||||
        Assert.notNull(job, () -> new SnailJobServerException("job can not be null."));
 | 
			
		||||
 | 
			
		||||
        long count = accessTemplate.getGroupConfigAccess().count(new LambdaQueryWrapper<GroupConfig>()
 | 
			
		||||
@ -255,7 +255,9 @@ public class JobServiceImpl implements JobService {
 | 
			
		||||
        // 设置now表示立即执行
 | 
			
		||||
        jobTaskPrepare.setNextTriggerAt(DateUtils.toNowMilli());
 | 
			
		||||
        jobTaskPrepare.setTaskExecutorScene(JobTaskExecutorSceneEnum.MANUAL_JOB.getType());
 | 
			
		||||
        jobTaskPrepare.setTmpArgsStr(tmpArgsStr);
 | 
			
		||||
        if (StrUtil.isNotBlank(jobTrigger.getTmpArgsStr())){
 | 
			
		||||
            jobTaskPrepare.setTmpArgsStr(jobTrigger.getTmpArgsStr());
 | 
			
		||||
        }
 | 
			
		||||
        // 创建批次
 | 
			
		||||
        terminalJobPrepareHandler.handle(jobTaskPrepare);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -258,8 +258,8 @@ public class WorkflowServiceImpl implements WorkflowService {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public Boolean trigger(Long id, String tmpWfContext) {
 | 
			
		||||
        Workflow workflow = workflowMapper.selectById(id);
 | 
			
		||||
    public Boolean trigger(WorkflowTriggerVO triggerVO) {
 | 
			
		||||
        Workflow workflow = workflowMapper.selectById(triggerVO.getWorkflowId());
 | 
			
		||||
        Assert.notNull(workflow, () -> new SnailJobServerException("workflow can not be null."));
 | 
			
		||||
 | 
			
		||||
        long count = accessTemplate.getGroupConfigAccess().count(
 | 
			
		||||
@ -276,8 +276,8 @@ public class WorkflowServiceImpl implements WorkflowService {
 | 
			
		||||
        // 设置now表示立即执行
 | 
			
		||||
        prepareDTO.setNextTriggerAt(DateUtils.toNowMilli());
 | 
			
		||||
        prepareDTO.setTaskExecutorScene(JobTaskExecutorSceneEnum.MANUAL_WORKFLOW.getType());
 | 
			
		||||
        if (Objects.nonNull(tmpWfContext)){
 | 
			
		||||
            prepareDTO.setWfContext(tmpWfContext);
 | 
			
		||||
        if (StrUtil.isNotBlank(triggerVO.getTmpWfContext())){
 | 
			
		||||
            prepareDTO.setWfContext(triggerVO.getTmpWfContext());
 | 
			
		||||
        }
 | 
			
		||||
        terminalWorkflowPrepareHandler.handler(prepareDTO);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user