fix: 修复执行单次任务时会覆盖已启用任务的问题 #IBEKD2
This commit is contained in:
@@ -6,7 +6,9 @@ from apscheduler.jobstores.memory import MemoryJobStore
|
|||||||
from apscheduler.jobstores.redis import RedisJobStore
|
from apscheduler.jobstores.redis import RedisJobStore
|
||||||
from apscheduler.jobstores.sqlalchemy import SQLAlchemyJobStore
|
from apscheduler.jobstores.sqlalchemy import SQLAlchemyJobStore
|
||||||
from apscheduler.schedulers.asyncio import AsyncIOScheduler
|
from apscheduler.schedulers.asyncio import AsyncIOScheduler
|
||||||
|
from apscheduler.triggers.combining import OrTrigger
|
||||||
from apscheduler.triggers.cron import CronTrigger
|
from apscheduler.triggers.cron import CronTrigger
|
||||||
|
from apscheduler.triggers.date import DateTrigger
|
||||||
from asyncio import iscoroutinefunction
|
from asyncio import iscoroutinefunction
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
from sqlalchemy.engine import create_engine
|
from sqlalchemy.engine import create_engine
|
||||||
@@ -201,8 +203,7 @@ class SchedulerUtil:
|
|||||||
job_executor = 'default'
|
job_executor = 'default'
|
||||||
scheduler.add_job(
|
scheduler.add_job(
|
||||||
func=eval(job_info.invoke_target),
|
func=eval(job_info.invoke_target),
|
||||||
trigger='date',
|
trigger=OrTrigger(triggers=[DateTrigger(), MyCronTrigger.from_crontab(job_info.cron_expression)]),
|
||||||
run_date=datetime.now() + timedelta(seconds=1),
|
|
||||||
args=job_info.job_args.split(',') if job_info.job_args else None,
|
args=job_info.job_args.split(',') if job_info.job_args else None,
|
||||||
kwargs=json.loads(job_info.job_kwargs) if job_info.job_kwargs else None,
|
kwargs=json.loads(job_info.job_kwargs) if job_info.job_kwargs else None,
|
||||||
id=str(job_info.job_id),
|
id=str(job_info.job_id),
|
||||||
|
Reference in New Issue
Block a user