改掉一些报错

This commit is contained in:
2026-09-21 19:36:29 +08:00
parent b28430257c
commit b9134b6ef1
6 changed files with 46 additions and 25 deletions
+12
View File
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DataSourceManagerImpl" format="xml" multifile-model="true">
<data-source source="LOCAL" name="@localhost" uuid="f010600d-8f20-492b-bab2-be2a925ffc75">
<driver-ref>mysql.8</driver-ref>
<synchronize>true</synchronize>
<jdbc-driver>com.mysql.cj.jdbc.Driver</jdbc-driver>
<jdbc-url>jdbc:mysql://localhost:3306</jdbc-url>
<working-dir>$ProjectFileDir$</working-dir>
</data-source>
</component>
</project>
+10 -10
View File
@@ -3,32 +3,32 @@ 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
from Teachers.schema.tea_request import TeaRequest,NewTeaRequest
from Teachers.schema.tea_response import TeaResponse
tea_api = APIRouter(tags=['老师相关接口'])
@tea_api.post('/tea',response_model=TeaResponse)
@tea_api.post('/tea',response_model=TeaResponse,summary='新增老师',description='输入新增的老师信息,除去姓名外可以为空')
def add_tea(tea: TeaRequest,db=Depends(get_db)):
r = add_tea_dao(tea.model_dump(),db)
if not r:
raise HTTPException(status_code=500,detail='添加失败!')
return TeaResponse(totals=1,date=tea.model_dump())
@tea_api.get('/tea',response_model=TeaResponse)
def get_tea(t:TeaRequest,db=Depends(get_db)): #开启会话窗口
r = get_tea_dao(t,db=db)
return TeaResponse(totals=1,data=tea.model_dump())
@tea_api.get('/tea',response_model=TeaResponse,summary='查询老师',description='任意选择输入的信息数量,不输入则查询全部老师')
def get_tea(t:TeaRequest=Depends(),db=Depends(get_db)): #开启会话窗口
r = get_tea_dao(t.model_dump(),db=db)
if not r:
raise HTTPException(status_code=404,detail='老师不存在')
return TeaResponse(totals=len(r),date=r)
@tea_api.delete('tea/{id}')
return TeaResponse(totals=len(r), data=r)
@tea_api.delete('/tea/{id}',summary='删除老师',description='输入删除的老师id')
def delete_tea(id:int|None,db=Depends(get_db)):
r = delete_tea_dao(id,db)
if not r:
raise HTTPException(status_code=500,detail='删除失败!')
return {'detail':'删除成功!'}
@tea_api.put('tea/{id}')
def update_tea(id:int,tea:TeaRequest,db=Depends(get_db)):
@tea_api.put('/tea/{id}',summary='修改老师信息',description='输入更改的信息,老师的姓名和性别不能为空,其余可以为空')
def update_tea(id:int,tea:NewTeaRequest,db=Depends(get_db)):
t = tea.model_dump(exclude_unset= True)
r = update_tea_dao(id=id,update_data=t,db=db)
if not r:
+11 -11
View File
@@ -28,16 +28,16 @@ def update_tea_dao(id,update_data,db):
#查询
def get_tea_dao(t,db):
query = db.query(Tea).filter(Tea.is_delete == False)
if t.tea_id:
query = query.filter(Tea.tea_id == t.tea_id)
if t.tea_name:
query = query.filter(Tea.tea_name == t.tea_name)
if t.tea_sex:
query = query.filter(Tea.tea_sex == t.tea_sex)
if t.claa_id:
query = query.filter(Tea.class_id == t.claa_id)
if t.class_sub:
query = query.filter(Tea.class_sub == t.class_sub)
if t.get('tea_id'):
query = query.filter(Tea.tea_id == t.get('tea_id') )
if t.get('tea_name'):
query = query.filter(Tea.tea_name == t.get('tea_name') )
if t.get("tea_sex"):
query = query.filter(Tea.tea_sex == t.get('tea_sex') )
if t.get('class_id'):
query = query.filter(Tea.class_id == t.get('claa_id') )
if t.get('class_sub'):
query = query.filter(Tea.class_sub == t.get('class_sub') )
r = query.all()
return [{'tea_id':i.tea_id,'tea_name':i.tea_name,'class_id':i.class_id,'class_sub':i.class_sub,'tea.sex':i.tea_sex} for i in r]
@@ -50,7 +50,7 @@ def delete_tea_dao(id,db):
except:
db.rollback()
row = 0
return row
return
else:
db.commit()
return row
+1 -1
View File
@@ -8,7 +8,7 @@ class Gender(str,enum.Enum):
f = '女'
class Tea(Base):
__tablename__ = 'order_info_tea'
__tablename__ = 'teachers_info'
tea_id = Column(Integer
, primary_key=True
,nullable=False
+9 -1
View File
@@ -1,10 +1,18 @@
from pydantic import BaseModel
from Teachers.model.tea_model import *
#查询使用请求体
class TeaRequest(BaseModel):
class_id: int|None = None
tea_id: int|None = None
tea_name: str|None = None
tea_sex: Gender|None = None
class_id: int | None = None
class_sub: str|None = None
#更新、新增使用请求体(无法覆盖)
class NewTeaRequest(BaseModel):
tea_name: str
tea_sex: Gender
class_id: int | None
class_sub: str|None
+2 -1
View File
@@ -1,7 +1,8 @@
from pydantic import BaseModel
class TeaResponse(BaseModel):
code: int = 200
detail: str = 'OK'
totals:int = 0
date: str |dict|tuple|list
data: str |dict|tuple|list