zouxuan 5 rokov pred
rodič
commit
d87c8ff86c

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

@@ -148,4 +148,11 @@ public interface MusicGroupStudentFeeDao extends BaseDAO<Long, MusicGroupStudent
 	 * @param fee
 	 */
 	void updateStudentFeeIsLock(@Param("fee") UpdateStudentFeeDto fee);
+
+	/**
+	 * 批量修改学员缴费周期
+	 * @param month
+	 * @param musicGroupId
+	 */
+	void batchUpdateCalender(@Param("month") String month, @Param("musicGroupId") String musicGroupId);
 }

+ 9 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -1768,8 +1768,6 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
             //如果已生成课表,那么修改未上课时教学点
             courseScheduleDao.updateCourseScheduleSchool("MUSIC",musicGroupId,musicGroup.getSchoolId());
         }
-
-        Date date = new Date();
         List<Integer> months = subFeeSettingDto.getMonths();
         
         //判断缴费日历是否修改
@@ -1788,7 +1786,6 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 		}
 
 		if (isModifiedOfCalender) {
-			
 			Integer num = musicGroupStudentFeeDao.countStudentNoPayNum(musicGroupId);
 			if (num > 0) {
 				throw new BizException("缴费周期更新失败,当前乐团有未缴费的学员");
@@ -1796,17 +1793,23 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 			
 			// 删除乐团相关付费周期
 			musicGroupPaymentCalenderDao.delByGroupId(musicGroupId);
-			musicGroupStudentFeeDao.deleteByMusicGroupId(musicGroupId,0);
+//			musicGroupStudentFeeDao.deleteByMusicGroupId(musicGroupId,0);
 			if (months != null && months.size() > 0) {
 				// 批量插入
 				musicGroupPaymentCalenderDao.batchAdd(months, musicGroupId);
 			}
 			if(musicGroup.getStatus() == MusicGroupStatusEnum.PROGRESS){
-                //生成学员费用表
+			    //修改未锁定学员缴费周期
+                String join = null;
+                if (months != null && months.size() > 0)  {
+                    join = StringUtils.join(months,",");
+                }
+                musicGroupStudentFeeDao.batchUpdateCalender(join,musicGroupId);
+                /*//生成学员费用表
                 List<MusicGroupStudentFee> musicGroupStudentFees = musicGroupStudentFeeDao.initMusicGroupStudentFee(musicGroupId);
                 if(musicGroupStudentFees != null && musicGroupStudentFees.size() > 0){
                     musicGroupStudentFeeDao.batchInsert(musicGroupStudentFees,musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId, null,null),"PAID_COMPLETED");
-                }
+                }*/
             }
 		}
         musicGroupDao.update(musicGroup);

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

@@ -165,6 +165,7 @@
     <select id="countStudentNoPayNum" resultType="java.lang.Integer">
         SELECT COUNT(DISTINCT sr.id_) FROM student_registration sr LEFT JOIN music_group_student_fee_ sf ON sr.user_id_ = sf.user_id_
         WHERE sr.music_group_id_ = #{musicGroupId} AND sr.music_group_status_ != 'QUIT' AND sf.payment_status_ != 'PAID_COMPLETED'
+        AND sr.music_group_id_ = sf.music_group_id_
     </select>
 
     <select id="findContinuousAbsenteeismTimesByUsersAndMusicGroup" resultType="map">
@@ -240,12 +241,17 @@
     </update>
     <update id="updateStudentFee">
         UPDATE music_group_student_fee_
-        SET course_fee_ = #{fee.amount},payment_period_list_ = #{fee.month}
+        SET course_fee_ = #{fee.amount},payment_period_list_ = #{fee.month},update_time_ = NOW()
         WHERE music_group_id_ = #{fee.musicGroupId} AND user_id_ = #{fee.studentId}
     </update>
     <update id="updateStudentFeeIsLock">
         UPDATE music_group_student_fee_
-        SET is_lock_ = #{fee.isLock}
+        SET is_lock_ = #{fee.isLock},update_time_ = NOW()
         WHERE music_group_id_ = #{fee.musicGroupId} AND user_id_ = #{fee.studentId}
     </update>
+    <update id="batchUpdateCalender">
+        UPDATE music_group_student_fee_
+        SET payment_period_list_ = #{month},update_time_ = NOW()
+        WHERE music_group_id_ = #{musicGroupId} AND is_lock_ = 0
+    </update>
 </mapper>

+ 2 - 2
mec-web/src/main/java/com/ym/mec/web/controller/StudentManageController.java

@@ -190,7 +190,7 @@ public class StudentManageController extends BaseController {
      * 修改学员缴费金额和缴费周期
      * @return
      */
-    @GetMapping(value = "/updateStudentFee")
+    @PostMapping(value = "/updateStudentFee")
     @PreAuthorize("@pcs.hasPermissions('studentManage/updateStudentFee')")
     public Object updateStudentFee(UpdateStudentFeeDto studentFeeDto) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
@@ -206,7 +206,7 @@ public class StudentManageController extends BaseController {
      * 修改学员缴费周期锁定状态
      * @return
      */
-    @GetMapping(value = "/updateStudentFeeIsLock")
+    @PostMapping(value = "/updateStudentFeeIsLock")
     @PreAuthorize("@pcs.hasPermissions('studentManage/updateStudentFeeIsLock')")
     public Object updateStudentFeeIsLock(UpdateStudentFeeDto studentFeeDto) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();