|
@@ -2,9 +2,9 @@ from typing import List, Optional
|
|
|
|
|
|
from pydantic import BaseModel
|
|
|
|
|
|
+from app.schemas.cron_expression import CronExpression
|
|
|
+
|
|
|
class JobInfoBase(BaseModel):
|
|
|
- # 任务执行CRON
|
|
|
- job_cron: str
|
|
|
# 任务描述
|
|
|
job_desc: str
|
|
|
# 执行器路由策略
|
|
@@ -33,10 +33,20 @@ class JobInfoBase(BaseModel):
|
|
|
|
|
|
|
|
|
class JobInfoCreate(JobInfoBase):
|
|
|
+ # 周期表达式
|
|
|
+ cron_expression: CronExpression
|
|
|
class Config:
|
|
|
schema_extra = {
|
|
|
"example": {
|
|
|
- "job_cron": "0 0/2 * * * ?",
|
|
|
+ "cron_expression": {
|
|
|
+ "cron_select_type": 3,
|
|
|
+ "cron_expression": "",
|
|
|
+ "minute": 0,
|
|
|
+ "hour": 0,
|
|
|
+ "day": 1,
|
|
|
+ "week": 3,
|
|
|
+ "month": 2,
|
|
|
+ },
|
|
|
"job_desc": "mysql-mysql同步",
|
|
|
"executor_route_strategy": "FIRST",
|
|
|
"executor_handler": "",
|
|
@@ -53,12 +63,14 @@ class JobInfoCreate(JobInfoBase):
|
|
|
}
|
|
|
|
|
|
class JobInfoUpdate(JobInfoBase):
|
|
|
+ # 运行周期
|
|
|
+ job_cron: str
|
|
|
# 调度状态: 0-停止 1-运行
|
|
|
trigger_status: int
|
|
|
class Config:
|
|
|
schema_extra = {
|
|
|
"example": {
|
|
|
- "job_cron": "0 0/2 * * * ?",
|
|
|
+ "job_cron": "0 0 1 1/2 ?",
|
|
|
"job_desc": "mysql-mysql同步",
|
|
|
"executor_route_strategy": "FIRST",
|
|
|
"executor_handler": "",
|
|
@@ -95,6 +107,8 @@ class JobInfo(JobInfoBase):
|
|
|
job_json: str
|
|
|
# 最近一次执行状态
|
|
|
last_handle_code: int
|
|
|
+ # 运行周期
|
|
|
+ job_cron: str
|
|
|
|
|
|
class Config:
|
|
|
orm_mode = True
|