新增科目增加接口

This commit is contained in:
2026-09-22 20:43:33 +08:00
parent 91d86d4ea9
commit 748b9f751c
5 changed files with 36 additions and 4 deletions
+10 -1
View File
@@ -3,9 +3,10 @@ from Teachers.schema import *
from Teachers.database import *
from Teachers.model.tea_model import *
from Teachers.dao.tea_dao import *
from Teachers.schema.tea_request import TeaRequest,NewTeaRequest,NewTeaRequest1
from Teachers.schema.tea_request import TeaRequest,NewTeaRequest,NewTeaRequest1,SubRequest
from Teachers.schema.tea_response import TeaResponse
tea_api = APIRouter()
@tea_api.post('/tea',response_model=TeaResponse,summary='新增老师',description='输入新增的老师信息,除去姓名外可以为空')
@@ -43,4 +44,12 @@ def delete_other_tea_dao1(t:TeaRequest=Depends(),db=Depends(get_db)):
raise HTTPException(status_code=404,detail='没有找到符合条件的老师')
return{'code':200,'data':row1}
#新增科目
@tea_api.post('/subject',summary='新增科目',description='输入新增的科目')
def add_sub(t:SubRequest=Depends(),db=Depends(get_db)): #开启会话窗口
r = add_subject_dao(t.model_dump(),db=db)
if not r:
raise HTTPException(status_code=500,detail='科目已存在')
return TeaResponse(totals=len(r), data=r)
+19 -1
View File
@@ -1,4 +1,6 @@
from Teachers.model.tea_model import Tea
from sys import excepthook
from Teachers.model.tea_model import Tea,Sub
from datetime import datetime
#增加
@@ -122,3 +124,19 @@ def delete_other_tea_dao(t,db):
def add_subject_dao(t,db):
try:
t1 = db.query(Sub).filter(Sub.name == t.get('name')).first()
if t1:
print('科目已存在')
raise Exception('科目已存在')
s1 = Sub(**t)
db.add(s1)
db.commit()
return '添加成功'
except Exception as e:
db.rollback()
print('失败的原因',e)
return False
+1 -1
View File
@@ -15,7 +15,7 @@ Base.metadata.create_all(engine1)
if __name__ == "__main__":
import uvicorn
uvicorn.run('main:app', host='0.0.0.0', port=55000)
uvicorn.run('main:app', host='0.0.0.0', port=57000)
"""
IPv4 地址 . . . . . . . . . . . . : 192.168.1.51
子网掩码 . . . . . . . . . . . . : 255.255.255.0
+3
View File
@@ -43,3 +43,6 @@ class NewTeaRequest1(BaseModel):
work_experience: str | None = None
start_time: datetime | None = None
specialty: str | None = None
class SubRequest(BaseModel):
name: str | None = None
+3 -1
View File
@@ -12,8 +12,10 @@ app = FastAPI()
app.include_router(class_api)
Base.metadata.create_all(engine)
if __name__ =='__main__':
Base.metadata.create_all(engine)
import uvicorn
uvicorn.run('main:app',host='127.0.0.1',port=12345)