锁定缴费校验失败时整单回滚,避免样本半成功落库;前端禁止删除锁定缴费样本,改码走更正编码。同步落地样本更正、采集微信通知、OA提及未读、细胞产品套餐与相关迁移文档。 Co-authored-by: Cursor <cursoragent@cursor.com>
44 lines
1.0 KiB
Python
44 lines
1.0 KiB
Python
"""定时任务模块"""
|
|
import logging
|
|
|
|
from apscheduler.schedulers.background import BackgroundScheduler
|
|
from apscheduler.triggers.cron import CronTrigger
|
|
|
|
logger = logging.getLogger(__name__)
|
|
scheduler = BackgroundScheduler()
|
|
|
|
|
|
def init_scheduled_tasks(get_db_session):
|
|
"""初始化定时任务。"""
|
|
if scheduler.running:
|
|
return
|
|
scheduler.start()
|
|
|
|
from app.services.basic_experiment_delivery_remind import run_delivery_remind_job
|
|
|
|
scheduler.add_job(
|
|
run_delivery_remind_job,
|
|
trigger=CronTrigger(hour=10, minute=0),
|
|
args=[get_db_session],
|
|
id="basic_experiment_delivery_remind",
|
|
replace_existing=True,
|
|
max_instances=1,
|
|
coalesce=True,
|
|
)
|
|
logger.info(
|
|
"定时任务调度器已启动:basic_experiment_delivery_remind @ 10:00 daily"
|
|
)
|
|
|
|
|
|
def shutdown_scheduler():
|
|
if scheduler.running:
|
|
scheduler.shutdown(wait=False)
|
|
logger.info("定时任务调度器已关闭")
|
|
|
|
|
|
__all__ = [
|
|
"scheduler",
|
|
"init_scheduled_tasks",
|
|
"shutdown_scheduler",
|
|
]
|