zouxuan 5 years ago
parent
commit
014470bd1e

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupStudentFeeDao.java

@@ -5,6 +5,7 @@ import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
+import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail;
 import org.apache.ibatis.annotations.Param;
 
 import com.ym.mec.biz.dal.dto.UpdateStudentFeeDto;
@@ -175,4 +176,10 @@ public interface MusicGroupStudentFeeDao extends BaseDAO<Long, MusicGroupStudent
 	 * @param courseFee
 	 */
     void batchUpdateCourseFee(@Param("ids") String ids, @Param("courseFee") BigDecimal courseFee);
+
+	/**
+	 * 将乐团的学生缴费状态设置为未缴费
+	 * @param calenderDetails
+	 */
+	void setNoPayment(@Param("calenderDetails") List<MusicGroupPaymentCalenderDetail> calenderDetails);
 }

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderDetailServiceImpl.java

@@ -2,11 +2,13 @@ package com.ym.mec.biz.service.impl;
 
 import com.ym.mec.biz.dal.dao.MusicGroupDao;
 import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDetailDao;
+import com.ym.mec.biz.dal.dao.MusicGroupStudentFeeDao;
 import com.ym.mec.biz.dal.dto.SimpleUserDto;
 import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.service.MusicGroupPaymentCalenderDetailService;
+import com.ym.mec.biz.service.MusicGroupStudentFeeService;
 import com.ym.mec.biz.service.SysMessageService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
@@ -32,6 +34,8 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 	@Autowired
 	private MusicGroupDao musicGroupDao;
 	@Autowired
+	private MusicGroupStudentFeeDao musicGroupStudentFeeDao;
+	@Autowired
 	private SysMessageService sysMessageService;
 
 	@Override
@@ -92,6 +96,8 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 			e.setDeadlinePaymentDate(date);
 		});
 		musicGroupPaymentCalenderDetailDao.batchUpdate(calenderDetails);
+		//修改学员缴费状态为未缴费
+		musicGroupStudentFeeDao.setNoPayment(calenderDetails);
 		Set<Integer> studentIds = calenderDetails.stream().map(e -> e.getUserId()).collect(Collectors.toSet());
 		//推送消息
 		if (studentIds.size() > 0) {

+ 7 - 1
mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderDetailMapper.xml

@@ -106,6 +106,12 @@
 		<foreach collection="calenderDetails" item="item" index="index" open="" close="" separator=";">
 			UPDATE music_group_payment_calender_detail
 			<set>
+				<if test="item.startPaymentDate != null">
+					start_payment_date_ = #{item.startPaymentDate},
+				</if>
+				<if test="item.deadlinePaymentDate != null">
+					deadline_payment_date_ = #{item.deadlinePaymentDate},
+				</if>
 				<if test="item.open != null">
 					open_ = #{item.open},
 				</if>
@@ -226,7 +232,7 @@
 		SELECT mgpcd.*,mgpc.music_group_id_ FROM music_group_payment_calender_detail mgpcd
 		LEFT JOIN music_group_payment_calender mgpc ON mgpc.id_ = mgpcd.music_group_payment_calender_id_
 		LEFT JOIN student_registration sr ON sr.music_group_id_ = mgpc.music_group_id_
-		WHERE mgpcd.payment_status_ = 'PROCESSING' AND mgpcd.open_ = 0 AND sr.music_group_status_ != 'QUIT' AND mgpc.payment_status_ = 'YES'
+		WHERE mgpcd.payment_status_ = 'NON_PAYMENT' AND mgpcd.open_ = 0 AND sr.music_group_status_ != 'QUIT' AND mgpc.payment_status_ = 'YES'
 		AND FIND_IN_SET(mgpcd.id_,#{ids})
 	</select>
 	<select id="queryIntersectionByPaymentDate" resultType="java.lang.Integer">

+ 6 - 0
mec-biz/src/main/resources/config/mybatis/MusicGroupStudentFeeMapper.xml

@@ -274,4 +274,10 @@
         UPDATE music_group_student_fee_ mgsf SET mgsf.course_fee_ = #{courseFee}
         WHERE FIND_IN_SET(mgsf.id_,#{ids})
     </update>
+    <update id="setNoPayment">
+        <foreach collection="calenderDetails" item="item" index="index" open="" close="" separator=";">
+            UPDATE music_group_student_fee_ m SET m.payment_status_ = 'NON_PAYMENT'
+            WHERE m.music_group_id_ = #{item.musicGroupId} AND m.user_id_ = #{item.userId}
+        </foreach>
+    </update>
 </mapper>