feat: 第一次上传

This commit is contained in:
2025-12-14 22:21:03 +08:00
commit 366ab0b2e8
19 changed files with 1008 additions and 0 deletions

28
db/init_db.py Normal file
View File

@@ -0,0 +1,28 @@
import sqlite3
from config import DB_PATH
def init_db():
conn = sqlite3.connect(DB_PATH)
cur = conn.cursor()
cur.execute(
"""
CREATE TABLE IF NOT EXISTS student (
token TEXT PRIMARY KEY,
student_id TEXT,
student_number TEXT,
student_name TEXT,
student_sex TEXT,
dept_name TEXT,
college_name TEXT,
professional_name TEXT,
school_name TEXT,
raw_json TEXT,
updated_at INTEGER
)
"""
)
conn.commit()
conn.close()

61
db/student.py Normal file
View File

@@ -0,0 +1,61 @@
import sqlite3
import json
import time
from config import DB_PATH
def get_student_by_token(token: str):
conn = sqlite3.connect(DB_PATH)
cur = conn.cursor()
cur.execute(
"SELECT raw_json FROM student WHERE token = ?",
(token,),
)
row = cur.fetchone()
conn.close()
if not row:
return None
return json.loads(row[0])
def save_student(token: str, student: dict):
conn = sqlite3.connect(DB_PATH)
cur = conn.cursor()
cur.execute(
"""
INSERT OR REPLACE INTO student (
token,
student_id,
student_number,
student_name,
student_sex,
dept_name,
college_name,
professional_name,
school_name,
raw_json,
updated_at
)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
""",
(
token,
student.get("id"),
student.get("studentNumber"),
student.get("studentName"),
student.get("studentSex"),
student.get("deptName"),
student.get("collegeName"),
student.get("professionalName"),
student.get("schoolName"),
json.dumps(student, ensure_ascii=False),
int(time.time()),
),
)
conn.commit()
conn.close()