Parcourir la source

评价结果查看调整

dzx il y a 1 an
Parent
commit
5f23262dd2

+ 2 - 1
src/main/java/com/xjrsoft/module/evaluate/mapper/EvaluateResultMapper.java

@@ -5,6 +5,7 @@ import com.github.yulichang.base.MPJBaseMapper;
 import com.xjrsoft.module.evaluate.dto.EvaluateResultDetailPageDetailDto;
 import com.xjrsoft.module.evaluate.dto.EvaluateResultDetailPageDto;
 import com.xjrsoft.module.evaluate.dto.EvaluateResultIndexPageDto;
+import com.xjrsoft.module.evaluate.dto.ResultViewingPageDto;
 import com.xjrsoft.module.evaluate.dto.TeaEvaluateClassDto;
 import com.xjrsoft.module.evaluate.entity.EvaluateResult;
 import com.xjrsoft.module.evaluate.vo.EvaluateResultDetailPageDetailList;
@@ -43,5 +44,5 @@ public interface EvaluateResultMapper extends MPJBaseMapper<EvaluateResult> {
 
     List<TeaEvaluateClassListVo> getTeaEvaluateClassList(@Param("dto") TeaEvaluateClassDto dto);
 
-    List<ResultViewingListVo> getResultViewingList(@Param("evaluateManageId") Long evaluateManageId);
+    List<ResultViewingListVo> getResultViewingList(@Param("dto") ResultViewingPageDto dto);
 }

+ 8 - 4
src/main/java/com/xjrsoft/module/evaluate/service/impl/EvaluateResultServiceImpl.java

@@ -1,6 +1,7 @@
 package com.xjrsoft.module.evaluate.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.github.yulichang.base.MPJBaseServiceImpl;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -122,6 +123,7 @@ public class EvaluateResultServiceImpl extends MPJBaseServiceImpl<EvaluateResult
                 .eq(EvaluateObject::getEvaluateManageId, dto.getEvaluateManageId())
                 .eq((dto.getBaseGradeId() != null && dto.getBaseGradeId() > 0), BaseClass::getGradeId, dto.getBaseGradeId())
                 .eq((dto.getClassId() != null && dto.getClassId() > 0), BaseClass::getId, dto.getClassId())
+                .eq(!ObjectUtil.isNotNull(dto.getTeacherId()), EvaluateObject::getObjectId, dto.getTeacherId())
                 .like((dto.getName() != null && !("").equals(dto.getName())), XjrUser::getName, dto.getName())
                 .disableSubLogicDel();
         List<ResultViewingPageVo> list = evaluateObjectMapper.selectJoinList(ResultViewingPageVo.class, evaluateObjectMPJLambdaWrapper);
@@ -169,13 +171,15 @@ public class EvaluateResultServiceImpl extends MPJBaseServiceImpl<EvaluateResult
                     .collect(Collectors.groupingBy(ResultViewingPageVo::getObjectId));
 
         }
-        List<ResultViewingListVo> resultViewingList = evaluateResultMapper.getResultViewingList(dto.getEvaluateManageId());
+        List<ResultViewingListVo> resultViewingList = evaluateResultMapper.getResultViewingList(dto);
         //遍历分页记录
         for (ResultViewingPageVo resultViewingPageVo : list) {
             List<ResultViewingPageVo> resultViewingPageVoList = groupedByObjectIdList.get(resultViewingPageVo.getObjectId());
             Map<Long, List<ResultViewingListVo>> itemMaps = resultViewingList.stream().filter(x -> x.getObjectId().equals(resultViewingPageVo.getObjectId()))
                     .collect(Collectors.groupingBy(ResultViewingListVo::getEvaluateManageItemId));
-
+            if(itemMaps.isEmpty()){
+                continue;
+            }
             if(resultViewingPageVoList != null && !resultViewingPageVoList.isEmpty()){
                 for (ResultViewingPageVo r : resultViewingPageVoList) {
                     double v = itemMaps.get(r.getEvaluateManageItemId()).stream().mapToDouble(ResultViewingListVo::getScore).average().orElse(0.0);
@@ -207,10 +211,10 @@ public class EvaluateResultServiceImpl extends MPJBaseServiceImpl<EvaluateResult
         }
 
         for (ResultViewingPageVo pageVo : resultData) {
-            pageVo.setSynthesisScore(synthesisScoreMap.get(pageVo.getObjectId()) + "");
+            pageVo.setSynthesisScore(BigDecimal .valueOf(synthesisScoreMap.get(pageVo.getObjectId())).setScale(2, RoundingMode.HALF_UP).doubleValue() + "");
 
             Double itemScore = itemListMaps.get(pageVo.getObjectId() + "" + pageVo.getTopic());
-            pageVo.setTopicScore(itemScore + "");
+            pageVo.setTopicScore(BigDecimal .valueOf(itemScore).setScale(2, RoundingMode.HALF_UP).doubleValue()+ "");
         }
 
         return resultData;

+ 7 - 2
src/main/resources/mapper/evaluate/EvaluateResultMapper.xml

@@ -205,10 +205,15 @@
         AND t4.evaluate_type = #{dto.evaluateType}
     </select>
 
-    <select id="getResultViewingList" resultType="com.xjrsoft.module.evaluate.vo.ResultViewingListVo">
+    <select id="getResultViewingList" parameterType="com.xjrsoft.module.evaluate.dto.ResultViewingPageDto" resultType="com.xjrsoft.module.evaluate.vo.ResultViewingListVo">
         SELECT t1.id,t2.object_id,t3.id as evaluate_manage_item_id,t1.score,t1.user_id FROM evaluate_result t1
         INNER JOIN evaluate_object t2 ON t1.evaluated_object_id = t2.id
         INNER JOIN evaluate_manage_item t3 ON t3.id = t1.evaluate_item_id
-        WHERE t3.evaluate_manage_id = #{evaluateManageId}
+        INNER JOIN evaluate_submit_record t4 ON t1.submit_record_id = t4.id
+        WHERE t3.evaluate_manage_id = #{dto.evaluateManageId}
+        and t4.status = 2
+        <if test="dto.teacherId != null">
+            AND t2.object_id =  #{dto.teacherId}
+        </if>
     </select>
 </mapper>