Browse Source

fix:课酬

Joburgess 4 years ago
parent
commit
44f1a9bea6

+ 6 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java

@@ -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分钟后至课程结束前退出教室