Sfoglia il codice sorgente

评价管理接口

phoenix 1 anno fa
parent
commit
1576ca9ee0

+ 3 - 22
src/main/java/com/xjrsoft/module/evaluate/service/impl/EvaluateManageServiceImpl.java

@@ -6,7 +6,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.yulichang.base.MPJBaseServiceImpl;
-import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import com.xjrsoft.common.exception.MyException;
 import com.xjrsoft.module.evaluate.dto.EvaluateManagePageDto;
 import com.xjrsoft.module.evaluate.dto.EvaluateManageScoreDto;
@@ -104,7 +103,6 @@ public class EvaluateManageServiceImpl extends MPJBaseServiceImpl<EvaluateManage
         Page<EvaluateWritePageVo> mobilePage = evaluateManageMapper.getMobilePage(page, dto);
         //获取所有评价管理下的所有的已评对象的得分
         Map<String, Map<String, Integer>> scoreByManageIdAndObject = new HashMap<>();
-        Map<String, Integer> itemScore = new HashMap<>();
         if(dto != null && dto.getStatus() != null && dto.getStatus() == 1){
             List<Long> evaluateManageIdList = new ArrayList<>();
             List<Long> evaluateObjectIdList = new ArrayList<>();
@@ -113,20 +111,6 @@ public class EvaluateManageServiceImpl extends MPJBaseServiceImpl<EvaluateManage
                 evaluateObjectIdList.add(Long.parseLong(record.getEvaluateObjectId()));
             }
 
-            //获取评价管理下的模板下的题目数量
-            if(evaluateManageIdList.size() > 0){
-                MPJLambdaWrapper<EvaluateManageItem> evaluateManageItemMPJLambdaWrapper = new MPJLambdaWrapper<>();
-                evaluateManageItemMPJLambdaWrapper
-                        .selectCount(EvaluateManageItem::getId, EvaluateWritePageVo::getItemCount)
-                        .selectAs(EvaluateManageItem::getEvaluateManageId, EvaluateWritePageVo::getEvaluateManageId)
-                        .in(EvaluateManageItem::getEvaluateManageId, evaluateManageIdList)
-                        .disableSubLogicDel();
-                List<EvaluateWritePageVo> evaluateWritePageVoList = evaluateManageItemMapper.selectJoinList(EvaluateWritePageVo.class, evaluateManageItemMPJLambdaWrapper);
-                for (EvaluateWritePageVo e : evaluateWritePageVoList) {
-                    itemScore.put(e.getEvaluateManageId(), e.getItemCount());
-                }
-            }
-
             if(evaluateManageIdList.size() > 0 && evaluateObjectIdList.size() > 0){
                 List<EvaluateManageScoreVo> scoreList = evaluateManageMapper.getScoreList(new EvaluateManageScoreDto(){{
                     setEvaluateManageIdList(evaluateManageIdList);
@@ -148,12 +132,9 @@ public class EvaluateManageServiceImpl extends MPJBaseServiceImpl<EvaluateManage
             }
         }
 
-        for (EvaluateWritePageVo record : mobilePage.getRecords()) {
-            if(scoreByManageIdAndObject.size() > 0){
-                record.setTotalScore(scoreByManageIdAndObject.get(record.getEvaluateManageId()).get(record.getObjectId()));
-            }
-            if(itemScore.size() > 0){
-                record.setItemCount(itemScore.get(record.getEvaluateManageId()));
+        if(scoreByManageIdAndObject.size() > 0){
+            for (EvaluateWritePageVo record : mobilePage.getRecords()) {
+                record.setTotalScore(scoreByManageIdAndObject.get(record.getEvaluateManageId()).get(record.getEvaluateObjectId()));
             }
         }
 

+ 3 - 0
src/main/java/com/xjrsoft/module/evaluate/vo/EvaluateWriteVo.java

@@ -39,4 +39,7 @@ public class EvaluateWriteVo {
     @ApiModelProperty("题目数量")
     private Integer itemCount;
 
+    @ApiModelProperty("题目总分")
+    private Integer sumScore;
+
 }

+ 6 - 6
src/main/resources/mapper/evaluate/EvaluateManageMapper.xml

@@ -64,7 +64,7 @@
     </select>
 
     <select id="getWriteInfo" parameterType="com.xjrsoft.module.evaluate.dto.EvaluateWritePageDto" resultType="com.xjrsoft.module.evaluate.vo.EvaluateWriteVo">
-        select t1.id, t1.name,t1.start_time,t1.end_time,
+        select t1.id, t1.name,t2.total as sumScore,t1.start_time,t1.end_time,
                (SELECT COUNT(id) FROM evaluate_manage_item a WHERE t1.delete_mark = 0 AND a.evaluate_manage_id = t1.id) AS item_count
         from evaluate_manage t1
                  left join evaluate_template t2 on t2.id = t1.evaluate_template_id
@@ -88,21 +88,21 @@
     <select id="getScoreList" parameterType="com.xjrsoft.module.evaluate.dto.EvaluateManageScoreDto" resultType="com.xjrsoft.module.evaluate.vo.EvaluateManageScoreVo">
         select t.evaluate_manage_id,
                t.id as evaluateObjectId,
-               sum(t2.score)
+               sum(t2.score) as score
         from evaluate_object t
                  left join evaluate_executer t1 on t1.evaluate_object_id = t.id
                  left join evaluate_result t2 on t2.evaluated_object_id = t.id
         where t.delete_mark = 0
           and t1.delete_mark = 0
           and t.evaluate_manage_id in
-            <foreach item="evaluateManageItemId" index="index" collection="evaluateManageItemIdList" open="(" close=")"
+            <foreach item="evaluateManageId" index="index" collection="dto.evaluateManageIdList" open="(" close=")"
                      separator=",">
-                #{evaluateManageItemId}
+                #{evaluateManageId}
             </foreach>
           and t.id in
-            <foreach item="evaluateManageItemId" index="index" collection="evaluateManageItemIdList" open="(" close=")"
+            <foreach item="evaluateObjectId" index="index" collection="dto.evaluateObjectIdList" open="(" close=")"
                      separator=",">
-                #{evaluateManageItemId}
+                #{evaluateObjectId}
             </foreach>
           and t1.user_id = #{dto.userId}
           and t1.status = 1