From 8049faa20ca33b159f6384bbbc2d3429ad8be41b Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 17 Jan 2023 20:36:24 +0800
Subject: [PATCH] 20221227 充值归集

---
 src/main/java/cc/mrbird/febs/pay/controller/UnipayController.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 53 insertions(+), 4 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/pay/controller/UnipayController.java b/src/main/java/cc/mrbird/febs/pay/controller/UnipayController.java
index d7779f7..e26ca2d 100644
--- a/src/main/java/cc/mrbird/febs/pay/controller/UnipayController.java
+++ b/src/main/java/cc/mrbird/febs/pay/controller/UnipayController.java
@@ -14,10 +14,7 @@
 import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
 import cc.mrbird.febs.mall.service.IMallAchieveService;
 import cc.mrbird.febs.mall.service.IMallMoneyFlowService;
-import cc.mrbird.febs.pay.model.AgreeMentPayCallBackDto;
-import cc.mrbird.febs.pay.model.AgreeMentPaySmsDto;
-import cc.mrbird.febs.pay.model.AgreementSignDto;
-import cc.mrbird.febs.pay.model.UniPayCallBackDto;
+import cc.mrbird.febs.pay.model.*;
 import cc.mrbird.febs.pay.service.UnipayService;
 import cc.mrbird.febs.pay.util.JsonUtil;
 import cc.mrbird.febs.rabbit.producter.AgentProducer;
@@ -27,6 +24,7 @@
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.RequiredArgsConstructor;
@@ -75,6 +73,12 @@
     private MallMemberBankMapper mallMemberBankMapper;
     @Autowired
     private MallMemberBankSignMapper mallMemberBankSignMapper;
+    @Autowired
+    private MallMemberWithdrawMapper mallMemberWithdrawMapper;
+    @Autowired
+    private MallMoneyFlowMapper mallMoneyFlowMapper;
+
+    private final IApiMallMemberWalletService iApiMallMemberWalletService;
 
     @GetMapping(value = "/unipayCallBack")
     public String unipayCallBack(HttpServletRequest request, UniPayCallBackDto uniPayCallBackDto){
@@ -254,4 +258,49 @@
         return "success";
     }
 
+    @PostMapping(value = "/singlePayCallBack")
+    public JSONObject singlePayCallBack(@RequestBody SinglePayCallBackDto singlePayCallBackDto){
+        log.info("进入汇聚支付代付回调"+ JSONUtil.parseObj(singlePayCallBackDto));
+        String status = singlePayCallBackDto.getStatus();
+        BigDecimal paidAmount = singlePayCallBackDto.getPaidAmount();
+        BigDecimal paidAmountFee = singlePayCallBackDto.getFee();
+        String errorCode = singlePayCallBackDto.getErrorCode();
+        String errorCodeDesc = singlePayCallBackDto.getErrorCodeDesc();
+        String merchantOrderNo = singlePayCallBackDto.getMerchantOrderNo();
+
+        log.info("进入汇聚支付代付回调"+status+";"+paidAmount+";"+paidAmountFee+";");
+        if("205".equals(status) && "".equals(errorCode)){
+            QueryWrapper<MallMemberWithdraw> objectQueryWrapper = new QueryWrapper<>();
+            objectQueryWrapper.eq("withdraw_no",merchantOrderNo);
+            MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectOne(objectQueryWrapper);
+            if(ObjectUtil.isNotEmpty(mallMemberWithdraw)){
+                mallMemberWithdraw.setStatus(2);
+                mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
+
+                QueryWrapper<MallMoneyFlow> flowQueryWrapper = new QueryWrapper<>();
+                flowQueryWrapper.eq("order_no",mallMemberWithdraw.getWithdrawNo());
+                flowQueryWrapper.eq("type",MoneyFlowTypeEnum.WITHDRAWAL.getValue());
+                MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOne(flowQueryWrapper);
+                if(ObjectUtil.isNotEmpty(mallMoneyFlow)){
+                    mallMoneyFlow.setStatus(2);
+                    mallMoneyFlowMapper.updateById(mallMoneyFlow);
+                }
+            }
+        }else{
+            QueryWrapper<MallMemberWithdraw> objectQueryWrapper = new QueryWrapper<>();
+            objectQueryWrapper.eq("withdraw_no",merchantOrderNo);
+            MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectOne(objectQueryWrapper);
+            if(ObjectUtil.isNotEmpty(mallMemberWithdraw)){
+                mallMemberWithdraw.setRemark(errorCodeDesc);
+                mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
+            }
+        }
+
+        SinglePayCallBackVo singlePayCallBackVo = new SinglePayCallBackVo();
+        singlePayCallBackVo.setStatusCode("2001");
+        singlePayCallBackVo.setMessage("成功");
+        JSONObject jsonObject = JSONUtil.parseObj(singlePayCallBackVo);
+        return jsonObject;
+    }
+
 }

--
Gitblit v1.9.1