diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/statistics/impl/StatisticsServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/statistics/impl/StatisticsServiceImpl.java index 6f220e5d..c969ece3 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/statistics/impl/StatisticsServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/statistics/impl/StatisticsServiceImpl.java @@ -325,7 +325,7 @@ public class StatisticsServiceImpl implements IStatisticsService { // AI拨打人数成功率 if (CollectionUtils.isNotEmpty(aiSuccessList)) { Map> aiSuccessGroupByPatient = aiSuccessList.stream().collect(Collectors.groupingBy(PhoneDialRecordVo::getPatientId)); - retObj.setAiPatientSuccessRate(new BigDecimal(aiSuccessGroupByPatient.keySet().size()).divide(new BigDecimal(retObj.getAiPatientNum()), 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100"))); + retObj.setAiPatientSuccessRate((retObj.getAiPatientNum() == null || retObj.getAiPatientNum() == 0) ? BigDecimal.ZERO :new BigDecimal(aiSuccessGroupByPatient.keySet().size()).divide(new BigDecimal(retObj.getAiPatientNum()), 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100"))); } } @@ -344,7 +344,7 @@ public class StatisticsServiceImpl implements IStatisticsService { // 人工拨打人数成功率 if (CollectionUtils.isNotEmpty(commonSuccessList)) { Map> commonSuccessGroupByPatient = commonSuccessList.stream().collect(Collectors.groupingBy(PhoneDialRecordVo::getPatientId)); - retObj.setCommonPatientSuccessRate(new BigDecimal(commonSuccessGroupByPatient.keySet().size()).divide(new BigDecimal(retObj.getCommonPatientNum()), 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100"))); + retObj.setCommonPatientSuccessRate((retObj.getCommonPatientNum() == null || retObj.getCommonPatientNum()== 0) ? BigDecimal.ZERO : new BigDecimal(commonSuccessGroupByPatient.keySet().size()).divide(new BigDecimal(retObj.getCommonPatientNum()), 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100"))); } } return retObj;