فهرست منبع

fix:1、课酬结算补贴

Joburgess 4 سال پیش
والد
کامیت
edfd4f6347
1فایلهای تغییر یافته به همراه15 افزوده شده و 12 حذف شده
  1. 15 12
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java

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

@@ -236,7 +236,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             courseScheduleTeacherSalary.setSubsidy(subsidy);
             courseScheduleTeacherSalary.setExpectSalary(courseScheduleTeacherSalary.getExpectSalary().add(subsidy));
 
-            if(BigDecimal.ZERO.compareTo(subsidy)<0){
+            if(BigDecimal.ZERO.compareTo(subsidy)!=0){
                 deductReasons.add("教学点补贴:" + subsidy);
             }
 
@@ -296,7 +296,8 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             if(BigDecimal.ZERO.compareTo(deductCost)<0){
                 deductReasons.add("扣除总费用:" + deductCost);
             }
-            courseScheduleTeacherSalary.setDeductionReason(StringUtils.join(deductReasons, ";"));
+            if(!CollectionUtils.isEmpty(deductReasons))
+                courseScheduleTeacherSalary.setDeductionReason(StringUtils.join(deductReasons, ";"));
             courseScheduleTeacherSalary.setActualSalary(finalSalary.compareTo(BigDecimal.ZERO)<0?BigDecimal.ZERO:finalSalary);
             courseScheduleTeacherSalary.setSettlementTime(now);
             courseScheduleTeacherSalaryDao.update(courseScheduleTeacherSalary);
@@ -370,7 +371,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             }
             courseScheduleTeacherSalary.setSubsidy(subsidy);
             courseScheduleTeacherSalary.setExpectSalary(courseScheduleTeacherSalary.getExpectSalary().add(subsidy));
-            if(BigDecimal.ZERO.compareTo(subsidy)<0){
+            if(BigDecimal.ZERO.compareTo(subsidy)!=0){
                 deductReasons.add("教学点补贴:" + subsidy);
             }
 
@@ -430,8 +431,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                 }
 
                 if(TeachModeEnum.OFFLINE.equals(courseScheduleTeacherSalary.getCourseSchedule().getTeachMode())){
-                    deductCost = courseScheduleTeacherSalary.getExpectSalary();
-                    deductReasons.clear();
+                    deductCost = deductCost.add(courseScheduleTeacherSalary.getExpectSalary());
                     deductReasons.add("点名时经纬度不在范围内扣除全部课酬");
                 }
             }
@@ -439,7 +439,8 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             if(BigDecimal.ZERO.compareTo(deductCost)<0){
                 deductReasons.add("扣除总费用:" + deductCost);
             }
-            courseScheduleTeacherSalary.setDeductionReason(StringUtils.join(deductReasons, ";"));
+            if(!CollectionUtils.isEmpty(deductReasons))
+                courseScheduleTeacherSalary.setDeductionReason(StringUtils.join(deductReasons, ";"));
 
             BigDecimal finalSalary = courseScheduleTeacherSalary.getExpectSalary().subtract(deductCost).setScale(BigDecimal.ZERO.intValue(), BigDecimal.ROUND_HALF_UP);
 
@@ -579,7 +580,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                     subsidy = new BigDecimal(0);
                 }
                 teacherSalary = teacherSalary.add(subsidy);
-                if(BigDecimal.ZERO.compareTo(subsidy)<0){
+                if(BigDecimal.ZERO.compareTo(subsidy)!=0){
                     deductReasons.add("教学点补贴:" + subsidy);
                 }
 
@@ -639,7 +640,8 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                 if(BigDecimal.ZERO.compareTo(deductCost)<0){
                     deductReasons.add("扣除总费用:" + deductCost);
                 }
-                courseScheduleTeacherSalary.setDeductionReason(org.apache.commons.lang3.StringUtils.join(deductReasons, ";"));
+                if(!CollectionUtils.isEmpty(deductReasons))
+                    courseScheduleTeacherSalary.setDeductionReason(org.apache.commons.lang3.StringUtils.join(deductReasons, ";"));
 
                 //更新教师结算信息
                 courseScheduleTeacherSalary.setSubsidy(subsidy);
@@ -694,7 +696,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                 subsidy = new BigDecimal(0);
             }
             teacherSalary = teacherSalary.add(subsidy);
-            if(BigDecimal.ZERO.compareTo(subsidy)<0){
+            if(BigDecimal.ZERO.compareTo(subsidy)!=0){
                 deductReasons.add("教学点补贴:" + subsidy);
             }
 
@@ -793,9 +795,8 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             }
 
             if(!signInInRange&&!signOutInRange){
-                deductReasons.clear();
                 //签到签退GPS定位在指定距离外
-                deductCost = teacherSalary;
+                deductCost = deductCost.add(teacherSalary);
                 deductReasons.add("签到签退GPS定位在指定距离外,扣除全部课酬");
             }
 
@@ -804,7 +805,9 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             if(BigDecimal.ZERO.compareTo(deductCost)<0){
                 deductReasons.add("扣除总费用:" + deductCost);
             }
-            courseScheduleTeacherSalary.setDeductionReason(org.apache.commons.lang3.StringUtils.join(deductReasons, ";"));
+            if(!CollectionUtils.isEmpty(deductReasons)){
+                courseScheduleTeacherSalary.setDeductionReason(org.apache.commons.lang3.StringUtils.join(deductReasons, ";"));
+            }
 
             //更新教师结算信息
             courseScheduleTeacherSalary.setSubsidy(subsidy);