From e19457de266cb07014583e394d01e56a17c2be51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Wed, 29 Oct 2025 17:03:00 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BD=AC=E8=B4=A6=E5=88=B0=E9=9B=B6=E9=92=B1?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/czg/controller/NotifyController.java | 17 ++++++++++++++ .../service/MkDistributionUserService.java | 14 ++++++++++++ .../com/czg/constant/TableValueConstant.java | 3 ++- .../service/market/service/impl/BaseWx.java | 2 -- .../impl/MkDistributionUserServiceImpl.java | 22 ++++++++++++++++++- 5 files changed, 54 insertions(+), 4 deletions(-) diff --git a/cash-api/order-server/src/main/java/com/czg/controller/NotifyController.java b/cash-api/order-server/src/main/java/com/czg/controller/NotifyController.java index a6c95f926..1c745adc8 100644 --- a/cash-api/order-server/src/main/java/com/czg/controller/NotifyController.java +++ b/cash-api/order-server/src/main/java/com/czg/controller/NotifyController.java @@ -72,6 +72,23 @@ public class NotifyController { return SUCCESS; } + + @RequestMapping("/native/wx/transfer") + public String nativeTransferNotify(HttpServletRequest request) throws IOException { + log.info("接收到微信转账回调"); + JSONObject jsonObject = wxService.verifySignature(request); + log.info("参数信息: {}", jsonObject.toJSONString()); + String outBillNo = jsonObject.getString("out_bill_no"); + String state = jsonObject.getString("state"); + try { + distributionUserService.withdrawNotify(outBillNo, state); + }catch (Exception e) { + log.warn("转账回调失败", e); + } + return "SUCCESS"; + } + + @RequestMapping("/native/wx/pay/distributionRecharge") public String nativeNotify(HttpServletRequest request) throws IOException { String timestamp = request.getHeader("Wechatpay-Timestamp"); diff --git a/cash-common/cash-common-service/src/main/java/com/czg/market/service/MkDistributionUserService.java b/cash-common/cash-common-service/src/main/java/com/czg/market/service/MkDistributionUserService.java index bcb4c714d..dd412e2ee 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/market/service/MkDistributionUserService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/market/service/MkDistributionUserService.java @@ -131,4 +131,18 @@ public interface MkDistributionUserService extends IService Boolean withdraw(long userId, MkDistributionWithdrawFlowDTO withdrawFlowDTO); Map withdrawDetail(long userId, Long id); + + /** + * 微信转账回调 + * @param outBillNo 转账单号 + * @param state ACCEPTED:单据已受理 + * PROCESSING:单据处理中,转账结果尚未明确,如一直处于此状态,建议检查账户余额是否足够 + * WAIT_USER_CONFIRM:待收款用户确认,可拉起微信收款确认页面进行收款确认 + * TRANSFERING:转账中,转账结果尚未明确,可拉起微信收款确认页面再次重试确认收款 + * SUCCESS: 转账成功 + * FAIL: 转账失败 + * CANCELING: 撤销中 + * CANCELLED: 已撤销 + */ + void withdrawNotify(String outBillNo, String state); } diff --git a/cash-common/cash-common-tools/src/main/java/com/czg/constant/TableValueConstant.java b/cash-common/cash-common-tools/src/main/java/com/czg/constant/TableValueConstant.java index 521db807b..1480220d2 100644 --- a/cash-common/cash-common-tools/src/main/java/com/czg/constant/TableValueConstant.java +++ b/cash-common/cash-common-tools/src/main/java/com/czg/constant/TableValueConstant.java @@ -64,10 +64,11 @@ public interface TableValueConstant { @Getter enum Status { PENDING("pending", "提现中"), + REFUND("refund", "提现中"), SUB("sub", "系统扣减"), OPEN("open", "分销员购买"), FINISH("finish", "已提现"), - SELF_RECHARGE("self_recharge", "自助充值"); + SELF_RECHARGE("self_recharge", "自助充值"), FAIL("fail", "失败"); private final String code; private final String msg; diff --git a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/BaseWx.java b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/BaseWx.java index 5169b87e0..5ec17bf5c 100644 --- a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/BaseWx.java +++ b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/BaseWx.java @@ -159,8 +159,6 @@ public abstract class BaseWx { } public JSONObject verifySignature(HttpServletRequest request) { - - try { log.info("开始校验签名并解密"); String timestamp = request.getHeader("Wechatpay-Timestamp"); diff --git a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkDistributionUserServiceImpl.java b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkDistributionUserServiceImpl.java index 6d8a790d7..fd445b85c 100644 --- a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkDistributionUserServiceImpl.java +++ b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkDistributionUserServiceImpl.java @@ -663,7 +663,7 @@ public class MkDistributionUserServiceImpl extends ServiceImpl