db_auto_plan.py 949 B

1234567891011121314151617181920212223242526
  1. """地磅计划按月自动生成定时任务"""
  2. import logging
  3. from app.core.database import SessionLocal
  4. from app.services.db.auto_generate_plans import run_auto_generate_monthly_plans
  5. logger = logging.getLogger(__name__)
  6. def auto_generate_monthly_plans_job():
  7. """每月 1 日凌晨执行:按上月计划模板生成本月计划。"""
  8. db = SessionLocal()
  9. try:
  10. logger.info("======== 开始执行地磅计划按月自动生成任务 ========")
  11. result = run_auto_generate_monthly_plans(db, force=False)
  12. logger.info(
  13. "======== 地磅计划按月自动生成任务完成:created=%s, month=%s, skipped=%s ========",
  14. result.get("created_count"),
  15. result.get("current_month"),
  16. result.get("skipped_reason"),
  17. )
  18. except Exception:
  19. db.rollback()
  20. logger.exception("地磅计划按月自动生成任务异常")
  21. finally:
  22. db.close()