| 
					
				 | 
			
			
				@@ -168,6 +168,8 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         int days = Integer.parseInt(sysConfigDao.findByParamName(SysConfigService.VIP_APPEAL_DAYS_RANGE).getParanValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        BigDecimal percent = new BigDecimal(10); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //获取教师未结算课程记录 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<CourseScheduleTeacherSalary> someDayAgoTeacherCourseSalaryNoSettlement = courseScheduleTeacherSalaryDao.findSomeDayAgoTeacherCourseSalaryNoSettlement(days); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (CollectionUtils.isEmpty(someDayAgoTeacherCourseSalaryNoSettlement)) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -227,7 +229,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 //计算教师责任总占比 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 double teacherLiabilityRatioSum = courseStudentComplaints.stream().mapToDouble(courseScheduleComplaint -> Objects.isNull(courseScheduleComplaint.getTeacherLiabilityRatio()) ? 0 : courseScheduleComplaint.getTeacherLiabilityRatio()).sum(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                teacherLiabilityAllratio = new BigDecimal(teacherLiabilityRatioSum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                teacherLiabilityAllratio = new BigDecimal(teacherLiabilityRatioSum).divide(percent,CommonConstants.DECIMAL_PLACE,BigDecimal.ROUND_DOWN); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 //如果没有投诉,则教师和学生的责任占比为0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 teacherLiabilityAllratio = new BigDecimal(0); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -256,7 +258,11 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             teacherCashAccountDetail.setType(PlatformCashAccountDetailTypeEnum.WAGE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             teacherCashAccountDetail.setStatus(DealStatusEnum.SUCCESS); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             teacherCashAccountDetail.setAmount(actualSalary); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            teacherCashAccountDetail.setBalance(teacherCashAccount.getBalance()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(Objects.isNull(teacherCashAccount)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                teacherCashAccountDetail.setBalance(new BigDecimal(0)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                teacherCashAccountDetail.setBalance(teacherCashAccount.getBalance()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             teacherCashAccountDetail.setAttribute(courseScheduleTeacherSalary.getCourseScheduleId().toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             userCashAccountDetails.add(teacherCashAccountDetail); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -285,7 +291,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if (Objects.isNull(temp)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         temp = 0.0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    studentLiabilityRatio = new BigDecimal(temp); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    studentLiabilityRatio = new BigDecimal(temp).divide(percent,CommonConstants.DECIMAL_PLACE,BigDecimal.ROUND_DOWN); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     studentLiabilityRatio = new BigDecimal(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -293,7 +299,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 //当前课程学生应退费用 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 BigDecimal returnPrice = studentExpectPrice.multiply(studentLiabilityRatio); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 //当前课程学生实际缴费 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                BigDecimal actualPrice = expectSalary.subtract(returnPrice); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                BigDecimal actualPrice = studentExpectPrice.subtract(returnPrice); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 //更新学生结算信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 studentPayment.setActualPrice(actualPrice); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 studentPayment.setSettlementTime(now); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -444,7 +450,10 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         classTimeDuty = classTimeDuty.divide(new BigDecimal(30), CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    BigDecimal teacherDefaultSalary = courseScheduleTeacherSalary.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalaryWithTeacherId.getMainTeacher30MinSalary() : teacherDefaultMusicGroupSalaryWithTeacherId.getAssistantTeacher30MinSalary(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    BigDecimal teacherDefaultSalary = new BigDecimal(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(Objects.nonNull(teacherDefaultMusicGroupSalaryWithTeacherId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        teacherDefaultSalary = courseScheduleTeacherSalary.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalaryWithTeacherId.getMainTeacher30MinSalary() : teacherDefaultMusicGroupSalaryWithTeacherId.getAssistantTeacher30MinSalary(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     teacherSalary = teacherDefaultSalary.multiply(classTimeDuty).setScale(2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } else if (settlementType.equals(SalarySettlementTypeEnum.GRADIENT_SALARY.getCode())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     //课程时长与结算单位时长占比 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -456,7 +465,10 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         classTimeDuty = classTimeDuty.divide(new BigDecimal(90), CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    BigDecimal teacherDefaultSalary = courseScheduleTeacherSalary.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalaryWithTeacherId.getMainTeacher90MinSalary() : teacherDefaultMusicGroupSalaryWithTeacherId.getAssistantTeacher90MinSalary(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    BigDecimal teacherDefaultSalary = new BigDecimal(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(Objects.nonNull(teacherDefaultMusicGroupSalaryWithTeacherId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        teacherDefaultSalary = courseScheduleTeacherSalary.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalaryWithTeacherId.getMainTeacher90MinSalary() : teacherDefaultMusicGroupSalaryWithTeacherId.getAssistantTeacher90MinSalary(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     teacherSalary = teacherDefaultSalary.multiply(classTimeDuty).setScale(2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }else{ 
			 |