zju 0614 v2 with background

This commit is contained in:
Beast
2026-06-14 09:21:27 +08:00
parent 094e8c193b
commit 19d63355a0
5 changed files with 184 additions and 53 deletions

View File

@ -3,6 +3,8 @@
import logging
from datetime import datetime, timezone, timedelta
TZ_BEIJING = timezone(timedelta(hours=8))
import requests
logger = logging.getLogger(__name__)
@ -41,9 +43,13 @@ class MemosClient:
return self._user_id
def list_memos(self, days=1, page_size=100):
"""Fetch memos from the last N days via Connect RPC."""
"""Fetch memos from the last N days (Beijing time reference) via Connect RPC."""
user = self.get_user_id()
since = (datetime.now(timezone.utc) - timedelta(days=days)).isoformat()
# Use Beijing time as reference for "last N days"
now_bj = datetime.now(TZ_BEIJING)
since_bj = now_bj - timedelta(days=days)
since_utc = since_bj.astimezone(timezone.utc)
since = since_utc.isoformat()
# Connect RPC uses POST with JSON body
payload = {
@ -62,9 +68,8 @@ class MemosClient:
memos = data.get("memos", [])
logger.info("Memos API OK | fetched %d memos", len(memos))
# Filter by time client-side (Connect RPC filter might not work as expected)
# Filter by time client-side (Beijing time reference)
results = []
since_dt = datetime.now(timezone.utc) - timedelta(days=days)
for m in memos:
created = m.get("createTime", "")
try:
@ -72,7 +77,7 @@ class MemosClient:
except (ValueError, AttributeError):
created_dt = datetime.now(timezone.utc)
if created_dt < since_dt:
if created_dt < since_utc:
continue
results.append({