Bladeren bron

1、陪练课调整
2、付费陪练课

Joburgess 5 jaren geleden
bovenliggende
commit
00d5f8b6a4

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java

@@ -1208,4 +1208,15 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      * @return java.util.List<com.ym.mec.biz.dal.entity.CourseSchedule>
      */
     List<CourseSchedule> findCourseSchedulesByClassGroups(@Param("classGroupIds") List<Integer> classGroupIds);
+
+    /**
+     * @describe 获取指定团体的第一节课程
+     * @author Joburgess
+     * @date 2020/2/23
+     * @param groupId:
+     * @param groupType:
+     * @return com.ym.mec.biz.dal.entity.CourseSchedule
+     */
+    CourseSchedule findFirstCourseWithGroup(@Param("groupId") String groupId,
+                                            @Param("groupType") GroupType groupType);
 }

+ 1 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/PracticeGroupDao.java

@@ -118,4 +118,5 @@ public interface PracticeGroupDao extends com.ym.mec.common.dal.BaseDAO<Long, Pr
      * @return java.util.List<com.ym.mec.biz.dal.entity.PracticeGroup>
      */
     List<PracticeGroup> findHistoryPracticeGroups();
+
 }

+ 1 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/MessageTypeEnum.java

@@ -38,6 +38,7 @@ public enum MessageTypeEnum implements BaseEnum<String, MessageTypeEnum> {
     STUDENT_PUSH_ATTEND_COURSE_MESSAGE("STUDENT_PUSH_ATTEND_COURSE_MESSAGE", "上课提醒"),
     STUDENT_PUSH_ONLINE_COURSE_ACTION("STUDENT_PUSH_ONLINE_COURSE_ACTION", "线上课开始"),
     PUSH_TEACHER_COURSE_COLLIDE("PUSH_TEACHER_COURSE_COLLIDE", "课程冲突"),
+    PAY_PRACTICE_BUY_SUCCESS("PAY_PRACTICE_BUY_SUCCESS", "陪练课购买成功"),
     STUDENT_PUSH_NAMES_ACHIEVE("STUDENT_PUSH_NAMES_ACHIEVE", "点名完成"),
     SCHEDULE_CHANGE("SCHEDULE_CHANGE", "课表变动"),
     STUDENT_SMS_TEACHING_SCHOOL_CHANGE("STUDENT_SMS_TEACHING_SCHOOL_CHANGE", "教学点变动"),

+ 18 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/PracticeGroupServiceImpl.java

@@ -3045,6 +3045,24 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             LOGGER.error("小课[{}]购买协议错误:{}",order.getMusicGroupId(),e.getMessage(),e.getMessage());
         }
 
+        Teacher teacher = teacherService.getDetail(practiceGroup.getUserId());
+
+        String groupStartTime=DateUtil.dateToString(practiceGroup.getCoursesStartDate(),"yyyy年MM月dd日");
+        String groupEndTime=DateUtil.dateToString(practiceGroup.getCoursesExpireDate(),"yyyy年MM月dd日");
+        String teacherName=teacher.getRealName();
+        String drillTimesOnWeek = practiceGroup.getDrillTimesOnWeek().toString();
+        CourseSchedule firstCourseWithGroup = courseScheduleDao.findFirstCourseWithGroup(practiceGroup.getId().toString(), GroupType.PRACTICE);
+        String firstCourseStartTime = DateUtil.dateToString(firstCourseWithGroup.getStartClassTime(),"yyyy年MM月dd日 HH时mm分");
+
+        Map<Integer, String> userMap = new HashMap<>();
+        userMap.put(practiceGroup.getStudentId(), practiceGroup.getStudentId().toString());
+        sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.PAY_PRACTICE_BUY_SUCCESS,
+                userMap, null, 0, null, "STUDENT", groupStartTime, groupEndTime, teacherName, drillTimesOnWeek, firstCourseStartTime);
+        SysUser student = sysUserFeignService.queryUserById(practiceGroup.getStudentId());
+        userMap.put(practiceGroup.getStudentId(), student.getPhone().toString());
+        sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI, MessageTypeEnum.PAY_PRACTICE_BUY_SUCCESS,
+                userMap, null, 0, null, "STUDENT", groupStartTime, groupEndTime, teacherName, drillTimesOnWeek, firstCourseStartTime);
+
         List<ImGroupMember> imGroupMemberList = new ArrayList<>();
         imGroupMemberList.add(new ImGroupMember(practiceGroup.getUserId().toString()));
         imGroupMemberList.add(new ImGroupMember(practiceGroup.getStudentId().toString()));

+ 29 - 0
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -2444,4 +2444,33 @@
           AND ( cs.del_flag_ != 1 OR cs.del_flag_ IS NULL )
         ORDER BY start_class_time_
     </select>
+
+    <select id="findFirstCourseWithGroup" resultMap="CourseSchedule">
+        SELECT
+            cs.id_,
+            cs.group_type_,
+            cs.music_group_id_,
+            cs.class_group_id_,
+            cs.status_,
+            cs.subsidy_,
+            cs.class_date_,
+            CONCAT(cs.class_date_,' ',cs.start_class_time_) start_class_time_,
+            CONCAT(cs.class_date_,' ',cs.end_class_time_) end_class_time_,
+            cs.teacher_id_,
+            cs.actual_teacher_id_,
+            cs.create_time_,
+            cs.update_time_,
+            cs.teach_mode_,
+            cs.type_,
+            cs.name_,
+            cs.student_num_,
+            cs.leave_student_num_,
+            cs.schoole_id_
+        FROM
+            course_schedule cs
+        WHERE
+            cs.group_type_=#{groupType, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+            AND cs.music_group_id_=#{groupId}
+        ORDER BY CONCAT(cs.class_date_,' ',cs.start_class_time_) LIMIT 1
+    </select>
 </mapper>