fix: 监控流程-企标制修订-汇总流程评分仅显示最新的分数

This commit is contained in:
wxyclub
2023-12-06 17:35:32 +08:00
parent f73ac8faea
commit be76631e84
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.business_main.datas.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ydw.bat.wkflow.business_auth.LawsUserInfoService;
@@ -122,9 +123,40 @@ public class BusProcessEvaluationHisServiceImpl extends ServiceImpl<BusProcessEv
@Override
public List<BusProcessEvaluationHis> evaluationHisList(String pid){
QueryWrapper wrapper = new QueryWrapper();
wrapper.eq("P_ID",pid);
wrapper.orderByDesc("CREATE_TIME","TASK_INFO");
return this.baseMapper.selectList(wrapper);
LambdaQueryWrapper<BusProcessEvaluationHis> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(BusProcessEvaluationHis::getPId,pid);
wrapper.orderByDesc(BusProcessEvaluationHis::getCreateTime,BusProcessEvaluationHis::getTaskInfo);
List<BusProcessEvaluationHis> busProcessEvaluationHis = this.baseMapper.selectList(wrapper);
if(busProcessEvaluationHis.isEmpty()){
return null;
}
Optional<BusProcessEvaluationHis> fushen = busProcessEvaluationHis.stream()
.filter(each -> "标准化复审".equals(each.getTaskInfo()))
.max(Comparator.comparing(BusProcessEvaluationHis::getCreateTime));
Optional<BusProcessEvaluationHis> chongxinpinshen = busProcessEvaluationHis.stream()
.filter(each -> "重新技术委员会评审、评审意见修改".equals(each.getTaskInfo()))
.max(Comparator.comparing(BusProcessEvaluationHis::getCreateTime));
Optional<BusProcessEvaluationHis> pinshen = busProcessEvaluationHis.stream()
.filter(each -> "技术委员会评审、评审意见修改".equals(each.getTaskInfo()))
.max(Comparator.comparing(BusProcessEvaluationHis::getCreateTime));
Optional<BusProcessEvaluationHis> jinlishenhe = busProcessEvaluationHis.stream()
.filter(each -> "标准法规部高级经理审核".equals(each.getTaskInfo()))
.max(Comparator.comparing(BusProcessEvaluationHis::getCreateTime));
List<BusProcessEvaluationHis> zhengqiuyijian = busProcessEvaluationHis.stream()
.filter(each -> "征求意见".equals(each.getTaskInfo()))
.collect(Collectors.toList());
List<BusProcessEvaluationHis> finalEvaluationList = new ArrayList<>();
if (chongxinpinshen.isPresent()) {
fushen.ifPresent(finalEvaluationList::add);
chongxinpinshen.ifPresent(finalEvaluationList::add);
jinlishenhe.ifPresent(finalEvaluationList::add);
finalEvaluationList.addAll(zhengqiuyijian);
} else {
fushen.ifPresent(finalEvaluationList::add);
pinshen.ifPresent(finalEvaluationList::add);
jinlishenhe.ifPresent(finalEvaluationList::add);
finalEvaluationList.addAll(zhengqiuyijian);
}
return finalEvaluationList;
}
}