Forráskód Böngészése

Merge remote-tracking branch 'origin/master'

zouxuan 4 éve
szülő
commit
bff990ed76

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

@@ -466,6 +466,17 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 			throw new BizException("删除失败:存在已排课的学员");
 		}
 		
+		Long musicGroupPaymentCalenderId = details.get(0).getMusicGroupPaymentCalenderId();
+		MusicGroupPaymentCalender musicGroupPaymentCalender = musicGroupPaymentCalenderDao.get(musicGroupPaymentCalenderId);
+		
+		if(musicGroupPaymentCalender == null){
+			throw new BizException("查询缴费项目失败[{}]", musicGroupPaymentCalender);
+		}
+		int currentNum = musicGroupPaymentCalender.getExpectNum() - details.size();
+		musicGroupPaymentCalender.setExpectNum(currentNum < 0 ? 0 : currentNum);
+		musicGroupPaymentCalender.setUpdateTime(new Date());
+		musicGroupPaymentCalenderDao.update(musicGroupPaymentCalender);
+		
 		musicGroupPaymentCalenderDetailDao.batchDel(musicGroupPaymentCalenderDetailIds);
 		musicGroupPaymentStudentCourseDetailDao.deleteByMusicGroupPaymentCalenderDetailId(musicGroupPaymentCalenderDetailIdList);
 	}

+ 8 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentRouteOrderServiceImpl.java

@@ -132,8 +132,14 @@ public class StudentPaymentRouteOrderServiceImpl extends BaseServiceImpl<Long, S
     public StudentPaymentRouteOrder addOutOrder(StudentPaymentRouteOrder studentPaymentRouteOrder) {
         Map<String, Object> params = new HashMap<>();
         params.put("transNo", studentPaymentRouteOrder.getTransNo());
-        if(studentPaymentRouteOrderDao.queryAuditCount(params) >0){
-            throw new  BizException("流水号不能重复");
+        if (studentPaymentRouteOrderDao.queryAuditCount(params) > 0) {
+            throw new BizException("流水号不能重复");
+        }
+        if (studentPaymentRouteOrder.getCalenderId() != null) {
+            MusicGroupPaymentCalender musicGroupPaymentCalender = musicGroupPaymentCalenderDao.get(studentPaymentRouteOrder.getCalenderId());
+            if (musicGroupPaymentCalender == null || !musicGroupPaymentCalender.getPayUserType().equals(MusicGroupPaymentCalender.PayUserType.SCHOOL)) {
+                throw new BizException("学校缴费单号不存在,请核查");
+            }
         }
         Date nowDate = new Date();
         String orderNo = idGeneratorService.generatorId("payment") + "";

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

@@ -91,7 +91,7 @@
     </select>
 
     <select id="lockWithUserAndMusic" resultMap="StudentRegistration">
-        SELECT * FROM student_registration WHERE user_id_ = #{userId} AND music_group_id_=#{musicGroupId} FOR UPDATE
+        SELECT * FROM student_registration WHERE user_id_ = #{userId} AND music_group_id_=#{musicGroupId} AND music_group_status_ != 'QUIT' FOR UPDATE
     </select>
 
     <!-- 全查询 -->