mirror of
https://github.com/Cccc-owo/CheckInApp.git
synced 2026-06-17 05:56:29 +00:00
feat: remove useless scheduler config
This commit is contained in:
@@ -45,3 +45,13 @@ CHROME_BINARY_PATH=
|
||||
# 推荐留空,让 Selenium Manager 自动管理 ChromeDriver 版本
|
||||
CHROMEDRIVER_PATH=
|
||||
|
||||
# ==================== 定时任务配置 ====================
|
||||
# 注意:每个任务的打卡时间由任务自身的 cron_expression 字段控制
|
||||
# 这里只配置全局的后台任务间隔
|
||||
|
||||
# Token 有效性检查间隔(分钟)
|
||||
TOKEN_CHECK_INTERVAL_MINUTES=30
|
||||
|
||||
# 会话数据清理间隔(小时)
|
||||
SESSION_CLEANUP_INTERVAL_HOURS=24
|
||||
|
||||
|
||||
@@ -188,15 +188,13 @@ DATABASE_URL=sqlite:///./data/checkin.db
|
||||
# CORS 允许的域名
|
||||
CORS_ORIGINS=http://localhost:3000,http://localhost:5173
|
||||
|
||||
# 定时打卡时间
|
||||
CHECKIN_SCHEDULE_HOUR=20
|
||||
CHECKIN_SCHEDULE_MINUTE=0
|
||||
|
||||
# Token 过期检查间隔(分钟)
|
||||
TOKEN_CHECK_INTERVAL_MINUTES=30
|
||||
|
||||
# 会话文件清理间隔(小时)
|
||||
SESSION_CLEANUP_INTERVAL_HOURS=24
|
||||
|
||||
# 注意:每个任务的打卡时间由任务的 cron_expression 字段控制
|
||||
```
|
||||
|
||||
### 邮件配置 (`config.ini`)
|
||||
@@ -597,9 +595,13 @@ DATABASE_URL=sqlite:///./data/checkin.db
|
||||
# CORS 允许的域名
|
||||
CORS_ORIGINS=http://localhost:3000,http://localhost:5173
|
||||
|
||||
# 定时打卡时间
|
||||
CHECKIN_SCHEDULE_HOUR=20
|
||||
CHECKIN_SCHEDULE_MINUTE=0
|
||||
# Token 过期检查间隔(分钟)
|
||||
TOKEN_CHECK_INTERVAL_MINUTES=30
|
||||
|
||||
# 会话文件清理间隔(小时)
|
||||
SESSION_CLEANUP_INTERVAL_HOURS=24
|
||||
|
||||
# 注意:每个任务的打卡时间由任务的 cron_expression 字段控制
|
||||
```
|
||||
|
||||
### 邮件配置 (`config.ini`)
|
||||
|
||||
+3
-3
@@ -142,13 +142,13 @@ senderpassword = your-password
|
||||
|
||||
### 定时任务配置
|
||||
|
||||
在 `backend/config.py` 中配置:
|
||||
在 `.env` 文件中配置(或在 `backend/config.py` 中设置默认值):
|
||||
|
||||
- `CHECKIN_SCHEDULE_HOUR`: 定时打卡小时(默认 20)
|
||||
- `CHECKIN_SCHEDULE_MINUTE`: 定时打卡分钟(默认 0)
|
||||
- `TOKEN_CHECK_INTERVAL_MINUTES`: Token 检查间隔(默认 30 分钟)
|
||||
- `SESSION_CLEANUP_INTERVAL_HOURS`: 会话清理间隔(默认 24 小时)
|
||||
|
||||
**注意**:每个任务的打卡时间由任务自身的 `cron_expression` 字段控制(支持标准 Crontab 表达式)。
|
||||
|
||||
## 🔐 认证流程
|
||||
|
||||
1. 用户输入 Signature 并请求二维码
|
||||
|
||||
+4
-6
@@ -29,7 +29,7 @@ class Settings(BaseSettings):
|
||||
DATABASE_URL: str = f"sqlite:///{BASE_DIR}/data/checkin.db"
|
||||
|
||||
# CORS 配置(从环境变量读取,用逗号分隔)
|
||||
CORS_ORIGINS: str = "http://localhost:5173,http://localhost:3000"
|
||||
CORS_ORIGINS: str = "http://localhost:3000"
|
||||
|
||||
@property
|
||||
def cors_origins_list(self) -> List[str]:
|
||||
@@ -51,11 +51,9 @@ class Settings(BaseSettings):
|
||||
SMTP_SENDER_PASSWORD: str = ""
|
||||
SMTP_USE_SSL: bool = True
|
||||
|
||||
# 定时任务配置
|
||||
CHECKIN_SCHEDULE_HOUR: int = 20 # 20:00
|
||||
CHECKIN_SCHEDULE_MINUTE: int = 0
|
||||
TOKEN_CHECK_INTERVAL_MINUTES: int = 30
|
||||
SESSION_CLEANUP_INTERVAL_HOURS: int = 24
|
||||
# 定时任务配置(可通过环境变量配置)
|
||||
TOKEN_CHECK_INTERVAL_MINUTES: int = 30 # Token 检查间隔(分钟)
|
||||
SESSION_CLEANUP_INTERVAL_HOURS: int = 24 # 会话清理间隔(小时)
|
||||
|
||||
# Selenium / Chrome 配置(从 .env 读取)
|
||||
CHROME_BINARY_PATH: str = ""
|
||||
|
||||
@@ -294,21 +294,6 @@ def start_scheduler():
|
||||
# 创建后台调度器
|
||||
scheduler = BackgroundScheduler(timezone="Asia/Shanghai")
|
||||
|
||||
# 添加定时打卡任务(每天指定时间)
|
||||
scheduler.add_job(
|
||||
scheduled_check_in,
|
||||
trigger=CronTrigger(
|
||||
hour=settings.CHECKIN_SCHEDULE_HOUR,
|
||||
minute=settings.CHECKIN_SCHEDULE_MINUTE
|
||||
),
|
||||
id="scheduled_check_in",
|
||||
name="定时打卡任务",
|
||||
replace_existing=True
|
||||
)
|
||||
logger.info(
|
||||
f"已添加定时打卡任务: 每天 {settings.CHECKIN_SCHEDULE_HOUR:02d}:{settings.CHECKIN_SCHEDULE_MINUTE:02d}"
|
||||
)
|
||||
|
||||
# 添加 Token 过期检查任务(每隔指定分钟)
|
||||
scheduler.add_job(
|
||||
check_token_expiration,
|
||||
|
||||
Reference in New Issue
Block a user