修改delete相关代码逻辑,新增README_students.md用来做模块解释。
This commit is contained in:
@@ -112,33 +112,45 @@ def update_student_dao( s , db):
|
||||
# 逻辑删除/软删除
|
||||
def delete_student_dao( s , db):
|
||||
try:
|
||||
if not any([s.get('sid')
|
||||
,s.get("student_name")
|
||||
,s.get("student_phone")
|
||||
,s.get("class_name")
|
||||
,s.get("job_open_time")
|
||||
,s.get("offer_issue_time")
|
||||
,s.get("company_name")
|
||||
,s.get("salary")
|
||||
]):
|
||||
raise HTTPException(status_code=400, detail="输入需要删除的学生信息,删除条件任选,但不可全为空。")
|
||||
q = db.query(Students).filter(Students.is_deleted == False)
|
||||
if s.get('sid'):
|
||||
q = q.filter(Students.sid == s.sid)
|
||||
q = q.filter(Students.sid == s.get("sid") )
|
||||
if s.get('student_name'):
|
||||
q = q.filter(Students.student_name == s.student_name)
|
||||
q = q.filter(Students.student_name == s.get("student_name") )
|
||||
if s.get("student_phone"):
|
||||
q = q.filter(Students.student_phone == s.student_phone)
|
||||
q = q.filter(Students.student_phone == s.get("student_phone") )
|
||||
if s.get('class_name'):
|
||||
q = q.filter(Students.class_name == s.class_name)
|
||||
q = q.filter(Students.class_name == s.get("class_name") )
|
||||
if s.get('job_open_time'):
|
||||
q = q.filter(Students.job_open_time == s.job_open_time)
|
||||
q = q.filter(Students.job_open_time == s.get("job_open_time") )
|
||||
if s.get('offer_issue_time'):
|
||||
q = q.filter(Students.offer_issue_time == s.offer_issue_time)
|
||||
q = q.filter(Students.offer_issue_time == s.get("offer_issue_time") )
|
||||
if s.get('company_name'):
|
||||
q = q.filter(Students.company_name == s.company_name)
|
||||
q = q.filter(Students.company_name == s.get("company_name") )
|
||||
if s.get('salary'):
|
||||
q = q.filter(Students.salary >= s.salary)
|
||||
q = q.filter(Students.salary >= s.get("salary") )
|
||||
s1_delete = q.all()
|
||||
if not s1_delete:
|
||||
raise HTTPException(status_code=404, detail="Student not found")
|
||||
raise HTTPException(status_code=404, detail="没有找到该学生。")
|
||||
for i in s1_delete:
|
||||
i.is_deleted = True
|
||||
i.deleted_date = datetime.now()
|
||||
s2_deleted =[{"删除的学生ID":i.sid,"删除的学生姓名":i.student_name,"删除的学生电话":i.student_phone}for i in s1_delete]
|
||||
s2_deleted =[{"sid":i.sid,"student_name":i.student_name,"student_phone":i.student_phone}for i in s1_delete]
|
||||
except HTTPException:
|
||||
raise
|
||||
except Exception:
|
||||
db.rollback()
|
||||
return False
|
||||
raise HTTPException(status_code=500, detail="Internal server error")
|
||||
else:
|
||||
db.commit()
|
||||
return s2_deleted
|
||||
|
||||
Reference in New Issue
Block a user