Files
test/app/schema/__pycache__/statistics_schema.cpython-311.pyc
T

73 lines
9.7 KiB
Plaintext
Raw Normal View History

2026-09-21 19:03:31 +08:00
§
eŽªjJãóV—dZddlmZddlmZddlmZddlmZm Z Gd„de¦«Z
Gd„d e¦«Z Gd
„d e¦«Z Gd „d
e¦«Z
Gd„de¦«ZGd„de¦«ZGd„de¦«ZGd„de¦«ZGd„de¦«ZGd„de¦«ZdS)u.统计分æž�模å�—出入å�‚(需求 2.6)。é)Ú annotations)Údate)ÚAny)Ú BaseModelÚFieldcóÞ—eZdZUdZded<ded<ded<dZded <dZded
<ed d ¬
¦«Zded<ed d¬
¦«Z ded<ed d¬
¦«Z
ded<ed d¬
¦«Z ded<dS)ÚClassOverviewItemu?2.6.1 多维度ç�­çº§ç»Ÿè®¡ï¼šæ¯�ç�­æ€»äººæ•° + 男女分布。ÚintÚclass_idÚstrÚclass_noÚ
class_nameNú
str | NoneÚ status_textÚhead_teacher_namerõ 总人数©Ú descriptionÚtotalu 男生数Úmaleu 女生数Úfemaleu未标注性别人数Úother) Ú__name__Ú
__module__Ú __qualname__Ú__doc__Ú__annotations__rrrrrrr©óú4D:\xwt0803\wolin_sms\app\schema\statistics_schema.pyr r s×€€€€€€ØIÐIà€M€M�MØ€M€M�MØ€O€O�OØ"€KÐ"Ð"Ð"Ñ"Ø$(ÐÐ(Ð(Ð(Ñ(Ø��q kÐ2Ñ2Ô2€EÐ2Ð2Ð2Ñ2Ø��a [Ð1Ñ1Ô1€DÐ1Ð1Ð1Ñ1Ø�%˜ {Ð3Ñ3Ô3€FÐ3Ð3Ð3Ñ3Ø��qÐ&=Ð>Ñ>Ô>€EÐ>Ð>Ð>Ñ>Ð>Ð>rr cóЗeZdZUdZded<ded<ded<dZded <ed
d ¬ ¦«Zded
<ed
d¬ ¦«Zded<ed
d¬ ¦«Z ded<ee
d¬¦«Z ded<dS)Ú AllAboveItemu'2.6.2 æ¯�次考试都过线的学生。r
Ústu_idr Ústu_noÚnameNrrruå�‚加考核次数rÚ
exam_countu'最低分(就是它决定了过线)ÚfloatÚ min_scoreõ å¹³å�‡åˆ†Ú avg_scoreuå�„次æˆ�绩明细©Údefault_factoryrúlist[dict[str, Any]]Úscores) rrrrrrrr&r(r*Úlistr.rrr r"r"sÇ€€€€€€Ø1Ð1à€K€K�KØ€K€K�KØ
€I€I�IØ!€JÐ!Ð!Ð!Ñ!Ø�e˜AÐ+?Ð@Ñ@Ô@€JÐ@Ð@Ð@Ñ@Ø�u˜QÐ,UÐVÑVÔV€IÐVÐVÐVÑVØ�u˜Q¨KÐ8Ñ8Ô8€IÐ8Ð8Ð8Ñ8Ø#( 5¸ÐK_Ð#`Ñ#`Ô#`€FÐ`Ð`Ð`Ñ`Ð`Ð`rr"cóˆ—eZdZUdZded<ded<ded<dZded <ed
d ¬ ¦«Zded
<eed¬¦«Z ded<dS)ÚFailDetailItemu2.6.2 ä¸�å�Šæ ¼æ˜Žç»†ã€‚r
r#r r$r%Nrrruä¸�å�Šæ ¼æ¬¡æ•°rÚ
fail_timesuä¸�å�Šæ ¼åœºæ¬¡æ˜Žç»†r+r-Ú fail_details)
rrrrrrrr2r/r3rrr r1r1&s†€€€€€€Ø"Ð"à€K€K�KØ€K€K�KØ
€I€I�IØ!€JÐ!Ð!Ð!Ñ!Ø�e˜AÐ+<Ð=Ñ=Ô=€JÐ=Ð=Ð=Ñ=Ø).¨¸tÐQhÐ)iÑ)iÔ)i€LÐiÐiÐiÑiÐiÐirr1có—eZdZUdZded<dZded<dZded<ed d
¬ ¦«Zded <ed d
¬ ¦«Z ded<d Z
ded<d Z ded<ed d¬ ¦«Z ded<dS)ÚClassAvgScoreItemu-2.6.2 æ¯�场考试æ¯�个ç�­çº§çš„å¹³å�‡åˆ†ã€‚r
Úexam_seqNú
int | Noner rrru å�‚考人数rÚ
student_countr)r'r*Ú max_scorer(u å�Šæ ¼çއ %Ú pass_rate)
rrrrrr rrr8r*r9r(r:rrr r5r51sÅ€€€€€€Ø7Ð7à€M€M�MØ€HÐÐÐÑØ!€JÐ!Ð!Ð!Ñ!ؘ˜q¨nÐ=Ñ=Ô=€MÐ=Ð=Ð=Ñ=Ø�u˜Q¨KÐ8Ñ8Ô8€IÐ8Ð8Ð8Ñ8Ø€IÐÐÐÑØ€IÐÐÐÑØ�u˜Q¨MÐ:Ñ:Ô:€IÐ:Ð:Ð:Ñ:Ð:Ð:rr5có�—eZdZUdZded<ded<ded<ded<dZd ed
<dZd ed <d Zd
ed<d Zd
ed<dZ ded<dZ
ded<dS)Ú
SalaryTopItemu2.6.3 就业薪资 Top N。r
Úrankr#r r$r%NrrÚcompanyrr'ÚsalaryÚ
salary_wanú date | NoneÚ
offer_dater7Ú
duration_days) rrrrrrr>r?r@rBrCrrr r<r<>s¢€€€€€€Ø%Ð%à
€I€I�IØ€K€K�KØ€K€K�KØ
€I€I�IØ!€JÐ!Ð!Ð!Ñ!Ø€GÐÐÐÑØ€FÐÐÐÑØ€JÐÐÐÑØ"€JÐ"Ð"Ð"Ñ"Ø $€MÐ$Ð$Ð$Ñ$Ð$Ð$rr<có²—eZdZUdZded<ded<ded<dZded <dZded
<dZd ed <dZd ed
<e dd¬¦«Z
ded<e dd¬¦«Z ded<dS)ÚStudentDurationItemu$2.6.3 æ¯�个学生的就业时长。r
r#r r$r%Nrrr>rAÚ open_daterBu$offer æ—¶é—´ - 开放时间(天)rr7rCÚu就业中 / 已拿到 offerÚstate) rrrrrrr>rFrBrrCrHrrr rErEMs¹€€€€€€Ø.Ð.à€K€K�KØ€K€K�KØ
€I€I�IØ!€JÐ!Ð!Ð!Ñ!Ø€GÐÐÐÑØ!€IÐ!Ð!Ð!Ñ!Ø"€JÐ"Ð"Ð"Ñ"Ø %  dÐ8^Ð _Ñ _Ô _€MÐ_Ð_Ð_Ñ_Ø��rÐ'DÐEÑEÔE€EÐEÐEÐEÑEÐEÐErrEcóÜ—eZdZUdZdZded<dZded<edd¬ ¦«Zd
ed <edd ¬ ¦«Z d
ed
<edd¬ ¦«Z
d
ed<edd¬ ¦«Z ded<dZ ded<dZ
ded<dS)ÚClassAvgDurationItemu*2.6.3 æ¯�个ç�­çº§çš„å¹³å�‡å°±ä¸šæ—¶é•¿ã€‚Nr7r rrruç�­çº§æ€»äººæ•°rr
r8u*已开放就业的人数(统计基数)Ú
open_countu已下å�‘ offer çš„äººæ•°Ú offer_countõå¹³å�‡å°±ä¸šæ—¶é•¿ï¼ˆå¤©ï¼‰ú float | NoneÚavg_duration_daysÚmin_duration_daysÚmax_duration_days)rrrrr rrrr8rKrLrOrPrQrrr rJrJ[s €€€€Ø4Ð4à€HÐÐÐÑØ!€JÐ!Ð!Ð!Ñ!ؘ˜qÐ.?Ð@Ñ@Ô@€MÐ@Ð@Ð@Ñ@Ø�e˜AÐ+WÐXÑXÔX€JÐXÐXÐXÑXØ�u˜QÐ,GÐHÑHÔH€KÐHÐHÐHÑHØ&+ e¨DÐ>[Ð&\Ñ&\Ô&\ÐÐ\Ð\Ð\Ñ\Ø$(ÐÐ(Ð(Ð(Ñ(Ø$(ÐÐ(Ð(Ð(Ñ(Ð(Ð(rrJcó—eZdZUdZded<ded<ded<ded<dZd ed
<d Zded <d Zd
ed<ed d¬¦«Z d
ed<ed d¬¦«Z
d
ed<edd¬¦«Z ded<ed d¬¦«Z d
ed<ee
d¬¦«Zded<dS)ÚVolatilityItemu2.7.2 æˆ�绩波动分æž�。r
r=r#r r$r%Nrrrr&r'r*uæˆ�绩标准差rÚstddevu最大分差 max-minÚ score_rangerGuN上å�‡ / 下é™� / 基本æŒ�平(按最å°�二乘斜率,阈值 ±1 分/场)ÚtrenduOæˆ�绩趋势斜率,å�•ä½�:分/场(对考核åº�次å�šæœ€å°�二乘拟å�ˆï¼‰Ú trend_slopeu按åº�次排列的æˆ�绩r+z list[float]r.)rrrrrrr&r*rrTrUrVrWr/r.rrr rSrShs)€€€€€€Ø%Ð%à
€I€I�IØ€K€K�KØ€K€K�KØ
€I€I�IØ!€JÐ!Ð!Ð!Ñ!Ø€JÐÐÐÑØ€IÐÐÐÑØ�E˜!Ð):Ð;Ñ;Ô;€FÐ;Ð;Ð;Ñ;ؘ˜qÐ.DÐEÑEÔE€KÐEÐEÐEÑEØ��rÐ'wÐxÑxÔx€EÐxÐxÐxÑxؘ˜qÐ.ðAñAôA€KðAðAðAñAؘ%°ÐB\Ð]Ñ]Ô]€FÐ]Ð]Ð]Ñ]Ð]Ð]rrScó.—eZdZUdZded<ded<ded<edd¬ ¦«Zded
<edd ¬ ¦«Zded <edd
¬ ¦«Zded<edd¬ ¦«Z ded<edd¬ ¦«Z
ded<edd¬ ¦«Z ded<edd¬ ¦«Z ded<dS)Ú