From b1c1667b35415db9a6d7cc2fc395e4877a7dafea Mon Sep 17 00:00:00 2001
From: xuliangtong <1124839262@qq.com>
Date: Tue, 27 Dec 2022 12:01:10 +0800
Subject: [PATCH] 1

---
 .../jlw/service/StudentHandsOnTaskLogService.java      | 10 +++++++++-
 .../jlw/service/StudentHandsOnTaskTheoryService.java   |  7 +++++--
 .../jlw/web/StudentHandsOnTaskLogController.java       |  2 +-
 3 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/web/src/main/java/com/ibeetl/jlw/service/StudentHandsOnTaskLogService.java b/web/src/main/java/com/ibeetl/jlw/service/StudentHandsOnTaskLogService.java
index 995bdef7..80404a7f 100644
--- a/web/src/main/java/com/ibeetl/jlw/service/StudentHandsOnTaskLogService.java
+++ b/web/src/main/java/com/ibeetl/jlw/service/StudentHandsOnTaskLogService.java
@@ -16,6 +16,7 @@ import com.ibeetl.admin.core.util.TimeTool;
 import com.ibeetl.admin.core.web.JsonResult;
 import com.ibeetl.admin.core.web.JsonReturnCode;
 import com.ibeetl.jlw.dao.StudentHandsOnTaskLogDao;
+import com.ibeetl.jlw.entity.Student;
 import com.ibeetl.jlw.entity.StudentHandsOnTaskLog;
 import com.ibeetl.jlw.web.query.StudentHandsOnTaskLogQuery;
 import com.ibeetl.jlw.entity.FileEntity;
@@ -52,6 +53,8 @@ public class StudentHandsOnTaskLogService extends CoreBaseService<StudentHandsOn
 
     @Autowired private StudentHandsOnTaskLogDao studentHandsOnTaskLogDao;
 
+    @Autowired private StudentService studentService;
+
     public PageQuery<StudentHandsOnTaskLog>queryByCondition(PageQuery query){
         PageQuery ret =  studentHandsOnTaskLogDao.queryByCondition(query);
         queryListAfter(ret.getList());
@@ -169,7 +172,12 @@ public class StudentHandsOnTaskLogService extends CoreBaseService<StudentHandsOn
         }
     }
 
-    public JsonResult addDo(StudentHandsOnTaskLogQuery studentHandsOnTaskLogQuery) {
+    public JsonResult addDo(StudentHandsOnTaskLogQuery studentHandsOnTaskLogQuery, CoreUser coreUser) {
+        if (!coreUser.isStudent()) {
+            return JsonResult.success();
+        }
+        Student student = studentService.getByUserId(coreUser.getId());
+        studentHandsOnTaskLogQuery.setStudentId(student.getStudentId());
         String msg = "";
         StudentHandsOnTaskLog studentHandsOnTaskLog = studentHandsOnTaskLogQuery.pojo();
         Long studentId = studentHandsOnTaskLog.getStudentId();
diff --git a/web/src/main/java/com/ibeetl/jlw/service/StudentHandsOnTaskTheoryService.java b/web/src/main/java/com/ibeetl/jlw/service/StudentHandsOnTaskTheoryService.java
index 28464b5b..94e017d4 100644
--- a/web/src/main/java/com/ibeetl/jlw/service/StudentHandsOnTaskTheoryService.java
+++ b/web/src/main/java/com/ibeetl/jlw/service/StudentHandsOnTaskTheoryService.java
@@ -396,16 +396,19 @@ public class StudentHandsOnTaskTheoryService extends CoreBaseService<StudentHand
         if (CollectionUtils.isEmpty(resourcesQuestions)) {
             return JsonResult.success(resourcesQuestions);
         }
-        Collections.shuffle(resourcesQuestions);
-
+        if(i == 1) {
+            Collections.shuffle(resourcesQuestions);
+        }
         for (TeacherOpenCourseMergeResourcesQuestion resourcesQuestion : resourcesQuestions) {
             if(CollectionUtils.isNotEmpty(theoryList)) {
                 StudentHandsOnTaskTheory taskTheory = theoryList.stream().filter(v -> v.getOrgId().equals(resourcesQuestion.getTeacherOpenCourseMergeResourcesQuestionId()))
                         .filter(v -> v.getStudentId().equals(student.getStudentId())).filter(v -> v.getHandsOnTaskId().equals(taskId)).findFirst().orElse(null);
                 if (taskTheory == null) {
                     resourcesQuestion.set("myOptions", "");
+                    resourcesQuestion.set("studentScore", 0D);
                 }else {
                     resourcesQuestion.set("myOptions", taskTheory.getMyOptions());
+                    resourcesQuestion.set("studentScore", taskTheory.getTheoryScore());
                 }
 
             }
diff --git a/web/src/main/java/com/ibeetl/jlw/web/StudentHandsOnTaskLogController.java b/web/src/main/java/com/ibeetl/jlw/web/StudentHandsOnTaskLogController.java
index acdd9234..24bf62b3 100644
--- a/web/src/main/java/com/ibeetl/jlw/web/StudentHandsOnTaskLogController.java
+++ b/web/src/main/java/com/ibeetl/jlw/web/StudentHandsOnTaskLogController.java
@@ -235,7 +235,7 @@ public class StudentHandsOnTaskLogController{
 
             studentHandsOnTaskLogQuery.setUserId(coreUser.getId());
             studentHandsOnTaskLogQuery.setOrgId(coreUser.getOrgId());
-            return studentHandsOnTaskLogService.addDo(studentHandsOnTaskLogQuery);
+            return studentHandsOnTaskLogService.addDo(studentHandsOnTaskLogQuery, coreUser);
         }
     }