From c996fe00f058d7e782242276a7b51a8a3efeb9a0 Mon Sep 17 00:00:00 2001 From: geyuan <2732801331@qq.com> Date: Mon, 21 Sep 2026 21:48:36 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E6=94=B9=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Teachers/dao/tea_dao.py | 35 +++++++++++++++++++++++----------- Teachers/database.py | 2 +- Teachers/model/tea_model.py | 27 ++++++++++++++++++-------- Teachers/schema/tea_request.py | 29 ++++++++++++++++++++-------- 4 files changed, 65 insertions(+), 28 deletions(-) diff --git a/Teachers/dao/tea_dao.py b/Teachers/dao/tea_dao.py index 91d4d97..9b39829 100644 --- a/Teachers/dao/tea_dao.py +++ b/Teachers/dao/tea_dao.py @@ -16,7 +16,7 @@ def add_tea_dao(t,db): #更新 def update_tea_dao(id,update_data,db): try: - rows = db.query(Tea).filter(Tea.tea_id == id + rows = db.query(Tea).filter(Tea.id == id ,Tea.is_delete == False).update(update_data) except: db.rollback() @@ -28,23 +28,36 @@ 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.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('id'): + query = query.filter(Tea.id == t.get('id') ) + if t.get('name'): + query = query.filter(Tea.name == t.get('name') ) + if t.get("sex"): + query = query.filter(Tea.sex == t.get('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') ) + if t.get('sub'): + query = query.filter(Tea.sub == t.get('sub') ) + if t.get('home_place'): + query = query.filter(Tea.home_place == t.get('home_place') ) + if t.get('specialty'): + query = query.filter(Tea.specialty == t.get('specialty') ) + if t.get('start_time'): + query = query.filter(Tea.start_time == t.get('start_time') ) + if t. get('work_experience'): + query = query.filter(Tea.work_experience == t.get('work_experience') ) + if t.get('education'): + query = query.filter(Tea.education == t.get('education') ) + if t.get('college'): + query = query.filter(Tea.collage == t.get('college') ) 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] + return [{'id':i.id,'name':i.name,'class_id':i.class_id,'sub':i.sub,'tea.sex':i.sex,'home_place':i.home_place + ,'specialty':i.specialty,'start_time':i.start_time,'work_experience':i.work_experience,'college':i.college} for i in r] #删除 def delete_tea_dao(id,db): try: - row = db.query(Tea).filter(Tea.tea_id == id + row = db.query(Tea).filter(Tea.id == id ,Tea.is_delete == False ).update({'is_delete':True,'delete_time':datetime.now()}) except: diff --git a/Teachers/database.py b/Teachers/database.py index 84a5fe0..07ef505 100644 --- a/Teachers/database.py +++ b/Teachers/database.py @@ -1,7 +1,7 @@ from sqlalchemy import * from sqlalchemy.orm import sessionmaker,declarative_base -db_tea = 'mysql+pymysql://root:123456@127.0.0.1:3306/ai0824?charset=utf8mb4' +db_tea = 'mysql+pymysql://root:123456@127.0.0.1:3306/student_manage_system?charset=utf8mb4' engine1 = create_engine(db_tea) Base = declarative_base() diff --git a/Teachers/model/tea_model.py b/Teachers/model/tea_model.py index 6e956ef..08b89f6 100644 --- a/Teachers/model/tea_model.py +++ b/Teachers/model/tea_model.py @@ -8,23 +8,34 @@ class Gender(str,enum.Enum): f = '女' class Tea(Base): - __tablename__ = 'teachers_info' - tea_id = Column(Integer + __tablename__ = 'teachers' + id = Column(Integer , primary_key=True ,nullable=False ,autoincrement=True - ,comment='老师id') - tea_name = Column(String(50) + ,comment='id') + name = Column(String(50) ,nullable=False - ,comment='老师姓名') - tea_sex = Column(Enum(Gender),default='未知' - ,comment='老师性别') + ,comment='姓名') + sex = Column(Enum(Gender),default='未知' + ,comment='性别') class_id = Column(Integer ,nullable=False ,comment='班级id') - class_sub = Column(String(50) + sub = Column(String(50) ,nullable=False ,comment='教学科目') + home_place = Column(String(50) + ,comment='家乡') + specialty = Column(String(50) + ,comment='专业') + start_time = Column(DateTime,comment='入职时间') + work_experience = Column(String(50) + ,comment='工作经验') + education = Column(String(50) + ,comment='学历') + collage = Column(String(50) + ,comment='毕业院校') create_date = Column(DateTime ,default=datetime.now ,comment='创建时间') diff --git a/Teachers/schema/tea_request.py b/Teachers/schema/tea_request.py index d89847c..2a7b468 100644 --- a/Teachers/schema/tea_request.py +++ b/Teachers/schema/tea_request.py @@ -3,16 +3,29 @@ from Teachers.model.tea_model import * #查询使用请求体 class TeaRequest(BaseModel): - tea_id: int|None = None - tea_name: str|None = None - tea_sex: Gender|None = None + id: int|None = None + name: str|None = None + sex: Gender|None = None class_id: int | None = None - class_sub: str|None = None + sub: str|None = None + home_place: str|None = None + collage: str|None = None + education: str|None = None + work_experience: str|None = None + start_time: str|None = None + Speciality: str|None = None + #更新、新增使用请求体(无法覆盖) class NewTeaRequest(BaseModel): - tea_name: str - tea_sex: Gender - class_id: int | None - class_sub: str|None + name: str | None = None + sex: Gender | None = None + class_id: int | None = None + sub: str | None = None + home_place: str | None = None + collage: str | None = None + education: str | None = None + work_experience: str | None = None + start_time: str | None = None + Speciality: str | None = None