Просмотр исходного кода

Merge branch 'musicGroup_reg_feature_5_8'

周箭河 4 лет назад
Родитель
Сommit
61e013e073

+ 11 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CloudTeacherOrderServiceImpl.java

@@ -141,13 +141,21 @@ public class CloudTeacherOrderServiceImpl extends BaseServiceImpl<Long, CloudTea
         cloudOrder.setStatus(3);
         cloudOrder.setRefundAmount(refundAmount);
         cloudOrder.setUpdateTime(nowDate);
-        cloudTeacherOrderDao.update(cloudOrder);
+        if (cloudTeacherOrderDao.update(cloudOrder) <= 0) {
+            throw new BizException("云教练退费处理失败,请重试");
+        }
+
         if (cloudOrder.getStatus().equals(1)) {
             return true;
         }
-        int days = DateUtil.daysBetween(nowDate, cloudOrder.getEndTime());
+        int days = DateUtil.daysBetween(DateUtil.trunc(nowDate), cloudOrder.getEndTime());
         CloudTeacher cloudTeacher = cloudTeacherDao.getByStudentId(cloudOrder.getStudentId());
-
+        Date endDate = DateUtil.addDays(cloudOrder.getEndTime(), -days);
+        cloudTeacher.setEndTime(endDate);
+        cloudTeacher.setUpdateTime(nowDate);
+        if (cloudTeacherDao.update(cloudTeacher) <= 0) {
+            throw new BizException("云教练服务有效期更新失败,请重试");
+        }
         return true;
     }
 }

+ 4 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -1770,9 +1770,10 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
             StudentPaymentOrder studentPaymentOrder = studentPaymentOrderService.findMusicGroupApplyOrderByStatus(userId, musicGroupId, SUCCESS);
             BigDecimal orderExpectAmount = studentPaymentOrder == null ? BigDecimal.ZERO : studentPaymentOrder.getExpectAmount();
 
+            boolean hasPaid = studentRegistration.getMusicGroupStatus().equals(StudentMusicGroupStatusEnum.NORMAL);
             // 缴费人数更新
             MusicGroupSubjectPlan musicGroupSubjectPlan = musicGroupSubjectPlanDao.getMusicOneSubjectClassPlan(musicGroupId, studentRegistration.getActualSubjectId());
-            if (musicGroupSubjectPlan != null && (musicGroup.getCourseViewType().equals(CourseViewTypeEnum.COURSE_lIST) || orderExpectAmount.compareTo(BigDecimal.ZERO) > 0)) {
+            if (hasPaid && musicGroupSubjectPlan != null && (!musicGroup.getCourseViewType().equals(CourseViewTypeEnum.CLOUD_TEACHER) || orderExpectAmount.compareTo(BigDecimal.ZERO) > 0)) {
                 musicGroupSubjectPlan.setPaidStudentNum(musicGroupSubjectPlan.getPaidStudentNum() - 1);
                 musicGroupSubjectPlan.setUpdateTime(date);
                 musicGroupSubjectPlanDao.update(musicGroupSubjectPlan);
@@ -1884,6 +1885,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         if (studentRegistration == null) {
             throw new BizException("用户注册信息不存在");
         }
+        boolean hasPaid = studentRegistration.getMusicGroupStatus().equals(StudentMusicGroupStatusEnum.NORMAL);
 
         Date date = new Date();
 
@@ -1977,7 +1979,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 
         // 判断乐器是否是租赁
         MusicGroupSubjectPlan musicGroupSubjectPlan = musicGroupSubjectPlanDao.getMusicOneSubjectClassPlan(musicGroupId, studentRegistration.getActualSubjectId());
-        if (musicGroupSubjectPlan != null && (!musicGroup.getCourseViewType().equals(CourseViewTypeEnum.CLOUD_TEACHER) || orderExpectAmount.compareTo(BigDecimal.ZERO) > 0)) {
+        if (hasPaid && musicGroupSubjectPlan != null && (!musicGroup.getCourseViewType().equals(CourseViewTypeEnum.CLOUD_TEACHER) || orderExpectAmount.compareTo(BigDecimal.ZERO) > 0)) {
             musicGroupSubjectPlan.setPaidStudentNum(musicGroupSubjectPlan.getPaidStudentNum() - 1);
             musicGroupSubjectPlan.setUpdateTime(date);
             musicGroupSubjectPlanDao.update(musicGroupSubjectPlan);

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

@@ -51,9 +51,7 @@
             <if test="createTime != null">
                 create_time_ = #{createTime},
             </if>
-            <if test="updateTime != null">
-                update_time_ = #{updateTime},
-            </if>
+            update_time_ = NOW(),
             version_ = version_+1
         </set>
         where id_ = #{id} AND version_ = #{version}

+ 11 - 11
mec-biz/src/main/resources/config/mybatis/CloudTeacherOrderMapper.xml

@@ -83,9 +83,7 @@
             <if test="createTime != null">
                 create_time_ = #{createTime},
             </if>
-            <if test="updateTime != null">
-                update_time_ = #{updateTime},
-            </if>
+            update_time_ = NOW(),
         </set>
         where id_ = #{id}
     </update>
@@ -140,15 +138,17 @@
     </select>
 
     <select id="getStudentCloudTeacherOrder" resultMap="CloudTeacherOrder">
-        SELECT * FROM cloud_teacher_order
+        SELECT *
+        FROM cloud_teacher_order
         WHERE order_id_ = (
-        SELECT MAX(id_)
-        FROM student_payment_order
-        WHERE type_ = 'APPLY'
-        AND music_group_id_ = #{musicGroupId}
-        AND status_ = 'SUCCESS'
-        AND user_id_ = #{studentId}
+            SELECT MAX(id_)
+            FROM student_payment_order
+            WHERE type_ = 'APPLY'
+              AND music_group_id_ = #{musicGroupId}
+              AND status_ = 'SUCCESS'
+              AND user_id_ = #{studentId}
         )
-        AND student_id_ = #{studentId} AND status_ IN (1,2)
+          AND student_id_ = #{studentId}
+          AND status_ IN (1, 2)
     </select>
 </mapper>