|
@@ -15,6 +15,7 @@ import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.text.Collator;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
@@ -175,9 +176,10 @@ public class SchoolIndexStatServiceImpl implements SchoolIndexStatService {
|
|
|
//获取学员考勤数据
|
|
|
SchoolIndexStatWrapper.StudentAttendance studentAttendance = studentAttendanceDao.statCoopAttendance(musicGroupIds,queryDto);
|
|
|
if(Objects.nonNull(studentAttendance)){
|
|
|
- int num = studentAttendance.getNormalNum() + studentAttendance.getLateNum();
|
|
|
+ Integer num = studentAttendance.getNormalNum() + studentAttendance.getLateNum();
|
|
|
if(num > 0){
|
|
|
- studentAttendance.setAttendanceRate(num / studentAttendance.getTotalNum());
|
|
|
+ studentAttendance.setAttendanceRate(new BigDecimal(num).
|
|
|
+ divide(new BigDecimal(studentAttendance.getTotalNum()),4,BigDecimal.ROUND_DOWN).multiply(new BigDecimal(100)).setScale(2));
|
|
|
}
|
|
|
}
|
|
|
return studentAttendance;
|
|
@@ -195,7 +197,18 @@ public class SchoolIndexStatServiceImpl implements SchoolIndexStatService {
|
|
|
return new SchoolIndexStatWrapper.StudentLesson();
|
|
|
}
|
|
|
this.setTime(queryDto);
|
|
|
- return lessonExaminationDao.schoolLessonStat(musicGroupIds,queryDto);
|
|
|
+ SchoolIndexStatWrapper.StudentLesson studentLesson = lessonExaminationDao.schoolLessonStat(musicGroupIds, queryDto);
|
|
|
+ if(Objects.nonNull(studentLesson)){
|
|
|
+ if(studentLesson.getActualNum() > 0){
|
|
|
+ studentLesson.setCommitRate(new BigDecimal(studentLesson.getActualNum()).
|
|
|
+ divide(new BigDecimal(studentLesson.getExpectNum()),4,BigDecimal.ROUND_DOWN).multiply(new BigDecimal(100)).setScale(2));
|
|
|
+ }
|
|
|
+ if(studentLesson.getPassNum() > 0){
|
|
|
+ studentLesson.setPassRate(new BigDecimal(studentLesson.getPassNum()).
|
|
|
+ divide(new BigDecimal(studentLesson.getExpectNum()),4,BigDecimal.ROUND_DOWN).multiply(new BigDecimal(100)).setScale(2));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return studentLesson;
|
|
|
}
|
|
|
|
|
|
private void setTime(SchoolIndexStatWrapper.QueryDto queryDto){
|