检查并获取最近执行时间

master
lzq 2025-12-24 10:49:11 +08:00
parent 10c52408b2
commit 2a7743db5a
1 changed files with 30 additions and 0 deletions

View File

@ -1,7 +1,9 @@
package com.njzscloud.common.sichen.controller; package com.njzscloud.common.sichen.controller;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.lang.Assert; import cn.hutool.core.lang.Assert;
import com.njzscloud.common.core.ex.ExceptionMsg;
import com.njzscloud.common.core.ex.Exceptions; import com.njzscloud.common.core.ex.Exceptions;
import com.njzscloud.common.core.utils.R; import com.njzscloud.common.core.utils.R;
import com.njzscloud.common.mp.support.PageParam; import com.njzscloud.common.mp.support.PageParam;
@ -11,6 +13,7 @@ import com.njzscloud.common.sichen.pojo.param.ModifyTaskParam;
import com.njzscloud.common.sichen.pojo.param.SearchTaskParam; import com.njzscloud.common.sichen.pojo.param.SearchTaskParam;
import com.njzscloud.common.sichen.pojo.param.SearchTaskResult; import com.njzscloud.common.sichen.pojo.param.SearchTaskResult;
import com.njzscloud.common.sichen.service.CombineStoreService; import com.njzscloud.common.sichen.service.CombineStoreService;
import com.njzscloud.common.sichen.support.CronExpression;
import com.njzscloud.common.sichen.support.TaskInfo; import com.njzscloud.common.sichen.support.TaskInfo;
import com.njzscloud.common.sichen.support.TaskStore; import com.njzscloud.common.sichen.support.TaskStore;
import com.njzscloud.common.sichen.util.TaskUtil; import com.njzscloud.common.sichen.util.TaskUtil;
@ -19,6 +22,9 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -96,6 +102,30 @@ public class TaskController {
} }
} }
/**
*
*/
@GetMapping("/check_expression")
public R<?> detail(@RequestParam("expression") String expression) {
CronExpression cronExpression;
try {
cronExpression = new CronExpression(expression);
} catch (ParseException e) {
return R.failed(ExceptionMsg.CLI_ERR_MSG, "表达式错误:{}", e.getMessage());
}
Date timePoint = new Date();
int i = 0;
ArrayList<String> list = new ArrayList<>();
while (i < 10) {
i++;
Date nextValidTimeAfter = cronExpression.getNextValidTimeAfter(timePoint);
String format = DateUtil.format(nextValidTimeAfter, "yyyy-MM-dd HH:mm:ss");
list.add(format);
timePoint = nextValidTimeAfter;
}
return R.success(list);
}
/** /**
* *
*/ */