diff --git a/web/src/main/java/com/ibeetl/jlw/entity/QuestionLogSummary.java b/web/src/main/java/com/ibeetl/jlw/entity/QuestionLogSummary.java
index 53244420..abf9729e 100644
--- a/web/src/main/java/com/ibeetl/jlw/entity/QuestionLogSummary.java
+++ b/web/src/main/java/com/ibeetl/jlw/entity/QuestionLogSummary.java
@@ -1,11 +1,15 @@
 package com.ibeetl.jlw.entity;
 
 import com.ibeetl.admin.core.annotation.Dict;
+import com.ibeetl.admin.core.annotation.DictDeep;
 import com.ibeetl.admin.core.entity.BaseEntity;
 import com.ibeetl.admin.core.util.ValidateConfig;
 import com.ibeetl.jlw.enums.QuestionBusinessTypeEnum;
 import com.ibeetl.jlw.enums.ResourcesQuestionSnapshotFromTypeEnum;
 import org.beetl.sql.annotation.entity.AssignID;
+import org.beetl.sql.annotation.entity.InsertIgnore;
+import org.beetl.sql.annotation.entity.UpdateIgnore;
+import org.beetl.sql.fetch.annotation.FetchOne;
 
 import javax.validation.constraints.NotNull;
 import java.math.BigDecimal;
@@ -50,6 +54,15 @@ public class QuestionLogSummary extends BaseEntity{
     //人员ID(学生ID等等)
 
     private Long personId ;
+
+    /**
+     * 学生信息
+     */
+    @UpdateIgnore
+    @InsertIgnore
+    @FetchOne("personId")
+    @DictDeep
+    private Student studentInfo;
 	
     //关联的做题日志IDs
 
@@ -382,4 +395,12 @@ public class QuestionLogSummary extends BaseEntity{
     public void setQuestionLogSummaryStudentTotalScore(BigDecimal questionLogSummaryStudentTotalScore) {
         this.questionLogSummaryStudentTotalScore = questionLogSummaryStudentTotalScore;
     }
+
+    public Student getStudentInfo() {
+        return studentInfo;
+    }
+
+    public void setStudentInfo(Student studentInfo) {
+        this.studentInfo = studentInfo;
+    }
 }
diff --git a/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseMergeResourcesQuestion.java b/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseMergeResourcesQuestion.java
index db108cda..ae15f476 100644
--- a/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseMergeResourcesQuestion.java
+++ b/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseMergeResourcesQuestion.java
@@ -52,7 +52,7 @@ public class TeacherOpenCourseMergeResourcesQuestion extends BaseEntity {
     private Long teacherOpenCourseMergeCourseInfoId ;
 
     //题型(1单选 2多选 3判断 4填空 5分析)
-    @ExcelSelector(fixedSelector = {"单选"+ID_SEPARATOR+"1", "多选"+ID_SEPARATOR+"2", "判断"+ID_SEPARATOR+"3" })
+    @ExcelSelector(fixedSelector = {"单选"+ID_SEPARATOR+"1", "多选"+ID_SEPARATOR+"2", "判断"+ID_SEPARATOR+"3", "填空"+ID_SEPARATOR+"4", "分析"+ID_SEPARATOR+"5" })
     @ExcelProperty(value = "题型", index = 2)
 
     private Integer questionType ;
diff --git a/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseQuestionSetting.java b/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseQuestionSetting.java
index bced3558..64afcd13 100644
--- a/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseQuestionSetting.java
+++ b/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseQuestionSetting.java
@@ -178,16 +178,16 @@ public class TeacherOpenCourseQuestionSetting extends BaseEntity {
     @InsertIgnore
     private List<QuestionSettingDTO> questionSettingOptions;
 
-//    /**
-//     * 其他表的字段,回显用
-//     */
-//    @UpdateIgnore
-//    @InsertIgnore
-//    // 题目ID集合
-//    @FetchSql("select group_concat(t.teacher_open_course_merge_resources_question_id) " +
-//            "from resources_question_snapshot t where t.teacher_open_course_question_setting_id = #teacherOpenCourseQuestionSettingId# \n" +
-//            "and t.question_status = 1 \n"
-//    )
-//    private String resourcesQuestionIdPlural;
+    /**
+     * 其他表的字段,回显用
+     */
+    @UpdateIgnore
+    @InsertIgnore
+    // 题目ID集合
+    @FetchSql("select group_concat(t.teacher_open_course_merge_resources_question_id) " +
+            "from resources_question_snapshot t where t.teacher_open_course_question_setting_id = #teacherOpenCourseQuestionSettingId# \n" +
+            "and t.question_status = 1 \n"
+    )
+    private String resourcesQuestionIdPlural;
 
 }
diff --git a/web/src/main/java/com/ibeetl/jlw/service/TeacherOpenCourseQuestionSettingService.java b/web/src/main/java/com/ibeetl/jlw/service/TeacherOpenCourseQuestionSettingService.java
index 4bb7008c..2d56400c 100644
--- a/web/src/main/java/com/ibeetl/jlw/service/TeacherOpenCourseQuestionSettingService.java
+++ b/web/src/main/java/com/ibeetl/jlw/service/TeacherOpenCourseQuestionSettingService.java
@@ -246,21 +246,16 @@ public class TeacherOpenCourseQuestionSettingService extends CoreBaseService<Tea
      * @param student
      */
     public void setMyQuestionLogScoreInfo(List<TeacherOpenCourseQuestionSetting> list, Student student) {
-        if (ObjectUtil.isAllNotEmpty(list, student)) {
-            Long studentId = student.getStudentId();
-            list.forEach(item -> {
-                Long questionSettingId = item.getTeacherOpenCourseQuestionSettingId();
+        Optional.ofNullable(list).orElse(Collections.emptyList()).forEach(item -> {
+            Long questionSettingId = item.getTeacherOpenCourseQuestionSettingId();
+            if (ObjectUtil.isNotEmpty(student)) {
+                Long studentId = student.getStudentId();
                 QuestionLogSummaryQuery logSummaryQuery = new QuestionLogSummaryQuery();
                 logSummaryQuery.setPersonId(studentId);
                 logSummaryQuery.setQuestionLogSummaryStatus(1);
                 logSummaryQuery.setQuestionSettingId(questionSettingId);
                 List<QuestionLogSummary> logSummaryList = questionLogSummaryDao.getValuesByQueryNotWithPermission(logSummaryQuery);
 
-                QuestionLogSummaryQuery logSummaryQuery2 = new QuestionLogSummaryQuery();
-                logSummaryQuery2.setQuestionLogSummaryStatus(1);
-                logSummaryQuery2.setQuestionSettingId(questionSettingId);
-                List<QuestionLogSummary> logSummaryList2 = questionLogSummaryDao.getValuesByQueryNotWithPermission(logSummaryQuery2);
-
                 // 我的得分,完成时间
                 if (ObjectUtil.isNotEmpty(logSummaryList)) {
                     QuestionLogSummary scoreInfo = logSummaryList.get(0);
@@ -268,18 +263,31 @@ public class TeacherOpenCourseQuestionSettingService extends CoreBaseService<Tea
                     item.set("finishSecondTime", scoreInfo.getFinishSecondTime());
                     item.set("myScore", scoreInfo.getQuestionLogSummaryStudentTotalScore());
                 }
+            }
 
-                // 平均及格率,平均得分等等
-                if (ObjectUtil.isNotEmpty(logSummaryList2)) {
-                    BigDecimal studentTotalScore = logSummaryList2.stream().map(QuestionLogSummary::getQuestionLogSummaryStudentTotalScore).reduce(BigDecimal::add).get();
-                    int passTotalCount = logSummaryList2.stream().map(QuestionLogSummary::getQuestionLogSummaryIsPass).reduce(Integer::sum).get();
-                    int logSummarySize = logSummaryList2.size();
-                    item.set("avgScore", NumberUtil.div(studentTotalScore, logSummarySize));
-                    item.set("avgPassRate", NumberUtil.mul(NumberUtil.div(passTotalCount, logSummarySize, 3), 100));
-                }
-            });
-
-        }
+            QuestionLogSummaryQuery logSummaryQuery2 = new QuestionLogSummaryQuery();
+            logSummaryQuery2.setQuestionLogSummaryStatus(1);
+            logSummaryQuery2.setQuestionSettingId(questionSettingId);
+            List<QuestionLogSummary> logSummaryList2 = questionLogSummaryDao.getValuesByQueryNotWithPermission(logSummaryQuery2);
+
+            // 平均及格率,平均得分等等
+            if (ObjectUtil.isNotEmpty(logSummaryList2)) {
+                BigDecimal studentTotalScore = logSummaryList2.stream().map(QuestionLogSummary::getQuestionLogSummaryStudentTotalScore).reduce(BigDecimal::add).get();
+                int passTotalCount = logSummaryList2.stream().map(QuestionLogSummary::getQuestionLogSummaryIsPass).reduce(Integer::sum).get();
+                int questionTotalCount = logSummaryList2.get(0).getQuestionLogSummaryQuestionTotalCount();
+                int totalSuccessCount = logSummaryList2.stream().map(QuestionLogSummary::getQuestionLogSummarySuccessCount).reduce(Integer::sum).get();
+                int totalErrorCount = logSummaryList2.stream().map(QuestionLogSummary::getQuestionLogSummaryErrorCount).reduce(Integer::sum).get();
+                BigDecimal totalSuccessRate = logSummaryList2.stream().map(QuestionLogSummary::getQuestionLogSummarySuccessRate).reduce(BigDecimal::add).get();
+                int logSummarySize = logSummaryList2.size();
+
+                item.set("avgScore", NumberUtil.div(studentTotalScore, logSummarySize, 1));
+                item.set("avgPassRate", NumberUtil.div(passTotalCount, logSummarySize, 1));
+                item.set("questionCount", questionTotalCount);
+                item.set("avgSuccessCount", NumberUtil.div(totalSuccessCount, logSummarySize, 1));
+                item.set("avgErrorCount", NumberUtil.div(totalErrorCount, logSummarySize, 1));
+                item.set("avgSuccessRate", NumberUtil.div(totalSuccessRate, logSummarySize, 1));
+            }
+        });
     }
 
     public TeacherOpenCourseQuestionSetting getInfo (Long teacherOpenCourseQuestionSettingId){