|  | @@ -14,10 +14,7 @@ import com.yonge.cooleshow.biz.dal.dto.LiveCourseGroupDto;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.dto.LiveCourseGroupDto.CoursePlanDto;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.dto.req.OrderRefundReq;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.dto.req.OrderReq;
 | 
	
		
			
				|  |  | -import com.yonge.cooleshow.biz.dal.dto.search.LiveCourseGroupSearch;
 | 
	
		
			
				|  |  | -import com.yonge.cooleshow.biz.dal.dto.search.LiveCourseGroupStudentCourseSearch;
 | 
	
		
			
				|  |  | -import com.yonge.cooleshow.biz.dal.dto.search.LiveCourseGroupStudentSearch;
 | 
	
		
			
				|  |  | -import com.yonge.cooleshow.biz.dal.dto.search.OrderSearch;
 | 
	
		
			
				|  |  | +import com.yonge.cooleshow.biz.dal.dto.search.*;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.entity.*;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.enums.*;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.service.*;
 | 
	
	
		
			
				|  | @@ -780,8 +777,8 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
 | 
	
		
			
				|  |  |              Map<Long, String> teacherReceivers = new HashMap<>();
 | 
	
		
			
				|  |  |              teacherReceivers.put(teacherInfo.getId(), teacherInfo.getPhone());
 | 
	
		
			
				|  |  |              sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, studentBuyLive,
 | 
	
		
			
				|  |  | -                    teacherReceivers, null, 0, studentBuyLiveUrl +courseGroup.getId() , ClientEnum.TEACHER.getCode(),
 | 
	
		
			
				|  |  | -                    studentInfo.getUsername(), courseGroup.getName() );
 | 
	
		
			
				|  |  | +                    teacherReceivers, null, 0, studentBuyLiveUrl + courseGroup.getId(), ClientEnum.TEACHER.getCode(),
 | 
	
		
			
				|  |  | +                    studentInfo.getUsername(), courseGroup.getName());
 | 
	
		
			
				|  |  |              log.info("buyLiveCourseSuccess buyLiveSendMessage STUDENT_BUY_LIVE ok");
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              //短信-消息推送-老师端-通知老师有学生购买课程-无需跳转到APP
 | 
	
	
		
			
				|  | @@ -874,7 +871,7 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          // 取消老师课酬
 | 
	
		
			
				|  |  | -        cancelTeacherSalary(studentPayment.getUserId(),studentPayment.getCourseGroupId());
 | 
	
		
			
				|  |  | +        cancelTeacherSalary(studentPayment.getUserId(), studentPayment.getCourseGroupId());
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          // 删除学生购买记录
 | 
	
		
			
				|  |  |          buyLiveCourseCancel(orderParam);
 | 
	
	
		
			
				|  | @@ -883,19 +880,19 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 取消老师课酬
 | 
	
		
			
				|  |  |       *
 | 
	
		
			
				|  |  | -     * @param userId 学生id
 | 
	
		
			
				|  |  | +     * @param userId        学生id
 | 
	
		
			
				|  |  |       * @param courseGroupId 课程组id
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      private void cancelTeacherSalary(Long userId, Long courseGroupId) {
 | 
	
		
			
				|  |  |          List<CourseScheduleTeacherSalary> list = courseScheduleTeacherSalaryService.lambdaQuery()
 | 
	
		
			
				|  |  | -                                    .eq(CourseScheduleTeacherSalary::getStudentId,userId)
 | 
	
		
			
				|  |  | -                                    .eq(CourseScheduleTeacherSalary::getCourseGroupId, courseGroupId)
 | 
	
		
			
				|  |  | -                                    .list();
 | 
	
		
			
				|  |  | +                .eq(CourseScheduleTeacherSalary::getStudentId, userId)
 | 
	
		
			
				|  |  | +                .eq(CourseScheduleTeacherSalary::getCourseGroupId, courseGroupId)
 | 
	
		
			
				|  |  | +                .list();
 | 
	
		
			
				|  |  |          list = list.stream().filter(csts ->
 | 
	
		
			
				|  |  | -             TeacherSalaryEnum.NOT_START.getCode().equals(csts.getStatus())
 | 
	
		
			
				|  |  | -        ).peek(csts -> csts.setStatus(CourseScheduleEnum.CANCEL.getCode()))
 | 
	
		
			
				|  |  | -        .collect(Collectors.toList());
 | 
	
		
			
				|  |  | -        if(CollectionUtils.isEmpty(list)) {
 | 
	
		
			
				|  |  | +                        TeacherSalaryEnum.NOT_START.getCode().equals(csts.getStatus())
 | 
	
		
			
				|  |  | +                ).peek(csts -> csts.setStatus(CourseScheduleEnum.CANCEL.getCode()))
 | 
	
		
			
				|  |  | +                .collect(Collectors.toList());
 | 
	
		
			
				|  |  | +        if (CollectionUtils.isEmpty(list)) {
 | 
	
		
			
				|  |  |              return;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -908,6 +905,16 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    @Override
 | 
	
		
			
				|  |  | +    public IPage<CourseGroupPracticeVo> selectPracticeGroup(IPage<CourseGroupPracticeVo> page, CourseGroupSearch search) {
 | 
	
		
			
				|  |  | +        return baseMapper.selectPracticeGroup(page, search);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @Override
 | 
	
		
			
				|  |  | +    public IPage<CourseGroupPracticeDetailVo> selectPracticeGroupDetail(IPage<CourseGroupPracticeDetailVo> page, CourseGroupDetailSearch search) {
 | 
	
		
			
				|  |  | +        return baseMapper.selectPracticeGroupDetail(page, search);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 定时将符合开售日期的未开售的直播课课程组修改为报名中状态
 | 
	
		
			
				|  |  |       */
 | 
	
	
		
			
				|  | @@ -961,6 +968,18 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
 | 
	
		
			
				|  |  |                              .eq(CourseSchedule::getCourseGroupId, courseGroup.getId())
 | 
	
		
			
				|  |  |                              .set(CourseSchedule::getStatus, CourseScheduleEnum.CANCEL.getCode())
 | 
	
		
			
				|  |  |                      );
 | 
	
		
			
				|  |  | +                    // 直播课成课失败通知
 | 
	
		
			
				|  |  | +                    // 发短信
 | 
	
		
			
				|  |  | +                    try {
 | 
	
		
			
				|  |  | +                        SysUser user = sysUserFeignService.queryUserById(courseGroup.getTeacherId());
 | 
	
		
			
				|  |  | +                        Map<Long, String> receivers = new HashMap<>();
 | 
	
		
			
				|  |  | +                        receivers.put(user.getId(), user.getPhone());
 | 
	
		
			
				|  |  | +                        sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, MessageTypeEnum.SMS_LIVE_COMPLETION_FAIL,
 | 
	
		
			
				|  |  | +                                receivers, null, 0, null, null,
 | 
	
		
			
				|  |  | +                                courseGroup.getName());
 | 
	
		
			
				|  |  | +                    } catch (Exception e) {
 | 
	
		
			
				|  |  | +                        log.warn("直播课成课失败短信发送失败,{}", e.getMessage());
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  |                      sendMessage(courseGroup);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                      refend(courseGroup);
 | 
	
	
		
			
				|  | @@ -983,9 +1002,9 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          for (String orderNo : orderNoList) {
 | 
	
		
			
				|  |  |              try {
 | 
	
		
			
				|  |  | -                userOrderRefundService.orderRefund(orderNo,"直播课成课失败退款");
 | 
	
		
			
				|  |  | +                userOrderRefundService.orderRefund(orderNo, "直播课成课失败退款");
 | 
	
		
			
				|  |  |              } catch (Exception e) {
 | 
	
		
			
				|  |  | -                log.warn("直播课成课失败退款 退款失败,退款订单号 {}",orderNo);
 | 
	
		
			
				|  |  | +                log.warn("直播课成课失败退款 退款失败,退款订单号 {}", orderNo);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
	
		
			
				|  | @@ -1003,9 +1022,9 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
 | 
	
		
			
				|  |  |              Map<Long, String> receivers = new HashMap<>();
 | 
	
		
			
				|  |  |              receivers.put(user.getId(), user.getPhone());
 | 
	
		
			
				|  |  |              sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, MessageTypeEnum.SMS_LIVE_COMPLETION_FAIL,
 | 
	
		
			
				|  |  | -                               receivers, null, 0, null, null, courseGroup.getName());
 | 
	
		
			
				|  |  | +                    receivers, null, 0, null, null, courseGroup.getName());
 | 
	
		
			
				|  |  |          } catch (Exception e) {
 | 
	
		
			
				|  |  | -            log.warn("直播课成课失败短信发送失败,{}",e.getMessage());
 | 
	
		
			
				|  |  | +            log.warn("直播课成课失败短信发送失败,{}", e.getMessage());
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          // 发推送
 | 
	
	
		
			
				|  | @@ -1014,11 +1033,10 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
 | 
	
		
			
				|  |  |              Map<Long, String> receivers = new HashMap<>();
 | 
	
		
			
				|  |  |              receivers.put(user.getId(), user.getPhone());
 | 
	
		
			
				|  |  |              sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.LIVE_COMPLETION_FAIL,
 | 
	
		
			
				|  |  | -                               receivers, null, 0, null, ClientEnum.TEACHER.getCode(), courseGroup.getName());
 | 
	
		
			
				|  |  | +                    receivers, null, 0, null, ClientEnum.TEACHER.getCode(), courseGroup.getName());
 | 
	
		
			
				|  |  |          } catch (Exception e) {
 | 
	
		
			
				|  |  | -            log.warn("直播课成课失败推送发送失败,{}",e.getMessage());
 | 
	
		
			
				|  |  | +            log.warn("直播课成课失败推送发送失败,{}", e.getMessage());
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 |