35 lines
1.2 KiB
Python
35 lines
1.2 KiB
Python
# ===========================================
|
|
# 班级操行分管理系统 - 后端服务
|
|
#
|
|
# 开发者: Canglan
|
|
# 联系方式: admin@sea-studio.top
|
|
# 版权归属: Sea Network Technology Studio
|
|
# 许可证: MIT License
|
|
#
|
|
# 版权所有 © Sea Network Technology Studio
|
|
# ===========================================
|
|
|
|
from typing import Optional, Dict, Any, List
|
|
from utils.database import execute_one, execute_query, execute_insert, execute_update
|
|
|
|
|
|
class ClassModel:
|
|
"""班级数据模型"""
|
|
|
|
@staticmethod
|
|
async def get_by_id(class_id: int) -> Optional[Dict[str, Any]]:
|
|
sql = "SELECT * FROM classes WHERE class_id = %s"
|
|
return await execute_one(sql, (class_id,))
|
|
|
|
@staticmethod
|
|
async def get_all() -> List[Dict[str, Any]]:
|
|
sql = "SELECT * FROM classes ORDER BY class_id"
|
|
return await execute_query(sql)
|
|
|
|
@staticmethod
|
|
async def create(class_name: str, grade: str = None, academic_year: str = None) -> int:
|
|
sql = """
|
|
INSERT INTO classes (class_name, grade, academic_year)
|
|
VALUES (%s, %s, %s)
|
|
"""
|
|
return await execute_insert(sql, (class_name, grade, academic_year)) |