CourseScheduleStudentPaymentService.java 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. package com.ym.mec.biz.service;
  2. import com.ym.mec.biz.dal.dto.SimpleUserDto;
  3. import com.ym.mec.biz.dal.entity.CourseSchedule;
  4. import com.ym.mec.biz.dal.entity.CourseScheduleStudentPayment;
  5. import com.ym.mec.biz.dal.page.CourseScheduleStudentPaymentQueryInfo;
  6. import com.ym.mec.biz.dal.enums.GroupType;
  7. import com.ym.mec.common.service.BaseService;
  8. import java.util.List;
  9. import java.util.Map;
  10. public interface CourseScheduleStudentPaymentService extends BaseService<Long, CourseScheduleStudentPayment> {
  11. /**
  12. * @Author: Joburgess
  13. * @Date: 2019/10/14
  14. * @params [vipGroupId, userId]
  15. * @return int
  16. * @describe 生成学生vip课单节课时收费信息
  17. */
  18. int createCourseScheduleStudentPaymentForVipGroup(Long vipGroupId, Integer userId);
  19. /**
  20. * 删除学生对应的课程
  21. * @param userId
  22. * @param courseScheduleList
  23. * @return
  24. */
  25. int deleteStudentCourseSchedule(Integer userId, List<CourseSchedule> courseScheduleList);
  26. /**
  27. * @describe 根据课表创建学生的缴费记录
  28. * @author Joburgess
  29. * @date 2019/10/24
  30. * @param courseSchedules: 课程计划列表
  31. * @return void
  32. */
  33. void createCourseScheduleStudentPaymentByCourseSchedules(List<CourseSchedule> courseSchedules);
  34. /**
  35. * @return int
  36. * @Author: Joburgess
  37. * @Date: 2019/10/10
  38. * @params [courseScheduleStudentPayments]
  39. * @describe 批量插入
  40. */
  41. int batchInsert(List<CourseScheduleStudentPayment> courseScheduleStudentPayments);
  42. /**
  43. * @describe 更新VIP课赠送课顺序
  44. * @author Joburgess
  45. * @date 2020/1/10
  46. * @param vipGroupId: 小课编号
  47. * @return void
  48. */
  49. void updateVipGiveCourse(Long vipGroupId);
  50. /**
  51. * @describe 创建课程缴费记录-乐团
  52. * @author Joburgess
  53. * @date 2020.10.27
  54. * @param musicGroupId: 乐团编号
  55. * @param courseSchedules: 课程计划列表
  56. * @param studentIds: 课程学员列表
  57. * @return void
  58. */
  59. void createForMusicGroup(String musicGroupId, List<CourseSchedule> courseSchedules, List<Integer> studentIds);
  60. /**
  61. * @describe 创建课程缴费记录-乐团-用于合班拆班自动排课
  62. * @author zouxuan
  63. * @date 2020.10.27
  64. * @param courseSchedules: 课程计划列表
  65. * @param studentIds: 课程学员列表
  66. * @return void
  67. */
  68. void createForMusicGroup(List<CourseSchedule> courseSchedules, List<Integer> studentIds,Integer musicGroupStudentClassAdjustId);
  69. /**
  70. * @describe 根据缴费日历更新乐团课程学院课程价格
  71. * @author Joburgess
  72. * @date 2020.10.29
  73. * @param batchNo: 缴费日历批次号
  74. * @return void
  75. */
  76. void updateForMusicGroupWithPaymentCalender(String batchNo);
  77. /**
  78. * 获取班级未开始的的课程
  79. * @param classGroupIds
  80. * @return
  81. */
  82. List<CourseScheduleStudentPayment> getClassGroupNoStartCourse(List<Integer> classGroupIds);
  83. int deleteByMusicGroupId(String musicGroupId, GroupType music);
  84. /**
  85. * @describe 查询课程上学员列表
  86. * @author Joburgess
  87. * @date 2020/11/17 0017
  88. * @param queryInfo:
  89. * @return com.ym.mec.common.page.PageInfo<com.ym.mec.biz.dal.dto.CourseScheduleStudentListDto>
  90. */
  91. Map<String, Object> queryCourseStudentList(CourseScheduleStudentPaymentQueryInfo queryInfo);
  92. /**
  93. * @describe 获取指定课程上的学员信息
  94. * @author qnc99
  95. * @date 2020/11/27 0027
  96. * @param courseIds:
  97. * @return java.util.List<com.ym.mec.biz.dal.dto.SimpleUserDto>
  98. */
  99. List<SimpleUserDto> getCourseStudents(List<Long> courseIds);
  100. /**
  101. * @describe 更新课程营收
  102. * @author qnc99
  103. * @date 2020/12/2 0002
  104. * @return void
  105. */
  106. void updateCourseActualPrice(List<String> groupIds, List<Integer> userIds, GroupType groupType);
  107. }