From aa2c6d722ed799290285b6365f011aaa74373d73 Mon Sep 17 00:00:00 2001
From: 44323 <443237572@qq.com>
Date: 星期六, 23 十二月 2023 17:30:07 +0800
Subject: [PATCH] 11.27,9

---
 cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java |   29 ++++++++++++++++++++++++++---
 1 files changed, 26 insertions(+), 3 deletions(-)

diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java
index dbd2952..ccbeb2c 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java
@@ -945,11 +945,22 @@
         }
         return weixinpay;
     }
-
+    private String smid = "2088330203191220";//平台支付宝商户号
 
     public ResultUtil AlipayPayment(String code, BigDecimal request) {
         TCoursePackagePaymentMapper baseMapper1 = this.baseMapper;
-        ResultUtil alipay = payMoneyUtil.alipay("课包购买", "课包购买", "", code, request.toString(),
+        TCoursePackagePayment coursePackagePayment = baseMapper1.getCoursePackagePaymentByCode(code);
+        // 判断这个课包属于哪个门店 属于哪个运营商 根据运营商 id 获取对应的商户号
+        Integer coursePackageId = coursePackagePayment.getCoursePackageId();
+        TCoursePackage byId = coursePackageService.getById(coursePackageId);
+        Store store = storeClient.queryStoreById(byId.getStoreId());
+        String smid1="";
+        if (store.getOperatorId() == null ){
+            smid1 = smid;
+        }else{
+            smid1 = storeClient.getSMIDByOperatorId(store.getOperatorId());
+        }
+        ResultUtil alipay = payMoneyUtil.alipay(smid1,"课包购买", "课包购买", "", code, request.toString(),
                 "/base/coursePackage/alipayRegisteredCoursesCallback");
         if (alipay.getCode() == 200) {
             new Thread(new Runnable() {
@@ -981,12 +992,24 @@
                                 if ("TRADE_CLOSED".equals(s) || "TRADE_FINISHED".equals(s) || num == 10) {
                                     coursePackagePayment.setState(3);
                                     baseMapper1.deleteById(coursePackagePayment.getId());
+
                                     break;
                                 }
                                 if ("TRADE_SUCCESS".equals(s)) {
                                     coursePackagePayment.setPayStatus(2);
                                     coursePackagePayment.setOrderNumber(tradeNo);
                                     baseMapper1.updateById(coursePackagePayment);
+                                        // 判断这个课包属于哪个门店 属于哪个运营商 根据运营商 id 获取对应的商户号
+                                        Integer coursePackageId = coursePackagePayment.getCoursePackageId();
+                                        TCoursePackage byId = coursePackageService.getById(coursePackageId);
+                                        Store store = storeClient.queryStoreById(byId.getStoreId());
+                                        if (store.getOperatorId()== null ){
+                                            // 说明是平台的门店
+                                            payMoneyUtil.confirm(smid,code,tradeNo,request.toString());
+                                        }else{
+                                            String smid = storeClient.getSMIDByOperatorId(store.getOperatorId());
+                                            payMoneyUtil.confirm(smid,code,tradeNo,request.toString());
+                                        }
                                     break;
                                 }
                                 if ("WAIT_BUYER_PAY".equals(s)) {
@@ -1007,7 +1030,7 @@
         TCoursePackagePayment packagePayment = this.baseMapper.selectOne(new QueryWrapper<TCoursePackagePayment>()
                 .eq("code", code));
         if (appUser.getPlayPaiCoins() < wpGold) {
-            return ResultUtil.error("玩牌币不足!");
+            return ResultUtil.error("玩湃币不足!");
         }
         packagePayment.setPayStatus(2);
         packagePayment.setPayUserId(appUser.getId());

--
Gitblit v1.7.1