From 168d852672f8f671a01d6f0f053349d0d321ec7c Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期三, 03 一月 2024 11:43:11 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 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 d8fc6ed..21f0578 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
@@ -948,11 +948,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() {
@@ -984,12 +995,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)) {
@@ -1010,7 +1033,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