|
@@ -828,6 +828,14 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ public void confirmTeacherMonthSalary(Integer teacherId, String month) {
|
|
|
+ if(Objects.isNull(month)){
|
|
|
+ month=DateUtil.dateToString(DateUtil.addMonths(new Date(), -1), "yyyy-MM");
|
|
|
+ }
|
|
|
+ courseScheduleTeacherSalaryDao.findTeacherSalaryIdsWithMonth(teacherId,month);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
public PageInfo<TeacherCourseSalaryDetail4WebDto> findIsSettlementCourseSalarys(CourseSalaryQueryInfo4Web queryInfo) {
|
|
|
PageInfo<TeacherCourseSalaryDetail4WebDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
|
|
|
Map<String, Object> params = new HashMap<>();
|
|
@@ -855,6 +863,33 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
PageInfo<TeacherCourseSalaryDetail4WebDto> pageInfo = findIsSettlementCourseSalarys(queryInfo4Web);
|
|
|
Map<String, Object> result=new HashMap<>();
|
|
|
result.put("pageInfo",pageInfo);
|
|
|
+ Map<String, BigDecimal> groupTypeSalaryMap = new HashMap<>();
|
|
|
+ if(queryInfo4Web.getPage()<=1){
|
|
|
+ List<CourseTeacherSalaryStatisticsDto> teacherGroupTypeSalary = courseScheduleTeacherSalaryDao.getTeacherGroupTypeSalary(queryInfo4Web.getMonth(), queryInfo4Web.getTeacherId());
|
|
|
+ groupTypeSalaryMap = teacherGroupTypeSalary.stream()
|
|
|
+ .collect(Collectors.toMap(c->c.getGroupType().getCode(),
|
|
|
+ c -> Objects.isNull(c.getTotalReduceSalary()) ? c.getTotalActualSalary() : c.getTotalActualSalary().subtract(c.getTotalReduceSalary())));
|
|
|
+ }
|
|
|
+ result.put("stat", groupTypeSalaryMap);
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Map<String, Object> findTeacherYearSalarys(Integer teacherId, String year) {
|
|
|
+ if(Objects.isNull(year)){
|
|
|
+ year=DateUtil.getYear(new Date());
|
|
|
+ }
|
|
|
+ List<CourseTeacherSalaryStatisticsDto> teacherMonthSalarys = courseScheduleTeacherSalaryDao.getTeacherMonthSalarys(teacherId, year);
|
|
|
+ BigDecimal totalSalary = BigDecimal.ZERO;
|
|
|
+ for (CourseTeacherSalaryStatisticsDto teacherMonthSalary : teacherMonthSalarys) {
|
|
|
+ if(Objects.nonNull(teacherMonthSalary.getTotalReduceSalary())){
|
|
|
+ teacherMonthSalary.setTotalActualSalary(teacherMonthSalary.getTotalReduceSalary().subtract(teacherMonthSalary.getTotalReduceSalary()));
|
|
|
+ }
|
|
|
+ totalSalary = totalSalary.add(teacherMonthSalary.getTotalActualSalary());
|
|
|
+ }
|
|
|
+ Map<String, Object> result=new HashMap<>();
|
|
|
+ result.put("monthSalarys", teacherMonthSalarys);
|
|
|
+ result.put("totalSalary", totalSalary);
|
|
|
return result;
|
|
|
}
|
|
|
}
|