Преглед на файлове

Merge remote-tracking branch 'origin/master'

周箭河 преди 5 години
родител
ревизия
69c438ba36

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

@@ -43,7 +43,7 @@ public interface MusicGroupPaymentCalenderDao extends BaseDAO<Long, MusicGroupPa
 	 * @param status
 	 * @return
 	 */
-	List<MusicGroupPaymentCalender> queryByPaymentStatus(List<PaymentStatusEnum> status);
+	List<MusicGroupPaymentCalender> queryByPaymentStatus(@Param("status") List<PaymentStatusEnum> status);
 	
 	/**
 	 * 获取缴费信息锁

+ 41 - 13
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java

@@ -1,29 +1,33 @@
 package com.ym.mec.biz.service.impl;
 
-import static com.ym.mec.biz.dal.enums.PaymentStatusEnum.NO;
-
-import java.math.BigDecimal;
-import java.util.*;
-import java.util.stream.Collectors;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
+import com.ym.mec.biz.dal.dao.MusicGroupDao;
 import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDao;
 import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDetailDao;
 import com.ym.mec.biz.dal.dao.MusicGroupStudentFeeDao;
+import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail;
 import com.ym.mec.biz.dal.entity.MusicGroupStudentFee;
 import com.ym.mec.biz.dal.entity.MusicGroupStudentFee.PaymentStatus;
+import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.dal.enums.PaymentStatusEnum;
 import com.ym.mec.biz.service.MusicGroupPaymentCalenderService;
+import com.ym.mec.biz.service.SysMessageService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
+import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.util.date.DateUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.math.BigDecimal;
+import java.util.*;
+import java.util.stream.Collectors;
+
+import static com.ym.mec.biz.dal.enums.PaymentStatusEnum.NO;
 
 @Service
 public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long, MusicGroupPaymentCalender> implements MusicGroupPaymentCalenderService {
@@ -36,6 +40,10 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 
 	@Autowired
 	private MusicGroupStudentFeeDao musicGroupStudentFeeDao;
+	@Autowired
+	private MusicGroupDao musicGroupDao;
+	@Autowired
+	private SysMessageService sysMessageService;
 
 	@Override
 	public BaseDAO<Long, MusicGroupPaymentCalender> getDAO() {
@@ -79,7 +87,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 		List<MusicGroupPaymentCalenderDetail> musicGroupPaymentCalenderDetailList = new ArrayList<MusicGroupPaymentCalenderDetail>();
 		if (musicGroupPaymentCalender.getPaymentStatus() == PaymentStatusEnum.OPEN) {
 			if (musicGroupStudentFeeList != null && musicGroupStudentFeeList.size() > 0) {
-				
+				Set<Integer> studentIds = musicGroupStudentFeeList.stream().map(e -> e.getUserId()).collect(Collectors.toSet());
 				MusicGroupPaymentCalenderDetail musicGroupPaymentCalenderDetail = null;
 				// 创建缴费明细
 				for (MusicGroupStudentFee mgsf : musicGroupStudentFeeList) {
@@ -109,6 +117,16 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 					mgsf.setUpdateTime(date);
 					updateMusicGroupStudentFeeList.add(mgsf);
 				}
+				if (studentIds.size() > 0) {
+					Map<Integer, String> push = new HashMap<>();
+					for (Integer userId : studentIds) {
+						push.put(userId, userId + "");
+					}
+					MusicGroup musicGroup = musicGroupDao.get(musicGroupPaymentCalender.getMusicGroupId());
+					String memo = "4?http://mstudev.dayaedu.com/#/renew?musicGroupId=" + musicGroup.getId();
+					// 发送续费通知
+					sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_WAIT_RENEW_MESSAGE, push, null, 0, memo,"STUDENT",musicGroup.getName());
+				}
 			}
 		}
 
@@ -156,7 +174,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 
 				// 学生状态更新进行中
 				List<MusicGroupStudentFee> musicGroupStudentFeeList = musicGroupStudentFeeDao.queryByMusicGroupId(mgpc.getMusicGroupId());
-
+				Set<Integer> studentIds = musicGroupStudentFeeList.stream().map(e -> e.getUserId()).collect(Collectors.toSet());
 				// 创建缴费明细
 				for (MusicGroupStudentFee mgsf : musicGroupStudentFeeList) {
 					musicGroupPaymentCalenderDetail = new MusicGroupPaymentCalenderDetail();
@@ -185,6 +203,16 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 					mgsf.setUpdateTime(date);
 					updateMusicGroupStudentFeeList.add(mgsf);
 				}
+				if (studentIds.size() > 0) {
+					Map<Integer, String> push = new HashMap<>();
+					for (Integer userId : studentIds) {
+						push.put(userId, userId + "");
+					}
+					MusicGroup musicGroup = musicGroupDao.get(mgpc.getMusicGroupId());
+					String memo = "4?http://mstudev.dayaedu.com/#/renew?musicGroupId=" + musicGroup.getId();
+					// 发送续费通知
+					sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_WAIT_RENEW_MESSAGE, push, null, 0, memo,"STUDENT",musicGroup.getName());
+				}
 			}
 		}
 

+ 0 - 23
mec-biz/src/main/java/com/ym/mec/biz/service/impl/OnlineMusicGroupServiceImpl.java

@@ -410,12 +410,8 @@ public class OnlineMusicGroupServiceImpl implements OnlineMusicGroupService {
 
         TeacherFreeTime teacherFreeTime = teacherFreeTimeDao.findTeacherFreeTime(teacherId);
         JSONObject teacherFreeTimes=new JSONObject();
-        Integer maxTeacherCourses = null;
         int holiday = 0;
         if (Objects.nonNull(teacherFreeTime)) {
-            if (Objects.nonNull(teacherFreeTime.getTotalTimes())) {
-                maxTeacherCourses = teacherFreeTime.getTotalTimes();
-            }
             if (Objects.nonNull(teacherFreeTime.getHoliday())) {
                 holiday = DateUtil.normalWeekNumCalendarWeekNumMap.get(teacherFreeTime.getHoliday());
             }
@@ -478,31 +474,12 @@ public class OnlineMusicGroupServiceImpl implements OnlineMusicGroupService {
         allTeacherCourses.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
 
         List<CourseSchedule> applyDateRangeCourses = new ArrayList<>();
-        Calendar courseCalendar = Calendar.getInstance();
-        courseCalendar.setFirstDayOfWeek(Calendar.MONDAY);
-        int courseWeekNum = 0;
-        int practiceCourseNum = 0;
         for (int i = 0; i < allTeacherCourses.size(); i++) {
             CourseSchedule teacherCourse = allTeacherCourses.get(i);
             if ((!teacherCourse.getClassDate().before(applyStartDate))
                     && (teacherCourse.getClassDate().before(applyEndDate) || DateUtil.isSameDay(teacherCourse.getClassDate(), applyEndDate))) {
                 applyDateRangeCourses.add(teacherCourse);
             }
-            courseCalendar.setTime(teacherCourse.getClassDate());
-            if (i == 0 && teacherCourse.getGroupType().equals(GroupType.PRACTICE)) {
-                practiceCourseNum += 1;
-                courseWeekNum = courseCalendar.get(Calendar.WEEK_OF_YEAR);
-            }
-            if (Objects.nonNull(maxTeacherCourses) && practiceCourseNum >= maxTeacherCourses) {
-                disableApplyWeekNum.add(courseWeekNum);
-            }
-            if (courseCalendar.get(Calendar.WEEK_OF_YEAR) != courseWeekNum) {
-                courseWeekNum = courseCalendar.get(Calendar.WEEK_OF_YEAR);
-                practiceCourseNum = 0;
-            }
-            if (teacherCourse.getGroupType().equals(GroupType.PRACTICE)) {
-                practiceCourseNum += 1;
-            }
         }
 
         JSONObject teacherLeaveData = null;

+ 2 - 2
mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderMapper.xml

@@ -159,8 +159,8 @@
         <where>
         	<if test="status != null">
         		payment_status_ in
-        		<foreach collection="list" item="item" open="(" close=")" separator=",">
-		            #{item}
+        		<foreach collection="status" item="item" open="(" close=")" separator=",">
+		            #{item,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
 		        </foreach>
         	</if>
         </where>