第三版_完整
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
# api/employ_api.py
|
||||
# 本文件定义 学生就业信息 的所有 API 路由(Controller 层)
|
||||
from datetime import date
|
||||
from typing import List
|
||||
|
||||
from fastapi import APIRouter,HTTPException
|
||||
|
||||
@@ -10,12 +10,10 @@ from sqlalchemy import func
|
||||
from starlette import status
|
||||
|
||||
from database import get_db
|
||||
from dao.users_dao import UserDAO
|
||||
from dao.statistics_dao import StatisticsDao
|
||||
from model.stu_model import StuInfo
|
||||
from scheme.statistics_scheme import StatsResponse, StuInfoAllExamAboveScore, FailingStudentItem, ClassExamAvgScoreItem, \
|
||||
TopSalaryStudentItem, StudentEmpDurationItem, ClassAvgEmpDurationItem, StudentAgeDetailItem
|
||||
from scheme.users import UserCreate, UserUpdate, UserResponse
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
|
||||
@@ -5,7 +5,6 @@ from sqlalchemy.orm import Session
|
||||
|
||||
from model.cls_mgmt_model import ClsMgmt
|
||||
from scheme.cls_mgmt_scheme import ClsMgmtResponse, ClsMgmtCreate
|
||||
from scheme.users import UserCreate, UserUpdate
|
||||
from typing import Optional, List
|
||||
|
||||
class ClsMgmtDAO:
|
||||
|
||||
@@ -2,15 +2,12 @@
|
||||
# 本文件封装对 所有相关表的 所有数据库操作(统计查询)
|
||||
from collections import defaultdict
|
||||
|
||||
from dns.entropy import between
|
||||
from sqlalchemy.orm import Session, joinedload
|
||||
from sqlalchemy import func, case, and_, join, asc, desc
|
||||
|
||||
from model import StudentEmployManage
|
||||
from model.stu_model import StuInfo
|
||||
from model.stu_score_model import StuScore
|
||||
from model.users import User
|
||||
from scheme.users import UserCreate, UserUpdate
|
||||
from typing import Optional, List, Dict
|
||||
from scheme.statistics_scheme import StatsResponse, ExamScoreItem, StuInfoAllExamAboveScore, FailingStudentItem, \
|
||||
ClassExamAvgScoreItem, TopSalaryStudentItem, StudentEmpDurationItem, ClassAvgEmpDurationItem, StudentAgeDetailItem
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
from sqlalchemy import and_
|
||||
from sqlalchemy.orm import Session
|
||||
from model.stu_score_model import StuScore
|
||||
# from scheme.stu_score_scheme import
|
||||
from typing import Optional, List
|
||||
|
||||
class StuScoreDAO:
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
# dao/teacher_dao.py
|
||||
# 本文件封装对 tes_info 表的所有数据库操作(增、删、改、查)
|
||||
from http.client import HTTPException
|
||||
from typing import List, Optional
|
||||
|
||||
from sqlalchemy import or_
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
|
||||
@@ -4,8 +4,7 @@
|
||||
from fastapi import FastAPI
|
||||
from fastapi.middleware.cors import CORSMiddleware
|
||||
|
||||
from database import engine, Base
|
||||
from api import users, statistics_api, stu_score_api, cls_mgmt_api, employ_api,stu_api, teacher_api # 导入 users 子路由
|
||||
from api import statistics_api, stu_score_api, cls_mgmt_api, employ_api,stu_api, teacher_api # 导入 users 子路由
|
||||
|
||||
# 1. 创建数据库表(如果表不存在)
|
||||
# Base.metadata.create_all 会扫描所有继承 Base 的模型,生成对应的 CREATE TABLE 语句
|
||||
@@ -29,8 +28,6 @@ app.add_middleware(
|
||||
)
|
||||
|
||||
# 4. 注册子路由
|
||||
# prefix 为路由前缀,所有用户接口都以 /api/users 开头
|
||||
app.include_router(users.router, prefix="/api/users", tags=["用户管理"])
|
||||
|
||||
app.include_router(statistics_api.router, prefix="/api/stats", tags=["统计分析"])
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
from sqlalchemy import Column, Integer, String, DateTime, Date, ForeignKey
|
||||
from sqlalchemy.orm import relationship
|
||||
from sqlalchemy.sql import func
|
||||
from database import Base
|
||||
|
||||
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
# import data
|
||||
from h11 import Data
|
||||
from pydantic import BaseModel, Field, ConfigDict,EmailStr
|
||||
from datetime import datetime, date
|
||||
from typing import Optional
|
||||
from pydantic import BaseModel, Field
|
||||
from datetime import date
|
||||
|
||||
# ---------- 请求模型 ----------
|
||||
class ClsMgmtCreate(BaseModel):
|
||||
|
||||
@@ -3,8 +3,7 @@ from datetime import date
|
||||
from decimal import Decimal
|
||||
from typing import List
|
||||
|
||||
from pydantic import Field, field_validator, model_validator, ValidationError, BaseModel
|
||||
from database import Base
|
||||
from pydantic import Field, model_validator, BaseModel
|
||||
|
||||
# ---------- -------------------------------请求模型 ------------------------------------------------
|
||||
class YearMonthDay(BaseModel):
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# scheme/statistics_scheme.py
|
||||
from pydantic import BaseModel, Field, EmailStr
|
||||
from datetime import datetime, date
|
||||
from datetime import date
|
||||
from typing import Optional, List
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from pydantic import BaseModel, Field, model_validator, field_validator, ConfigDict
|
||||
from datetime import date, datetime
|
||||
from datetime import date
|
||||
from typing import Optional
|
||||
|
||||
#id用cls_id来拼接生成,不用请求体过滤
|
||||
|
||||
@@ -2,10 +2,6 @@
|
||||
import decimal
|
||||
|
||||
from pydantic import BaseModel, Field
|
||||
# from datetime import datetime
|
||||
# from typing import Optional
|
||||
|
||||
|
||||
|
||||
# ---------- 请求模型 ----------
|
||||
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
#老师表请求体模型
|
||||
from http.client import HTTPException
|
||||
from typing import Optional
|
||||
|
||||
from fastapi.openapi.utils import status_code_ranges
|
||||
from pydantic import Field, BaseModel, field_validator
|
||||
from database import Base # Base 在 database.py 中
|
||||
|
||||
#添加教师信息请求体
|
||||
class TeacherAdd(BaseModel):
|
||||
|
||||
Reference in New Issue
Block a user