From d2afc5875ab0d87573ea3d8a78eeed9af4ca1953 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 26 Apr 2023 14:47:11 +0800
Subject: [PATCH] 统计

---
 src/main/java/cc/mrbird/febs/pay/service/impl/NBYHServiceImpl.java |  307 +++++++++++++++++++++++++++++++++++----------------
 1 files changed, 210 insertions(+), 97 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/pay/service/impl/NBYHServiceImpl.java b/src/main/java/cc/mrbird/febs/pay/service/impl/NBYHServiceImpl.java
index 1f941ce..d3509a0 100644
--- a/src/main/java/cc/mrbird/febs/pay/service/impl/NBYHServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/pay/service/impl/NBYHServiceImpl.java
@@ -7,6 +7,7 @@
 import cc.mrbird.febs.mall.mapper.MallMemberWithdrawMapper;
 import cc.mrbird.febs.mall.mapper.MallMemberWithdrawMsgMapper;
 import cc.mrbird.febs.mall.mapper.MallOrderInfoMapper;
+import cc.mrbird.febs.pay.model.NBYHResponse;
 import cc.mrbird.febs.pay.service.NBYHService;
 import cn.hutool.core.util.ObjectUtil;
 import lombok.extern.slf4j.Slf4j;
@@ -16,10 +17,7 @@
 
 import java.io.*;
 import java.math.BigDecimal;
-import java.net.HttpURLConnection;
-import java.net.InetAddress;
-import java.net.Socket;
-import java.net.URL;
+import java.net.*;
 import java.text.SimpleDateFormat;
 import java.util.Calendar;
 import java.util.Date;
@@ -35,6 +33,7 @@
     /**
      * 转账报文原文
      */
+    private static final String ACCOUNT_MESSAGE_SEARCH = "<opReq><serialNo>${serialNo}</serialNo><reqTime>${reqTime}</reqTime><ReqParam><ZHHA>${ZHHA}</ZHHA></ReqParam></opReq>";
     private static final String TRADE_MESSAGE_SEARCH = "<opReq><serialNo>${serialNo}</serialNo><reqTime>${reqTime}</reqTime><ReqParam><JYXH>${serialNoOld}</JYXH></ReqParam></opReq>";
     private static final String TRADE_MESSAGE_SINGLE = "<opReq><serialNo>${serialNo}</serialNo><reqTime>${reqTime}</reqTime><ReqParam><FKZH>${FKZH}</FKZH><SKZH>${SKZH}</SKZH><SKHM>${SKHM}</SKHM><JYJE>${JYJE}</JYJE><YOTU>${YOTU}</YOTU></ReqParam></opReq>";
 //    private static final String TRADE_MESSAGE_SINGLE = "<opReq><serialNo>${serialNo}</serialNo><reqTime>${reqTime}</reqTime><ReqParam><FKZH>82260120102022631</FKZH><SKZH>78040122000059277</SKZH><SKHM>792311957</SKHM><JYJE>0.01</JYJE><YOTU>银企接口测试</YOTU></ReqParam></opReq>";
@@ -107,11 +106,16 @@
     /**
      * 接收报文url
      */
-    private static final String URL = "http://127.0.0.1:9080/directlink/httpAccess";
+//    private static final String URL = "http://127.0.0.1:9080/directlink/httpAccess";
+//    private static final String URL = "http://220.168.79.89:9080/directlink/httpAccess";
+    private static final String URL = "http://747f9407.r3.cpolar.top/directlink/httpAccess";
+//    private static final String URL = "http://1d6d-220-168-79-89.ngrok.io/directlink/httpAccess";
     /**
      * 签名ip
      */
-    private static final String VERIFY_IP = "127.0.0.1";
+//    private static final String VERIFY_IP = "127.0.0.1";
+    private static final String VERIFY_IP = "3b425db8.r10.cpolar.top";
+//    private static final String VERIFY_IP = "747f9407.r3.cpolar.top";
     /**
      * 付款账号
      */
@@ -126,7 +130,7 @@
      */
     private static String cookies = null;
     /**
-     * sessionId
+     * sessionIdhttp://1d6d-220-168-79-89.ngrok.io
      */
     private static String sessionId = "-1";
     /**
@@ -148,6 +152,20 @@
 
     public static void main(String[] args) {
         try {
+
+            InetAddress addr = InetAddress.getByName(VERIFY_IP);
+            String hostName = addr.getHostName();
+//            Socket socket = new Socket(hostName, VERIFY_PORT);
+            String hostAddress = addr.getHostAddress();
+            SocketAddress address = new InetSocketAddress(VERIFY_IP, 8010);
+
+            Proxy proxy = new Proxy(Proxy.Type.HTTP, address);
+            Socket socket = new Socket(proxy);
+            int port = socket.getPort();
+            System.out.println("发送登录请求:"+addr);
+			System.out.println("发送登录请求:"+address);
+			System.out.println("发送登录请求:"+hostName);
+			System.out.println("发送登录请求:"+port);
 //			System.out.println("发送登录请求:");
 //			test.executeServerHttpService("srv001_signOn");
 //            System.out.println("\n发送转账结果查询请求:");
@@ -170,7 +188,7 @@
     private MallMemberBankMapper mallMemberBankMapper;
 
     @Override
-    public boolean tradeSinge(Long id) {
+    public NBYHResponse tradeSinge(Long id) {
         /**
          * <?xml version="1.0" encoding="UTF-8"?>
          *     <NBCBEBankData>
@@ -193,12 +211,19 @@
          *         <signData>MIIEzQYKKoEcz1UGAQQCAqCCBL0wggS5AgEBMQ4wDAYIKoEcz1UBgxEFADCB+AYKKoEcz1UGAQQCAaCB6QSB5jxvcFJlcT48c2VyaWFsTm8+VzIwMjMwNDI0MTcxMzQ0MDUwODY8L3NlcmlhbE5vPjxyZXFUaW1lPjIwMjMwNDI0MTc0MDE2PC9yZXFUaW1lPjxSZXFQYXJhbT48RktaSD44MjI2MDEyMDEwMjAyMjYzMTwvRktaSD48U0taSD43ODA0MDEyMjAwMDA1OTI3NzwvU0taSD48U0tITT43OTIzMTE5NTc8L1NLSE0+PEpZSkU+MS4wMDwvSllKRT48WU9UVT7Q0MTa16rVyzwvWU9UVT48L1JlcVBhcmFtPjwvb3BSZXE+oIIC0TCCAs0wggJxoAMCAQICBRBVc1EWMAwGCCqBHM9VAYN1BQAwXDELMAkGA1UEBhMCQ04xMDAuBgNVBAoMJ0NoaW5hIEZpbmFuY2lhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEbMBkGA1UEAwwSQ0ZDQSBURVNUIFNNMiBPQ0ExMB4XDTIzMDMwOTAyNTUzM1oXDTI1MDMwOTAyNTUzM1owcjELMAkGA1UEBhMCQ04xDDAKBgNVBAoMA0JPQzETMBEGA1UECwwKQ0ZDQVRlY2hURTEZMBcGA1UECwwQT3JnYW5pemF0aW9uYWwtMjElMCMGA1UEAwwcQ0ZDQVRlY2hURUB0ZXN0cWl5ZUBaMTExMTFAMTBZMBMGByqGSM49AgEGCCqBHM9VAYItA0IABPHX9dm+K8G4WGe2uAHWZKI0aJgmHQfcTyK6jxKvEC5ADcptfpbe2u0cgSwBXFsyAuXY/6wq2vm1wyzmKqGCikGjggEGMIIBAjAfBgNVHSMEGDAWgBRr/hjaj0I6prhtsy6Igzo0osEw4TAMBgNVHRMBAf8EAjAAMEgGA1UdIARBMD8wPQYIYIEchu8qAQEwMTAvBggrBgEFBQcCARYjaHR0cDovL3d3dy5jZmNhLmNvbS5jbi91cy91cy0xNC5odG0wOQYDVR0fBDIwMDAuoCygKoYoaHR0cDovL3VjcmwuY2ZjYS5jb20uY24vU00yL2NybDQ3MDc2LmNybDAOBgNVHQ8BAf8EBAMCBsAwHQYDVR0OBBYEFEr8/JLNuSXaME4XwdfG4VbI1nppMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAMBggqgRzPVQGDdQUAA0gAMEUCIDO8ojBrfnfn1xqHqLovnTRUmSfwmKBPHSCjIf7DBQUzAiEAnGcbKMqUfYj+35WqRfZrb9u34IcgYg0sOc9l/TKHol0xgdMwgdACAQEwZTBcMQswCQYDVQQGEwJDTjEwMC4GA1UECgwnQ2hpbmEgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRswGQYDVQQDDBJDRkNBIFRFU1QgU00yIE9DQTECBRBVc1EWMAwGCCqBHM9VAYMRBQAwDQYJKoEcz1UBgi0BBQAERzBFAiEAhXpldulA3eL7gbu97bo7BFKDf+AJk2OUoNcU88pbb3ICIEwlp1PJ43Lj2frEIBp9HKiyaX/wQBDOasfOk5Kk39KC</signData>
          *     </NBCBEBankData>
          */
+        NBYHResponse nbyhResponse = new NBYHResponse();
         boolean flag = false;
         MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(id);
         MallMemberBank mallMemberBank = mallMemberBankMapper.selectById(mallMemberWithdraw.getWtihdrawTypeId());
         try {
             String requestDataForWithDraw = getRequestDataForWithDraw("srv006_singleInnerTransfer", "行内转账", mallMemberWithdraw, mallMemberBank);
             String responseStr = executeServerHttpService(requestDataForWithDraw);
+            errorMessage = responseStr.substring(responseStr.indexOf("<errorMsg>") + 10,
+                    responseStr.indexOf("</errorMsg>"));
+
+            String SBYYStr = responseStr.substring(responseStr.indexOf("<SBYY>") + 6,
+                    responseStr.indexOf("</SBYY>"));
+            nbyhResponse.setMsg(errorMessage+SBYYStr);
             boolean b = parseReturnValueForTrade(responseStr);
             if(b){
                 //插入一条记录
@@ -217,17 +242,28 @@
         } catch (Exception e) {
             e.printStackTrace();
         }
-        return flag;
+
+        nbyhResponse.setFlag(flag);
+        return nbyhResponse;
     }
 
     @Override
-    public boolean tradeSingeOuterTransfer(Long id) {
+    public NBYHResponse tradeSingeOuterTransfer(Long id) {
+
+        NBYHResponse nbyhResponse = new NBYHResponse();
         boolean flag = false;
         MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(id);
         MallMemberBank mallMemberBank = mallMemberBankMapper.selectById(mallMemberWithdraw.getWtihdrawTypeId());
         try {
             String requestDataForWithDraw = getRequestDataForWithDraw("srv007_singleOuterTransfer", "跨行汇款", mallMemberWithdraw, mallMemberBank);
             String responseStr = executeServerHttpService(requestDataForWithDraw);
+
+            errorMessage = responseStr.substring(responseStr.indexOf("<errorMsg>") + 10,
+                    responseStr.indexOf("</errorMsg>"));
+
+            String SBYYStr = responseStr.substring(responseStr.indexOf("<SBYY>") + 6,
+                    responseStr.indexOf("</SBYY>"));
+            nbyhResponse.setMsg(errorMessage+SBYYStr);
             boolean b = parseReturnValueForTrade(responseStr);
             if(b){
                 //插入一条记录
@@ -246,36 +282,99 @@
         } catch (Exception e) {
             e.printStackTrace();
         }
-        return flag;
+
+        nbyhResponse.setFlag(flag);
+        return nbyhResponse;
     }
 
     @Override
-    public void transferResultInfoQuery(Long id) {
+    public NBYHResponse transferResultInfoQuery(Long id) {
+        /**
+         * <?xml version="1.0" encoding="UTF-8"?>
+         *     <NBCBEBankData>
+         *         <sessionId>-1</sessionId>
+         *         <serviceId>srv008_transferResultInfoQuery</serviceId>
+         *         <customerId>0000005332</customerId>
+         *         <softwareId>002</softwareId>
+         *         <functionId>srv008</functionId>
+         *         <functionName>转账结果查询</functionName>
+         *         <opReq>
+         *             <serialNo>W2023042417134405087</serialNo>
+         *             <reqTime>20230424180506</reqTime>
+         *             <ReqParam>
+         *                 <JYXH>W2023042417134405087</JYXH>
+         *             </ReqParam>
+         *         </opReq>
+         *         <signData>MIIEdwYKKoEcz1UGAQQCAqCCBGcwggRjAgEBMQ4wDAYIKoEcz1UBgxEFADCBoQYKKoEcz1UGAQQCAaCBkgSBjzxvcFJlcT48c2VyaWFsTm8+VzIwMjMwNDI0MTcxMzQ0MDUwODc8L3NlcmlhbE5vPjxyZXFUaW1lPjIwMjMwNDI0MTgwNTA2PC9yZXFUaW1lPjxSZXFQYXJhbT48SllYSD5XMjAyMzA0MjQxNzEzNDQwNTA4NzwvSllYSD48L1JlcVBhcmFtPjwvb3BSZXE+oIIC0TCCAs0wggJxoAMCAQICBRBVc1EWMAwGCCqBHM9VAYN1BQAwXDELMAkGA1UEBhMCQ04xMDAuBgNVBAoMJ0NoaW5hIEZpbmFuY2lhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEbMBkGA1UEAwwSQ0ZDQSBURVNUIFNNMiBPQ0ExMB4XDTIzMDMwOTAyNTUzM1oXDTI1MDMwOTAyNTUzM1owcjELMAkGA1UEBhMCQ04xDDAKBgNVBAoMA0JPQzETMBEGA1UECwwKQ0ZDQVRlY2hURTEZMBcGA1UECwwQT3JnYW5pemF0aW9uYWwtMjElMCMGA1UEAwwcQ0ZDQVRlY2hURUB0ZXN0cWl5ZUBaMTExMTFAMTBZMBMGByqGSM49AgEGCCqBHM9VAYItA0IABPHX9dm+K8G4WGe2uAHWZKI0aJgmHQfcTyK6jxKvEC5ADcptfpbe2u0cgSwBXFsyAuXY/6wq2vm1wyzmKqGCikGjggEGMIIBAjAfBgNVHSMEGDAWgBRr/hjaj0I6prhtsy6Igzo0osEw4TAMBgNVHRMBAf8EAjAAMEgGA1UdIARBMD8wPQYIYIEchu8qAQEwMTAvBggrBgEFBQcCARYjaHR0cDovL3d3dy5jZmNhLmNvbS5jbi91cy91cy0xNC5odG0wOQYDVR0fBDIwMDAuoCygKoYoaHR0cDovL3VjcmwuY2ZjYS5jb20uY24vU00yL2NybDQ3MDc2LmNybDAOBgNVHQ8BAf8EBAMCBsAwHQYDVR0OBBYEFEr8/JLNuSXaME4XwdfG4VbI1nppMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAMBggqgRzPVQGDdQUAA0gAMEUCIDO8ojBrfnfn1xqHqLovnTRUmSfwmKBPHSCjIf7DBQUzAiEAnGcbKMqUfYj+35WqRfZrb9u34IcgYg0sOc9l/TKHol0xgdQwgdECAQEwZTBcMQswCQYDVQQGEwJDTjEwMC4GA1UECgwnQ2hpbmEgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRswGQYDVQQDDBJDRkNBIFRFU1QgU00yIE9DQTECBRBVc1EWMAwGCCqBHM9VAYMRBQAwDQYJKoEcz1UBgi0BBQAESDBGAiEAohIVn9P6WRg+ZdOzqgqKs38tRhG13f3jv1EEp9CQn+0CIQC//I83nEjczU5TgF273KCuCILgzUodySc3osMUyuEiGw==</signData>
+         *     </NBCBEBankData>
+         */
+        NBYHResponse nbyhResponse = new NBYHResponse();
+        boolean flag = false;
         MallMemberWithdrawMsg mallMemberWithdrawMsg = mallMemberWithdrawMapper.selectMsgByWithdrawNo(id);
-//        if(ObjectUtil.isEmpty(mallMemberWithdrawMsg)){
-//            return;
+//        if(ObjectUtil.isNotEmpty(mallMemberWithdrawMsg)){
+//            Integer status = mallMemberWithdrawMsg.getStatus();
+//            if(1 == status){
+//                nbyhResponse.setFlag(flag);
+//                return nbyhResponse;
+//            }
 //        }
-//        Integer status = mallMemberWithdrawMsg.getStatus();
-//        if(1 == status){
-//            return;
-//        }
-//        MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(mallMemberWithdrawMsg.getWithdrawId());
-        MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(304L);
+        MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(id);
         MallMemberBank mallMemberBank = mallMemberBankMapper.selectById(mallMemberWithdraw.getWtihdrawTypeId());
         try {
             String requestDataForWithDraw = getRequestDataForWithDraw("srv008_transferResultInfoQuery", "转账结果查询", mallMemberWithdraw, mallMemberBank);
             String responseStr = executeServerHttpService(requestDataForWithDraw);
+
+            errorMessage = responseStr.substring(responseStr.indexOf("<errorMsg>") + 10,
+                    responseStr.indexOf("</errorMsg>"));
+
+            String SBYYStr = responseStr.substring(responseStr.indexOf("<SBYY>") + 6,
+                    responseStr.indexOf("</SBYY>"));
+            nbyhResponse.setMsg(errorMessage+SBYYStr);
             boolean b = parseReturnValue(responseStr);
             if(b){
-                mallMemberWithdrawMsg.setStatus(1);
-                mallMemberWithdrawMsgMapper.updateById(mallMemberWithdrawMsg);
+                if(ObjectUtil.isNotEmpty(mallMemberWithdrawMsg)){
+                    mallMemberWithdrawMsg.setStatus(1);
+                    mallMemberWithdrawMsgMapper.updateById(mallMemberWithdrawMsg);
+                }
+                flag = true;
             }
-            return;
         } catch (IOException e) {
             e.printStackTrace();
         } catch (Exception e) {
             e.printStackTrace();
         }
+
+        nbyhResponse.setFlag(flag);
+        return nbyhResponse;
+    }
+
+    @Override
+    public boolean accountInfoQuery(Long id) {
+        boolean flag = false;
+        MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(id);
+        try {
+            String requestDataForWithDraw = getRequestDataForWithDraw("srv003_singleAccountInfoQuery", "账户余额及基本信息查询", mallMemberWithdraw, null);
+            String responseStr = executeServerHttpService(requestDataForWithDraw);
+
+            String stateStr = responseStr.substring(responseStr.indexOf("<state>") + 7,
+                    responseStr.indexOf("</state>"));
+            String KYERStr = responseStr.substring(responseStr.indexOf("<KYER>") + 6,
+                    responseStr.indexOf("</KYER>"));
+            BigDecimal amount = BigDecimal.ZERO;
+            if(mallMemberWithdraw.getRemark().equals("凭证提现")){
+                amount = mallMemberWithdraw.getAmount().setScale(2, BigDecimal.ROUND_DOWN);
+            }else{
+                amount = mallMemberWithdraw.getAmount().subtract(mallMemberWithdraw.getAmountFee()).setScale(2, BigDecimal.ROUND_DOWN);
+            }
+            if(stateStr.equals("0") && new BigDecimal(KYERStr).compareTo(amount) >= 0){
+                flag = true;
+            }
+        } catch (IOException e) {
+            e.printStackTrace();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return flag;
     }
 
     /**
@@ -340,80 +439,80 @@
      * @throws FileNotFoundException
      * @throws IOException
      */
-    public static String getRequestData(String serviceId, String serviceName, String serialNo)
-            throws FileNotFoundException, IOException {
-        StringBuffer buf = new StringBuffer();
-        // 报文编码格式utf-8
-        buf.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?><NBCBEBankData>");
-        buf.append("<sessionId>");
-        buf.append(sessionId);
-        buf.append("</sessionId>");
-        buf.append("<serviceId>");
-        buf.append(serviceId);
-        buf.append("</serviceId>");
-        String reqData = "";
-        if (serviceId.equals("srv001_signOn")) {
-            reqData = SIGN_MESSAGE;
-        } else if (serviceId.equals("srv006_singleInnerTransfer")) {
-            reqData = TRADE_MESSAGE_SINGLE;
-            /**
-             * <opReq><serialNo>${serialNo}</serialNo><reqTime>${reqTime}</reqTime><ReqParam><FKZH>82260120102022631</FKZH><SKZH>78040122000059277</SKZH><SKHM>792311957</SKHM><JYJE>0.01</JYJE><YOTU>银企接口测试</YOTU></ReqParam></opReq>
-             * <opReq>
-             *     <serialNo>${serialNo}</serialNo>
-             *     <reqTime>${reqTime}</reqTime>
-             *     <ReqParam>
-             *         <FKZH>${FKZH}</FKZH>
-             *         <SKZH>${SKZH}</SKZH>
-             *         <SKHM>${SKHM}</SKHM>
-             *         <JYJE>${JYJE}</JYJE>
-             *         <YOTU>${YOTU}</YOTU>
-             *     </ReqParam>
-             * </opReq>
-             */
-            reqData = reqData.replaceFirst("\\$\\{FKZH\\}", serialNo);
-            reqData = reqData.replaceFirst("\\$\\{SKZH\\}", serialNo);
-            reqData = reqData.replaceFirst("\\$\\{SKHM\\}", serialNo);
-            reqData = reqData.replaceFirst("\\$\\{JYJE\\}", serialNo);
-            reqData = reqData.replaceFirst("\\$\\{YOTU\\}", serialNo);
-        }else if (serviceId.equals("srv007_singleOuterTransfer")) {
-            reqData = TRADE_MESSAGE;
-        }else if (serviceId.equals("srv008_transferResultInfoQuery")) {
-            reqData = TRADE_MESSAGE_SEARCH;
-            //原订单流水号
-            reqData = reqData.replaceFirst("\\$\\{serialNoOld\\}", serialNo);
-        }
-//		String serialNo = String.valueOf(Math.round(Math.random() * 10000))
-//				+ System.currentTimeMillis();
-        Calendar calendar = Calendar.getInstance();
-        Date date = calendar.getTime();
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
-
-        String reqTime = sdf.format(date);
-        reqData = reqData.replaceFirst("\\$\\{serialNo\\}", serialNo);
-        reqData = reqData.replaceFirst("\\$\\{reqTime\\}", reqTime);
-        String signData = null;
-        try {
-            signData = signData(reqData);
-            signData = getNodeValue(signData, "signed_data");
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-        buf.append("<customerId>");
-        buf.append(customerId);
-        buf.append("</customerId>");
-        buf.append("<softwareId>");
-        buf.append(softwareId);
-        buf.append("</softwareId>");
-        buf.append("<functionId>");
-        buf.append(serviceId.substring(0, 6));
-        buf.append("</functionId>");
-        buf.append("<functionName>");
-        buf.append(serviceName);
-        buf.append("</functionName>");
-        buf.append(reqData + "<signData>" + signData
-                + "</signData></NBCBEBankData>");
-        return buf.toString();
-    }
+//    public static String getRequestData(String serviceId, String serviceName, String serialNo)
+//            throws FileNotFoundException, IOException {
+//        StringBuffer buf = new StringBuffer();
+//        // 报文编码格式utf-8
+//        buf.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?><NBCBEBankData>");
+//        buf.append("<sessionId>");
+//        buf.append(sessionId);
+//        buf.append("</sessionId>");
+//        buf.append("<serviceId>");
+//        buf.append(serviceId);
+//        buf.append("</serviceId>");
+//        String reqData = "";
+//        if (serviceId.equals("srv001_signOn")) {
+//            reqData = SIGN_MESSAGE;
+//        } else if (serviceId.equals("srv006_singleInnerTransfer")) {
+//            reqData = TRADE_MESSAGE_SINGLE;
+//            /**
+//             * <opReq><serialNo>${serialNo}</serialNo><reqTime>${reqTime}</reqTime><ReqParam><FKZH>82260120102022631</FKZH><SKZH>78040122000059277</SKZH><SKHM>792311957</SKHM><JYJE>0.01</JYJE><YOTU>银企接口测试</YOTU></ReqParam></opReq>
+//             * <opReq>
+//             *     <serialNo>${serialNo}</serialNo>
+//             *     <reqTime>${reqTime}</reqTime>
+//             *     <ReqParam>
+//             *         <FKZH>${FKZH}</FKZH>
+//             *         <SKZH>${SKZH}</SKZH>
+//             *         <SKHM>${SKHM}</SKHM>
+//             *         <JYJE>${JYJE}</JYJE>
+//             *         <YOTU>${YOTU}</YOTU>
+//             *     </ReqParam>
+//             * </opReq>
+//             */
+//            reqData = reqData.replaceFirst("\\$\\{FKZH\\}", serialNo);
+//            reqData = reqData.replaceFirst("\\$\\{SKZH\\}", serialNo);
+//            reqData = reqData.replaceFirst("\\$\\{SKHM\\}", serialNo);
+//            reqData = reqData.replaceFirst("\\$\\{JYJE\\}", serialNo);
+//            reqData = reqData.replaceFirst("\\$\\{YOTU\\}", serialNo);
+//        }else if (serviceId.equals("srv007_singleOuterTransfer")) {
+//            reqData = TRADE_MESSAGE;
+//        }else if (serviceId.equals("srv008_transferResultInfoQuery")) {
+//            reqData = TRADE_MESSAGE_SEARCH;
+//            //原订单流水号
+//            reqData = reqData.replaceFirst("\\$\\{serialNoOld\\}", serialNo);
+//        }
+////		String serialNo = String.valueOf(Math.round(Math.random() * 10000))
+////				+ System.currentTimeMillis();
+//        Calendar calendar = Calendar.getInstance();
+//        Date date = calendar.getTime();
+//        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
+//
+//        String reqTime = sdf.format(date);
+//        reqData = reqData.replaceFirst("\\$\\{serialNo\\}", serialNo);
+//        reqData = reqData.replaceFirst("\\$\\{reqTime\\}", reqTime);
+//        String signData = null;
+//        try {
+//            signData = signData(reqData);
+//            signData = getNodeValue(signData, "signed_data");
+//        } catch (Exception e) {
+//            e.printStackTrace();
+//        }
+//        buf.append("<customerId>");
+//        buf.append(customerId);
+//        buf.append("</customerId>");
+//        buf.append("<softwareId>");
+//        buf.append(softwareId);
+//        buf.append("</softwareId>");
+//        buf.append("<functionId>");
+//        buf.append(serviceId.substring(0, 6));
+//        buf.append("</functionId>");
+//        buf.append("<functionName>");
+//        buf.append(serviceName);
+//        buf.append("</functionName>");
+//        buf.append(reqData + "<signData>" + signData
+//                + "</signData></NBCBEBankData>");
+//        return buf.toString();
+//    }
     /**
      * 组装完整的报文
      *
@@ -507,6 +606,20 @@
             reqData = TRADE_MESSAGE_SEARCH;
             //原订单流水号
             reqData = reqData.replaceFirst("\\$\\{serialNoOld\\}", mallMemberWithdraw.getWithdrawNo());
+        }else if (serviceId.equals("srv003_singleAccountInfoQuery")) {
+            reqData = ACCOUNT_MESSAGE_SEARCH;
+            /**
+             * <opReq>
+             * 		<serialNo>${serialNo}</serialNo>
+             * 		<reqTime>${reqTime}</reqTime>
+             * 		<ReqParam>
+             * 			<ZHHA>${ZHHA}</ZHHA>
+             * 		</ReqParam>
+             * 	</opReq>
+             * <opReq><serialNo>${serialNo}</serialNo><reqTime>${reqTime}</reqTime><ReqParam><ZHHA>${ZHHA}</ZHHA></ReqParam></opReq>
+             */
+            //原订单流水号
+            reqData = reqData.replaceFirst("\\$\\{ZHHA\\}", FKZH);
         }
 //		String serialNo = String.valueOf(Math.round(Math.random() * 10000))
 //				+ System.currentTimeMillis();

--
Gitblit v1.9.1