From 3b598f6d6b008db9e28ab446f4a21d98dcea382d Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 21 Feb 2024 20:58:00 +0800
Subject: [PATCH] fix
---
src/main/java/cc/mrbird/febs/pay/controller/XcxPayController.java | 43 +++++++++++++++++++++++++++++++++----------
1 files changed, 33 insertions(+), 10 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/pay/controller/XcxPayController.java b/src/main/java/cc/mrbird/febs/pay/controller/XcxPayController.java
index 9e68dfc..5629e7b 100644
--- a/src/main/java/cc/mrbird/febs/pay/controller/XcxPayController.java
+++ b/src/main/java/cc/mrbird/febs/pay/controller/XcxPayController.java
@@ -12,37 +12,37 @@
import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
import cc.mrbird.febs.mall.service.IMallMoneyFlowService;
import cc.mrbird.febs.pay.model.NotifyData;
-import cc.mrbird.febs.pay.model.OrderStateDto;
-import cc.mrbird.febs.pay.model.OrderStateMsgVo;
-import cc.mrbird.febs.pay.model.WxTemplateData;
-import cc.mrbird.febs.pay.service.IPayService;
import cc.mrbird.febs.pay.service.IXcxPayService;
-import cc.mrbird.febs.pay.util.PayThreadPool;
+import cc.mrbird.febs.pay.service.WxFaPiaoService;
import cc.mrbird.febs.pay.util.Signature;
import cc.mrbird.febs.pay.util.Util;
import cc.mrbird.febs.pay.util.WechatConfigure;
+import cc.mrbird.febs.rabbit.producter.AgentProducer;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
-import io.swagger.annotations.ApiOperation;
+import com.wechat.pay.contrib.apache.httpclient.notification.NotificationRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.ResponseEntity;
import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
-import org.springframework.web.client.RestTemplate;
-import org.thymeleaf.engine.TemplateData;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import java.io.BufferedReader;
import java.io.IOException;
import java.math.BigDecimal;
import java.math.RoundingMode;
+import java.nio.charset.StandardCharsets;
+import java.security.InvalidKeyException;
+import java.security.NoSuchAlgorithmException;
+import java.security.SignatureException;
+import java.text.ParseException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
@@ -72,9 +72,14 @@
private IApiMallMemberService mallMemberService;
@Autowired
private MallAgentRecordMapper mallAgentRecordMapper;
+ @Autowired
+ private AgentProducer agentProducer;
@Autowired
private IXcxPayService iXcxPayService;
+
+ @Autowired
+ private WxFaPiaoService wxFaPiaoService;
private final XcxProperties xcxProperties = SpringContextHolder.getBean(XcxProperties.class);
/**
@@ -244,6 +249,18 @@
// System.out.println(rechargeNo);
// }
/**
+ * 微信电子发票回调接口
+ * POST方式回调
+ * @return
+ */
+ @Transactional(rollbackFor = Exception.class)
+ @RequestMapping(value = "/fapiaoCallBack")
+ public Map<String, Object> fapiaoCallBack(HttpServletRequest request, @RequestBody Map<String, Object> requestBody) {
+ return wxFaPiaoService.fapiaoCallBack(request,requestBody);
+
+ }
+
+ /**
* 微信支付回调接口
*/
@Transactional(rollbackFor = Exception.class)
@@ -289,6 +306,8 @@
resXml = WechatConfigure.RESULT_XML_SUCCESS;
// 支付费用
Double total_fee = Double.parseDouble(data.getTotal_fee());
+ //微信支付订单号
+ String transaction_id = data.getTransaction_id();
// 商户订单号
String payNum = data.getOut_trade_no();
@@ -304,8 +323,12 @@
order.setPayResult("1");
order.setPayTime(new Date());
order.setDeliveryState(OrderDeliveryStateEnum.DELIVERY_WAIT.getValue());
+ order.setPayOrderNo(transaction_id);
mallOrderInfoMapper.updateById(order);
+ agentProducer.sendOrderCoupon(order.getId());
+// agentProducer.sendGetScoreMsg(order.getId());
+
mallMoneyFlowService.addMoneyFlow(
order.getMemberId(),
order.getAmount().negate(),
--
Gitblit v1.9.1