|
@@ -54,6 +54,8 @@ public class MusicGroupSchoolTermCourseDetailServiceImpl extends BaseServiceImpl
|
|
|
private SysMessageService sysMessageService;
|
|
|
@Autowired
|
|
|
private TeacherDao teacherDao;
|
|
|
+ @Autowired
|
|
|
+ private StudentDao studentDao;
|
|
|
|
|
|
@Override
|
|
|
public BaseDAO<Integer, MusicGroupSchoolTermCourseDetail> getDAO() {
|
|
@@ -151,7 +153,7 @@ public class MusicGroupSchoolTermCourseDetailServiceImpl extends BaseServiceImpl
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public HttpResponseResult musicSchoolTermPush() {
|
|
|
+ public void musicSchoolTermPush() {
|
|
|
String remindCourseTime = sysConfigDao.findConfigValue(SysConfigService.REMIND_COURSE_TIME);
|
|
|
if(StringUtils.isEmpty(remindCourseTime)){
|
|
|
remindCourseTime = "14";
|
|
@@ -161,10 +163,10 @@ public class MusicGroupSchoolTermCourseDetailServiceImpl extends BaseServiceImpl
|
|
|
if(musicGroupIds.size() > 0){
|
|
|
List<MusicGroup> musicGroupList = musicGroupDao.getMusicGroupByIds(musicGroupIds);
|
|
|
List<Integer> educationIds = musicGroupList.stream().map(e -> e.getEducationalTeacherId()).collect(Collectors.toList());
|
|
|
- Map<Integer, String> educationNameMap = MapUtil.convertMybatisMap(teacherDao.queryNameByIdList(educationIds));
|
|
|
+ Map<Integer, String> educationPhoneMap = MapUtil.convertMybatisMap(teacherDao.queryPhoneByIds(StringUtils.join(educationIds,",")));
|
|
|
for (MusicGroup musicGroup : musicGroupList) {
|
|
|
Map<Integer,String> userMap = new HashMap<>(1);
|
|
|
- userMap.put(musicGroup.getEducationalTeacherId(),educationNameMap.get(musicGroup.getEducationalTeacherId()));
|
|
|
+ userMap.put(musicGroup.getEducationalTeacherId(),educationPhoneMap.get(musicGroup.getEducationalTeacherId()));
|
|
|
sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS,
|
|
|
MessageTypeEnum.REMIND_EDUCATION_COURSE_TIME,
|
|
|
userMap,
|
|
@@ -173,9 +175,11 @@ public class MusicGroupSchoolTermCourseDetailServiceImpl extends BaseServiceImpl
|
|
|
null,
|
|
|
null,
|
|
|
musicGroup.getName());
|
|
|
+ Map<Integer,String> userMap1 = new HashMap<>(1);
|
|
|
+ userMap1.put(musicGroup.getEducationalTeacherId(),musicGroup.getEducationalTeacherId().toString());
|
|
|
sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG,
|
|
|
MessageTypeEnum.REMIND_EDUCATION_COURSE_TIME,
|
|
|
- userMap,
|
|
|
+ userMap1,
|
|
|
null,
|
|
|
0,
|
|
|
null,
|
|
@@ -183,7 +187,66 @@ public class MusicGroupSchoolTermCourseDetailServiceImpl extends BaseServiceImpl
|
|
|
musicGroup.getName());
|
|
|
}
|
|
|
}
|
|
|
- return null;
|
|
|
+ //会员结束前15天提醒学员续费
|
|
|
+ String pushMemberRenew = sysConfigDao.findConfigValue(SysConfigService.PUSH_MEMBER_RENEW);
|
|
|
+ if(StringUtils.isEmpty(pushMemberRenew)){
|
|
|
+ pushMemberRenew = "15";
|
|
|
+ }
|
|
|
+ List<Integer> studentIds = studentDao.queryPushMemberRenew(pushMemberRenew);
|
|
|
+ if(studentIds.size() > 0){
|
|
|
+ Map<Integer, String> studentPhoneMap = MapUtil.convertMybatisMap(teacherDao.queryPhoneByIds(StringUtils.join(studentIds,",")));
|
|
|
+ Map<Integer,String> userMap = new HashMap<>(studentIds.size());
|
|
|
+ Map<Integer,String> userMap1 = new HashMap<>(studentIds.size());
|
|
|
+ for (Integer studentId : studentIds) {
|
|
|
+ userMap.put(studentId,studentPhoneMap.get(studentId));
|
|
|
+ userMap1.put(studentId,studentId.toString());
|
|
|
+ }
|
|
|
+ sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS,
|
|
|
+ MessageTypeEnum.STUDENT_MEMBER_RENEW_MESSAGE,
|
|
|
+ userMap,
|
|
|
+ null,
|
|
|
+ 0,
|
|
|
+ null,
|
|
|
+ null);
|
|
|
+
|
|
|
+ sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG,
|
|
|
+ MessageTypeEnum.STUDENT_MEMBER_RENEW_MESSAGE,
|
|
|
+ userMap1,
|
|
|
+ null,
|
|
|
+ 0,
|
|
|
+ null,
|
|
|
+ "STUDENT");
|
|
|
+ }
|
|
|
+ //会员结束前15天提醒学员续费(退团提醒)
|
|
|
+ String pushMemberRenewQuit = sysConfigDao.findConfigValue(SysConfigService.PUSH_MEMBER_RENEW_QUIT);
|
|
|
+ if(StringUtils.isEmpty(pushMemberRenewQuit)){
|
|
|
+ pushMemberRenewQuit = "5";
|
|
|
+ }
|
|
|
+ List<Integer> studentIdList = studentDao.queryPushMemberRenew(pushMemberRenewQuit);
|
|
|
+ if(studentIdList.size() > 0){
|
|
|
+ Map<Integer, String> studentPhoneMap = MapUtil.convertMybatisMap(teacherDao.queryPhoneByIds(StringUtils.join(studentIdList,",")));
|
|
|
+ Map<Integer,String> userMap = new HashMap<>(studentIdList.size());
|
|
|
+ Map<Integer,String> userMap1 = new HashMap<>(studentIdList.size());
|
|
|
+ for (Integer studentId : studentIdList) {
|
|
|
+ userMap.put(studentId,studentPhoneMap.get(studentId));
|
|
|
+ userMap1.put(studentId,studentId.toString());
|
|
|
+ }
|
|
|
+ sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS,
|
|
|
+ MessageTypeEnum.STUDENT_MEMBER_RENEW_QUIT_MESSAGE,
|
|
|
+ userMap,
|
|
|
+ null,
|
|
|
+ 0,
|
|
|
+ null,
|
|
|
+ null);
|
|
|
+
|
|
|
+ sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG,
|
|
|
+ MessageTypeEnum.STUDENT_MEMBER_RENEW_QUIT_MESSAGE,
|
|
|
+ userMap1,
|
|
|
+ null,
|
|
|
+ 0,
|
|
|
+ null,
|
|
|
+ "STUDENT");
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private MusicGroupSchoolTermCourseDetail getCourseDetail(MusicGroupSchoolTermCourseDetail courseDetail){
|
|
@@ -193,13 +256,18 @@ public class MusicGroupSchoolTermCourseDetailServiceImpl extends BaseServiceImpl
|
|
|
String year = DateUtil.getYear(startCourseDate);
|
|
|
if(month >= 9 || month <= 2){
|
|
|
if(month >= 9){
|
|
|
+ courseDetail.setStartSchoolTerm(DateUtil.getLastDayOfMonth(DateUtil.stringToDate(year + "-09-01 00:00:00")));
|
|
|
year = DateUtil.getYear(DateUtil.addYears(startCourseDate, 1));
|
|
|
+ }else {
|
|
|
+ String year1 = DateUtil.getYear(DateUtil.addYears(startCourseDate, -1));
|
|
|
+ courseDetail.setStartSchoolTerm(DateUtil.getLastDayOfMonth(DateUtil.stringToDate(year1 + "-09-01 00:00:00")));
|
|
|
}
|
|
|
courseDetail.setEndSchoolTerm(DateUtil.getLastDayOfMonth(DateUtil.stringToDate(year + "-02-01 00:00:00")));
|
|
|
}else {
|
|
|
+ courseDetail.setStartSchoolTerm(DateUtil.getLastDayOfMonth(DateUtil.stringToDate(year + "-03-01 00:00:00")));
|
|
|
courseDetail.setEndSchoolTerm(DateUtil.stringToDate(year + "-08-31 00:00:00"));
|
|
|
}
|
|
|
- courseDetail.setStartSchoolTerm(startCourseDate);
|
|
|
+// courseDetail.setStartSchoolTerm(startCourseDate);
|
|
|
//计算可排课时长
|
|
|
// int week = LocalDateTime.ofInstant(startCourseDate.toInstant(),DateUtil.zoneId).getDayOfWeek().getValue();
|
|
|
int week = DateUtil.date2Week1(startCourseDate);
|