mirror of
https://github.com/stardrophere/InsightRadar.git
synced 2026-06-05 23:56:36 +08:00
optimize+注释
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
# 推送设置 API:管理用户的推送时间表和推送渠道
|
||||
# 关键约束:同一用户两条推送时间间隔至少 30 分钟
|
||||
from datetime import time as dt_time
|
||||
from typing import List
|
||||
|
||||
@@ -73,6 +74,7 @@ def _check_min_gap(
|
||||
existing = query.all()
|
||||
new_minutes = _time_to_minutes(new_time)
|
||||
|
||||
# 考虑跨午夜情况:如 23:50 与 00:10 实际只差 20 分钟
|
||||
for s in existing:
|
||||
old_minutes = _time_to_minutes(s.delivery_time)
|
||||
diff = abs(new_minutes - old_minutes)
|
||||
@@ -146,7 +148,7 @@ def create_delivery_schedule(
|
||||
_ensure_self_access(user_id, current_user)
|
||||
|
||||
parsed_time = _parse_time(payload.delivery_time)
|
||||
_check_min_gap(db, user_id, parsed_time)
|
||||
_check_min_gap(db, user_id, parsed_time) # 校验与已有时间间隔
|
||||
db_obj = UserDeliverySchedule(
|
||||
user_id=user_id,
|
||||
delivery_time=parsed_time,
|
||||
|
||||
Reference in New Issue
Block a user