导图社区 学生小题作答详情单班优化
学生小题作答详情单班优化(java)
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
学生小题作答详情优化(/api/learning/analysis/student-question-answer-detail)全班
获取paperId
获取ExamPaperBO
班级考试小题得分信息查询
年级小题维度得分统计数据
可删除,不需要年级维度数据
e.学生试卷排名(包含文理综特殊处理)
获取班级学生信息并是否过滤借读生
优化:可放在e项上一步执行,减少查询的数据(过滤借读生)
分页处理
学生-小题维度得分统计数据
组装数据
结束
总结:1.删除两个学情数据库查询2.删除一个中台接口查询(年级小题);3.变更三个中台rpc接口为数据库查询;4.删除优化部分逻辑代码;5.为文理综时且不包含附加卷多一次report数据库查询;6.app和web拆分为两个接口.
R1.查询examPaper单表获取paperId
可删除
R2.调用中台接口
可优化:直接查询中台表。注意:当题目id较多时,sql使用in的查询优化(https://blog.csdn.net/u013803955/article/details/77990168)
L1.根据考试id查询selectExamPaperExamBasicExamPublish
删除R1后,该查询可提到方法外层,并改为rpc调用exam服务接口
e1.重复进行了L1查询
可删除,直接复用L1返回值
学生考试排名信息以及学生试卷得分信息
学生附加卷、年级排名、班级排名等属性处理
调用中台接口
优化:数据库直接查询注意:学生id较多时,sql使用in的查询优化
遍历班级小题
小题的班级均分、年级均分以及得分率计算
可删除,不展示这些数据
学生小题得分信息组装
备注
app端调用:e项查询所有学生考试得分排名信息,内存分页(app端准备单独提供一个接口);web端:1.不包含附加卷(猜测占据多数): 1)文理综试卷:获取要查的单科并进行数据库分页,返回的学生id再去查一遍获取文理综成绩; 2)单科试卷:直接进行数据库分页;2.包含附加卷: 单科\文理综查询所有进行内存分页;
优化:根据分页返回的学生id,进行数据库查询