From df4733091b30b0434a04dacd0e844663114d4cfe Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期三, 09 七月 2025 17:51:56 +0800 Subject: [PATCH] 修改支付宝支付和bug修改 --- cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java | 134 ++++++++++++++++++-------------------------- 1 files changed, 56 insertions(+), 78 deletions(-) diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java index b3bb319..9df4c59 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java +++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java @@ -1031,85 +1031,63 @@ ResultUtil alipay = payMoneyUtil.alipay(smid1,"报名运动营", "报名运动营", coursePackagePaymentConfig.getId().toString(), code, paymentPrice.toString(), "/base/course/aliPaymentCourseCallback"); -// if (alipay.getCode() == 200) { -// String finalCode = code; -// new Thread(new Runnable() { -// @Override -// public void run() { -// try { -// Thread.sleep(1000); -// int num = 1; -// int wait = 0; -// while (num <= 10) { -// int min = 5000; -// wait += (min * num); -// Thread.sleep(wait); -// CoursePackageOrder coursePackageOrder1 = coursePackageOrderService.getOne(new QueryWrapper<CoursePackageOrder>() -// .eq("code", finalCode).eq("state", 1)); -// if (coursePackageOrder1.getPayStatus() == 2) { -// break; -// } -// AlipayTradeQueryResponse alipayTradeQueryResponse = payMoneyUtil.queryALIOrder(finalCode); -// if (null != alipayTradeQueryResponse) { -// /** -// * WAIT_BUYER_PAY(交易创建,等待买家付款)、 -// * TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、 -// * TRADE_SUCCESS(交易支付成功)、 -// * TRADE_FINISHED(交易结束,不可退款) -// */ -// String s = alipayTradeQueryResponse.getTradeStatus(); -// -// String tradeNo = alipayTradeQueryResponse.getTradeNo(); -// if ("TRADE_CLOSED".equals(s) || "TRADE_FINISHED".equals(s) || num == 10) { -// //有待支付的订单,这里不处理 -//// coursePackageOrder1.setState(3); -//// coursePackageOrderService.updateById(coursePackageOrder1); -// break; -// } -// if ("TRADE_SUCCESS".equals(s)) { -// coursePackageOrder1.setPayStatus(2); -// coursePackageOrder1.setOrderNumber(tradeNo); -// coursePackageOrder1.setAppUserId(null); + if (alipay.getCode() == 200) { + String finalCode = code; + String finalSmid = smid1; + String finalCode1 = code; + new Thread(new Runnable() { + @Override + public void run() { + try { + Thread.sleep(1000); + int num = 1; + int wait = 0; + while (num <= 10) { + int min = 5000; + wait += (min * num); + Thread.sleep(wait); + CoursePackageOrder coursePackageOrder1 = coursePackageOrderService.getOne(new QueryWrapper<CoursePackageOrder>() + .eq("code", finalCode).eq("state", 1)); + if (coursePackageOrder1.getPayStatus() == 2) { + break; + } + AlipayTradeQueryResponse alipayTradeQueryResponse = payMoneyUtil.queryALIOrder(finalCode); + if (null != alipayTradeQueryResponse) { + /** + * WAIT_BUYER_PAY(交易创建,等待买家付款)、 + * TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、 + * TRADE_SUCCESS(交易支付成功)、 + * TRADE_FINISHED(交易结束,不可退款) + */ + String s = alipayTradeQueryResponse.getTradeStatus(); + + String tradeNo = alipayTradeQueryResponse.getTradeNo(); + if ("TRADE_CLOSED".equals(s) || "TRADE_FINISHED".equals(s) || num == 10) { + //有待支付的订单,这里不处理 +// coursePackageOrder1.setState(3); // coursePackageOrderService.updateById(coursePackageOrder1); -// addCoursePackageOrderStudent(coursePackageOrder1.getId(), coursePackagePaymentConfig); -// moneyOut(tradeNo,tradeNo,finalCode); -// // 根据课程id 查询这个课程属于哪个门店 属于哪个运营商 -// Integer id = paymentCourseVo.getId(); -// TCoursePackage byId = coursePackageService.getById(id); -// Integer storeId = byId.getStoreId(); -// Store store = storeClient.queryStoreById(storeId); -// Integer operatorId = store.getOperatorId(); -// if (operatorId==null){ -// String smid ="2088330203191220"; -// // 说明是平台的 不走分账 -//// payMoneyUtil.confirm(smid,finalCode,tradeNo,paymentPrice.toString()); -// payMoneyUtil.confirm1(smid,finalCode,tradeNo,paymentPrice.toString()); -// break; -// }else if (operatorId==0){ -// String smid ="2088330203191220"; -// // 说明是平台的 -// payMoneyUtil.confirm1(smid,finalCode,tradeNo,paymentPrice.toString()); -// break; -// }else{ -// // 当前课程不属于门店 查询这个课程属于哪个门店 属于哪个运营商 -// String smidByOperatorId = storeClient.getSMIDByOperatorId(operatorId); -// payMoneyUtil.confirm(smidByOperatorId,finalCode,tradeNo,paymentPrice.toString()); -// // 分账处理 -// extracted(store, coursePackageOrder1, tradeNo); -// break; -// } -// } -// if ("WAIT_BUYER_PAY".equals(s)) { -// num++; -// } -// } -// } -// } catch (Exception e) { -// e.printStackTrace(); -// } -// } -// }).start(); -// } + break; + } + if ("TRADE_SUCCESS".equals(s)) { + coursePackageOrder1.setPayStatus(2); + coursePackageOrder1.setOrderNumber(tradeNo); + coursePackageOrder1.setAppUserId(null); + coursePackageOrderService.updateById(coursePackageOrder1); + addCoursePackageOrderStudent(coursePackageOrder1.getId(), coursePackagePaymentConfig); + Thread.sleep(30000); + payMoneyUtil.confirm(finalSmid, finalCode1, tradeNo, paymentPrice.toString()); + } + if ("WAIT_BUYER_PAY".equals(s)) { + num++; + } + } + } + } catch (Exception e) { + e.printStackTrace(); + } + } + }).start(); + } return alipay; } -- Gitblit v1.7.1