lishiqiang il y a 2 semaines
Parent
commit
abb52aad74

+ 2 - 1
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/order/impl/TradeOrderRepositoryServiceImpl.java

@@ -795,7 +795,8 @@ public class TradeOrderRepositoryServiceImpl implements TradeOrderRepositoryServ
         Page<TradeDetailDO> page = new Page<>(1, 1);
         LambdaQueryWrapper<TradeDetailDO> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.eq(TradeDetailDO::getOrderId, orderId);
-        return tradeDetailMapper.selectPage(page, queryWrapper).getRecords().get(0);
+        List<TradeDetailDO> list = tradeDetailMapper.selectPage(page, queryWrapper).getRecords();
+        return list!= null && !list.isEmpty() ? list.get(0) : null;
     }
 
     @Override

+ 33 - 12
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/pay/impl/TradeOrderPayServiceImpl.java

@@ -977,10 +977,17 @@ public class TradeOrderPayServiceImpl implements TradeOrderPayService {
         if (tradeOrderPayDO.getOrderType() == PAY_ORDER_TYPE_TRADE) {
             TradeDetailDO tradeDetailDO = tradeOrderRepositoryService.getOrderAnyDetail(tradeOrderPayDO.getOrderId());
             PayOrderReqVO.PayParams payParams = payOrderReqVO.getPayParams();
-            payParams.setParam(tradeDetailDO.getProductName());
-            payParams.setSubject(payOrderReqVO.getAccountName()==null?"用户":payOrderReqVO.getAccountName());
-            payParams.setBody(tradeDetailDO.getProductName());
-            payParams.setProductId(tradeDetailDO.getProductId().toString());
+            if(tradeDetailDO!=null) {
+                payParams.setParam(tradeDetailDO.getProductName());
+                payParams.setSubject(payOrderReqVO.getAccountName() == null ? "用户" : payOrderReqVO.getAccountName());
+                payParams.setBody(tradeDetailDO.getProductName());
+                payParams.setProductId(tradeDetailDO.getProductId().toString());
+            }else{
+                payParams.setParam("订单");
+                payParams.setSubject("订单");
+                payParams.setBody("订单");
+                payParams.setProductId("订单");
+            }
         }
 
         JSONObject result = payPlatService.createPayOrder(payOrderReqVO, tradeOrderPayDO, tradeMchInfoDO);
@@ -1023,10 +1030,17 @@ public class TradeOrderPayServiceImpl implements TradeOrderPayService {
         if (tradeOrderPayDO.getOrderType() == PAY_ORDER_TYPE_DEPOSI) {
             TradeDetailDO tradeDetailDO = tradeOrderRepositoryService.getOrderAnyDetail(tradeOrderPayDO.getOrderId());
             PayOrderReqVO.PayParams payParams = payOrderReqVO.getPayParams();
-            payParams.setParam(tradeDetailDO.getProductName());
-            payParams.setSubject(payOrderReqVO.getAccountName());
-            payParams.setBody(tradeDetailDO.getProductName());
-            payParams.setProductId(tradeDetailDO.getProductId().toString());
+            if(tradeDetailDO!=null) {
+                payParams.setParam(tradeDetailDO.getProductName());
+                payParams.setSubject(payOrderReqVO.getAccountName() == null ? "用户" : payOrderReqVO.getAccountName());
+                payParams.setBody(tradeDetailDO.getProductName());
+                payParams.setProductId(tradeDetailDO.getProductId().toString());
+            }else{
+                payParams.setParam("定金");
+                payParams.setSubject("定金");
+                payParams.setBody("定金");
+                payParams.setProductId("定金");
+            }
         }
 
         JSONObject result = payPlatService.createDeposiPayOrder(payOrderReqVO, tradeOrderPayDO, tradeMchInfoDO);
@@ -1069,10 +1083,17 @@ public class TradeOrderPayServiceImpl implements TradeOrderPayService {
         if (tradeOrderPayDO.getOrderType() == PAY_ORDER_TYPE_BC) {
             TradeDetailDO tradeDetailDO = tradeOrderRepositoryService.getOrderAnyDetail(tradeOrderPayDO.getOrderId());
             PayOrderReqVO.PayParams payParams = payOrderReqVO.getPayParams();
-            payParams.setParam(tradeDetailDO.getProductName());
-            payParams.setSubject(payOrderReqVO.getAccountName());
-            payParams.setBody(tradeDetailDO.getProductName());
-            payParams.setProductId(tradeDetailDO.getProductId().toString());
+            if(tradeDetailDO!=null) {
+                payParams.setParam(tradeDetailDO.getProductName());
+                payParams.setSubject(payOrderReqVO.getAccountName() == null ? "用户" : payOrderReqVO.getAccountName());
+                payParams.setBody(tradeDetailDO.getProductName());
+                payParams.setProductId(tradeDetailDO.getProductId().toString());
+            }else{
+                payParams.setParam("补差价");
+                payParams.setSubject("补差价");
+                payParams.setBody("补差价");
+                payParams.setProductId("补差价");
+            }
         }
 
         JSONObject result = payPlatService.createBcPayOrder(payOrderReqVO, tradeOrderPayDO, tradeMchInfoDO);

+ 3 - 3
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/utils/CMLT40Demo.java

@@ -15,7 +15,7 @@ public class CMLT40Demo {
 
     public static void main(String[] args) {
         String host = "10.3.10.50";
-        int port = 15999;
+        int port = 16999;
 
         try {
             // 1. 获取当前时间,用于组装公共包头流水与日期
@@ -40,8 +40,8 @@ public class CMLT40Demo {
                     "  <ReqTime>" + reqTime + "</ReqTime>\n" +
                     "  <Sign></Sign>\n" +
                     "  <Corp>\n" +
-                    "    <StartDate>20260420</StartDate>\n" +
-                    "    <EndDate>20260424</EndDate>\n" +
+                    "    <StartDate>20260518</StartDate>\n" +
+                    "    <EndDate>20260519</EndDate>\n" +
                     "  </Corp>\n" +
                     "  <Cmp>\n" +
                     "    <DbProv>17</DbProv>\n" +