|
@@ -4,13 +4,13 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.diagbot.dto.AverageStatisticsDTO;
|
|
|
import com.diagbot.dto.ResultDetailDTO;
|
|
|
import com.diagbot.entity.BehospitalInfo;
|
|
|
-import com.diagbot.entity.QcresultInfo;
|
|
|
import com.diagbot.enums.IsDeleteEnum;
|
|
|
import com.diagbot.util.BeanUtil;
|
|
|
import com.diagbot.util.DateUtil;
|
|
|
import com.diagbot.util.ListUtil;
|
|
|
import com.diagbot.util.SysUserUtils;
|
|
|
import com.diagbot.vo.FilterVO;
|
|
|
+import com.diagbot.vo.QcresultFilterVO;
|
|
|
import com.google.common.collect.Lists;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
@@ -22,7 +22,6 @@ import java.util.HashMap;
|
|
|
import java.util.LinkedHashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
-import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @Description:
|
|
@@ -66,56 +65,53 @@ public class ConsoleFacade {
|
|
|
behospitalInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
.eq("hospital_id", hospitalId)
|
|
|
.ge("leave_hospital_date", startDate);
|
|
|
- List<BehospitalInfo> behospitalInfoList = behospitalInfoFacade.list(behospitalInfoQueryWrapper);
|
|
|
- if (ListUtil.isNotEmpty(behospitalInfoList)) {
|
|
|
- //本月病历数
|
|
|
- retMap.put("本月病历数", behospitalInfoList.size());
|
|
|
- }
|
|
|
+ int behospitalInfoCount = behospitalInfoFacade.count(behospitalInfoQueryWrapper);
|
|
|
+ //本月病历数
|
|
|
+ retMap.put("本月病历数", behospitalInfoCount);
|
|
|
|
|
|
- List<QcresultInfo> qcresultInfoList = qcresultInfoFacade.getQcresultSelectively(filterVO);
|
|
|
- if (ListUtil.isNotEmpty(qcresultInfoList)) {
|
|
|
- retMap.put("本月质控数-人工", qcresultInfoList
|
|
|
- .stream()
|
|
|
- .filter(i -> i.getGradeType().equals(2))
|
|
|
- .collect(Collectors.toList())
|
|
|
- .size());
|
|
|
- retMap.put("本月质控数-机器", qcresultInfoList
|
|
|
- .stream()
|
|
|
- .filter(i -> i.getGradeType().equals(1))
|
|
|
- .collect(Collectors.toList())
|
|
|
- .size());
|
|
|
- retMap.put("本月甲级病历-人工", qcresultInfoList
|
|
|
- .stream()
|
|
|
- .filter(i -> i.getGradeType().equals(2) && i.getLevel().equals("甲"))
|
|
|
- .collect(Collectors.toList())
|
|
|
- .size());
|
|
|
- retMap.put("本月甲级病历-机器", qcresultInfoList
|
|
|
- .stream()
|
|
|
- .filter(i -> i.getGradeType().equals(1) && i.getLevel().equals("甲"))
|
|
|
- .collect(Collectors.toList())
|
|
|
- .size());
|
|
|
- retMap.put("本月乙级病历-人工", qcresultInfoList
|
|
|
- .stream()
|
|
|
- .filter(i -> i.getGradeType().equals(2) && i.getLevel().equals("乙"))
|
|
|
- .collect(Collectors.toList())
|
|
|
- .size());
|
|
|
- retMap.put("本月乙级病历-机器", qcresultInfoList
|
|
|
- .stream()
|
|
|
- .filter(i -> i.getGradeType().equals(1) && i.getLevel().equals("乙"))
|
|
|
- .collect(Collectors.toList())
|
|
|
- .size());
|
|
|
- retMap.put("本月不合格病历-人工", qcresultInfoList
|
|
|
- .stream()
|
|
|
- .filter(i -> i.getGradeType().equals(2) && i.getLevel().equals("丙"))
|
|
|
- .collect(Collectors.toList())
|
|
|
- .size());
|
|
|
- retMap.put("本月不合格病历-机器", qcresultInfoList
|
|
|
- .stream()
|
|
|
- .filter(i -> i.getGradeType().equals(1) && i.getLevel().equals("丙"))
|
|
|
- .collect(Collectors.toList())
|
|
|
- .size());
|
|
|
- }
|
|
|
|
|
|
+ QcresultFilterVO qcresultFilterVO = new QcresultFilterVO();
|
|
|
+ BeanUtil.copyProperties(qcresultFilterVO, filterVO);
|
|
|
+ //本月质控数-人工
|
|
|
+ qcresultFilterVO.setGradeType(2);
|
|
|
+ qcresultFilterVO.setLevel("");
|
|
|
+ int qcresultByGradeType2Count = qcresultInfoFacade.getQcresultSelectively(qcresultFilterVO);
|
|
|
+ retMap.put("本月质控数-人工", qcresultByGradeType2Count);
|
|
|
+ //本月质控数-机器
|
|
|
+ qcresultFilterVO.setGradeType(1);
|
|
|
+ qcresultFilterVO.setLevel("");
|
|
|
+ int qcresultByGradeType1Count = qcresultInfoFacade.getQcresultSelectively(qcresultFilterVO);
|
|
|
+ retMap.put("本月质控数-机器", qcresultByGradeType1Count);
|
|
|
+ //本月甲级病历-人工
|
|
|
+ qcresultFilterVO.setGradeType(2);
|
|
|
+ qcresultFilterVO.setLevel("甲");
|
|
|
+ int qcresultByGradeType2AndLevel1Count = qcresultInfoFacade.getQcresultSelectively(qcresultFilterVO);
|
|
|
+ retMap.put("本月甲级病历-人工", qcresultByGradeType2AndLevel1Count);
|
|
|
+ //本月甲级病历-机器
|
|
|
+ qcresultFilterVO.setGradeType(1);
|
|
|
+ qcresultFilterVO.setLevel("甲");
|
|
|
+ int qcresultByGradeType1AndLevel1Count = qcresultInfoFacade.getQcresultSelectively(qcresultFilterVO);
|
|
|
+ retMap.put("本月甲级病历-机器", qcresultByGradeType1AndLevel1Count);
|
|
|
+ //本月乙级病历-人工
|
|
|
+ qcresultFilterVO.setGradeType(2);
|
|
|
+ qcresultFilterVO.setLevel("乙");
|
|
|
+ int qcresultByGradeType2AndLevel2Count = qcresultInfoFacade.getQcresultSelectively(qcresultFilterVO);
|
|
|
+ retMap.put("本月乙级病历-人工", qcresultByGradeType2AndLevel2Count);
|
|
|
+ //本月乙级病历-机器
|
|
|
+ qcresultFilterVO.setGradeType(1);
|
|
|
+ qcresultFilterVO.setLevel("乙");
|
|
|
+ int qcresultByGradeType1AndLevel2Count = qcresultInfoFacade.getQcresultSelectively(qcresultFilterVO);
|
|
|
+ retMap.put("本月乙级病历-机器", qcresultByGradeType1AndLevel2Count);
|
|
|
+ //本月乙级病历-人工
|
|
|
+ qcresultFilterVO.setGradeType(2);
|
|
|
+ qcresultFilterVO.setLevel("丙");
|
|
|
+ int qcresultByGradeType2AndLevel3Count = qcresultInfoFacade.getQcresultSelectively(qcresultFilterVO);
|
|
|
+ retMap.put("本月不合格病历-人工", qcresultByGradeType2AndLevel3Count);
|
|
|
+ //本月乙级病历-机器
|
|
|
+ qcresultFilterVO.setGradeType(1);
|
|
|
+ qcresultFilterVO.setLevel("丙");
|
|
|
+ int qcresultByGradeType1AndLevel3Count = qcresultInfoFacade.getQcresultSelectively(qcresultFilterVO);
|
|
|
+ retMap.put("本月不合格病历-机器", qcresultByGradeType1AndLevel3Count);
|
|
|
return retMap;
|
|
|
}
|
|
|
|
|
@@ -139,7 +135,7 @@ public class ConsoleFacade {
|
|
|
List<ResultDetailDTO> results = behospitalInfoFacade.resultStatistics(filterVO);
|
|
|
if (ListUtil.isNotEmpty(results)) {
|
|
|
results.forEach(result -> {
|
|
|
- DecimalFormat df = new DecimalFormat("#.00");
|
|
|
+ DecimalFormat df = new DecimalFormat("#0.00");
|
|
|
String percentStr
|
|
|
= df.format(BigDecimal.valueOf(result.getPercent()).multiply(BigDecimal.valueOf(100))) + "%";
|
|
|
result.setPercentStr(percentStr);
|