Procházet zdrojové kódy

退款参数加入账单

wujiefeng před 1 rokem
rodič
revize
aad1c2ee27

+ 20 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/model/pay/UnionFrictionlessPayFinishModel.java

@@ -0,0 +1,20 @@
+package com.zhongshu.card.server.core.model.pay;
+
+import com.github.microservice.pay.client.model.chinaSenseless.ChinaSenselessPayRet;
+import com.github.microservice.pay.client.model.ledger.TransactionLogModel;
+import com.github.microservice.pay.client.ret.ResultContent;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class UnionFrictionlessPayFinishModel {
+
+    private String merOrderId;
+
+    private ResultContent<List<TransactionLogModel>> transactionLogModelList;
+
+    private String status;
+
+    private String targetOrderId;
+}

+ 11 - 6
FullCardServer/src/main/java/com/zhongshu/card/server/core/stream/ChinaumsSenselessPayStream.java

@@ -9,6 +9,7 @@ import com.github.microservice.pay.client.ret.ResultContent;
 import com.github.microservice.pay.client.service.product.SenselessPayService;
 import com.zhongshu.card.client.type.payment.OrderNoType;
 import com.zhongshu.card.server.core.model.pay.ChinaumsSenselessSrcReserve;
+import com.zhongshu.card.server.core.model.pay.UnionFrictionlessPayFinishModel;
 import com.zhongshu.card.server.core.service.pay.ChinaumsSenselessPayService;
 import com.zhongshu.card.server.core.service.payment.OrderNoInfoService;
 import com.zhongshu.card.server.core.service.payment.PayCallService;
@@ -44,17 +45,22 @@ public class ChinaumsSenselessPayStream extends StreamConsumer<ChinaSenselessPay
         String merOrderId = srcReserve.getOrderNo();
         OrderNoType orderNoType = orderNoInfoService.getOrderNoType(merOrderId);
         String status = chinaSenselessPayRet.getStatus();
+        UnionFrictionlessPayFinishModel unionFrictionlessPayFinishModel = new UnionFrictionlessPayFinishModel();
+        unionFrictionlessPayFinishModel.setMerOrderId(merOrderId);
+        unionFrictionlessPayFinishModel.setStatus(status);
+        unionFrictionlessPayFinishModel.setTargetOrderId(chinaSenselessPayRet.getTargetOrderId());
         if (orderNoType.equals(OrderNoType.Pay)){
+
             if (status.equals("TRADE_SUCCESS")){
                 ResultContent<List<TransactionLogModel>> listResultContent = chinaumsSenselessPayService.handlePay(srcReserve.getProjectOid(),
                         srcReserve.getOid(),
                         srcReserve.getUserId(),
                         new BigDecimal(chinaSenselessPayRet.getTotalAmount()),
                         merOrderId, null);
-                payCallService.unionFrictionlessPayFinish(merOrderId, listResultContent, chinaSenselessPayRet.getStatus());
-            }else {
-                payCallService.unionFrictionlessPayFinish(merOrderId, null, chinaSenselessPayRet.getStatus());
+                unionFrictionlessPayFinishModel.setTransactionLogModelList(listResultContent);
+
             }
+                payCallService.unionFrictionlessPayFinish(unionFrictionlessPayFinishModel);
 
         }else if (orderNoType.equals(OrderNoType.Refund)){
             if (status.equals("TRADE_REFUND")){
@@ -63,10 +69,9 @@ public class ChinaumsSenselessPayStream extends StreamConsumer<ChinaSenselessPay
                         srcReserve.getUserId(),
                         new BigDecimal(chinaSenselessPayRet.getTotalAmount()),
                         merOrderId, null);
-                payCallService.unionFrictionlessPayRefundFinish(merOrderId, listResultContent, chinaSenselessPayRet.getStatus());
-            }else {
-                payCallService.unionFrictionlessPayFinish(merOrderId, null, chinaSenselessPayRet.getStatus());
+                unionFrictionlessPayFinishModel.setTransactionLogModelList(listResultContent);
             }
+            payCallService.unionFrictionlessPayFinish(unionFrictionlessPayFinishModel);
         }else {
             log.info("未知的订单类型或该订单已处理:{}", merOrderId);
         }