Browse Source

fix surplus_course_fee_ 取值错误

周箭河 4 years ago
parent
commit
88382176a3

+ 11 - 4
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDetailDao.java

@@ -122,18 +122,25 @@ public interface StudentPaymentOrderDetailDao extends BaseDAO<Long, StudentPayme
     List<StudentPaymentOrderDetail> getOrderGoodies(@Param("orderIds") List<Long> orderIds);
     List<StudentPaymentOrderDetail> getOrderGoodies(@Param("orderIds") List<Long> orderIds);
 
 
     /**
     /**
-     * @describe 获取用户指定类型的订单
-     * @author qnc99
-     * @date 2020/12/7 0007
      * @param userId:
      * @param userId:
      * @param orderType:
      * @param orderType:
      * @return java.util.List<com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail>
      * @return java.util.List<com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail>
+     * @describe 获取用户指定类型的订单
+     * @author qnc99
+     * @date 2020/12/7 0007
      */
      */
     List<StudentPaymentOrderDetail> getWithUserAndOrderType(@Param("userId") Integer userId,
     List<StudentPaymentOrderDetail> getWithUserAndOrderType(@Param("userId") Integer userId,
-                                                            @Param("orderType")OrderTypeEnum orderType);
+                                                            @Param("orderType") OrderTypeEnum orderType);
 
 
     List<StudentPaymentOrderDetail> getWithIds(@Param("paymentOrderIds") List<Long> paymentOrderIds);
     List<StudentPaymentOrderDetail> getWithIds(@Param("paymentOrderIds") List<Long> paymentOrderIds);
 
 
 
 
     List<StudentPaymentOrderDetail> getOrderDetailByType(@Param("orderId") Long orderId, @Param("orderDetailTypes") List<OrderDetailTypeEnum> orderDetailTypes);
     List<StudentPaymentOrderDetail> getOrderDetailByType(@Param("orderId") Long orderId, @Param("orderDetailTypes") List<OrderDetailTypeEnum> orderDetailTypes);
+
+    /**
+     * 根据订单号获取订单详情
+     * @param orderId
+     * @return
+     */
+    List<StudentPaymentOrderDetail> getOrderDetailByOrderId(@Param("orderId") Long orderId);
 }
 }

+ 2 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -925,7 +925,8 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
 
 
             List<StudentPaymentOrderDetail> orderDetails = studentPaymentOrderDetailService.getOrderDetail(studentPaymentOrder.getId());
             List<StudentPaymentOrderDetail> orderDetails = studentPaymentOrderDetailService.getOrderDetail(studentPaymentOrder.getId());
 
 
-            BigDecimal courseFee = orderDetails.stream().filter(o -> !o.getType().getCode().equals("MUSICAL")).filter(o -> !o.getType().getCode().equals("ACCESSORIES")).map(o -> o.getPrice().subtract(o.getRemitFee()))
+            List<StudentPaymentOrderDetail> allDetails = studentPaymentOrderDetailDao.getOrderDetailByOrderId(studentPaymentOrder.getId());
+            BigDecimal courseFee = allDetails.stream().filter(o -> !o.getType().getCode().equals("MUSICAL")).filter(o -> !o.getType().getCode().equals("ACCESSORIES")).map(o -> o.getPrice().subtract(o.getRemitFee()==null?BigDecimal.ZERO:o.getRemitFee()))
                     .reduce(BigDecimal.ZERO, BigDecimal::add);
                     .reduce(BigDecimal.ZERO, BigDecimal::add);
 
 
             //累加充值金额
             //累加充值金额

+ 4 - 0
mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderDetailMapper.xml

@@ -281,4 +281,8 @@
         AND spod.type_ = #{orderType, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
         AND spod.type_ = #{orderType, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
         AND spo.status_='SUCCESS'
         AND spo.status_='SUCCESS'
     </select>
     </select>
+
+    <select id="getOrderDetailByOrderId" resultMap="StudentPaymentOrderDetail">
+        SELECT * FROM student_payment_order_detail WHERE payment_order_id_ = #{orderId}
+    </select>
 </mapper>
 </mapper>