Files
stu_teacher/api/__pycache__/students.cpython-310.pyc
T

48 lines
4.8 KiB
Plaintext
Raw Normal View History

2026-09-21 23:17:51 +08:00
o
Û!±j(ã@szddlmZddlmZmZmZmZddlmZddl m
Z
m Z m Z ddl
mZddlmZddlmZddlmZmZmZmZeƒZd ed
efd d „Zd
ed ed
efdd„Zejdedd�eeƒee ddƒƒfded
edefdd„ƒZejdedd�edddd�edddd d!�ed"d#d$�ed"d%d$�ed"d&d$�ed"d'd$�ed"d(d$�ed"d)d$�eeƒee
ƒf
d*ed+ed,eed-ee d.eed/ee d0ee d1ee d
edefd2d3„ƒZ!ejd4ed5d�ed6dd7d�eeƒee
ƒfd,ed
edefd8d9„ƒZ"ej#d:ed;d�ed6dd<d�eeƒee ddƒƒfd=ed,ed
edefd>d?„ƒZ$ej%d@dAdBdC�ed6ddDd�eeƒee ddƒƒfd,ed
edefdEdF„ƒZ&d"S)Gé)ÚOptional)Ú APIRouterÚDependsÚ
HTTPExceptionÚQuery)ÚSession)Úget_current_userÚ
require_rolesÚget_teacher_class_ids)Ú
StudentDAO)Úget_db)ÚUser)Ú
StudentAddÚ
StudentUpdateÚStudentResponseÚStudentListResponseÚuserÚreturncCs|jdkr |j|jkSdS)u'学生角色å�ªèƒ½è¯»å�–自己的信æ�¯ÚstudentT)ÚroleÚstu_id)rr©rúSC:\Users\Windows\WorkBuddy\2026-09-21-19-29-22\walin_student_system\api\students.pyÚ_can_read_students
 rÚdbcCs.|jdkrdS|jdkr|jt||jƒvSdS)uH教师角色å�ªèƒ½ç®¡ç�†è‡ªå·±æ‰€å¸¦ç�­çº§çš„学生;管ç�†å‘˜ä¸�å�—é™�ÚadminTÚteacherF)rÚclass_idr
Ú
teacher_id)rrrrrrÚ_can_manage_students

rz/addu'创建学生(学å�·å�¯è‡ªåŠ¨ç”Ÿæˆ�))Úresponse_modelÚsummaryrrrÚ current_usercÃs’�t ||j¡stddd�‚t ||j¡stddd�‚|jdkr/|jt||jƒvr/tddd�‚|j durCt 
||j ¡}|rCtdd d�‚t  ||¡S)
Né”u&ç�­çº§IDä¸�存在,或已被软删除©Ú status_codeÚdetailu&顾问IDä¸�存在,或已被软删除ré“õ-教师å�ªèƒ½ç®¡ç�†è‡ªå·±æ‰€å¸¦ç�­çº§çš„学生i™u*å­¦å�·å·²å­˜åœ¨ï¼ˆåŒ…括软删除记录)) r Úinspect_class_id_unqrrZinspect_advisor_id_unqÚ
advisor_idrr
rrZinspect_student_id_unqÚ add_student)rrr"Úexistingrrrr+"s€  ÿ 
  r+z /total_queryu.查询学生列表(多æ�¡ä»¶ç­›é€‰+分页)u跳过的记录数)ÚgeÚ descriptionédééÈu返回的最大记录数)r-Úler.Nu按学å�·ç²¾ç¡®æŸ¥è¯¢)r.u按姓å��模糊查询u按ç�­çº§ID筛选u按性别筛选:男/女u/按状æ€�筛选:在读/进入就业/已就业u按学历筛选ÚskipÚlimitrÚstu_namerÚgenderÚstatusÚ educationc
ƒs\�tj|||||||||d� \}
} ˆjdkr#‡fdd„| Dƒ} t| ƒ}
t|
dd„| Dƒd�S)N)r3r4rr5rr6r7r8rcsg|]
}|jˆjkr|‘qSr)r©Ú.0Ús©r"rrÚ
<listcomp>Usz get_students.<locals>.<listcomp>cSsg|]}t |¡‘qSr)rÚmodel_validater9rrrr=Ys)ÚtotalÚitems)r Úget_allrÚlenr) r3r4rr5rr6r7r8rr"r?r@rr<rÚ get_students;s&€

÷
 þrCz
/single_queryuæ ¹æ�®å­¦å�·æŸ¥è¯¢å­¦ç”Ÿ.uå­¦å�·cÃsf�t ||¡}|durtddd�‚t||ƒstddd�‚t |¡}|jr)|jj|_|jr1|jj |_ |S)Nr#õ$学生ä¸�存在,或已被软删除r$r'u'学生角色å�ªèƒ½æŸ¥çœ‹è‡ªå·±çš„ä¿¡æ�¯)
r Ú
get_activerrrr>ÚclassesÚ
class_nameÚadvisorÚ advisor_name)rrr"rÚresprrrÚ get_student^s€