|
@@ -12,6 +12,7 @@ import com.xjrsoft.module.base.entity.BaseSemester;
|
|
|
import com.xjrsoft.module.student.dto.BaseStudentInfoDetailDto;
|
|
|
import com.xjrsoft.module.student.dto.PbVXsxxsfytbExcelDto;
|
|
|
import com.xjrsoft.module.student.dto.PbVXsxxsfytbPageDto;
|
|
|
+import com.xjrsoft.module.student.dto.PbVXsxxsfytbStatDto;
|
|
|
import com.xjrsoft.module.student.dto.PersonalPortraitFeeInformationDto;
|
|
|
import com.xjrsoft.module.student.entity.BaseStudent;
|
|
|
import com.xjrsoft.module.student.entity.BaseStudentSchoolRoll;
|
|
@@ -22,17 +23,20 @@ import com.xjrsoft.module.student.mapper.PbVXsxxsfytbMapper;
|
|
|
import com.xjrsoft.module.student.service.IPbVXsxxsfytbService;
|
|
|
import com.xjrsoft.module.student.vo.BaseClassQfCountVo;
|
|
|
import com.xjrsoft.module.student.vo.FeeDetailListVo;
|
|
|
+import com.xjrsoft.module.student.vo.PbStudentCategoryVo;
|
|
|
import com.xjrsoft.module.student.vo.PbVXsxxsfytbExcelVo;
|
|
|
import com.xjrsoft.module.student.vo.PbVXsxxsfytbFeeitemVo;
|
|
|
import com.xjrsoft.module.student.vo.PbVXsxxsfytbPageVo;
|
|
|
import com.xjrsoft.module.student.vo.PbVXsxxsfytbPersonal;
|
|
|
import com.xjrsoft.module.student.vo.PbVXsxxsfytbPersonalMap;
|
|
|
import com.xjrsoft.module.student.vo.PersonalPortraitFeeInformationVo;
|
|
|
+import com.xjrsoft.module.student.vo.StringCountVo;
|
|
|
import com.xjrsoft.module.teacher.entity.XjrUser;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
+import java.math.RoundingMode;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.List;
|
|
@@ -262,4 +266,31 @@ public class PbVXsxxsfytbServiceImpl extends MPJBaseServiceImpl<PbVXsxxsfytbMapp
|
|
|
}
|
|
|
return l;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public PbStudentCategoryVo studentCategoryStat(PbVXsxxsfytbStatDto dto) {
|
|
|
+ List<StringCountVo> countVoList = pbVXsxxsfytbMapper.studentCategoryStat(dto);
|
|
|
+ PbStudentCategoryVo result = new PbStudentCategoryVo();
|
|
|
+ for (StringCountVo stringCountVo : countVoList) {
|
|
|
+ if("其他类型贫困".equals(stringCountVo.getName())){
|
|
|
+ result.setOtherPoorCount(stringCountVo.getCount());
|
|
|
+ }else if("普通学生(非贫困)".equals(stringCountVo.getName())){
|
|
|
+ result.setInclusiveCount(stringCountVo.getCount());
|
|
|
+ }else if("贫困生(建卡、低保、特困)".equals(stringCountVo.getName())){
|
|
|
+ result.setPoorCount(stringCountVo.getCount());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(result.getInclusiveCount() == null){
|
|
|
+ result.setInclusiveCount(0);
|
|
|
+ }
|
|
|
+ Integer allCount = (result.getInclusiveCount() == null?0:result.getInclusiveCount())
|
|
|
+ + (result.getOtherPoorCount() == null?0:result.getOtherPoorCount())
|
|
|
+ + (result.getPoorCount() == null?0:result.getPoorCount()) ;
|
|
|
+ BigDecimal divide = BigDecimal.ZERO;
|
|
|
+ if(allCount != 0){
|
|
|
+ divide = BigDecimal.valueOf(result.getInclusiveCount()).divide(BigDecimal.valueOf(allCount), 4, RoundingMode.HALF_UP);
|
|
|
+ }
|
|
|
+ result.setInclusiveRatio(divide.doubleValue());
|
|
|
+ return result;
|
|
|
+ }
|
|
|
}
|