From 51338b0baa2c81175c923fc537a80ba52cfa7d8e Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 01 Sep 2022 17:13:31 +0800
Subject: [PATCH] 20220822

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |   34 +++++++++++++++++++++++++++++-----
 1 files changed, 29 insertions(+), 5 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index a619ce4..6f08fcc 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -74,6 +74,7 @@
     private final MallTeamLeaderMapper mallTeamLeaderMapper;
     private final MallMemberMapper mallMemberMapper;
     private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
+    private final MallLeaderAchieveMapper mallLeaderAchieveMapper;
 
     @Override
     @Transactional(rollbackFor = Exception.class)
@@ -294,7 +295,7 @@
                 wxResultStr = JSONUtil.toJsonStr(brandWCPayRequestData);
                 payResultStr = brandWCPayRequestData.getPrepay_id();
                 orderInfo.setPayMethod("微信支付");
-                agentProducer.sendOrderReturn(orderInfo.getId());
+//                agentProducer.sendOrderReturn(orderInfo.getId());
                 break;
             case "2":
                 if (StrUtil.isNotBlank(orderInfo.getPayOrderNo())) {
@@ -315,6 +316,7 @@
                 orderInfo.setStatus(OrderStatusEnum.WAIT_SHIPPING.getValue());
                 orderInfo.setPayTime(new Date());
                 orderInfo.setPayResult("1");
+                orderInfo.setDeliveryState(OrderDeliveryStateEnum.DELIVERY_WAIT.getValue());
 
 //                boolean hasTc = false;
 //                // 静态倍数
@@ -484,6 +486,15 @@
         orderInfo.setStatus(OrderStatusEnum.FINISH.getValue());
         orderInfo.setReceivingTime(new Date());
         this.baseMapper.updateById(orderInfo);
+
+        //生成一条团长提成记录
+        MallLeaderAchieve mallLeaderAchieve = new MallLeaderAchieve();
+        mallLeaderAchieve.setMemberId(orderInfo.getMemberId());
+        mallLeaderAchieve.setOrderNo(orderInfo.getOrderNo());
+        mallLeaderAchieve.setAmount(orderInfo.getAmount());
+        mallLeaderAchieve.setUniqueCode(orderInfo.getTakeUniqueCode());
+        mallLeaderAchieve.setState(MallLeaderAchieve.STATE_ONE);
+        mallLeaderAchieveMapper.insert(mallLeaderAchieve);
     }
 
     @Override
@@ -703,6 +714,21 @@
         BigDecimal bb = new BigDecimal(100);
         int refundMoney = refundAmount.multiply(bb).intValue();
 
+        Long refundId = mallRefundEntity.getId();
+        MallRefundEntity mallRefundOld = mallRefundMapper.selectById(refundId);
+        MallOrderInfo mallOrderInfoOld = this.baseMapper.selectByOrderNo(orderNo);
+        //余额支付退款
+        if(OrderPayMethodEnum.BALANCE.getName().equals(mallOrderInfo.getPayMethod())){
+            mallRefundOld.setState(1);
+            mallRefundMapper.updateById(mallRefundOld);
+            mallOrderInfoOld.setStatus(OrderStatusEnum.REFUNDED.getValue());
+            this.baseMapper.updateById(mallOrderInfoOld);
+            mallMoneyFlowService.addMoneyFlow(mallOrderInfoOld.getMemberId(), mallOrderInfoOld.getAmount(), MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue());
+            memberWalletService.add(refundAmount, member.getId(), "balance");
+            mallOrderItemMapper.updateStateByOrderId(3,mallOrderInfoOld.getId());
+            return new FebsResponse().success().message("退款成功");
+        }
+
         Boolean flag = false;
         Boolean debug = xcxProperties.getDebug();
         if (debug) {
@@ -718,14 +744,12 @@
          * 更新退款表
          * 更新订单表
          */
-        Long refundId = mallRefundEntity.getId();
-        MallRefundEntity mallRefundOld = mallRefundMapper.selectById(refundId);
-        MallOrderInfo mallOrderInfoOld = this.baseMapper.selectByOrderNo(orderNo);
         if(flag){
             mallRefundOld.setState(1);
             mallRefundMapper.updateById(mallRefundOld);
             mallOrderInfoOld.setStatus(OrderStatusEnum.REFUNDED.getValue());
             this.baseMapper.updateById(mallOrderInfoOld);
+            mallOrderItemMapper.updateStateByOrderId(3,mallOrderInfoOld.getId());
             mallMoneyFlowService.addMoneyFlow(mallOrderInfoOld.getMemberId(), mallOrderInfoOld.getAmount(), MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue());
         }else{
             mallRefundOld.setState(2);
@@ -767,7 +791,7 @@
         mallRefundEntity.setRefundPic(applyRefundOrderDto.getRefundPic());
         mallRefundEntity.setMemberId(member.getId());
         mallRefundEntity.setState(3);
-        mallRefundEntity.setType(1);
+        mallRefundEntity.setType(applyRefundOrderDto.getType());
         mallRefundEntity.setOrderId(orderId);
         mallRefundEntity.setAmount(mallOrderItem.getAmount());
         mallRefundMapper.insert(mallRefundEntity);

--
Gitblit v1.9.1