zouxuan %!s(int64=2) %!d(string=hai) anos
pai
achega
503b45ebf4

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentMusicCourseFeeDao.java

@@ -11,4 +11,6 @@ public interface StudentMusicCourseFeeDao extends BaseMapper<StudentMusicCourseF
     void addExpectPrice(@Param("id") Integer id, @Param("expectPrice") BigDecimal expectPrice);
 
     void cutExpectPrice(@Param("id") Integer id, @Param("expectPrice") BigDecimal expectPrice);
+
+    void addActualPrice(@Param("id") Integer id, @Param("actualPrice") BigDecimal actualPrice);
 }

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/StudentMusicCourseFeeService.java

@@ -16,6 +16,8 @@ public interface StudentMusicCourseFeeService extends IService<StudentMusicCours
 
     StudentMusicCourseFeeDao getDao();
 
+    void addActualPrice(Integer userId, String musicGroupId, BigDecimal actualPrice);
+
     void addExpectPrice(Integer userId, String musicGroupId, BigDecimal expectPrice);
 
     void cutExpectPrice(Integer userId, String musicGroupId, BigDecimal expectPrice);

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentMusicCourseFeeServiceImpl.java

@@ -21,6 +21,14 @@ public class StudentMusicCourseFeeServiceImpl extends ServiceImpl<StudentMusicCo
 
     @Override
     @Transactional(rollbackFor = Exception.class)
+    public void addActualPrice(Integer userId, String musicGroupId, BigDecimal actualPrice) {
+        StudentMusicCourseFee one = this.lambdaQuery().eq(StudentMusicCourseFee::getMusicGroupId, musicGroupId)
+                .eq(StudentMusicCourseFee::getUserId, userId).one();
+        this.baseMapper.addActualPrice(one.getId(),actualPrice);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
     public void addExpectPrice(Integer userId, String musicGroupId, BigDecimal expectPrice) {
         StudentMusicCourseFee one = this.lambdaQuery().eq(StudentMusicCourseFee::getMusicGroupId, musicGroupId)
                 .eq(StudentMusicCourseFee::getUserId, userId).one();

+ 10 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderDetailServiceImpl.java

@@ -627,7 +627,11 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
 
     public void addOrderDetailTo(StudentPaymentOrder studentPaymentOrder, MusicGroup musicGroup, StudentRegistration studentRegistration) {
         //SurplusCourseFee
-        List<StudentPaymentOrderDetail> allDetails = this.findByOrderId(studentPaymentOrder.getId());
+        Integer userId = studentPaymentOrder.getUserId();
+        Long orderId = studentPaymentOrder.getId();
+        String musicGroupId = musicGroup.getId();
+        Integer tenantId = studentPaymentOrder.getTenantId();
+        List<StudentPaymentOrderDetail> allDetails = this.findByOrderId(orderId);
         BigDecimal courseFee = allDetails.stream().filter(o -> !(o.getType() == MUSICAL)
                         && !(o.getType() == VIP)
                         && !(o.getType() == PRACTICE)
@@ -640,7 +644,7 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
                 .reduce(BigDecimal.ZERO, BigDecimal::add);
         
         if (studentRegistration.getTemporaryCourseFee() != null) {
-            studentRegistration.setTemporaryCourseFee(new BigDecimal(0));
+            studentRegistration.setTemporaryCourseFee(BigDecimal.ZERO);
         }
         studentRegistration.setPaymentStatus(YES);
         studentRegistration.setMusicGroupStatus(StudentMusicGroupStatusEnum.NORMAL);
@@ -652,13 +656,15 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
             studentRegistration.setSurplusCourseFee(studentRegistration.getSurplusCourseFee().add(courseFee));
             //添加日志
             StudentCourseFeeDetail studentCourseFeeDetail = new StudentCourseFeeDetail();
-            studentCourseFeeDetail.setTenantId(studentPaymentOrder.getTenantId());
+            studentCourseFeeDetail.setTenantId(tenantId);
             studentCourseFeeDetail.setStudentRegistrationId(studentRegistration.getId());
             studentCourseFeeDetail.setAmount(courseFee);
             studentCourseFeeDetail.setSurplusCourseFee(studentRegistration.getSurplusCourseFee());
             studentCourseFeeDetail.setMemo("乐团缴费充值");
-            studentCourseFeeDetail.setOperator(studentPaymentOrder.getUserId());
+            studentCourseFeeDetail.setOperator(userId);
             studentCourseFeeDetailDao.insert(studentCourseFeeDetail);
+            //记录用户实际课费
+            studentMusicCourseFeeService.addActualPrice(userId,musicGroupId,courseFee);
         }
 
         //缴费项目详情

+ 3 - 0
mec-biz/src/main/resources/config/mybatis/StudentMusicCourseFeeMapper.xml

@@ -18,4 +18,7 @@
     <insert id="cutExpectPrice">
         update student_music_course_fee set expect_price_ = expect_price_ - #{expectPrice} where id_ = #{id}
     </insert>
+    <insert id="addActualPrice">
+        update student_music_course_fee set actual_price_ = actual_price_ + #{actualPrice} where id_ = #{id}
+    </insert>
 </mapper>