Browse Source

Merge branch 'feature/0721-tenant' into develop

liujc 1 năm trước cách đây
mục cha
commit
3d0cb72173

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/PaymentDivMemberRecordServiceImpl.java

@@ -796,7 +796,7 @@ public class PaymentDivMemberRecordServiceImpl extends ServiceImpl<PaymentDivMem
         Map<Long,BigDecimal> tenantShare = new HashMap<>();
 
         // 计算分润
-        teacherAmount(userPaymentOrder, tenantdivMap, teacherMap,tenantShare, serviceFeeAmount);
+        teacherAmount(userPaymentOrder, tenantdivMap, teacherMap,tenantShare, tenantdivMap.get(-1L));
 
 
         // 写入机构收支表

+ 21 - 11
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserAccountRecordServiceImpl.java

@@ -15,6 +15,7 @@ import com.yonge.cooleshow.biz.dal.vo.TeacherEarningVo;
 import com.yonge.cooleshow.biz.dal.vo.UserAccountVo;
 import com.yonge.cooleshow.biz.dal.vo.UserOrderDetailVo;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.yonge.cooleshow.common.enums.EPaymentVersion;
 import com.yonge.cooleshow.common.enums.PostStatusEnum;
 import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext;
 import org.slf4j.Logger;
@@ -167,19 +168,28 @@ public class UserAccountRecordServiceImpl extends ServiceImpl<UserAccountRecordD
             records.addAll(baseMapper.selectRecordByOrderDetail(userOrderDetailVo.getOrderNo(),AccountBizTypeEnum.MUSIC_SHARE, bizIds));
         }else if(GoodTypeEnum.PRACTICE.equals(userOrderDetailVo.getGoodType())){
             //查询课程组下所有课程id
-            List<CourseSchedule> cancel = courseScheduleService.list(Wrappers.<CourseSchedule>lambdaQuery()
-                    .eq(CourseSchedule::getCourseGroupId, userOrderDetailVo.getBizId())
-            );
-            cancel.stream().forEach(o -> bizIds.add(o.getId()));
+            if (userOrderDetailVo.getPaymentVersion().equals(EPaymentVersion.V1)) {
+                List<CourseSchedule> cancel = courseScheduleService.list(Wrappers.<CourseSchedule>lambdaQuery()
+                        .eq(CourseSchedule::getCourseGroupId, userOrderDetailVo.getBizId())
+                );
+                cancel.stream().forEach(o -> bizIds.add(o.getId()));
+            } else {
+                bizIds.add(userOrderDetailVo.getBizId());
+            }
             records.addAll(baseMapper.selectRecordByOrderDetail(userOrderDetailVo.getOrderNo(),AccountBizTypeEnum.PRACTICE, bizIds));
         }else if(GoodTypeEnum.LIVE.equals(userOrderDetailVo.getGoodType())){
-            List<Long> groupId = Arrays.asList(userOrderDetailVo.getBizId());
-            records.addAll(baseMapper.selectRecordByOrderDetail(userOrderDetailVo.getOrderNo(),AccountBizTypeEnum.LIVE_SHARE, groupId));
-            //查询课程组下所有课程id
-            List<CourseSchedule> cancel = courseScheduleService.list(Wrappers.<CourseSchedule>lambdaQuery()
-                    .eq(CourseSchedule::getCourseGroupId, userOrderDetailVo.getBizId())
-            );
-            cancel.stream().forEach(o -> bizIds.add(o.getId()));
+
+            if (userOrderDetailVo.getPaymentVersion().equals(EPaymentVersion.V1)) {
+                List<Long> groupId = Arrays.asList(userOrderDetailVo.getBizId());
+                records.addAll(baseMapper.selectRecordByOrderDetail(userOrderDetailVo.getOrderNo(), AccountBizTypeEnum.LIVE_SHARE, groupId));
+                //查询课程组下所有课程id
+                List<CourseSchedule> cancel = courseScheduleService.list(Wrappers.<CourseSchedule>lambdaQuery()
+                        .eq(CourseSchedule::getCourseGroupId, userOrderDetailVo.getBizId())
+                );
+                cancel.stream().forEach(o -> bizIds.add(o.getId()));
+            } else {
+                bizIds.add(userOrderDetailVo.getBizId());
+            }
             records.addAll(baseMapper.selectRecordByOrderDetail(userOrderDetailVo.getOrderNo(),AccountBizTypeEnum.LIVE, bizIds));
         }
         return records;

+ 5 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserOrderRefundServiceImpl.java

@@ -75,6 +75,9 @@ public class UserOrderRefundServiceImpl extends ServiceImpl<UserOrderRefundDao,
     @Autowired
     private TenantAccountRecordService tenantAccountRecordService;
 
+    @Autowired
+    private UserOrderService userOrderService;
+
     //验证是否可以退款,获取退款金额信息
     private static final Map<GoodTypeEnum, Function<OrderRefundReq, HttpResponseResult<RefundCreateRes>>> refundCreate = new HashMap<>();
     //插入退款后执行
@@ -616,12 +619,14 @@ public class UserOrderRefundServiceImpl extends ServiceImpl<UserOrderRefundDao,
             search.setIds(ids);
             search.setOrderNo(orderRefund.getOrderNo());
             List<UserOrderDetailVo> userOrderDetails = orderDetailService.selectList(search);
+            UserOrder order = userOrderService.getByOrderNo(orderRefund.getOrderNo());
 
             for (UserOrderDetailVo vo : userOrderDetails) {
                 Consumer<UserOrderDetailVo> refundAfterConsumer = refundSuccess.get(vo.getGoodType());
                 if (!Objects.isNull(refundAfterConsumer)) {
                     refundAfterConsumer.accept(vo);
                 }
+                vo.setPaymentVersion(order.getPaymentVersion());
                 accountHandle(vo);
             }
 

+ 3 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/UserOrderDetailVo.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.yonge.cooleshow.biz.dal.entity.UserOrderDetail;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.OrderTypeEnum;
+import com.yonge.cooleshow.common.enums.EPaymentVersion;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -64,6 +65,8 @@ public class UserOrderDetailVo extends UserOrderDetail {
     @ApiModelProperty("商品信息,返回订单列表或详情用")
     private BizInfo bizInfo;
 
+    @ApiModelProperty("支付版本 ")
+    private EPaymentVersion paymentVersion;
     @Data
     public  static class BizInfo implements Serializable {
 

+ 2 - 2
cooleshow-user/user-biz/src/main/resources/config/mybatis/TenantAccountRecordMapper.xml

@@ -62,8 +62,8 @@
     <select id="getStatistics"
             resultType="com.yonge.cooleshow.biz.dal.wrapper.TenantAccountRecordWrapper$TenantAccountRecordStat">
         SELECT
-        sum(if(t.in_or_out_ = 'IN',t.trans_amount_,0)) transAmountIn,
-        sum(if(t.in_or_out_ = 'OUT',t.trans_amount_,0)) transAmountOut
+        sum(if(t.in_or_out_ = 'IN' and t.post_status_ = 'RECORDED',t.trans_amount_,0)) transAmountIn,
+        sum(if(t.in_or_out_ = 'IN' and t.post_status_ = 'WAIT',t.trans_amount_,0)) transAmountOut
         FROM tenant_account_record t
         <include refid="selectSql"/>
     </select>