|
@@ -2158,16 +2158,20 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
teacherIncomeInfo.setExpectSalary(teacherSalary.getExpectSalary());
|
|
|
teacherIncomeInfo.setSubsidy(Objects.nonNull(oldSalary)?oldSubsidy:teacherSalary.getSubsidy());
|
|
|
teacherIncomeInfo.setActualSalary(Objects.nonNull(oldSalary)?oldSalary:teacherSalary.getActualSalary());
|
|
|
+ teacherIncomeInfo.setExpectIncome(teacherIncomeInfo.getExpectSalary().add(teacherIncomeInfo.getSubsidy()));
|
|
|
+ if(BigDecimal.ZERO.compareTo(teacherIncomeInfo.getExpectIncome())>0){
|
|
|
+ teacherIncomeInfo.setExpectIncome(BigDecimal.ZERO);
|
|
|
+ }
|
|
|
//如果是已结算课程,则需要处理扣减原因
|
|
|
if(Objects.nonNull(oldSalary)){
|
|
|
//判断课程是否在试用期内
|
|
|
- boolean trail = StringUtils.isBlank(teacherSalary.getDeductionReason())||teacherSalary.getDeductionReason().indexOf("未转正")!=-1;
|
|
|
+ boolean trail = StringUtils.isNotBlank(teacherSalary.getDeductionReason())&&teacherSalary.getDeductionReason().indexOf("未转正")!=-1;
|
|
|
|
|
|
//如果上课日期在试用期内按80%结算
|
|
|
if(trail){
|
|
|
long trailReasonNum = teacherSalary.getDeductReasons().stream().filter(p -> DeductReasonEnum.TRAIL.equals(p.getDeductReason())).count();
|
|
|
if(trailReasonNum<=0){
|
|
|
- teacherSalary.getDeductReasons().add(new TeacherSalaryDeductReasonDto(DeductReasonEnum.TRAIL, oldSalary.subtract(oldSalary.multiply(new BigDecimal("0.8")))));
|
|
|
+ teacherSalary.getDeductReasons().add(new TeacherSalaryDeductReasonDto(DeductReasonEnum.TRAIL, teacherIncomeInfo.getExpectIncome().subtract(teacherIncomeInfo.getExpectIncome().multiply(new BigDecimal("0.8")))));
|
|
|
}
|
|
|
}else{
|
|
|
teacherSalary.setDeductReasons(teacherSalary.getDeductReasons().stream().filter(p->!DeductReasonEnum.TRAIL.equals(p.getDeductReason())).collect(Collectors.toList()));
|
|
@@ -2176,10 +2180,6 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
teacherIncomeInfo.setDeductReasons(teacherSalary.getDeductReasons());
|
|
|
teacherIncomeInfo.setTeacherAttendance(teacherAttendances.get(0));
|
|
|
teacherIncomeInfo.setBelongToDaya(teacherSalary.getBelongToDaya());
|
|
|
- teacherIncomeInfo.setExpectIncome(teacherIncomeInfo.getExpectSalary().add(teacherIncomeInfo.getSubsidy()));
|
|
|
- if(BigDecimal.ZERO.compareTo(teacherIncomeInfo.getExpectIncome())>0){
|
|
|
- teacherIncomeInfo.setExpectIncome(BigDecimal.ZERO);
|
|
|
- }
|
|
|
dataList.add(teacherIncomeInfo);
|
|
|
}
|
|
|
}
|
|
@@ -2250,6 +2250,6 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
userMap.put(teacherId, teacherId.toString());
|
|
|
}
|
|
|
sysMessageService.batchPushMessage(MessageTypeEnum.TEACHER_INCOME_REMIND,
|
|
|
- userMap, null, 0, "12?", "TEACHER","income_remind.mp3");
|
|
|
+ userMap, null, 0, "12", "TEACHER","income_remind.mp3");
|
|
|
}
|
|
|
}
|