|
|
|
@ -14,8 +14,10 @@ import com.ibeetl.admin.core.service.CoreBaseService;
|
|
|
|
|
import com.ibeetl.admin.core.util.PlatformException;
|
|
|
|
|
import com.ibeetl.admin.core.web.JsonResult;
|
|
|
|
|
import com.ibeetl.admin.core.web.JsonReturnCode;
|
|
|
|
|
import com.ibeetl.jlw.dao.TeacherOpenCourseHandsOnDao;
|
|
|
|
|
import com.ibeetl.jlw.dao.TeacherOpenCourseHandsOnSimulationTasksDao;
|
|
|
|
|
import com.ibeetl.jlw.dao.TeacherOpenCourseMergeResourcesQuestionDao;
|
|
|
|
|
import com.ibeetl.jlw.dao.TeacherOpenCourseMergeSchoolClassDao;
|
|
|
|
|
import com.ibeetl.jlw.entity.*;
|
|
|
|
|
import com.ibeetl.jlw.entity.vo.HandsOnTaskProblemVO;
|
|
|
|
|
import com.ibeetl.jlw.entity.vo.HandsOnTaskScoreVO;
|
|
|
|
@ -78,6 +80,11 @@ public class TeacherOpenCourseHandsOnSimulationTasksService extends CoreBaseServ
|
|
|
|
|
private StudentHandsOnTaskStepService studentHandsOnTaskStepService;
|
|
|
|
|
@Autowired
|
|
|
|
|
private StudentHandsOnTaskReportService studentHandsOnTaskReportService;
|
|
|
|
|
@Autowired
|
|
|
|
|
private TeacherOpenCourseMergeSchoolClassDao teacherOpenCourseMergeStudentService;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private TeacherOpenCourseHandsOnDao teacherOpenCourseHandsOnDao;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private StudentHandsOnTaskLogService logService;
|
|
|
|
@ -416,6 +423,20 @@ public class TeacherOpenCourseHandsOnSimulationTasksService extends CoreBaseServ
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public PageQuery getStudentScore(StudentScoreParam studentScoreParam) {
|
|
|
|
|
Long handsOnId = studentScoreParam.getHandsOnId();
|
|
|
|
|
if (handsOnId != null) {
|
|
|
|
|
TeacherOpenCourseHandsOnQuery handsOnQuery = new TeacherOpenCourseHandsOnQuery();
|
|
|
|
|
handsOnQuery.setHandsOnId(handsOnId);
|
|
|
|
|
List<TeacherOpenCourseHandsOn> handsOns = teacherOpenCourseHandsOnDao.getValuesByQueryNotWithPermission(handsOnQuery);
|
|
|
|
|
Long teacherOpenCourseId = handsOns.get(0).getTeacherOpenCourseId();
|
|
|
|
|
List<TeacherOpenCourseMergeSchoolClass> select = teacherOpenCourseMergeStudentService.createLambdaQuery()
|
|
|
|
|
.andEq(TeacherOpenCourseMergeSchoolClass::getTeacherOpenCourseId, teacherOpenCourseId).andEq(TeacherOpenCourseMergeSchoolClass::getTeacherOpenCourseMergeSchoolClassStatus, 1).select();
|
|
|
|
|
if (CollectionUtil.isNotEmpty(select)) {
|
|
|
|
|
List<Long> collect = select.stream().map(TeacherOpenCourseMergeSchoolClass::getSchoolClassId).collect(Collectors.toList());
|
|
|
|
|
String join = CollectionUtil.join(collect, ",");
|
|
|
|
|
studentScoreParam.setClassIds(join);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
PageQuery pageQuery = studentScoreParam.getPageQuery();
|
|
|
|
|
PageQuery<Student> studentPageQuery = studentService.queryByCondition(pageQuery);
|
|
|
|
|
List<Student> list = studentPageQuery.getList();
|
|
|
|
@ -424,6 +445,9 @@ public class TeacherOpenCourseHandsOnSimulationTasksService extends CoreBaseServ
|
|
|
|
|
for (Student student : list) {
|
|
|
|
|
StudentHandsOnTaskVideoQuery studentHandsOnTaskVideoQuery = new StudentHandsOnTaskVideoQuery();
|
|
|
|
|
studentHandsOnTaskVideoQuery.setStudentId(student.getStudentId());
|
|
|
|
|
if (handsOnId != null) {
|
|
|
|
|
studentHandsOnTaskVideoQuery.setHandsOnId(handsOnId);
|
|
|
|
|
}
|
|
|
|
|
List<StudentHandsOnTaskVideo> valuesByQuery = studentHandsOnTaskVideoService.getValuesByQuery(studentHandsOnTaskVideoQuery);
|
|
|
|
|
double sum = valuesByQuery.stream().mapToDouble(v -> v.getVideoScore() == null ? 0 : v.getVideoScore().doubleValue()).sum();
|
|
|
|
|
student.set("sumScore", sum);
|
|
|
|
@ -433,6 +457,9 @@ public class TeacherOpenCourseHandsOnSimulationTasksService extends CoreBaseServ
|
|
|
|
|
for (Student student : list) {
|
|
|
|
|
StudentHandsOnTaskPptQuery studentHandsOnTaskPptQuery = new StudentHandsOnTaskPptQuery();
|
|
|
|
|
studentHandsOnTaskPptQuery.setStudentId(student.getStudentId());
|
|
|
|
|
if (handsOnId != null) {
|
|
|
|
|
studentHandsOnTaskPptQuery.setHandsOnId(handsOnId);
|
|
|
|
|
}
|
|
|
|
|
List<StudentHandsOnTaskPpt> valuesByQuery = studentHandsOnTaskPptService.getValuesByQuery(studentHandsOnTaskPptQuery);
|
|
|
|
|
double sum = valuesByQuery.stream().mapToDouble(v -> v.getPptScore() == null ? 0 : v.getPptScore().doubleValue()).sum();
|
|
|
|
|
student.set("sumScore", sum);
|
|
|
|
@ -442,6 +469,9 @@ public class TeacherOpenCourseHandsOnSimulationTasksService extends CoreBaseServ
|
|
|
|
|
for (Student student : list) {
|
|
|
|
|
StudentHandsOnTaskTheoryQuery studentHandsOnTaskTheoryQuery = new StudentHandsOnTaskTheoryQuery();
|
|
|
|
|
studentHandsOnTaskTheoryQuery.setStudentId(student.getStudentId());
|
|
|
|
|
if (handsOnId != null) {
|
|
|
|
|
studentHandsOnTaskTheoryQuery.setHandsOnId(handsOnId);
|
|
|
|
|
}
|
|
|
|
|
List<StudentHandsOnTaskTheory> valuesByQuery = studentHandsOnTaskTheoryService.getValuesByQuery(studentHandsOnTaskTheoryQuery);
|
|
|
|
|
double sum = valuesByQuery.stream().mapToDouble(v -> v.getTheoryScore() == null ? 0 : v.getTheoryScore().doubleValue()).sum();
|
|
|
|
|
student.set("sumScore", sum);
|
|
|
|
@ -451,6 +481,9 @@ public class TeacherOpenCourseHandsOnSimulationTasksService extends CoreBaseServ
|
|
|
|
|
for (Student student : list) {
|
|
|
|
|
StudentHandsOnTaskStepQuery studentHandsOnTaskStepQuery = new StudentHandsOnTaskStepQuery();
|
|
|
|
|
studentHandsOnTaskStepQuery.setStudentId(student.getStudentId());
|
|
|
|
|
if (handsOnId != null) {
|
|
|
|
|
studentHandsOnTaskStepQuery.setHandsOnId(handsOnId);
|
|
|
|
|
}
|
|
|
|
|
List<StudentHandsOnTaskStep> valuesByQuery = studentHandsOnTaskStepService.getValuesByQuery(studentHandsOnTaskStepQuery);
|
|
|
|
|
double sum = valuesByQuery.stream().mapToDouble(v -> v.getTheoryScore() == null ? 0 : v.getTheoryScore().doubleValue()).sum();
|
|
|
|
|
student.set("sumScore", sum);
|
|
|
|
@ -460,6 +493,9 @@ public class TeacherOpenCourseHandsOnSimulationTasksService extends CoreBaseServ
|
|
|
|
|
for (Student student : list) {
|
|
|
|
|
StudentHandsOnTaskReportQuery studentHandsOnTaskReportQuery = new StudentHandsOnTaskReportQuery();
|
|
|
|
|
studentHandsOnTaskReportQuery.setStudentId(student.getStudentId());
|
|
|
|
|
if (handsOnId != null) {
|
|
|
|
|
studentHandsOnTaskReportQuery.setHandsOnId(handsOnId);
|
|
|
|
|
}
|
|
|
|
|
List<StudentHandsOnTaskReport> valuesByQuery = studentHandsOnTaskReportService.getValuesByQuery(studentHandsOnTaskReportQuery);
|
|
|
|
|
double sum = valuesByQuery.stream().mapToDouble(v -> v.getReportScore() == null ? 0 : v.getReportScore().doubleValue()).sum();
|
|
|
|
|
student.set("sumScore", sum);
|
|
|
|
|