|
@@ -210,7 +210,11 @@ public class EduPracticeGroupServiceImpl implements EduPracticeGroupService{
|
|
|
Date courseStartMondayDate = Date.from(courseStartMonday.atStartOfDay(DateUtil.zoneId).toInstant());
|
|
|
Date courseExpiredSundayDate = Date.from(courseExpiredSunday.atStartOfDay(DateUtil.zoneId).toInstant());
|
|
|
|
|
|
- List<CourseSchedule> allTeacherCourses = courseScheduleDao.findTeacherCoursesWithDateRange(practiceGroupBuyParams.getUserId(), courseStartMondayDate, courseExpiredSundayDate);
|
|
|
+ practiceGroupBuyParams.setName(subject.getName() + "•" + sysUser.getUsername());
|
|
|
+ List<CourseSchedule> practiceCourses = createPracticeCourses(practiceGroupBuyParams, practiceCourseMinutes);
|
|
|
+ practiceCourses.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
|
|
|
+
|
|
|
+ List<CourseSchedule> allTeacherCourses = courseScheduleDao.findTeacherCoursesWithDateRange(practiceGroupBuyParams.getUserId(), practiceCourses.get(0).getClassDate(), courseExpiredSundayDate);
|
|
|
|
|
|
TeacherFreeTime teacherFreeTime = teacherFreeTimeDao.findTeacherFreeTime(practiceGroupBuyParams.getUserId());
|
|
|
Integer maxTeacherCourses = null;
|
|
@@ -246,10 +250,6 @@ public class EduPracticeGroupServiceImpl implements EduPracticeGroupService{
|
|
|
}
|
|
|
allTeacherCourses=new ArrayList<>();
|
|
|
|
|
|
- practiceGroupBuyParams.setName(subject.getName() + "•" + sysUser.getUsername());
|
|
|
-
|
|
|
- List<CourseSchedule> practiceCourses = createPracticeCourses(practiceGroupBuyParams, practiceCourseMinutes);
|
|
|
-
|
|
|
JSONObject drillTimesObject=new JSONObject();
|
|
|
for (PracticeDrillTimeDto drillTime : practiceGroupBuyParams.getDrillTimes()) {
|
|
|
drillTimesObject.put(String.valueOf(drillTime.getWeekNum()),drillTime.getTimeStr());
|
|
@@ -432,7 +432,7 @@ public class EduPracticeGroupServiceImpl implements EduPracticeGroupService{
|
|
|
studentPaymentOrder.setUpdateTime(now);
|
|
|
studentPaymentOrder.setOrganId(practiceGroupBuyParams.getOrganId());
|
|
|
|
|
|
- sysUserCashAccountService.updateBalance(practiceGroupBuyParams.getStudentId(), studentPaymentOrder.getExpectAmount().negate(),PlatformCashAccountDetailTypeEnum.PAY_FEE,"教务端代学生购买");
|
|
|
+ sysUserCashAccountService.updateBalance(practiceGroupBuyParams.getStudentId(), studentPaymentOrder.getExpectAmount().negate(),PlatformCashAccountDetailTypeEnum.PAY_FEE,operatorInfo+",教务代买");
|
|
|
|
|
|
this.orderCallback(studentPaymentOrder);
|
|
|
|
|
@@ -493,35 +493,37 @@ public class EduPracticeGroupServiceImpl implements EduPracticeGroupService{
|
|
|
|
|
|
//插入缴费明细
|
|
|
//收入
|
|
|
- SysUserCashAccountDetail sysUserIncomeCashAccountDetail = new SysUserCashAccountDetail();
|
|
|
- sysUserIncomeCashAccountDetail.setUserId(order.getUserId());
|
|
|
- sysUserIncomeCashAccountDetail.setType(PlatformCashAccountDetailTypeEnum.RECHARGE);
|
|
|
- sysUserIncomeCashAccountDetail.setStatus(DealStatusEnum.SUCCESS);
|
|
|
- sysUserIncomeCashAccountDetail.setAmount(order.getActualAmount());
|
|
|
- sysUserIncomeCashAccountDetail.setBalance(sysUserCashAccount.getBalance().add(order.getActualAmount()));
|
|
|
- sysUserIncomeCashAccountDetail.setAttribute(order.getTransNo());
|
|
|
- sysUserIncomeCashAccountDetail.setChannel(studentPaymentOrder.getPaymentChannel());
|
|
|
- sysUserIncomeCashAccountDetail.setComAmount(studentPaymentOrder.getComAmount());
|
|
|
- sysUserIncomeCashAccountDetail.setPerAmount(studentPaymentOrder.getPerAmount());
|
|
|
-
|
|
|
- //支出
|
|
|
- SysUserCashAccountDetail sysUserExpendCashAccountDetail = new SysUserCashAccountDetail();
|
|
|
- sysUserExpendCashAccountDetail.setUserId(order.getUserId());
|
|
|
- sysUserExpendCashAccountDetail.setType(PlatformCashAccountDetailTypeEnum.PAY_FEE);
|
|
|
- sysUserExpendCashAccountDetail.setStatus(DealStatusEnum.SUCCESS);
|
|
|
- sysUserExpendCashAccountDetail.setAmount(order.getActualAmount().negate());
|
|
|
- sysUserExpendCashAccountDetail.setBalance(sysUserCashAccount.getBalance());
|
|
|
- sysUserExpendCashAccountDetail.setAttribute(order.getTransNo());
|
|
|
- sysUserExpendCashAccountDetail.setChannel(studentPaymentOrder.getPaymentChannel());
|
|
|
- if(studentPaymentOrder.getComAmount() != null){
|
|
|
- sysUserExpendCashAccountDetail.setComAmount(studentPaymentOrder.getComAmount().negate());
|
|
|
- }
|
|
|
- if(studentPaymentOrder.getPerAmount() != null){
|
|
|
- sysUserExpendCashAccountDetail.setPerAmount(studentPaymentOrder.getPerAmount().negate());
|
|
|
- }
|
|
|
+ if(order.getActualAmount().compareTo(BigDecimal.ZERO)!=0){
|
|
|
+ SysUserCashAccountDetail sysUserIncomeCashAccountDetail = new SysUserCashAccountDetail();
|
|
|
+ sysUserIncomeCashAccountDetail.setUserId(order.getUserId());
|
|
|
+ sysUserIncomeCashAccountDetail.setType(PlatformCashAccountDetailTypeEnum.RECHARGE);
|
|
|
+ sysUserIncomeCashAccountDetail.setStatus(DealStatusEnum.SUCCESS);
|
|
|
+ sysUserIncomeCashAccountDetail.setAmount(order.getActualAmount());
|
|
|
+ sysUserIncomeCashAccountDetail.setBalance(sysUserCashAccount.getBalance().add(order.getActualAmount()));
|
|
|
+ sysUserIncomeCashAccountDetail.setAttribute(order.getTransNo());
|
|
|
+ sysUserIncomeCashAccountDetail.setChannel(studentPaymentOrder.getPaymentChannel());
|
|
|
+ sysUserIncomeCashAccountDetail.setComAmount(studentPaymentOrder.getComAmount());
|
|
|
+ sysUserIncomeCashAccountDetail.setPerAmount(studentPaymentOrder.getPerAmount());
|
|
|
+
|
|
|
+ //支出
|
|
|
+ SysUserCashAccountDetail sysUserExpendCashAccountDetail = new SysUserCashAccountDetail();
|
|
|
+ sysUserExpendCashAccountDetail.setUserId(order.getUserId());
|
|
|
+ sysUserExpendCashAccountDetail.setType(PlatformCashAccountDetailTypeEnum.PAY_FEE);
|
|
|
+ sysUserExpendCashAccountDetail.setStatus(DealStatusEnum.SUCCESS);
|
|
|
+ sysUserExpendCashAccountDetail.setAmount(order.getActualAmount().negate());
|
|
|
+ sysUserExpendCashAccountDetail.setBalance(sysUserCashAccount.getBalance());
|
|
|
+ sysUserExpendCashAccountDetail.setAttribute(order.getTransNo());
|
|
|
+ sysUserExpendCashAccountDetail.setChannel(studentPaymentOrder.getPaymentChannel());
|
|
|
+ if(studentPaymentOrder.getComAmount() != null){
|
|
|
+ sysUserExpendCashAccountDetail.setComAmount(studentPaymentOrder.getComAmount().negate());
|
|
|
+ }
|
|
|
+ if(studentPaymentOrder.getPerAmount() != null){
|
|
|
+ sysUserExpendCashAccountDetail.setPerAmount(studentPaymentOrder.getPerAmount().negate());
|
|
|
+ }
|
|
|
|
|
|
- sysUserCashAccountDetailService.insert(sysUserIncomeCashAccountDetail);
|
|
|
- sysUserCashAccountDetailService.insert(sysUserExpendCashAccountDetail);
|
|
|
+ sysUserCashAccountDetailService.insert(sysUserIncomeCashAccountDetail);
|
|
|
+ sysUserCashAccountDetailService.insert(sysUserExpendCashAccountDetail);
|
|
|
+ }
|
|
|
|
|
|
PracticeGroup practiceGroup = practiceGroupDao.get(Long.valueOf(order.getMusicGroupId()));
|
|
|
if(practiceGroup.getGroupStatus().equals(GroupStatusEnum.CANCEL)){
|