Browse Source

食堂考核答题端调整

dzx 1 year ago
parent
commit
00d813f887

+ 4 - 3
src/main/java/com/xjrsoft/module/assessment/controller/AssessmentPlanAnswerController.java

@@ -12,6 +12,7 @@ import com.xjrsoft.module.assessment.dto.AssessmentPlanSubmitDto;
 import com.xjrsoft.module.assessment.dto.AssessmentTemplatePlanSureDto;
 import com.xjrsoft.module.assessment.service.IAssessmentTemplatePlanService;
 import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerStudentPageVo;
+import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerTeacherPageVo;
 import com.xjrsoft.module.assessment.vo.AssessmentTemplatePlanQuestionVo;
 import com.xjrsoft.module.assessment.vo.AssessmentTemplateQuestionVo;
 import io.swagger.annotations.Api;
@@ -64,10 +65,10 @@ public class AssessmentPlanAnswerController {
     @GetMapping(value = "/teacher-page")
     @ApiOperation(value="考核计划答题列表-教师端(分页)")
     @SaCheckPermission("assessmenttemplateplan:detail")
-    public RT<PageOutput<AssessmentPlanAnswerStudentPageVo>> teacherPage(@Valid AssessmentPlanAnswerPageDto dto){
+    public RT<PageOutput<AssessmentPlanAnswerTeacherPageVo>> teacherPage(@Valid AssessmentPlanAnswerPageDto dto){
         dto.setTeacherId(StpUtil.getLoginIdAsLong());
-        Page<AssessmentPlanAnswerStudentPageVo> page = planService.getTeacherPage(new Page<>(dto.getLimit(), dto.getSize()), dto);
-        PageOutput<AssessmentPlanAnswerStudentPageVo> pageOutput = ConventPage.getPageOutput(page, AssessmentPlanAnswerStudentPageVo.class);
+        Page<AssessmentPlanAnswerTeacherPageVo> page = planService.getTeacherPage(new Page<>(dto.getLimit(), dto.getSize()), dto);
+        PageOutput<AssessmentPlanAnswerTeacherPageVo> pageOutput = ConventPage.getPageOutput(page, AssessmentPlanAnswerTeacherPageVo.class);
         return RT.ok(pageOutput);
     }
 

+ 4 - 0
src/main/java/com/xjrsoft/module/assessment/mapper/AssessmentPlanAnswerResultMapper.java

@@ -2,8 +2,11 @@ package com.xjrsoft.module.assessment.mapper;
 
 import com.github.yulichang.base.MPJBaseMapper;
 import com.xjrsoft.module.assessment.entity.AssessmentPlanAnswerResult;
+import com.xjrsoft.module.assessment.vo.AssessmentQuestionResultVo;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.List;
+
 /**
 * @title: 考核计划答题参与班级
 * @Author dzx
@@ -13,4 +16,5 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface AssessmentPlanAnswerResultMapper extends MPJBaseMapper<AssessmentPlanAnswerResult> {
 
+    List<AssessmentQuestionResultVo> getResultList(Long id);
 }

+ 2 - 1
src/main/java/com/xjrsoft/module/assessment/mapper/AssessmentTemplatePlanMapper.java

@@ -6,6 +6,7 @@ import com.xjrsoft.module.assessment.dto.AssessmentPlanAnswerPageDto;
 import com.xjrsoft.module.assessment.dto.AssessmentTemplatePlanPageDto;
 import com.xjrsoft.module.assessment.entity.AssessmentTemplatePlan;
 import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerStudentPageVo;
+import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerTeacherPageVo;
 import com.xjrsoft.module.assessment.vo.AssessmentTemplatePlanPageVo;
 import org.apache.ibatis.annotations.Mapper;
 
@@ -26,7 +27,7 @@ public interface AssessmentTemplatePlanMapper extends MPJBaseMapper<AssessmentTe
     Page<AssessmentTemplatePlanPageVo> getPage(Page<AssessmentTemplatePlanPageVo> page, AssessmentTemplatePlanPageDto dto);
 
 
-    Page<AssessmentPlanAnswerStudentPageVo> getTeacherPage(Page<AssessmentPlanAnswerStudentPageVo> page, AssessmentPlanAnswerPageDto dto);
+    Page<AssessmentPlanAnswerTeacherPageVo> getTeacherPage(Page<AssessmentPlanAnswerTeacherPageVo> page, AssessmentPlanAnswerPageDto dto);
 
     Page<AssessmentPlanAnswerStudentPageVo> getStudentPage(Page<AssessmentPlanAnswerStudentPageVo> page, AssessmentPlanAnswerPageDto dto);
 }

+ 2 - 1
src/main/java/com/xjrsoft/module/assessment/service/IAssessmentTemplatePlanService.java

@@ -11,6 +11,7 @@ import com.xjrsoft.module.assessment.dto.UpdateAssessmentTemplatePlanDto;
 import com.xjrsoft.module.assessment.dto.UpdateAssessmentTemplatePlanTimeDto;
 import com.xjrsoft.module.assessment.entity.AssessmentTemplatePlan;
 import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerStudentPageVo;
+import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerTeacherPageVo;
 import com.xjrsoft.module.assessment.vo.AssessmentTemplatePlanPageVo;
 import com.xjrsoft.module.assessment.vo.AssessmentTemplatePlanQuestionVo;
 
@@ -59,7 +60,7 @@ public interface IAssessmentTemplatePlanService extends MPJBaseService<Assessmen
     /**
      * 考核答题分页查询(教师端)
      */
-    Page<AssessmentPlanAnswerStudentPageVo> getTeacherPage(Page<AssessmentPlanAnswerStudentPageVo> page, AssessmentPlanAnswerPageDto dto);
+    Page<AssessmentPlanAnswerTeacherPageVo> getTeacherPage(Page<AssessmentPlanAnswerTeacherPageVo> page, AssessmentPlanAnswerPageDto dto);
 
     /**
      * 班主任确认

+ 12 - 2
src/main/java/com/xjrsoft/module/assessment/service/impl/AssessmentTemplatePlanServiceImpl.java

@@ -33,6 +33,8 @@ import com.xjrsoft.module.assessment.mapper.AssessmentTemplateMapper;
 import com.xjrsoft.module.assessment.mapper.AssessmentTemplatePlanMapper;
 import com.xjrsoft.module.assessment.service.IAssessmentTemplatePlanService;
 import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerStudentPageVo;
+import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerTeacherPageVo;
+import com.xjrsoft.module.assessment.vo.AssessmentQuestionResultVo;
 import com.xjrsoft.module.assessment.vo.AssessmentQuestionVo;
 import com.xjrsoft.module.assessment.vo.AssessmentTemplatePlanPageVo;
 import com.xjrsoft.module.assessment.vo.AssessmentTemplatePlanQuestionVo;
@@ -243,7 +245,7 @@ public class AssessmentTemplatePlanServiceImpl extends MPJBaseServiceImpl<Assess
     }
 
     @Override
-    public Page<AssessmentPlanAnswerStudentPageVo> getTeacherPage(Page<AssessmentPlanAnswerStudentPageVo> page, AssessmentPlanAnswerPageDto dto) {
+    public Page<AssessmentPlanAnswerTeacherPageVo> getTeacherPage(Page<AssessmentPlanAnswerTeacherPageVo> page, AssessmentPlanAnswerPageDto dto) {
         return templatePlanMapper.getTeacherPage(page, dto);
     }
 
@@ -265,6 +267,12 @@ public class AssessmentTemplatePlanServiceImpl extends MPJBaseServiceImpl<Assess
             .eq(AssessmentPlanQuestion::getAssessmentTemplatePlanId, id)
         );
 
+        List<AssessmentQuestionResultVo> resultList = resultMapper.getResultList(id);
+        Map<Long, String> resultMap = new HashMap<>();
+        for (AssessmentQuestionResultVo resultVo : resultList) {
+            resultMap.put(resultVo.getQuestionId(), resultVo.getAnswer());
+        }
+
         //循环大题
         List<AssessmentQuestionVo> oneList = new ArrayList<>();
         for (AssessmentPlanQuestion assessmentQuestion : questionList) {
@@ -278,7 +286,9 @@ public class AssessmentTemplatePlanServiceImpl extends MPJBaseServiceImpl<Assess
             List<AssessmentQuestionVo> twoList = new ArrayList<>();
             for (AssessmentPlanQuestion assessmentQuestion : questionList) {
                 if(assessmentQuestion.getCategory() == 2 && assessmentQuestion.getParentId().equals(oneQuestion.getId())){
-                    twoList.add(BeanUtil.toBean(assessmentQuestion, AssessmentQuestionVo.class));
+                    AssessmentQuestionVo questionVo = BeanUtil.toBean(assessmentQuestion, AssessmentQuestionVo.class);
+                    questionVo.setValue(resultMap.get(questionVo.getId()));
+                    twoList.add(questionVo);
                 }
             }
             oneQuestion.setChildren(twoList);

+ 28 - 0
src/main/java/com/xjrsoft/module/assessment/vo/AssessmentQuestionResultVo.java

@@ -0,0 +1,28 @@
+package com.xjrsoft.module.assessment.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+* @title: 考核题目答案出参
+* @Author dzx
+* @Date: 2024-03-29
+* @Version 1.0
+*/
+@Data
+public class AssessmentQuestionResultVo implements Serializable {
+
+    /**
+    * 
+    */
+    @ApiModelProperty("问题id")
+    private Long questionId;
+    /**
+    * 
+    */
+    @ApiModelProperty("答案")
+    private String answer;
+
+}

+ 3 - 0
src/main/java/com/xjrsoft/module/assessment/vo/AssessmentQuestionVo.java

@@ -68,4 +68,7 @@ public class AssessmentQuestionVo implements ITreeNode<AssessmentQuestionVo, Lon
     @ApiModelProperty("题目选项")
     private List<AssessmentQuestionVo> options;
 
+    @ApiModelProperty("答案")
+    private String value;
+
 }

+ 10 - 0
src/main/resources/mapper/assessment/AssessmentPlanAnswerResultMapper.xml

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.xjrsoft.module.assessment.mapper.AssessmentTemplatePlanMapper">
+    <select id="getResultList" resultType="com.xjrsoft.module.assessment.vo.AssessmentQuestionResultVo">
+        SELECT question_id,GROUP_CONCAT(answer_id) as answer FROM assessment_plan_answer_result
+        WHERE assessment_template_plan_id = #{id} GROUP BY question_id
+    </select>
+</mapper>