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

Merge remote-tracking branch 'origin/master'

Joburgess 4 éve
szülő
commit
a1c54b03b5

+ 26 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -845,9 +845,13 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
                 //修改原有乐团注册信息
                 studentRegistrationDao.update(studentRegistration);
             }
+            Boolean orderFlag = true;
             //用户是否在主乐团
             StudentRegistration registration = studentRegistrationDao.getByPhoneAndMusicGroupId(newMusicGroupId, studentRegistration.getParentsPhone());
             if (registration != null) {
+                if(registration.getMusicGroupStatus() == StudentMusicGroupStatusEnum.NORMAL){
+                    orderFlag = false;
+                }
                 //修改剩余课程余额
                 Date date = new Date();
                 registration.setMusicGroupStatus(StudentMusicGroupStatusEnum.NORMAL);
@@ -874,6 +878,28 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
                     musicGroupStudentFeeDao.insert(musicGroupStudentFee);
                 }
             }
+            StudentPaymentOrder waitPayOrder = studentPaymentOrderService.findMusicGroupApplyOrderByStatus(registration.getUserId(), studentRegistration.getMusicGroupId(), DealStatusEnum.WAIT_PAY);
+
+            if (waitPayOrder != null) {
+                waitPayOrder.setStatus(DealStatusEnum.CLOSE);
+                studentPaymentOrderService.update(waitPayOrder);
+            }
+            if(orderFlag){
+                //生成订单
+                StudentPaymentOrder studentPaymentOrder = new StudentPaymentOrder();
+                studentPaymentOrder.setUserId(registration.getUserId());
+                studentPaymentOrder.setGroupType(GroupType.MUSIC);
+                studentPaymentOrder.setType(OrderTypeEnum.APPLY);
+                studentPaymentOrder.setMusicGroupId(registration.getMusicGroupId());
+                studentPaymentOrder.setClassGroupId(registration.getClassGroupId());
+                studentPaymentOrder.setOrganId(registration.getOrganId());
+                studentPaymentOrder.setRoutingOrganId(registration.getOrganId());
+                studentPaymentOrder.setStatus(DealStatusEnum.SUCCESS);
+                studentPaymentOrder.setActualAmount(BigDecimal.ZERO);
+                studentPaymentOrder.setPayTime(new Date());
+                studentPaymentOrder.setExpectAmount(BigDecimal.ZERO);
+                studentPaymentOrderService.insert(studentPaymentOrder);
+            }
             //主班新增余额日志
             if(amount.doubleValue() != 0d && masterTotalPrice.doubleValue() > 0d){
                 StudentCourseFeeDetail studentCourseFeeDetail = new StudentCourseFeeDetail();

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

@@ -293,6 +293,7 @@
         <result column="group_type_" property="groupType" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="type_" property="type" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="del_flag_" property="delFlag"/>
+        <result column="lock_flag_" property="lockFlag"/>
         <result column="expect_student_num_" property="expectStudentNum"/>
         <result column="total_class_times_" property="totalClassTimes"/>
     </resultMap>