소스 검색

解决选择没有班级的年级,计算出勤率报错的问题

dzx 1 년 전
부모
커밋
891385f4c8
1개의 변경된 파일7개의 추가작업 그리고 2개의 파일을 삭제
  1. 7 2
      src/main/java/com/xjrsoft/module/attendance/controller/StatisticsController.java

+ 7 - 2
src/main/java/com/xjrsoft/module/attendance/controller/StatisticsController.java

@@ -179,8 +179,13 @@ public class StatisticsController {
             statisticsVo.setAbsenteeismCount(statisticsVo.getAllCount() - statisticsVo.getLeaveCount() - statisticsVo.getActualCount());
 
             //计算出勤率
-            BigDecimal divide = BigDecimal.valueOf(statisticsVo.getActualCount()).divide(BigDecimal.valueOf(statisticsVo.getAllCount()), 4, RoundingMode.HALF_UP);
-            statisticsVo.setAttendanceRate(divide.doubleValue());
+            if(statisticsVo.getAllCount() != null && statisticsVo.getAllCount() != 0){
+                BigDecimal divide = BigDecimal.valueOf(statisticsVo.getActualCount()).divide(BigDecimal.valueOf(statisticsVo.getAllCount()), 4, RoundingMode.HALF_UP);
+                statisticsVo.setAttendanceRate(divide.doubleValue());
+            }else{
+                statisticsVo.setAttendanceRate(0D);
+            }
+
         }
 
         return RT.ok(statisticsVo);