From 55642c818f14bf8cf52c98e6858014bd8dc3d3a7 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期四, 16 四月 2026 20:10:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/web/src/main/java/com/doumee/api/web/PaymentCallback.java | 115 ++++++++++-----------------------------------------------
1 files changed, 20 insertions(+), 95 deletions(-)
diff --git a/server/web/src/main/java/com/doumee/api/web/PaymentCallback.java b/server/web/src/main/java/com/doumee/api/web/PaymentCallback.java
index 0aae790..328d3fa 100644
--- a/server/web/src/main/java/com/doumee/api/web/PaymentCallback.java
+++ b/server/web/src/main/java/com/doumee/api/web/PaymentCallback.java
@@ -1,16 +1,14 @@
-package com.doumee.api.web.mall;
+package com.doumee.api.web;
-import com.doumee.api.web.ApiController;
-import com.doumee.core.utils.Constants;
+import com.doumee.config.wx.WxMiniConfig;
+import com.doumee.core.constants.Constants;
import com.doumee.core.utils.ID;
-import com.doumee.core.wx.WxMiniConfig;
-import com.doumee.dao.business.model.ActivitySign;
-import com.doumee.dao.business.model.Fund;
-import com.doumee.dao.business.model.Goodsorder;
+import com.doumee.service.business.OrdersService;
import com.github.binarywang.wxpay.bean.notify.WxPayNotifyResponse;
import com.github.binarywang.wxpay.bean.notify.WxPayOrderNotifyResult;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -30,6 +28,9 @@
@CrossOrigin
public class PaymentCallback extends ApiController {
+ @Autowired
+ private OrdersService ordersService;
+
@PostMapping("/web/api/wxPayNotify")
public String wxPay_notify(@RequestBody String xmlResult) {
@@ -45,102 +46,26 @@
//寰俊璁㈠崟鍙�
String paymentNo = result.getTransactionId();
- if (Constants.SUCCESS_STR.equals(result.getReturnCode())) {
+
+
+ if (Constants.SUCCESS.equals(result.getReturnCode())) {
// 鏀粯鎴愬姛
switch (result.getAttach()) {
- //娲诲姩鍙備笌鏀粯
- case "ActivitySign": {
- ActivitySign activitySign = activitySignService.findById(Integer.valueOf(outTradeNo));
- if(Objects.isNull(activitySign)){
- return WxPayNotifyResponse.fail( "鏀粯鍥炶皟淇℃伅("+ wxId + ") = > 鏈煡璇㈠埌鏀粯瀵硅薄淇℃伅!");
- }
- if(activitySign.getStatus().equals(Constants.ONE)){
- return WxPayNotifyResponse.success("澶勭悊鎴愬姛!");
- }
- activitySign.setPayStatus(Constants.ONE);
- activitySign.setPayDate(new Date());
- activitySign.setPayOrderId(paymentNo);
- activitySign.setStatus(Constants.ONE);
- activitySignService.updateById(activitySign);
+ //瀵勫瓨璁㈠崟
+ case "storageOrder": {
+ ordersService.handleStorageOrderPayNotify(outTradeNo, paymentNo);
break;
}
- case "terraceMall": {
- Goodsorder DBGoodsOrder = new Goodsorder();
- DBGoodsOrder.setCode(Long.valueOf(outTradeNo));
- Goodsorder goodsOrder = goodsorderService.findOne(DBGoodsOrder);
- if(Objects.isNull(goodsOrder)){
- return WxPayNotifyResponse.fail( "鏀粯鍥炶皟淇℃伅("+ wxId + ") = > 鏈煡璇㈠埌鏀粯瀵硅薄淇℃伅!");
- }
- if(goodsOrder.getStatus().equals(Constants.ONE)){
- return WxPayNotifyResponse.success("澶勭悊鎴愬姛!");
- }
- goodsOrder.setPayStatus(Constants.ONE);
- goodsOrder.setPayDate(new Date());
- goodsOrder.setPayOrderId(paymentNo);
- goodsOrder.setStatus(Constants.OrderStatus.PAY_DONE.getKey());
- goodsOrder.setPayMethod(Constants.ZERO);
- goodsorderService.updateById(goodsOrder);
- //鐢熸垚 鍜栧暋璁″垝璁㈠崟鏄庣粏琛�
- if(goodsOrder.getType().equals(Constants.TWO)){
- planorderDetailService.createPlanOrderDetail(goodsOrder);
- }
- Fund fund = new Fund();
- fund.setOrderCode(goodsOrder.getPayOrderId());
- fund.setCreator(goodsOrder.getMemberId());
- fund.setCreateDate(new Date());
- fund.setIsdeleted(Constants.ZERO);
- fund.setRemark(goodsOrder.getCode().toString());
- fund.setMemberId(goodsOrder.getMemberId());
- fund.setTitle("璁㈠崟鏀粯");
- fund.setContent("璁㈠崟鏀粯");
- fund.setObjId(goodsOrder.getId());
- fund.setObjType(Constants.ONE);
- fund.setType(Constants.ZERO);
- fund.setNum(goodsOrder.getPrice());
- fundService.create(fund);
+ //搴楅摵鎶奸噾璁㈠崟
+ case "shopDeposit": {
+ ordersService.handleShopDepositPayNotify(outTradeNo, paymentNo);
break;
}
- case "shopGoods": {
- Goodsorder DBGoodsOrder = new Goodsorder();
- DBGoodsOrder.setCode(Long.valueOf(outTradeNo));
- Goodsorder goodsOrder = goodsorderService.findOne(DBGoodsOrder);
- if(Objects.isNull(goodsOrder)){
- return WxPayNotifyResponse.fail( "鏀粯鍥炶皟淇℃伅("+ wxId + ") = > 鏈煡璇㈠埌鏀粯瀵硅薄淇℃伅!");
- }
- if(goodsOrder.getStatus().equals(Constants.ONE)){
- return WxPayNotifyResponse.success("澶勭悊鎴愬姛!");
- }
- goodsOrder.setPayStatus(Constants.ONE);
- goodsOrder.setPayDate(new Date());
- goodsOrder.setPayOrderId(paymentNo);
- goodsOrder.setStatus(Constants.OrderStatus.PAY_DONE.getKey());
- //鐢熸垚鏍搁攢鐮�
- if(Constants.equalsInteger(goodsOrder.getReceiveType(),Constants.ONE)){
- goodsOrder.setExchangeCode(goodsorderService.createExchangeCode());
- }
- goodsOrder.setPayMethod(Constants.ZERO);
- goodsorderService.updateById(goodsOrder);
- if(Objects.nonNull(goodsOrder.getPickUpShopId())){
- //鍙戦�佺珯鍐呬俊 - 缁忛攢鍟�
- noticeService.orderPayNotice(goodsOrder.getPickUpShopId(),goodsOrder.getId(),goodsOrder.getReceiveType());
- }
- Fund fund = new Fund();
- fund.setOrderCode(goodsOrder.getPayOrderId());
- fund.setCreator(goodsOrder.getMemberId());
- fund.setCreateDate(new Date());
- fund.setIsdeleted(Constants.ZERO);
- fund.setRemark(goodsOrder.getCode().toString());
- fund.setMemberId(goodsOrder.getMemberId());
- fund.setTitle("璁㈠崟鏀粯");
- fund.setContent("璁㈠崟鏀粯");
- fund.setObjId(goodsOrder.getId());
- fund.setObjType(Constants.ONE);
- fund.setType(Constants.ZERO);
- fund.setNum(goodsOrder.getPrice());
- fundService.create(fund);
+ //閫炬湡璐圭敤璁㈠崟
+ case "overdueFee": {
+ ordersService.handleOverdueFeePayNotify(outTradeNo, paymentNo);
break;
}
-
}
return WxPayNotifyResponse.success("澶勭悊鎴愬姛!");
}
--
Gitblit v1.9.3