Browse Source

1、修改测试环境和预发布环境公众号配置

dzx 1 year ago
parent
commit
4d0a00fc93

+ 10 - 2
src/main/java/com/xjrsoft/module/assessment/controller/AssessmentPlanAnswerController.java

@@ -131,8 +131,16 @@ public class AssessmentPlanAnswerController {
 
     @PostMapping(value="class-result")
     @ApiOperation(value = "班级答题情况")
-    @SaCheckPermission("assessmenttemplateplan:save-answer")
-    public RT<List<AssessmentPlanAnswerClassResultVo>> saveAnswer(@RequestParam Long id){
+    @SaCheckPermission("assessmenttemplateplan:class-result")
+    public RT<List<AssessmentPlanAnswerClassResultVo>> classResult(@RequestParam Long id){
+        List<AssessmentPlanAnswerClassResultVo> resultList = planService.getClassResult(id);
+        return RT.ok(resultList);
+    }
+
+    @PostMapping(value="question-result")
+    @ApiOperation(value = "每道题的答题情况")
+    @SaCheckPermission("assessmenttemplateplan:question-result")
+    public RT<List<AssessmentPlanAnswerClassResultVo>> questionResult(@RequestParam Long id){
         List<AssessmentPlanAnswerClassResultVo> resultList = planService.getClassResult(id);
         return RT.ok(resultList);
     }

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

@@ -4,6 +4,7 @@ import com.github.yulichang.base.MPJBaseMapper;
 import com.xjrsoft.module.assessment.dto.AssessmentQuestionResultDto;
 import com.xjrsoft.module.assessment.entity.AssessmentPlanAnswerResult;
 import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerClassResultVo;
+import com.xjrsoft.module.assessment.vo.AssessmentQuestionResultDetailVo;
 import com.xjrsoft.module.assessment.vo.AssessmentQuestionResultVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -22,4 +23,6 @@ public interface AssessmentPlanAnswerResultMapper extends MPJBaseMapper<Assessme
     List<AssessmentQuestionResultVo> getResultList(@Param("dto") AssessmentQuestionResultDto dto);
 
     List<AssessmentPlanAnswerClassResultVo> getClassResult(Long id);
+
+    AssessmentQuestionResultDetailVo getQuestionResult(Long id);
 }

+ 3 - 0
src/main/java/com/xjrsoft/module/assessment/service/IAssessmentTemplatePlanService.java

@@ -12,6 +12,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.AssessmentPlanAnswerClassResultVo;
+import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerDetailVo;
 import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerStudentPageVo;
 import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerStudentVo;
 import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerTeacherPageVo;
@@ -83,4 +84,6 @@ public interface IAssessmentTemplatePlanService extends MPJBaseService<Assessmen
     List<Long> getSemesterClass(Long id);
 
     List<AssessmentPlanAnswerClassResultVo> getClassResult(Long id);
+
+    AssessmentPlanAnswerDetailVo getQuestionResult(Long id);
 }

+ 47 - 0
src/main/java/com/xjrsoft/module/assessment/service/impl/AssessmentTemplatePlanServiceImpl.java

@@ -35,6 +35,7 @@ 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.AssessmentPlanAnswerClassResultVo;
+import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerDetailVo;
 import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerStudentPageVo;
 import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerStudentVo;
 import com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerTeacherPageVo;
@@ -356,4 +357,50 @@ public class AssessmentTemplatePlanServiceImpl extends MPJBaseServiceImpl<Assess
     public List<AssessmentPlanAnswerClassResultVo> getClassResult(Long id) {
         return resultMapper.getClassResult(id);
     }
+
+    @Override
+    public AssessmentPlanAnswerDetailVo getQuestionResult(Long id) {
+        AssessmentTemplatePlan templatePlan = templatePlanMapper.selectById(id);
+        AssessmentTemplatePlanQuestionVo vo = BeanUtil.toBean(templatePlan, AssessmentTemplatePlanQuestionVo.class);
+        List<AssessmentPlanQuestion> questionList = planQuestionMapper.selectList(
+                new QueryWrapper<AssessmentPlanQuestion>().lambda()
+                        .eq(AssessmentPlanQuestion::getDeleteMark, DeleteMark.NODELETE.getCode())
+                        .eq(AssessmentPlanQuestion::getAssessmentTemplatePlanId, id)
+        );
+        //循环大题
+        List<AssessmentQuestionVo> oneList = new ArrayList<>();
+        for (AssessmentPlanQuestion assessmentQuestion : questionList) {
+            if(assessmentQuestion.getCategory() == 1){
+                oneList.add(BeanUtil.toBean(assessmentQuestion, AssessmentQuestionVo.class));
+            }
+        }
+
+        //循环小题
+        for (AssessmentQuestionVo oneQuestion : oneList) {
+            List<AssessmentQuestionVo> twoList = new ArrayList<>();
+            for (AssessmentPlanQuestion assessmentQuestion : questionList) {
+                if(assessmentQuestion.getCategory() == 2 && assessmentQuestion.getParentId().equals(oneQuestion.getId())){
+                    AssessmentQuestionVo questionVo = BeanUtil.toBean(assessmentQuestion, AssessmentQuestionVo.class);
+                    twoList.add(questionVo);
+                }
+            }
+            oneQuestion.setChildren(twoList);
+        }
+
+        //循环选项
+        for (AssessmentQuestionVo oneQuestion : oneList) {
+            for (AssessmentQuestionVo twoQuestion : oneQuestion.getChildren()) {
+                List<AssessmentQuestionVo> optionList = new ArrayList<>();
+                for (AssessmentPlanQuestion assessmentQuestion : questionList) {
+                    if(assessmentQuestion.getCategory() == 3 && assessmentQuestion.getParentId().equals(twoQuestion.getId())){
+                        optionList.add(BeanUtil.toBean(assessmentQuestion, AssessmentQuestionVo.class));
+                    }
+                }
+                twoQuestion.setOptions(optionList);
+            }
+        }
+
+        vo.setChildren(oneList);
+        return null;
+    }
 }

+ 24 - 0
src/main/java/com/xjrsoft/module/assessment/vo/AssessmentPlanAnswerDetailVo.java

@@ -0,0 +1,24 @@
+package com.xjrsoft.module.assessment.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+* @title: 考核题目选项数量统计
+* @Author dzx
+* @Date: 2024-04-01
+* @Version 1.0
+*/
+@Data
+public class AssessmentPlanAnswerDetailVo {
+
+    @ApiModelProperty("问题id")
+    private Long questionId;
+
+    @ApiModelProperty("答案")
+    private Long answerId;
+
+    @ApiModelProperty("数量")
+    private Integer count;
+
+}

+ 61 - 0
src/main/java/com/xjrsoft/module/assessment/vo/AssessmentQuestionResultDetailVo.java

@@ -0,0 +1,61 @@
+package com.xjrsoft.module.assessment.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+* @title: 考核题目答案出参
+* @Author dzx
+* @Date: 2024-03-29
+* @Version 1.0
+*/
+@Data
+public class AssessmentQuestionResultDetailVo implements Serializable {
+
+    @ApiModelProperty("题目题干")
+    private String name;
+    /**
+     * 分数
+     */
+    @ApiModelProperty("分数")
+    private Long score;
+    /**
+     * 题目类型
+     */
+    @ApiModelProperty("题目类型")
+    private String type;
+    /**
+     * 是否必填(1:是 0:否)
+     */
+    @ApiModelProperty("是否必填(1:是 0:否)")
+    private Short required;
+
+    @ApiModelProperty("类别(1:大题 2:小题 3:选项)")
+    private Integer category;
+
+    @ApiModelProperty("选择数量")
+    private Integer chooseCount;
+
+    @ApiModelProperty("")
+    private Long id;
+
+    @ApiModelProperty("")
+    private Integer sortCode;
+
+    @ApiModelProperty("考核模板id(assessment_template)")
+    private Long assessmentTemplateId;
+
+    @ApiModelProperty("")
+    private Long parentId;
+
+    @ApiModelProperty("")
+    private List<AssessmentQuestionVo> children;
+    /**
+     * assessmentQuestion
+     */
+    @ApiModelProperty("题目选项")
+    private List<AssessmentQuestionVo> options;
+}

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

@@ -71,4 +71,5 @@ public class AssessmentQuestionVo implements ITreeNode<AssessmentQuestionVo, Lon
     @ApiModelProperty("答案")
     private String value;
 
+
 }

+ 2 - 2
src/main/resources/application-dev.yml

@@ -124,8 +124,8 @@ xjrsoft:
     secret1: z3R17Od4ROW1zPisguiQmTfx0NvcYKmoIu19-82vdtU
     agentid: 1000003
   mpWeChat:
-    appKey: wx93175d7fe68cd170
-    appSecret: 4bab1c5ccd9d4d1d7854464d7251becf
+    appKey: wx628ac080912b2a98
+    appSecret: f05692a5d71a9568d01a461928dd2b8f
   appletWeChat:
     appKey: wx72e974483a9174e4
     appSecret: 3bbe99f6964c9f4fc11a8aa1224ac4b3

+ 2 - 2
src/main/resources/application-pre.yml

@@ -108,8 +108,8 @@ xjrsoft:
     secret1: z3R17Od4ROW1zPisguiQmTfx0NvcYKmoIu19-82vdtU
     agentid: 1000003
   mpWeChat:
-    appKey: wx93175d7fe68cd170
-    appSecret: 4bab1c5ccd9d4d1d7854464d7251becf
+    appKey: wx628ac080912b2a98
+    appSecret: f05692a5d71a9568d01a461928dd2b8f
   appletWeChat:
     appKey: wx72e974483a9174e4
     appSecret: 3bbe99f6964c9f4fc11a8aa1224ac4b3

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

@@ -19,6 +19,10 @@
         FROM assessment_plan_answer_class t1
         LEFT JOIN base_class t2 ON t1.class_id = t2.id
         WHERE t1.delete_mark = 0 AND t1.assessment_template_plan_id = #{id}
+    </select>
 
+    <select id="getQuestionResult" resultType="com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerDetailVo">
+        SELECT question_id,answer_id,COUNT(*) FROM assessment_plan_answer_result WHERE delete_mark = 0 AND assessment_template_plan_id = #{id}
+        GROUP BY question_id,answer_id
     </select>
 </mapper>