Files
2026-09-18 16:53:21 +08:00

74 lines
2.1 KiB
Python

# dao/__init__.py
# 聚合入口:统一导出各模块数据访问对象(与 model/、schemas/ 的写法保持一致)
#
# 导入顺序按依赖关系排列(先被依赖的放前面):exceptions / pagination 无依赖,
# teacher → advisor → cls_mgmt → stu → 成绩、就业 → 统计。
from dao.exceptions import ConflictError, DaoError, NotFoundError
from dao.pagination import paginate
from dao.teacher_dao import (
assert_teacher_alive,
list_teachers,
create_teacher,
update_teacher,
soft_delete_teacher,
)
from dao.advisor_dao import (
assert_advisor_alive,
list_advisors,
create_advisor,
update_advisor,
soft_delete_advisor,
)
from dao.cls_mgmt_dao import (
assert_cls_alive,
list_classes,
create_class,
update_class,
soft_delete_class,
)
from dao.stu_dao import (
assert_stu_alive,
list_students,
create_student,
update_student,
soft_delete_student,
)
from dao.stu_score_dao import (
compute_score_level,
assert_score_alive,
list_scores,
list_scores_by_student,
create_score,
update_score,
soft_delete_score,
)
from dao.employ_dao import (
assert_employ_alive,
list_employ,
create_employ,
update_employ,
soft_delete_employ,
)
from dao import statistics_dao
__all__ = [
# 异常与工具
"DaoError", "NotFoundError", "ConflictError", "paginate",
# 教师
"assert_teacher_alive", "list_teachers", "create_teacher", "update_teacher", "soft_delete_teacher",
# 顾问
"assert_advisor_alive", "list_advisors", "create_advisor", "update_advisor", "soft_delete_advisor",
# 班级
"assert_cls_alive", "list_classes", "create_class", "update_class", "soft_delete_class",
# 学生
"assert_stu_alive", "list_students", "create_student", "update_student", "soft_delete_student",
# 成绩
"compute_score_level", "assert_score_alive", "list_scores", "list_scores_by_student",
"create_score", "update_score", "soft_delete_score",
# 就业
"assert_employ_alive", "list_employ", "create_employ", "update_employ", "soft_delete_employ",
# 统计
"statistics_dao",
]