|
@@ -271,7 +271,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
courseScheduleTeacherSalary.setDeductionReason(StringUtils.join(deductReasons, ";"));
|
|
|
}
|
|
|
|
|
|
- courseScheduleTeacherSalary.setActualSalary(finalSalary);
|
|
|
+ courseScheduleTeacherSalary.setActualSalary(finalSalary.compareTo(BigDecimal.ZERO)<0?BigDecimal.ZERO:finalSalary);
|
|
|
courseScheduleTeacherSalary.setSettlementTime(now);
|
|
|
courseScheduleTeacherSalaryDao.update(courseScheduleTeacherSalary);
|
|
|
});
|
|
@@ -393,7 +393,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
|
|
|
BigDecimal finalSalary = courseScheduleTeacherSalary.getExpectSalary().subtract(deductCost).setScale(BigDecimal.ZERO.intValue(), BigDecimal.ROUND_HALF_UP);
|
|
|
|
|
|
- courseScheduleTeacherSalary.setActualSalary(finalSalary);
|
|
|
+ courseScheduleTeacherSalary.setActualSalary(finalSalary.compareTo(BigDecimal.ZERO)<0?BigDecimal.ZERO:finalSalary);
|
|
|
courseScheduleTeacherSalary.setSettlementTime(now);
|
|
|
courseScheduleTeacherSalaryDao.update(courseScheduleTeacherSalary);
|
|
|
});
|
|
@@ -526,7 +526,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
TeacherAttendance teacherAttendance = courseTeacherAttendances.get(0);
|
|
|
if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(teacherAttendance.getSignInStatus())){
|
|
|
//未签到扣除全部课酬
|
|
|
- deductCost = deductCost.add(courseScheduleTeacherSalary.getExpectSalary());
|
|
|
+ deductCost = deductCost.add(teacherSalary);
|
|
|
deductReasons.add("未签到扣除全部课酬");
|
|
|
}else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignInStatus())){
|
|
|
//异常签到
|
|
@@ -538,14 +538,14 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
deductReasons.add("课程开始前1分钟至开始后3分钟进入教室扣除一半课酬");
|
|
|
}else if(signCourseTimeBetween<=-3){
|
|
|
//课程开始后3分钟后进入教室
|
|
|
- deductCost = deductCost.add(courseScheduleTeacherSalary.getExpectSalary());
|
|
|
+ deductCost = deductCost.add(teacherSalary);
|
|
|
deductReasons.add("课程开始后3分钟进入教室扣除全部课酬");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(teacherAttendance.getSignOutStatus())){
|
|
|
//未签退扣除一半课酬
|
|
|
- deductCost = deductCost.add(courseScheduleTeacherSalary.getExpectSalary().divide(new BigDecimal(2)));
|
|
|
+ deductCost = deductCost.add(teacherSalary.divide(new BigDecimal(2)));
|
|
|
deductReasons.add("未签退扣除一半课酬");
|
|
|
}else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignOutStatus())){
|
|
|
//异常签退
|
|
@@ -554,7 +554,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
|
|
|
if(signOutCourseTimeBetween>3){
|
|
|
//课程开始前20分钟至开始后3分钟退出教室
|
|
|
- deductCost = deductCost.add(courseScheduleTeacherSalary.getExpectSalary());
|
|
|
+ deductCost = deductCost.add(teacherSalary);
|
|
|
deductReasons.add("课程结束前3分钟之前退出教室扣除全部课酬");
|
|
|
}else if(signOutCourseTimeBetween<=3&&signOutCourseTimeBetween>0){
|
|
|
//课程结束前3分钟后至课程结束前退出教室
|