From af5e0edcb28df21859f8dc33ac78abcbb3272602 Mon Sep 17 00:00:00 2001
From: wanghc <2466022993@qq.com>
Date: Tue, 07 Mar 2023 13:59:18 +0800
Subject: [PATCH] 浦发分行小系统

---
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/ResponseVo.java                   |   72 ++
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqTranQryType.java           |  248 +++---
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/controller/PublicController.java     |   38 +
 cmci-pfcs-gateway/pom.xml                                                            |   24 
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/IPublicService.java         |   14 
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/util/DateUtil.java                   |    2 
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/ITradeService.java          |   29 
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/Application.java                     |    1 
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqEPCSnglTranType.java       |  997 ++++++++++++++-------------
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/impl/PublicServiceImpl.java |   25 
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqSvcHeaderType.java         |  517 +++++++-------
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/impl/TradeServiceImpl.java  |   59 +
 cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/controller/TradeController.java      |   67 +
 cmci-pfcs-gateway/src/main/resources/application.properties                          |    2 
 14 files changed, 1,235 insertions(+), 860 deletions(-)

diff --git a/cmci-pfcs-gateway/pom.xml b/cmci-pfcs-gateway/pom.xml
index b4766e0..803ae3a 100644
--- a/cmci-pfcs-gateway/pom.xml
+++ b/cmci-pfcs-gateway/pom.xml
@@ -64,6 +64,18 @@
     </dependencies>
 
     <build>
+        <finalName>cmci-pfcs-gateway</finalName>
+        <resources>
+            <resource>
+                <targetPath>${project.build.directory}/classes</targetPath>
+                <directory>src/main/resources</directory>
+                <filtering>true</filtering>
+                <includes>
+                    <include>**/*.*</include>
+                </includes>
+            </resource>
+        </resources>
+
         <plugins>
             <plugin>
                 <groupId>org.springframework.boot</groupId>
@@ -93,18 +105,6 @@
 <!--                </executions>-->
 <!--            </plugin>-->
         </plugins>
-        <resources>
-            <resource>
-                <directory>src/main/java</directory>
-                <includes>
-                    <include>**/*.xml</include>
-                </includes>
-            </resource>
-            <resource>
-                <directory>src/main/resources</directory>
-            </resource>
-        </resources>
-
     </build>
 
 </project>
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/Application.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/Application.java
index c0916fb..d38cbcd 100644
--- a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/Application.java
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/Application.java
@@ -2,6 +2,7 @@
 
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.context.annotation.ComponentScan;
 
 /**
  * 启动类
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/controller/PublicController.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/controller/PublicController.java
new file mode 100644
index 0000000..f196723
--- /dev/null
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/controller/PublicController.java
@@ -0,0 +1,38 @@
+package com.jttech.pfcs.controller;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.jttech.pfcs.services.IPublicService;
+import com.jttech.pfcs.vo.ResponseVo;
+
+/**
+ * @author wanghc
+ * @version 1.0.0
+ * @date 2023-03-07
+ */
+@RestController
+@RequestMapping("/pub")
+public class PublicController {
+    private Logger mLogger = LoggerFactory.getLogger(getClass());
+
+    @Autowired
+    private IPublicService mPublicService;
+
+    @RequestMapping(value = "/heart", method = RequestMethod.GET)
+    public ResponseVo heart() {
+        final long beginTime = System.currentTimeMillis();
+        ResponseVo result = new ResponseVo();
+        try {
+            mPublicService.heartTest();
+            return result;
+        } finally {
+            final long endTime = System.currentTimeMillis();
+            mLogger.info("Execute heart the result is {} time spent is {} ", result, (endTime - beginTime));
+        }
+    }
+}
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/controller/TradeController.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/controller/TradeController.java
new file mode 100644
index 0000000..a7f6fc0
--- /dev/null
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/controller/TradeController.java
@@ -0,0 +1,67 @@
+package com.jttech.pfcs.controller;
+
+import com.jttech.pfcs.services.ITradeService;
+import com.jttech.pfcs.vo.ResponseVo;
+import com.jttech.pfcs.vo.req.ReqEPCSnglTranType;
+import com.jttech.pfcs.vo.req.ReqTranQryType;
+import com.jttech.pfcs.vo.resp.RspEPCSnglTranType;
+import com.jttech.pfcs.vo.resp.RspTranQryType;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author wanghc
+ * @version 1.0.0
+ * @date 2023-03-07
+ */
+@RestController
+@RequestMapping("/trade")
+public class TradeController {
+    private Logger mLogger = LoggerFactory.getLogger(getClass());
+
+    @Autowired
+    private ITradeService mTradeService;
+
+    /**
+     * 单笔交易
+     * @param reqVo
+     * @return
+     */
+    @PostMapping("/epcSnglTran")
+    public ResponseVo epcSnglTran(@RequestBody ReqEPCSnglTranType reqVo) {
+        mLogger.info("TradeController.epcSnglTran req={}", reqVo);
+        final long beginTime = System.currentTimeMillis();
+        ResponseVo result = new ResponseVo();
+        try {
+            RspEPCSnglTranType body = mTradeService.epcSnglTran(reqVo);
+            return result.setBody(body);
+        } finally {
+            final long endTime = System.currentTimeMillis();
+            mLogger.info("Execute epcSnglTran the result is {} time spent is {} ", result, (endTime - beginTime));
+        }
+    }
+
+    /**
+     * 单笔交易
+     * @param reqVo
+     * @return
+     */
+    @PostMapping("/tranQry")
+    public ResponseVo tranQry(@RequestBody ReqTranQryType reqVo) {
+        mLogger.info("TradeController.tranQry req={}", reqVo);
+        final long beginTime = System.currentTimeMillis();
+        ResponseVo result = new ResponseVo();
+        try {
+            RspTranQryType body = mTradeService.tranQry(reqVo);
+            return result.setBody(body);
+        } finally {
+            final long endTime = System.currentTimeMillis();
+            mLogger.info("Execute tranQry the result is {} time spent is {} ", result, (endTime - beginTime));
+        }
+    }
+}
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/IPublicService.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/IPublicService.java
new file mode 100644
index 0000000..da62aa8
--- /dev/null
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/IPublicService.java
@@ -0,0 +1,14 @@
+package com.jttech.pfcs.services;
+
+/**
+ * @author wanghc
+ * @version 1.0.0
+ * @date 2023-03-07
+ */
+public interface IPublicService {
+
+    /**
+     * 心跳测试
+     */
+    void heartTest();
+}
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/ITradeService.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/ITradeService.java
new file mode 100644
index 0000000..1718ffe
--- /dev/null
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/ITradeService.java
@@ -0,0 +1,29 @@
+package com.jttech.pfcs.services;
+
+import com.jttech.pfcs.vo.req.ReqEPCSnglTranType;
+import com.jttech.pfcs.vo.req.ReqTranQryType;
+import com.jttech.pfcs.vo.resp.RspEPCSnglTranType;
+import com.jttech.pfcs.vo.resp.RspTranQryType;
+
+/**
+ * @author wanghc
+ * @version 1.0.0
+ * @date 2023-03-07
+ */
+public interface ITradeService {
+
+    /**
+     * 单笔交易
+     * @param reqVo
+     * @return
+     */
+    RspEPCSnglTranType epcSnglTran(ReqEPCSnglTranType reqVo);
+
+
+    /**
+     * 交易查询
+     * @param req
+     * @return
+     */
+    RspTranQryType tranQry(ReqTranQryType req);
+}
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/impl/PublicServiceImpl.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/impl/PublicServiceImpl.java
new file mode 100644
index 0000000..aeede6c
--- /dev/null
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/impl/PublicServiceImpl.java
@@ -0,0 +1,25 @@
+package com.jttech.pfcs.services.impl;
+
+import com.jttech.pfcs.services.IPublicService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author wanghc
+ * @version 1.0.0
+ * @date 2023-03-07
+ */
+@Service
+public class PublicServiceImpl implements IPublicService {
+
+    private Logger mLogger = LoggerFactory.getLogger(getClass());
+
+    /**
+     * 心跳测试
+     */
+    @Override
+    public void heartTest() {
+        mLogger.info("==================ALIVE-CONFORM==================");
+    }
+}
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/impl/TradeServiceImpl.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/impl/TradeServiceImpl.java
new file mode 100644
index 0000000..18d7037
--- /dev/null
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/services/impl/TradeServiceImpl.java
@@ -0,0 +1,59 @@
+package com.jttech.pfcs.services.impl;
+
+import com.jttech.pfcs.services.ITradeService;
+import com.jttech.pfcs.services.wsdl.ESBServerPortType;
+import com.jttech.pfcs.services.wsdl.S080030795;
+import com.jttech.pfcs.vo.req.ReqEPCSnglTranType;
+import com.jttech.pfcs.vo.req.ReqTranQryType;
+import com.jttech.pfcs.vo.resp.RspEPCSnglTranType;
+import com.jttech.pfcs.vo.resp.RspTranQryType;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.InitializingBean;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author wanghc
+ * @version 1.0.0
+ * @date 2023-03-07
+ */
+@Service
+public class TradeServiceImpl implements ITradeService, InitializingBean {
+
+    private Logger mLogger = LoggerFactory.getLogger(getClass());
+
+    private ESBServerPortType mESBServerPortType;
+
+    @Override
+    public void afterPropertiesSet() throws Exception {
+        mESBServerPortType = new S080030795().getESBServerSoapEndpoint();
+    }
+
+    /**
+     * 单笔交易
+     *
+     * @param reqVo
+     * @return
+     */
+    @Override
+    public RspEPCSnglTranType epcSnglTran(ReqEPCSnglTranType reqVo) {
+        mLogger.info("TradeServiceImpl.epcSnglTran req={}", reqVo);
+        RspEPCSnglTranType result = mESBServerPortType.epcSnglTran(reqVo);
+        mLogger.info("TradeServiceImpl.epcSnglTran resp={}", result);
+        return result;
+    }
+
+    /**
+     * 交易查询
+     *
+     * @param req
+     * @return
+     */
+    @Override
+    public RspTranQryType tranQry(ReqTranQryType req) {
+        mLogger.info("TradeServiceImpl.tranQry req={}", req);
+        RspTranQryType result = mESBServerPortType.tranQry(req);
+        mLogger.info("TradeServiceImpl.tranQry resp={}", result);
+        return result;
+    }
+}
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/DateUtil.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/util/DateUtil.java
similarity index 99%
rename from cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/DateUtil.java
rename to cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/util/DateUtil.java
index 7ff08a0..f309721 100644
--- a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/DateUtil.java
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/util/DateUtil.java
@@ -1,4 +1,4 @@
-package com.jttech.pfcs.vo;
+package com.jttech.pfcs.util;
 
 import org.springframework.util.StringUtils;
 
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/ResponseVo.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/ResponseVo.java
new file mode 100644
index 0000000..62e2000
--- /dev/null
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/ResponseVo.java
@@ -0,0 +1,72 @@
+package com.jttech.pfcs.vo;
+
+import java.io.Serializable;
+
+/**
+ * 基础返回对象
+ * @author wanghc
+ * @version 1.0.0
+ * @date 2023-03-07
+ */
+public class ResponseVo implements Serializable {
+
+    private static final long serialVersionUID = 7564240277258758852L;
+    /**
+     * 错误码 等于0为成功
+     */
+    private int errorCode = 0;
+    /**
+     * 异常信息
+     */
+    private String errMsg = "操作成功";
+    /**
+     * 内容对象
+     */
+    private Object body;
+
+    public static ResponseVo ok(Object body) {
+        return new ResponseVo(body);
+    }
+
+    public static ResponseVo fail(int errorCode, String errMsg) {
+        return new ResponseVo(errorCode, errMsg, null);
+    }
+
+    public ResponseVo() {
+    }
+
+    public ResponseVo(int pErrorCode, String pErrMsg, Object pBody) {
+        errorCode = pErrorCode;
+        errMsg = pErrMsg;
+        body = pBody;
+    }
+
+    public ResponseVo(Object pBody) {
+        body = pBody;
+    }
+
+    public int getErrorCode() {
+        return errorCode;
+    }
+
+    public void setErrorCode(int pErrorCode) {
+        errorCode = pErrorCode;
+    }
+
+    public String getErrMsg() {
+        return errMsg;
+    }
+
+    public void setErrMsg(String pErrMsg) {
+        errMsg = pErrMsg;
+    }
+
+    public Object getBody() {
+        return body;
+    }
+
+    public ResponseVo setBody(Object pBody) {
+        body = pBody;
+        return this;
+    }
+}
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqEPCSnglTranType.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqEPCSnglTranType.java
index b2898ad..52823c5 100644
--- a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqEPCSnglTranType.java
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqEPCSnglTranType.java
@@ -5,12 +5,14 @@
 import javax.xml.bind.annotation.XmlAccessorType;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlType;
-
+import java.io.Serializable;
 
 /**
- * <p>ReqEPCSnglTranType complex type的 Java 类。
+ * <p>
+ * ReqEPCSnglTranType complex type的 Java 类。
  * 
- * <p>以下模式片段指定包含在此类中的预期内容。
+ * <p>
+ * 以下模式片段指定包含在此类中的预期内容。
  * 
  * <pre>
  * &lt;complexType name="ReqEPCSnglTranType"&gt;
@@ -87,70 +89,70 @@
  * 
  */
 @XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "ReqEPCSnglTranType", propOrder = {
-    "reqSvcHeader",
-    "svcBody"
-})
-public class ReqEPCSnglTranType {
+@XmlType(name = "ReqEPCSnglTranType", propOrder = { "reqSvcHeader", "svcBody" })
+public class ReqEPCSnglTranType implements Serializable {
+
+    private static final long            serialVersionUID = 6034342751595408529L;
 
     @XmlElement(name = "ReqSvcHeader", required = true)
-    protected ReqSvcHeaderType reqSvcHeader;
+    protected ReqSvcHeaderType           reqSvcHeader;
     @XmlElement(name = "SvcBody")
     protected ReqEPCSnglTranType.SvcBody svcBody;
 
     /**
      * 获取reqSvcHeader属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link ReqSvcHeaderType }
-     *     
+     * @return possible object is {@link ReqSvcHeaderType }
+     * 
      */
     public ReqSvcHeaderType getReqSvcHeader() {
         return reqSvcHeader;
     }
 
+
+
     /**
      * 设置reqSvcHeader属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link ReqSvcHeaderType }
-     *     
+     *            allowed object is {@link ReqSvcHeaderType }
+     * 
      */
     public void setReqSvcHeader(ReqSvcHeaderType value) {
         this.reqSvcHeader = value;
     }
 
+
+
     /**
      * 获取svcBody属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link ReqEPCSnglTranType.SvcBody }
-     *     
+     * @return possible object is {@link ReqEPCSnglTranType.SvcBody }
+     * 
      */
     public ReqEPCSnglTranType.SvcBody getSvcBody() {
         return svcBody;
     }
 
+
+
     /**
      * 设置svcBody属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link ReqEPCSnglTranType.SvcBody }
-     *     
+     *            allowed object is {@link ReqEPCSnglTranType.SvcBody }
+     * 
      */
     public void setSvcBody(ReqEPCSnglTranType.SvcBody value) {
         this.svcBody = value;
     }
 
-
     /**
-     * <p>anonymous complex type的 Java 类。
+     * <p>
+     * anonymous complex type的 Java 类。
      * 
-     * <p>以下模式片段指定包含在此类中的预期内容。
+     * <p>
+     * 以下模式片段指定包含在此类中的预期内容。
      * 
      * <pre>
      * &lt;complexType&gt;
@@ -216,1361 +218,1398 @@
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
-    @XmlType(name = "", propOrder = {
-        "pdNo",
-        "bussType",
-        "rstChannelType",
-        "mrchAcctNo",
-        "mrchName",
-        "scdMrchId",
-        "scdMrchNm",
-        "afdsSubMercName",
-        "rqsDate",
-        "rqsTime",
-        "clntSeq",
-        "pyAcctNo",
-        "bkAcctType",
-        "pyeAcctNm",
-        "pyCtfId1",
-        "pyCtfTp1",
-        "cardCVN2",
-        "tokenVldTrm",
-        "payeeMobile",
-        "pyOpnBrId1",
-        "repymtOpnBrNm",
-        "loProvNm",
-        "payeeOpnBrCityId",
-        "pymtAcctNo",
-        "bscAcctType",
-        "pymtAcctName",
-        "payerCtfID2",
-        "payerCtfTp",
-        "crCrdTranPstnInfo",
-        "validDate1",
-        "payerOpnBrId1",
-        "pyrOpnBrNm2",
-        "provCode",
-        "pyrOpnBrCityId",
-        "payerMobile",
-        "tranCcy",
-        "transAmt4",
-        "chrgAmt2",
-        "crnPct1",
-        "othrDsc",
-        "acceptFlag",
-        "_abstract",
-        "trdChnl",
-        "pymtAgmNo",
-        "acctVerifyFlag",
-        "payPwd",
-        "unpyRsrvFld",
-        "rsrvFldVal4",
-        "rsrvFldVal5",
-        "rsrvFldVal6"
-    })
-    public static class SvcBody {
+    @XmlType(name = "", propOrder = { "pdNo", "bussType", "rstChannelType", "mrchAcctNo", "mrchName", "scdMrchId",
+            "scdMrchNm", "afdsSubMercName", "rqsDate", "rqsTime", "clntSeq", "pyAcctNo", "bkAcctType", "pyeAcctNm",
+            "pyCtfId1", "pyCtfTp1", "cardCVN2", "tokenVldTrm", "payeeMobile", "pyOpnBrId1", "repymtOpnBrNm", "loProvNm",
+            "payeeOpnBrCityId", "pymtAcctNo", "bscAcctType", "pymtAcctName", "payerCtfID2", "payerCtfTp",
+            "crCrdTranPstnInfo", "validDate1", "payerOpnBrId1", "pyrOpnBrNm2", "provCode", "pyrOpnBrCityId",
+            "payerMobile", "tranCcy", "transAmt4", "chrgAmt2", "crnPct1", "othrDsc", "acceptFlag", "_abstract",
+            "trdChnl", "pymtAgmNo", "acctVerifyFlag", "payPwd", "unpyRsrvFld", "rsrvFldVal4", "rsrvFldVal5",
+            "rsrvFldVal6" })
+    public static class SvcBody implements Serializable {
+
+        private static final long serialVersionUID = 1L;
 
         @XmlElement(name = "PdNo", required = true)
-        protected String pdNo;
+        protected String          pdNo;
         @XmlElement(name = "BussType")
-        protected String bussType;
+        protected String          bussType;
         @XmlElement(name = "RstChannelType", required = true)
-        protected String rstChannelType;
+        protected String          rstChannelType;
         @XmlElement(name = "MrchAcctNo", required = true)
-        protected String mrchAcctNo;
+        protected String          mrchAcctNo;
         @XmlElement(name = "MrchName")
-        protected String mrchName;
+        protected String          mrchName;
         @XmlElement(name = "ScdMrchId", required = true)
-        protected String scdMrchId;
+        protected String          scdMrchId;
         @XmlElement(name = "ScdMrchNm", required = true)
-        protected String scdMrchNm;
+        protected String          scdMrchNm;
         @XmlElement(name = "AfdsSubMercName")
-        protected String afdsSubMercName;
+        protected String          afdsSubMercName;
         @XmlElement(name = "RqsDate", required = true)
-        protected String rqsDate;
+        protected String          rqsDate;
         @XmlElement(name = "RqsTime", required = true)
-        protected String rqsTime;
+        protected String          rqsTime;
         @XmlElement(name = "ClntSeq", required = true)
-        protected String clntSeq;
+        protected String          clntSeq;
         @XmlElement(name = "PyAcctNo")
-        protected String pyAcctNo;
+        protected String          pyAcctNo;
         @XmlElement(name = "BkAcctType")
-        protected String bkAcctType;
+        protected String          bkAcctType;
         @XmlElement(name = "PyeAcctNm")
-        protected String pyeAcctNm;
+        protected String          pyeAcctNm;
         @XmlElement(name = "PyCtfId1")
-        protected String pyCtfId1;
+        protected String          pyCtfId1;
         @XmlElement(name = "PyCtfTp1")
-        protected String pyCtfTp1;
+        protected String          pyCtfTp1;
         @XmlElement(name = "CardCVN2")
-        protected String cardCVN2;
+        protected String          cardCVN2;
         @XmlElement(name = "TokenVldTrm")
-        protected String tokenVldTrm;
+        protected String          tokenVldTrm;
         @XmlElement(name = "PayeeMobile")
-        protected String payeeMobile;
+        protected String          payeeMobile;
         @XmlElement(name = "PyOpnBrId1")
-        protected String pyOpnBrId1;
+        protected String          pyOpnBrId1;
         @XmlElement(name = "RepymtOpnBrNm")
-        protected String repymtOpnBrNm;
+        protected String          repymtOpnBrNm;
         @XmlElement(name = "LoProvNm")
-        protected String loProvNm;
+        protected String          loProvNm;
         @XmlElement(name = "PayeeOpnBrCityId")
-        protected String payeeOpnBrCityId;
+        protected String          payeeOpnBrCityId;
         @XmlElement(name = "PymtAcctNo")
-        protected String pymtAcctNo;
+        protected String          pymtAcctNo;
         @XmlElement(name = "BscAcctType")
-        protected String bscAcctType;
+        protected String          bscAcctType;
         @XmlElement(name = "PymtAcctName")
-        protected String pymtAcctName;
+        protected String          pymtAcctName;
         @XmlElement(name = "PayerCtfID2")
-        protected String payerCtfID2;
+        protected String          payerCtfID2;
         @XmlElement(name = "PayerCtfTp")
-        protected String payerCtfTp;
+        protected String          payerCtfTp;
         @XmlElement(name = "CrCrdTranPstnInfo")
-        protected String crCrdTranPstnInfo;
+        protected String          crCrdTranPstnInfo;
         @XmlElement(name = "ValidDate1")
-        protected String validDate1;
+        protected String          validDate1;
         @XmlElement(name = "PayerOpnBrId1")
-        protected String payerOpnBrId1;
+        protected String          payerOpnBrId1;
         @XmlElement(name = "PyrOpnBrNm2")
-        protected String pyrOpnBrNm2;
+        protected String          pyrOpnBrNm2;
         @XmlElement(name = "ProvCode")
-        protected String provCode;
+        protected String          provCode;
         @XmlElement(name = "PyrOpnBrCityId")
-        protected String pyrOpnBrCityId;
+        protected String          pyrOpnBrCityId;
         @XmlElement(name = "PayerMobile")
-        protected String payerMobile;
+        protected String          payerMobile;
         @XmlElement(name = "TranCcy", required = true)
-        protected String tranCcy;
+        protected String          tranCcy;
         @XmlElement(name = "TransAmt4", required = true)
-        protected String transAmt4;
+        protected String          transAmt4;
         @XmlElement(name = "ChrgAmt2")
-        protected String chrgAmt2;
+        protected String          chrgAmt2;
         @XmlElement(name = "CrnPct1")
-        protected String crnPct1;
+        protected String          crnPct1;
         @XmlElement(name = "OthrDsc", required = true)
-        protected String othrDsc;
+        protected String          othrDsc;
         @XmlElement(name = "AcceptFlag")
-        protected String acceptFlag;
+        protected String          acceptFlag;
         @XmlElement(name = "Abstract")
-        protected String _abstract;
+        protected String          _abstract;
         @XmlElement(name = "TrdChnl")
-        protected String trdChnl;
+        protected String          trdChnl;
         @XmlElement(name = "PymtAgmNo")
-        protected String pymtAgmNo;
+        protected String          pymtAgmNo;
         @XmlElement(name = "AcctVerifyFlag")
-        protected String acctVerifyFlag;
+        protected String          acctVerifyFlag;
         @XmlElement(name = "PayPwd")
-        protected String payPwd;
+        protected String          payPwd;
         @XmlElement(name = "UnpyRsrvFld")
-        protected String unpyRsrvFld;
+        protected String          unpyRsrvFld;
         @XmlElement(name = "RsrvFldVal4")
-        protected String rsrvFldVal4;
+        protected String          rsrvFldVal4;
         @XmlElement(name = "RsrvFldVal5")
-        protected String rsrvFldVal5;
+        protected String          rsrvFldVal5;
         @XmlElement(name = "RsrvFldVal6")
-        protected String rsrvFldVal6;
+        protected String          rsrvFldVal6;
 
         /**
          * 获取pdNo属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPdNo() {
             return pdNo;
         }
 
+
+
         /**
          * 设置pdNo属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPdNo(String value) {
             this.pdNo = value;
         }
 
+
+
         /**
          * 获取bussType属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getBussType() {
             return bussType;
         }
 
+
+
         /**
          * 设置bussType属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setBussType(String value) {
             this.bussType = value;
         }
 
+
+
         /**
          * 获取rstChannelType属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getRstChannelType() {
             return rstChannelType;
         }
 
+
+
         /**
          * 设置rstChannelType属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setRstChannelType(String value) {
             this.rstChannelType = value;
         }
 
+
+
         /**
          * 获取mrchAcctNo属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getMrchAcctNo() {
             return mrchAcctNo;
         }
 
+
+
         /**
          * 设置mrchAcctNo属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setMrchAcctNo(String value) {
             this.mrchAcctNo = value;
         }
 
+
+
         /**
          * 获取mrchName属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getMrchName() {
             return mrchName;
         }
 
+
+
         /**
          * 设置mrchName属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setMrchName(String value) {
             this.mrchName = value;
         }
 
+
+
         /**
          * 获取scdMrchId属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getScdMrchId() {
             return scdMrchId;
         }
 
+
+
         /**
          * 设置scdMrchId属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setScdMrchId(String value) {
             this.scdMrchId = value;
         }
 
+
+
         /**
          * 获取scdMrchNm属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getScdMrchNm() {
             return scdMrchNm;
         }
 
+
+
         /**
          * 设置scdMrchNm属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setScdMrchNm(String value) {
             this.scdMrchNm = value;
         }
 
+
+
         /**
          * 获取afdsSubMercName属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getAfdsSubMercName() {
             return afdsSubMercName;
         }
 
+
+
         /**
          * 设置afdsSubMercName属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setAfdsSubMercName(String value) {
             this.afdsSubMercName = value;
         }
 
+
+
         /**
          * 获取rqsDate属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getRqsDate() {
             return rqsDate;
         }
 
+
+
         /**
          * 设置rqsDate属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setRqsDate(String value) {
             this.rqsDate = value;
         }
 
+
+
         /**
          * 获取rqsTime属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getRqsTime() {
             return rqsTime;
         }
 
+
+
         /**
          * 设置rqsTime属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setRqsTime(String value) {
             this.rqsTime = value;
         }
 
+
+
         /**
          * 获取clntSeq属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getClntSeq() {
             return clntSeq;
         }
 
+
+
         /**
          * 设置clntSeq属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setClntSeq(String value) {
             this.clntSeq = value;
         }
 
+
+
         /**
          * 获取pyAcctNo属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPyAcctNo() {
             return pyAcctNo;
         }
 
+
+
         /**
          * 设置pyAcctNo属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPyAcctNo(String value) {
             this.pyAcctNo = value;
         }
 
+
+
         /**
          * 获取bkAcctType属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getBkAcctType() {
             return bkAcctType;
         }
 
+
+
         /**
          * 设置bkAcctType属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setBkAcctType(String value) {
             this.bkAcctType = value;
         }
 
+
+
         /**
          * 获取pyeAcctNm属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPyeAcctNm() {
             return pyeAcctNm;
         }
 
+
+
         /**
          * 设置pyeAcctNm属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPyeAcctNm(String value) {
             this.pyeAcctNm = value;
         }
 
+
+
         /**
          * 获取pyCtfId1属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPyCtfId1() {
             return pyCtfId1;
         }
 
+
+
         /**
          * 设置pyCtfId1属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPyCtfId1(String value) {
             this.pyCtfId1 = value;
         }
 
+
+
         /**
          * 获取pyCtfTp1属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPyCtfTp1() {
             return pyCtfTp1;
         }
 
+
+
         /**
          * 设置pyCtfTp1属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPyCtfTp1(String value) {
             this.pyCtfTp1 = value;
         }
 
+
+
         /**
          * 获取cardCVN2属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getCardCVN2() {
             return cardCVN2;
         }
 
+
+
         /**
          * 设置cardCVN2属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setCardCVN2(String value) {
             this.cardCVN2 = value;
         }
 
+
+
         /**
          * 获取tokenVldTrm属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getTokenVldTrm() {
             return tokenVldTrm;
         }
 
+
+
         /**
          * 设置tokenVldTrm属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setTokenVldTrm(String value) {
             this.tokenVldTrm = value;
         }
 
+
+
         /**
          * 获取payeeMobile属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPayeeMobile() {
             return payeeMobile;
         }
 
+
+
         /**
          * 设置payeeMobile属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPayeeMobile(String value) {
             this.payeeMobile = value;
         }
 
+
+
         /**
          * 获取pyOpnBrId1属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPyOpnBrId1() {
             return pyOpnBrId1;
         }
 
+
+
         /**
          * 设置pyOpnBrId1属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPyOpnBrId1(String value) {
             this.pyOpnBrId1 = value;
         }
 
+
+
         /**
          * 获取repymtOpnBrNm属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getRepymtOpnBrNm() {
             return repymtOpnBrNm;
         }
 
+
+
         /**
          * 设置repymtOpnBrNm属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setRepymtOpnBrNm(String value) {
             this.repymtOpnBrNm = value;
         }
 
+
+
         /**
          * 获取loProvNm属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getLoProvNm() {
             return loProvNm;
         }
 
+
+
         /**
          * 设置loProvNm属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setLoProvNm(String value) {
             this.loProvNm = value;
         }
 
+
+
         /**
          * 获取payeeOpnBrCityId属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPayeeOpnBrCityId() {
             return payeeOpnBrCityId;
         }
 
+
+
         /**
          * 设置payeeOpnBrCityId属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPayeeOpnBrCityId(String value) {
             this.payeeOpnBrCityId = value;
         }
 
+
+
         /**
          * 获取pymtAcctNo属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPymtAcctNo() {
             return pymtAcctNo;
         }
 
+
+
         /**
          * 设置pymtAcctNo属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPymtAcctNo(String value) {
             this.pymtAcctNo = value;
         }
 
+
+
         /**
          * 获取bscAcctType属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getBscAcctType() {
             return bscAcctType;
         }
 
+
+
         /**
          * 设置bscAcctType属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setBscAcctType(String value) {
             this.bscAcctType = value;
         }
 
+
+
         /**
          * 获取pymtAcctName属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPymtAcctName() {
             return pymtAcctName;
         }
 
+
+
         /**
          * 设置pymtAcctName属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPymtAcctName(String value) {
             this.pymtAcctName = value;
         }
 
+
+
         /**
          * 获取payerCtfID2属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPayerCtfID2() {
             return payerCtfID2;
         }
 
+
+
         /**
          * 设置payerCtfID2属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPayerCtfID2(String value) {
             this.payerCtfID2 = value;
         }
 
+
+
         /**
          * 获取payerCtfTp属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPayerCtfTp() {
             return payerCtfTp;
         }
 
+
+
         /**
          * 设置payerCtfTp属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPayerCtfTp(String value) {
             this.payerCtfTp = value;
         }
 
+
+
         /**
          * 获取crCrdTranPstnInfo属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getCrCrdTranPstnInfo() {
             return crCrdTranPstnInfo;
         }
 
+
+
         /**
          * 设置crCrdTranPstnInfo属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setCrCrdTranPstnInfo(String value) {
             this.crCrdTranPstnInfo = value;
         }
 
+
+
         /**
          * 获取validDate1属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getValidDate1() {
             return validDate1;
         }
 
+
+
         /**
          * 设置validDate1属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setValidDate1(String value) {
             this.validDate1 = value;
         }
 
+
+
         /**
          * 获取payerOpnBrId1属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPayerOpnBrId1() {
             return payerOpnBrId1;
         }
 
+
+
         /**
          * 设置payerOpnBrId1属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPayerOpnBrId1(String value) {
             this.payerOpnBrId1 = value;
         }
 
+
+
         /**
          * 获取pyrOpnBrNm2属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPyrOpnBrNm2() {
             return pyrOpnBrNm2;
         }
 
+
+
         /**
          * 设置pyrOpnBrNm2属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPyrOpnBrNm2(String value) {
             this.pyrOpnBrNm2 = value;
         }
 
+
+
         /**
          * 获取provCode属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getProvCode() {
             return provCode;
         }
 
+
+
         /**
          * 设置provCode属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setProvCode(String value) {
             this.provCode = value;
         }
 
+
+
         /**
          * 获取pyrOpnBrCityId属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPyrOpnBrCityId() {
             return pyrOpnBrCityId;
         }
 
+
+
         /**
          * 设置pyrOpnBrCityId属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPyrOpnBrCityId(String value) {
             this.pyrOpnBrCityId = value;
         }
 
+
+
         /**
          * 获取payerMobile属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPayerMobile() {
             return payerMobile;
         }
 
+
+
         /**
          * 设置payerMobile属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPayerMobile(String value) {
             this.payerMobile = value;
         }
 
+
+
         /**
          * 获取tranCcy属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getTranCcy() {
             return tranCcy;
         }
 
+
+
         /**
          * 设置tranCcy属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setTranCcy(String value) {
             this.tranCcy = value;
         }
 
+
+
         /**
          * 获取transAmt4属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getTransAmt4() {
             return transAmt4;
         }
 
+
+
         /**
          * 设置transAmt4属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setTransAmt4(String value) {
             this.transAmt4 = value;
         }
 
+
+
         /**
          * 获取chrgAmt2属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getChrgAmt2() {
             return chrgAmt2;
         }
 
+
+
         /**
          * 设置chrgAmt2属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setChrgAmt2(String value) {
             this.chrgAmt2 = value;
         }
 
+
+
         /**
          * 获取crnPct1属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getCrnPct1() {
             return crnPct1;
         }
 
+
+
         /**
          * 设置crnPct1属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setCrnPct1(String value) {
             this.crnPct1 = value;
         }
 
+
+
         /**
          * 获取othrDsc属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getOthrDsc() {
             return othrDsc;
         }
 
+
+
         /**
          * 设置othrDsc属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setOthrDsc(String value) {
             this.othrDsc = value;
         }
 
+
+
         /**
          * 获取acceptFlag属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getAcceptFlag() {
             return acceptFlag;
         }
 
+
+
         /**
          * 设置acceptFlag属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setAcceptFlag(String value) {
             this.acceptFlag = value;
         }
 
+
+
         /**
          * 获取abstract属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getAbstract() {
             return _abstract;
         }
 
+
+
         /**
          * 设置abstract属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setAbstract(String value) {
             this._abstract = value;
         }
 
+
+
         /**
          * 获取trdChnl属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getTrdChnl() {
             return trdChnl;
         }
 
+
+
         /**
          * 设置trdChnl属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setTrdChnl(String value) {
             this.trdChnl = value;
         }
 
+
+
         /**
          * 获取pymtAgmNo属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPymtAgmNo() {
             return pymtAgmNo;
         }
 
+
+
         /**
          * 设置pymtAgmNo属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPymtAgmNo(String value) {
             this.pymtAgmNo = value;
         }
 
+
+
         /**
          * 获取acctVerifyFlag属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getAcctVerifyFlag() {
             return acctVerifyFlag;
         }
 
+
+
         /**
          * 设置acctVerifyFlag属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setAcctVerifyFlag(String value) {
             this.acctVerifyFlag = value;
         }
 
+
+
         /**
          * 获取payPwd属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPayPwd() {
             return payPwd;
         }
 
+
+
         /**
          * 设置payPwd属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPayPwd(String value) {
             this.payPwd = value;
         }
 
+
+
         /**
          * 获取unpyRsrvFld属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getUnpyRsrvFld() {
             return unpyRsrvFld;
         }
 
+
+
         /**
          * 设置unpyRsrvFld属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setUnpyRsrvFld(String value) {
             this.unpyRsrvFld = value;
         }
 
+
+
         /**
          * 获取rsrvFldVal4属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getRsrvFldVal4() {
             return rsrvFldVal4;
         }
 
+
+
         /**
          * 设置rsrvFldVal4属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setRsrvFldVal4(String value) {
             this.rsrvFldVal4 = value;
         }
 
+
+
         /**
          * 获取rsrvFldVal5属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getRsrvFldVal5() {
             return rsrvFldVal5;
         }
 
+
+
         /**
          * 设置rsrvFldVal5属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setRsrvFldVal5(String value) {
             this.rsrvFldVal5 = value;
         }
 
+
+
         /**
          * 获取rsrvFldVal6属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getRsrvFldVal6() {
             return rsrvFldVal6;
         }
 
+
+
         /**
          * 设置rsrvFldVal6属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setRsrvFldVal6(String value) {
             this.rsrvFldVal6 = value;
         }
 
+
+
+        @Override
+        public String toString() {
+            return "SvcBody{" + "pdNo='" + pdNo + '\'' + ", bussType='" + bussType + '\'' + ", rstChannelType='"
+                    + rstChannelType + '\'' + ", mrchAcctNo='" + mrchAcctNo + '\'' + ", mrchName='" + mrchName + '\''
+                    + ", scdMrchId='" + scdMrchId + '\'' + ", scdMrchNm='" + scdMrchNm + '\'' + ", afdsSubMercName='"
+                    + afdsSubMercName + '\'' + ", rqsDate='" + rqsDate + '\'' + ", rqsTime='" + rqsTime + '\''
+                    + ", clntSeq='" + clntSeq + '\'' + ", pyAcctNo='" + pyAcctNo + '\'' + ", bkAcctType='" + bkAcctType
+                    + '\'' + ", pyeAcctNm='" + pyeAcctNm + '\'' + ", pyCtfId1='" + pyCtfId1 + '\'' + ", pyCtfTp1='"
+                    + pyCtfTp1 + '\'' + ", cardCVN2='" + cardCVN2 + '\'' + ", tokenVldTrm='" + tokenVldTrm + '\''
+                    + ", payeeMobile='" + payeeMobile + '\'' + ", pyOpnBrId1='" + pyOpnBrId1 + '\''
+                    + ", repymtOpnBrNm='" + repymtOpnBrNm + '\'' + ", loProvNm='" + loProvNm + '\''
+                    + ", payeeOpnBrCityId='" + payeeOpnBrCityId + '\'' + ", pymtAcctNo='" + pymtAcctNo + '\''
+                    + ", bscAcctType='" + bscAcctType + '\'' + ", pymtAcctName='" + pymtAcctName + '\''
+                    + ", payerCtfID2='" + payerCtfID2 + '\'' + ", payerCtfTp='" + payerCtfTp + '\''
+                    + ", crCrdTranPstnInfo='" + crCrdTranPstnInfo + '\'' + ", validDate1='" + validDate1 + '\''
+                    + ", payerOpnBrId1='" + payerOpnBrId1 + '\'' + ", pyrOpnBrNm2='" + pyrOpnBrNm2 + '\''
+                    + ", provCode='" + provCode + '\'' + ", pyrOpnBrCityId='" + pyrOpnBrCityId + '\''
+                    + ", payerMobile='" + payerMobile + '\'' + ", tranCcy='" + tranCcy + '\'' + ", transAmt4='"
+                    + transAmt4 + '\'' + ", chrgAmt2='" + chrgAmt2 + '\'' + ", crnPct1='" + crnPct1 + '\''
+                    + ", othrDsc='" + othrDsc + '\'' + ", acceptFlag='" + acceptFlag + '\'' + ", _abstract='"
+                    + _abstract + '\'' + ", trdChnl='" + trdChnl + '\'' + ", pymtAgmNo='" + pymtAgmNo + '\''
+                    + ", acctVerifyFlag='" + acctVerifyFlag + '\'' + ", payPwd='" + payPwd + '\'' + ", unpyRsrvFld='"
+                    + unpyRsrvFld + '\'' + ", rsrvFldVal4='" + rsrvFldVal4 + '\'' + ", rsrvFldVal5='" + rsrvFldVal5
+                    + '\'' + ", rsrvFldVal6='" + rsrvFldVal6 + '\'' + '}';
+        }
     }
 
+    @Override
+    public String toString() {
+        return "ReqEPCSnglTranType{" + "reqSvcHeader=" + reqSvcHeader + ", svcBody=" + svcBody + '}';
+    }
 }
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqSvcHeaderType.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqSvcHeaderType.java
index 6f10586..f0a1708 100644
--- a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqSvcHeaderType.java
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqSvcHeaderType.java
@@ -5,12 +5,14 @@
 import javax.xml.bind.annotation.XmlAccessorType;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlType;
-
+import java.io.Serializable;
 
 /**
- * <p>ReqSvcHeaderType complex type的 Java 类。
+ * <p>
+ * ReqSvcHeaderType complex type的 Java 类。
  * 
- * <p>以下模式片段指定包含在此类中的预期内容。
+ * <p>
+ * 以下模式片段指定包含在此类中的预期内容。
  * 
  * <pre>
  * &lt;complexType name="ReqSvcHeaderType"&gt;
@@ -53,738 +55,755 @@
  * 
  */
 @XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "ReqSvcHeaderType", propOrder = {
-    "tranDate",
-    "tranTime",
-    "tranTellerNo",
-    "tranSeqNo",
-    "consumerId",
-    "globalSeqNo",
-    "sourceSysId",
-    "branchId",
-    "terminalCode",
-    "cityCode",
-    "authrTellerNo",
-    "authrPwd",
-    "authrCardFlag",
-    "authrCardNo",
-    "langCode",
-    "tranCode",
-    "pin",
-    "keyVersionNo",
-    "sysOffset1",
-    "sysOffset2",
-    "targetAdr",
-    "sourceAdr",
-    "msgEndFlag",
-    "msgSeqNo",
-    "subTranCode",
-    "tranMode",
-    "tranSerialNo"
-})
-public class ReqSvcHeaderType {
+@XmlType(name = "ReqSvcHeaderType", propOrder = { "tranDate", "tranTime", "tranTellerNo", "tranSeqNo", "consumerId",
+        "globalSeqNo", "sourceSysId", "branchId", "terminalCode", "cityCode", "authrTellerNo", "authrPwd",
+        "authrCardFlag", "authrCardNo", "langCode", "tranCode", "pin", "keyVersionNo", "sysOffset1", "sysOffset2",
+        "targetAdr", "sourceAdr", "msgEndFlag", "msgSeqNo", "subTranCode", "tranMode", "tranSerialNo" })
+public class ReqSvcHeaderType implements Serializable {
+    private static final long serialVersionUID = 1L;
 
     @XmlElement(name = "TranDate", required = true)
-    protected String tranDate;
+    protected String          tranDate;
     @XmlElement(name = "TranTime", required = true)
-    protected String tranTime;
+    protected String          tranTime;
     @XmlElement(name = "TranTellerNo", required = true)
-    protected String tranTellerNo;
+    protected String          tranTellerNo;
     @XmlElement(name = "TranSeqNo", required = true)
-    protected String tranSeqNo;
+    protected String          tranSeqNo;
     @XmlElement(name = "ConsumerId", required = true)
-    protected String consumerId;
+    protected String          consumerId;
     @XmlElement(name = "GlobalSeqNo")
-    protected String globalSeqNo;
+    protected String          globalSeqNo;
     @XmlElement(name = "SourceSysId")
-    protected String sourceSysId;
+    protected String          sourceSysId;
     @XmlElement(name = "BranchId")
-    protected String branchId;
+    protected String          branchId;
     @XmlElement(name = "TerminalCode")
-    protected String terminalCode;
+    protected String          terminalCode;
     @XmlElement(name = "CityCode")
-    protected String cityCode;
+    protected String          cityCode;
     @XmlElement(name = "AuthrTellerNo")
-    protected String authrTellerNo;
+    protected String          authrTellerNo;
     @XmlElement(name = "AuthrPwd")
-    protected String authrPwd;
+    protected String          authrPwd;
     @XmlElement(name = "AuthrCardFlag")
-    protected String authrCardFlag;
+    protected String          authrCardFlag;
     @XmlElement(name = "AuthrCardNo")
-    protected String authrCardNo;
+    protected String          authrCardNo;
     @XmlElement(name = "LangCode")
-    protected String langCode;
+    protected String          langCode;
     @XmlElement(name = "TranCode")
-    protected String tranCode;
+    protected String          tranCode;
     @XmlElement(name = "PIN")
-    protected String pin;
+    protected String          pin;
     @XmlElement(name = "KeyVersionNo")
-    protected String keyVersionNo;
+    protected String          keyVersionNo;
     @XmlElement(name = "SysOffset1")
-    protected String sysOffset1;
+    protected String          sysOffset1;
     @XmlElement(name = "SysOffset2")
-    protected String sysOffset2;
+    protected String          sysOffset2;
     @XmlElement(name = "TargetAdr")
-    protected String targetAdr;
+    protected String          targetAdr;
     @XmlElement(name = "SourceAdr")
-    protected String sourceAdr;
+    protected String          sourceAdr;
     @XmlElement(name = "MsgEndFlag")
-    protected String msgEndFlag;
+    protected String          msgEndFlag;
     @XmlElement(name = "MsgSeqNo")
-    protected String msgSeqNo;
+    protected String          msgSeqNo;
     @XmlElement(name = "SubTranCode")
-    protected String subTranCode;
+    protected String          subTranCode;
     @XmlElement(name = "TranMode")
-    protected String tranMode;
+    protected String          tranMode;
     @XmlElement(name = "TranSerialNo")
-    protected String tranSerialNo;
+    protected String          tranSerialNo;
 
     /**
      * 获取tranDate属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getTranDate() {
         return tranDate;
     }
 
+
+
     /**
      * 设置tranDate属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setTranDate(String value) {
         this.tranDate = value;
     }
 
+
+
     /**
      * 获取tranTime属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getTranTime() {
         return tranTime;
     }
 
+
+
     /**
      * 设置tranTime属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setTranTime(String value) {
         this.tranTime = value;
     }
 
+
+
     /**
      * 获取tranTellerNo属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getTranTellerNo() {
         return tranTellerNo;
     }
 
+
+
     /**
      * 设置tranTellerNo属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setTranTellerNo(String value) {
         this.tranTellerNo = value;
     }
 
+
+
     /**
      * 获取tranSeqNo属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getTranSeqNo() {
         return tranSeqNo;
     }
 
+
+
     /**
      * 设置tranSeqNo属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setTranSeqNo(String value) {
         this.tranSeqNo = value;
     }
 
+
+
     /**
      * 获取consumerId属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getConsumerId() {
         return consumerId;
     }
 
+
+
     /**
      * 设置consumerId属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setConsumerId(String value) {
         this.consumerId = value;
     }
 
+
+
     /**
      * 获取globalSeqNo属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getGlobalSeqNo() {
         return globalSeqNo;
     }
 
+
+
     /**
      * 设置globalSeqNo属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setGlobalSeqNo(String value) {
         this.globalSeqNo = value;
     }
 
+
+
     /**
      * 获取sourceSysId属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getSourceSysId() {
         return sourceSysId;
     }
 
+
+
     /**
      * 设置sourceSysId属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setSourceSysId(String value) {
         this.sourceSysId = value;
     }
 
+
+
     /**
      * 获取branchId属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getBranchId() {
         return branchId;
     }
 
+
+
     /**
      * 设置branchId属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setBranchId(String value) {
         this.branchId = value;
     }
 
+
+
     /**
      * 获取terminalCode属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getTerminalCode() {
         return terminalCode;
     }
 
+
+
     /**
      * 设置terminalCode属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setTerminalCode(String value) {
         this.terminalCode = value;
     }
 
+
+
     /**
      * 获取cityCode属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getCityCode() {
         return cityCode;
     }
 
+
+
     /**
      * 设置cityCode属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setCityCode(String value) {
         this.cityCode = value;
     }
 
+
+
     /**
      * 获取authrTellerNo属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getAuthrTellerNo() {
         return authrTellerNo;
     }
 
+
+
     /**
      * 设置authrTellerNo属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setAuthrTellerNo(String value) {
         this.authrTellerNo = value;
     }
 
+
+
     /**
      * 获取authrPwd属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getAuthrPwd() {
         return authrPwd;
     }
 
+
+
     /**
      * 设置authrPwd属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setAuthrPwd(String value) {
         this.authrPwd = value;
     }
 
+
+
     /**
      * 获取authrCardFlag属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getAuthrCardFlag() {
         return authrCardFlag;
     }
 
+
+
     /**
      * 设置authrCardFlag属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setAuthrCardFlag(String value) {
         this.authrCardFlag = value;
     }
 
+
+
     /**
      * 获取authrCardNo属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getAuthrCardNo() {
         return authrCardNo;
     }
 
+
+
     /**
      * 设置authrCardNo属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setAuthrCardNo(String value) {
         this.authrCardNo = value;
     }
 
+
+
     /**
      * 获取langCode属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getLangCode() {
         return langCode;
     }
 
+
+
     /**
      * 设置langCode属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setLangCode(String value) {
         this.langCode = value;
     }
 
+
+
     /**
      * 获取tranCode属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getTranCode() {
         return tranCode;
     }
 
+
+
     /**
      * 设置tranCode属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setTranCode(String value) {
         this.tranCode = value;
     }
 
+
+
     /**
      * 获取pin属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getPIN() {
         return pin;
     }
 
+
+
     /**
      * 设置pin属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setPIN(String value) {
         this.pin = value;
     }
 
+
+
     /**
      * 获取keyVersionNo属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getKeyVersionNo() {
         return keyVersionNo;
     }
 
+
+
     /**
      * 设置keyVersionNo属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setKeyVersionNo(String value) {
         this.keyVersionNo = value;
     }
 
+
+
     /**
      * 获取sysOffset1属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getSysOffset1() {
         return sysOffset1;
     }
 
+
+
     /**
      * 设置sysOffset1属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setSysOffset1(String value) {
         this.sysOffset1 = value;
     }
 
+
+
     /**
      * 获取sysOffset2属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getSysOffset2() {
         return sysOffset2;
     }
 
+
+
     /**
      * 设置sysOffset2属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setSysOffset2(String value) {
         this.sysOffset2 = value;
     }
 
+
+
     /**
      * 获取targetAdr属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getTargetAdr() {
         return targetAdr;
     }
 
+
+
     /**
      * 设置targetAdr属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setTargetAdr(String value) {
         this.targetAdr = value;
     }
 
+
+
     /**
      * 获取sourceAdr属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getSourceAdr() {
         return sourceAdr;
     }
 
+
+
     /**
      * 设置sourceAdr属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setSourceAdr(String value) {
         this.sourceAdr = value;
     }
 
+
+
     /**
      * 获取msgEndFlag属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getMsgEndFlag() {
         return msgEndFlag;
     }
 
+
+
     /**
      * 设置msgEndFlag属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setMsgEndFlag(String value) {
         this.msgEndFlag = value;
     }
 
+
+
     /**
      * 获取msgSeqNo属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getMsgSeqNo() {
         return msgSeqNo;
     }
 
+
+
     /**
      * 设置msgSeqNo属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setMsgSeqNo(String value) {
         this.msgSeqNo = value;
     }
 
+
+
     /**
      * 获取subTranCode属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getSubTranCode() {
         return subTranCode;
     }
 
+
+
     /**
      * 设置subTranCode属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setSubTranCode(String value) {
         this.subTranCode = value;
     }
 
+
+
     /**
      * 获取tranMode属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getTranMode() {
         return tranMode;
     }
 
+
+
     /**
      * 设置tranMode属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setTranMode(String value) {
         this.tranMode = value;
     }
 
+
+
     /**
      * 获取tranSerialNo属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
+     * @return possible object is {@link String }
+     * 
      */
     public String getTranSerialNo() {
         return tranSerialNo;
     }
 
+
+
     /**
      * 设置tranSerialNo属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
+     *            allowed object is {@link String }
+     * 
      */
     public void setTranSerialNo(String value) {
         this.tranSerialNo = value;
     }
 
+
+
+    @Override
+    public String toString() {
+        return "ReqSvcHeaderType{" + "tranDate='" + tranDate + '\'' + ", tranTime='" + tranTime + '\''
+                + ", tranTellerNo='" + tranTellerNo + '\'' + ", tranSeqNo='" + tranSeqNo + '\'' + ", consumerId='"
+                + consumerId + '\'' + ", globalSeqNo='" + globalSeqNo + '\'' + ", sourceSysId='" + sourceSysId + '\''
+                + ", branchId='" + branchId + '\'' + ", terminalCode='" + terminalCode + '\'' + ", cityCode='"
+                + cityCode + '\'' + ", authrTellerNo='" + authrTellerNo + '\'' + ", authrPwd='" + authrPwd + '\''
+                + ", authrCardFlag='" + authrCardFlag + '\'' + ", authrCardNo='" + authrCardNo + '\'' + ", langCode='"
+                + langCode + '\'' + ", tranCode='" + tranCode + '\'' + ", pin='" + pin + '\'' + ", keyVersionNo='"
+                + keyVersionNo + '\'' + ", sysOffset1='" + sysOffset1 + '\'' + ", sysOffset2='" + sysOffset2 + '\''
+                + ", targetAdr='" + targetAdr + '\'' + ", sourceAdr='" + sourceAdr + '\'' + ", msgEndFlag='"
+                + msgEndFlag + '\'' + ", msgSeqNo='" + msgSeqNo + '\'' + ", subTranCode='" + subTranCode + '\''
+                + ", tranMode='" + tranMode + '\'' + ", tranSerialNo='" + tranSerialNo + '\'' + '}';
+    }
 }
diff --git a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqTranQryType.java b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqTranQryType.java
index 3144255..48002b7 100644
--- a/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqTranQryType.java
+++ b/cmci-pfcs-gateway/src/main/java/com/jttech/pfcs/vo/req/ReqTranQryType.java
@@ -5,12 +5,14 @@
 import javax.xml.bind.annotation.XmlAccessorType;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlType;
-
+import java.io.Serializable;
 
 /**
- * <p>ReqTranQryType complex type的 Java 类。
+ * <p>
+ * ReqTranQryType complex type的 Java 类。
  * 
- * <p>以下模式片段指定包含在此类中的预期内容。
+ * <p>
+ * 以下模式片段指定包含在此类中的预期内容。
  * 
  * <pre>
  * &lt;complexType name="ReqTranQryType"&gt;
@@ -47,70 +49,70 @@
  * 
  */
 @XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "ReqTranQryType", propOrder = {
-    "reqSvcHeader",
-    "svcBody"
-})
-public class ReqTranQryType {
+@XmlType(name = "ReqTranQryType", propOrder = { "reqSvcHeader", "svcBody" })
+public class ReqTranQryType implements Serializable {
+
+    private static final long        serialVersionUID = 1L;
 
     @XmlElement(name = "ReqSvcHeader", required = true)
-    protected ReqSvcHeaderType reqSvcHeader;
+    protected ReqSvcHeaderType       reqSvcHeader;
     @XmlElement(name = "SvcBody")
     protected ReqTranQryType.SvcBody svcBody;
 
     /**
      * 获取reqSvcHeader属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link ReqSvcHeaderType }
-     *     
+     * @return possible object is {@link ReqSvcHeaderType }
+     * 
      */
     public ReqSvcHeaderType getReqSvcHeader() {
         return reqSvcHeader;
     }
 
+
+
     /**
      * 设置reqSvcHeader属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link ReqSvcHeaderType }
-     *     
+     *            allowed object is {@link ReqSvcHeaderType }
+     * 
      */
     public void setReqSvcHeader(ReqSvcHeaderType value) {
         this.reqSvcHeader = value;
     }
 
+
+
     /**
      * 获取svcBody属性的值。
      * 
-     * @return
-     *     possible object is
-     *     {@link ReqTranQryType.SvcBody }
-     *     
+     * @return possible object is {@link ReqTranQryType.SvcBody }
+     * 
      */
     public ReqTranQryType.SvcBody getSvcBody() {
         return svcBody;
     }
 
+
+
     /**
      * 设置svcBody属性的值。
      * 
      * @param value
-     *     allowed object is
-     *     {@link ReqTranQryType.SvcBody }
-     *     
+     *            allowed object is {@link ReqTranQryType.SvcBody }
+     * 
      */
     public void setSvcBody(ReqTranQryType.SvcBody value) {
         this.svcBody = value;
     }
 
-
     /**
-     * <p>anonymous complex type的 Java 类。
+     * <p>
+     * anonymous complex type的 Java 类。
      * 
-     * <p>以下模式片段指定包含在此类中的预期内容。
+     * <p>
+     * 以下模式片段指定包含在此类中的预期内容。
      * 
      * <pre>
      * &lt;complexType&gt;
@@ -136,281 +138,289 @@
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
-    @XmlType(name = "", propOrder = {
-        "pdNo",
-        "bussType",
-        "mrchAcctNo",
-        "mrchName",
-        "rstChannelType",
-        "rqsDate",
-        "mrchSeqNo",
-        "hndlSeqNo",
-        "rsrvFldVal1",
-        "rsrvFldVal2"
-    })
-    public static class SvcBody {
+    @XmlType(name = "", propOrder = { "pdNo", "bussType", "mrchAcctNo", "mrchName", "rstChannelType", "rqsDate",
+            "mrchSeqNo", "hndlSeqNo", "rsrvFldVal1", "rsrvFldVal2" })
+    public static class SvcBody implements Serializable {
+
+        private static final long serialVersionUID = 1L;
 
         @XmlElement(name = "PdNo", required = true)
-        protected String pdNo;
+        protected String          pdNo;
         @XmlElement(name = "BussType")
-        protected String bussType;
+        protected String          bussType;
         @XmlElement(name = "MrchAcctNo", required = true)
-        protected String mrchAcctNo;
+        protected String          mrchAcctNo;
         @XmlElement(name = "MrchName")
-        protected String mrchName;
+        protected String          mrchName;
         @XmlElement(name = "RstChannelType", required = true)
-        protected String rstChannelType;
+        protected String          rstChannelType;
         @XmlElement(name = "RqsDate", required = true)
-        protected String rqsDate;
+        protected String          rqsDate;
         @XmlElement(name = "MrchSeqNo")
-        protected String mrchSeqNo;
+        protected String          mrchSeqNo;
         @XmlElement(name = "HndlSeqNo")
-        protected String hndlSeqNo;
+        protected String          hndlSeqNo;
         @XmlElement(name = "RsrvFldVal1")
-        protected String rsrvFldVal1;
+        protected String          rsrvFldVal1;
         @XmlElement(name = "RsrvFldVal2")
-        protected String rsrvFldVal2;
+        protected String          rsrvFldVal2;
 
         /**
          * 获取pdNo属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getPdNo() {
             return pdNo;
         }
 
+
+
         /**
          * 设置pdNo属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setPdNo(String value) {
             this.pdNo = value;
         }
 
+
+
         /**
          * 获取bussType属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getBussType() {
             return bussType;
         }
 
+
+
         /**
          * 设置bussType属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setBussType(String value) {
             this.bussType = value;
         }
 
+
+
         /**
          * 获取mrchAcctNo属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getMrchAcctNo() {
             return mrchAcctNo;
         }
 
+
+
         /**
          * 设置mrchAcctNo属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setMrchAcctNo(String value) {
             this.mrchAcctNo = value;
         }
 
+
+
         /**
          * 获取mrchName属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getMrchName() {
             return mrchName;
         }
 
+
+
         /**
          * 设置mrchName属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setMrchName(String value) {
             this.mrchName = value;
         }
 
+
+
         /**
          * 获取rstChannelType属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getRstChannelType() {
             return rstChannelType;
         }
 
+
+
         /**
          * 设置rstChannelType属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setRstChannelType(String value) {
             this.rstChannelType = value;
         }
 
+
+
         /**
          * 获取rqsDate属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getRqsDate() {
             return rqsDate;
         }
 
+
+
         /**
          * 设置rqsDate属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setRqsDate(String value) {
             this.rqsDate = value;
         }
 
+
+
         /**
          * 获取mrchSeqNo属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getMrchSeqNo() {
             return mrchSeqNo;
         }
 
+
+
         /**
          * 设置mrchSeqNo属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setMrchSeqNo(String value) {
             this.mrchSeqNo = value;
         }
 
+
+
         /**
          * 获取hndlSeqNo属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getHndlSeqNo() {
             return hndlSeqNo;
         }
 
+
+
         /**
          * 设置hndlSeqNo属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setHndlSeqNo(String value) {
             this.hndlSeqNo = value;
         }
 
+
+
         /**
          * 获取rsrvFldVal1属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getRsrvFldVal1() {
             return rsrvFldVal1;
         }
 
+
+
         /**
          * 设置rsrvFldVal1属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setRsrvFldVal1(String value) {
             this.rsrvFldVal1 = value;
         }
 
+
+
         /**
          * 获取rsrvFldVal2属性的值。
          * 
-         * @return
-         *     possible object is
-         *     {@link String }
-         *     
+         * @return possible object is {@link String }
+         * 
          */
         public String getRsrvFldVal2() {
             return rsrvFldVal2;
         }
 
+
+
         /**
          * 设置rsrvFldVal2属性的值。
          * 
          * @param value
-         *     allowed object is
-         *     {@link String }
-         *     
+         *            allowed object is {@link String }
+         * 
          */
         public void setRsrvFldVal2(String value) {
             this.rsrvFldVal2 = value;
         }
 
+        @Override
+        public String toString() {
+            return "SvcBody{" + "pdNo='" + pdNo + '\'' + ", bussType='" + bussType + '\'' + ", mrchAcctNo='"
+                    + mrchAcctNo + '\'' + ", mrchName='" + mrchName + '\'' + ", rstChannelType='" + rstChannelType
+                    + '\'' + ", rqsDate='" + rqsDate + '\'' + ", mrchSeqNo='" + mrchSeqNo + '\'' + ", hndlSeqNo='"
+                    + hndlSeqNo + '\'' + ", rsrvFldVal1='" + rsrvFldVal1 + '\'' + ", rsrvFldVal2='" + rsrvFldVal2 + '\''
+                    + '}';
+        }
     }
 
 }
diff --git a/cmci-pfcs-gateway/src/main/resources/application.properties b/cmci-pfcs-gateway/src/main/resources/application.properties
index d9f4f96..c255588 100644
--- a/cmci-pfcs-gateway/src/main/resources/application.properties
+++ b/cmci-pfcs-gateway/src/main/resources/application.properties
@@ -1,2 +1,4 @@
+spring.application.name=@pom.artifactId@
 server.port=8400
+server.servlet.context-path=/pf-api
 logging.config=classpath:logback.xml
\ No newline at end of file

--
Gitblit v1.8.0