diff --git a/Invoice/DOC/Java_allpay_InvoiceSDK.pdf b/Invoice/DOC/Java_allpay_InvoiceSDK.pdf
deleted file mode 100644
index 1811399..0000000
Binary files a/Invoice/DOC/Java_allpay_InvoiceSDK.pdf and /dev/null differ
diff --git a/Invoice/README.md b/Invoice/README.md
deleted file mode 100644
index b702006..0000000
--- a/Invoice/README.md
+++ /dev/null
@@ -1,33 +0,0 @@
-# 歐付寶 全方位(All In One)電子發票介接Java版
----
-
-## 1. 介紹
-
- - 歐付寶對於有開立電子發票需求的會員,提供完整的電子發票開立介接API,並有多種功能可選擇使用。 本套件為Java版,可使用開立發票,發送開立發票通知,查詢發票明細等應用。
- - 開立發票:
- - 一般開立發票
- - 延遲開立發票
- - 暫存開立發票
- - 開立發票折讓
- - 作廢發票
- - 作廢發票折讓
-
-
-## 2. 安裝環境
- - _jdk 1.6以上_
-
-
-## 3. 使用教學
- - 使用者文件放置於Doc資料夾內,可供參閱
- - [歐付寶開發者專區]有詳細的教學說明及文件,並有線上模擬範例
-
-
-## 4. 聯絡我們
- - 歐付寶技術客服信箱: techsupport@allpay.com.tw
-
-
-
-
-[//]: # (These are reference links used in the body of this note and get stripped out when the markdown processor does its job. There is no need to format nicely because it shouldn't be seen. Thanks SO - http://stackoverflow.com/questions/4823468/store-comments-in-markdown-syntax)
-
- [歐付寶開發者專區]:
\ No newline at end of file
diff --git a/Invoice/allpay/invoice/integration/AllInOne.java b/Invoice/allpay/invoice/integration/AllInOne.java
deleted file mode 100644
index 85b67dc..0000000
--- a/Invoice/allpay/invoice/integration/AllInOne.java
+++ /dev/null
@@ -1,384 +0,0 @@
-package allpay.invoice.integration;
-
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
-import org.apache.log4j.PropertyConfigurator;
-
-import allpay.invoice.integration.allpayOperator.AllpayFunction;
-import allpay.invoice.integration.domain.AllowanceInvalidObj;
-import allpay.invoice.integration.domain.AllowanceObj;
-import allpay.invoice.integration.domain.CheckLoveCodeObj;
-import allpay.invoice.integration.domain.CheckMobileBarCodeObj;
-import allpay.invoice.integration.domain.DelayIssueObj;
-import allpay.invoice.integration.domain.InvoiceNotifyObj;
-import allpay.invoice.integration.domain.IssueInvalidObj;
-import allpay.invoice.integration.domain.IssueObj;
-import allpay.invoice.integration.domain.QueryAllowanceInvalidObj;
-import allpay.invoice.integration.domain.QueryAllowanceObj;
-import allpay.invoice.integration.domain.QueryIssueInvalidObj;
-import allpay.invoice.integration.domain.QueryIssueObj;
-import allpay.invoice.integration.domain.TriggerIssueObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-import allpay.invoice.integration.verification.VerifyAllowance;
-import allpay.invoice.integration.verification.VerifyAllowanceInvalid;
-import allpay.invoice.integration.verification.VerifyCheckLoveCode;
-import allpay.invoice.integration.verification.VerifyCheckMobileBarCode;
-import allpay.invoice.integration.verification.VerifyDelayIssue;
-import allpay.invoice.integration.verification.VerifyInvoiceNotify;
-import allpay.invoice.integration.verification.VerifyIssue;
-import allpay.invoice.integration.verification.VerifyIssueInvalid;
-import allpay.invoice.integration.verification.VerifyQueryAllowance;
-import allpay.invoice.integration.verification.VerifyQueryAllowanceInvalid;
-import allpay.invoice.integration.verification.VerifyQueryIssue;
-import allpay.invoice.integration.verification.VerifyQueryIssueInvalid;
-import allpay.invoice.integration.verification.VerifyTriggerIssue;
-
-/**
- * 歐付寶電子發票全功能類別
- * @author mark.chiu
- *
- */
-public class AllInOne extends AllInOneBase{
- private final static Logger log = Logger.getLogger(AllInOne.class.getName());
-
- public AllInOne(String log4jPropertiesPath){
- super();
- if(log4jPropertiesPath.substring(log4jPropertiesPath.length()-1).equals("/"))
- PropertyConfigurator.configure(log4jPropertiesPath + "log4j.properties");
- else if(!log4jPropertiesPath.substring(log4jPropertiesPath.length()-1).equals("/")
- && log4jPropertiesPath.length() > 0)
- PropertyConfigurator.configure(log4jPropertiesPath + "/log4j.properties");
- else
- throw new AllpayException(ErrorMessage.LOG4J_PATH_ERROR);
- }
- public AllInOne(){
- super();
- Logger.getRootLogger().setLevel(Level.OFF);
- }
-
- public String issue(IssueObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("issue params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyIssue verify = new VerifyIssue();
- issueUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- obj.setCustomerName(AllpayFunction.urlEncode(obj.getCustomerName()));
- obj.setCustomerAddr(AllpayFunction.urlEncode(obj.getCustomerAddr()));
- obj.setCustomerEmail(AllpayFunction.urlEncode(obj.getCustomerEmail()));
- obj.setInvoiceRemark(AllpayFunction.urlEncode(obj.getInvoiceRemark()));
- obj.setItemName(AllpayFunction.urlEncode(obj.getItemName()));
- obj.setItemWord(AllpayFunction.urlEncode(obj.getItemWord()));
- obj.setItemRemark(AllpayFunction.urlEncode(obj.getItemRemark()));
- obj.setCarruerNum(obj.getCarruerNum().replaceAll("\\+", " "));
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("issue generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("issue post String: " + httpValue);
- result = AllpayFunction.httpPost(issueUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String delayIssue(DelayIssueObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("delayIssue params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyDelayIssue verify = new VerifyDelayIssue();
- delayIssueUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- obj.setCustomerName(AllpayFunction.urlEncode(obj.getCustomerName()));
- obj.setCustomerAddr(AllpayFunction.urlEncode(obj.getCustomerAddr()));
- obj.setCustomerEmail(AllpayFunction.urlEncode(obj.getCustomerEmail()));
- obj.setInvoiceRemark(AllpayFunction.urlEncode(obj.getInvoiceRemark()));
- obj.setItemName(AllpayFunction.urlEncode(obj.getItemName()));
- obj.setItemWord(AllpayFunction.urlEncode(obj.getItemWord()));
- obj.setCarruerNum(obj.getCarruerNum().replaceAll("\\+", " "));
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("delayIssue generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("delayIssue post String: " + httpValue);
- result = AllpayFunction.httpPost(delayIssueUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String triggerIssue(TriggerIssueObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("triggerIssue params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyTriggerIssue verify = new VerifyTriggerIssue();
- triggerIssueUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("triggerIssue generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("triggerIssue post String: " + httpValue);
- result = AllpayFunction.httpPost(triggerIssueUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String allowance(AllowanceObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("allowance params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyAllowance verify = new VerifyAllowance();
- allowanceUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- obj.setCustomerName(AllpayFunction.urlEncode(obj.getCustomerName()));
- obj.setNotifyMail(AllpayFunction.urlEncode(obj.getNotifyMail()));
- obj.setItemName(AllpayFunction.urlEncode(obj.getItemName()));
- obj.setItemWord(AllpayFunction.urlEncode(obj.getItemWord()));
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("allowance generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("allowance post String: " + httpValue);
- result = AllpayFunction.httpPost(allowanceUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String issueInvalid(IssueInvalidObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("issueInvalid params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyIssueInvalid verify = new VerifyIssueInvalid();
- issueInvalidUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- obj.setReason(AllpayFunction.urlEncode(obj.getReason()));
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("issueInvalid generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("issueInvalid post String: " + httpValue);
- result = AllpayFunction.httpPost(issueInvalidUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String allowanceInvalid(AllowanceInvalidObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("allowanceInvalid params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyAllowanceInvalid verify = new VerifyAllowanceInvalid();
- allowanceInvalidUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- obj.setReason(AllpayFunction.urlEncode(obj.getReason()));
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("allowanceInvalid generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("allowanceInvalid post String: " + httpValue);
- result = AllpayFunction.httpPost(allowanceInvalidUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String queryIssue(QueryIssueObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("queryIssue params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyQueryIssue verify = new VerifyQueryIssue();
- queryIssueUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("queryIssue generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("queryIssue post String: " + httpValue);
- result = AllpayFunction.httpPost(queryIssueUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String queryAllowance(QueryAllowanceObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("queryAllowance params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyQueryAllowance verify = new VerifyQueryAllowance();
- queryAllowanceUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("queryAllowance generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("queryAllowance post String: " + httpValue);
- result = AllpayFunction.httpPost(queryAllowanceUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String queryIssueInvalid(QueryIssueInvalidObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("queryIssueInvalid params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyQueryIssueInvalid verify = new VerifyQueryIssueInvalid();
- queryIssueInvalidUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("queryIssueInvalid generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("queryIssueInvalid post String: " + httpValue);
- result = AllpayFunction.httpPost(queryIssueInvalidUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String queryAllowanceInvalid(QueryAllowanceInvalidObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("queryAllowanceInvalid params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyQueryAllowanceInvalid verify = new VerifyQueryAllowanceInvalid();
- queryAllowanceInvalidUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("queryAllowanceInvalid generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("queryAllowanceInvalid post String: " + httpValue);
- result = AllpayFunction.httpPost(queryAllowanceInvalidUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String invoiceNotify(InvoiceNotifyObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("invoiceNotify params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyInvoiceNotify verify = new VerifyInvoiceNotify();
- invoiceNotifyUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- obj.setNotifyMail(AllpayFunction.urlEncode(obj.getNotifyMail()));
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("invoiceNotify generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("invoiceNotify post String: " + httpValue);
- result = AllpayFunction.httpPost(invoiceNotifyUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String checkMobileBarCode(CheckMobileBarCodeObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- if(obj.getBarCode().contains("+")){
- String tmp = obj.getBarCode().replaceAll("\\+", " ");
- obj.setBarCode(tmp);
- }
- log.info("checkMobileBarCode params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyCheckMobileBarCode verify = new VerifyCheckMobileBarCode();
- checkMobileBarCodeUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("checkMobileBarCode generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("checkMobileBarCode post String: " + httpValue);
- result = AllpayFunction.httpPost(checkMobileBarCodeUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-
- public String checkLoveCode(CheckLoveCodeObj obj){
- obj.setMerchantID(MerchantID);
- obj.setTimeStamp(AllpayFunction.genUnixTimeStamp());
- log.info("checkLoveCode params: " + obj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyCheckLoveCode verify = new VerifyCheckLoveCode();
- checkLoveCodeUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- CheckMacValue = AllpayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("checkLoveCode generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllpayFunction.genHttpValue(obj, CheckMacValue);
- log.info("checkLoveCode post String: " + httpValue);
- result = AllpayFunction.httpPost(checkLoveCodeUrl, httpValue, "UTF-8");
- } catch(AllpayException e){
- e.ShowExceptionMessage();
- log.error(e.getNewExceptionMessage());
- throw new AllpayException(e.getNewExceptionMessage());
- }
- return result;
- }
-}
diff --git a/Invoice/allpay/invoice/integration/AllInOneBase.java b/Invoice/allpay/invoice/integration/AllInOneBase.java
deleted file mode 100644
index 30ae482..0000000
--- a/Invoice/allpay/invoice/integration/AllInOneBase.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package allpay.invoice.integration;
-
-import java.io.UnsupportedEncodingException;
-import java.net.URLDecoder;
-
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.AllpayFunction;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class AllInOneBase {
- protected static String operatingMode;
- protected static String mercProfile;
- protected static String HashKey;
- protected static String HashIV;
- protected static String MerchantID;
- protected static String issueUrl;
- protected static String delayIssueUrl;
- protected static String triggerIssueUrl;
- protected static String allowanceUrl;
- protected static String issueInvalidUrl;
- protected static String allowanceInvalidUrl;
- protected static String queryIssueUrl;
- protected static String queryAllowanceUrl;
- protected static String queryIssueInvalidUrl;
- protected static String queryAllowanceInvalidUrl;
- protected static String invoiceNotifyUrl;
- protected static String checkMobileBarCodeUrl;
- protected static String checkLoveCodeUrl;
- public AllInOneBase(){
- try {
- Document doc;
-
- /* when using web project, please use the following code with try/catch wrapped*/
- ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
- String configPath = URLDecoder.decode(classLoader.getResource("/invoice_conf.xml").getPath(), "UTF-8");
- doc = AllpayFunction.xmlParser(configPath);
- /* when using testing code*/
-// String configPath = "./src/main/resources/invoice_conf.xml";
-// doc = AllpayFunction.xmlParser(configPath);
-
- doc.getDocumentElement().normalize();
- //OperatingMode
- Element ele = (Element)doc.getElementsByTagName("OperatingMode").item(0);
- operatingMode = ele.getTextContent();
- //MercProfile
- ele = (Element)doc.getElementsByTagName("MercProfile").item(0);
- mercProfile = ele.getTextContent();
- //MID, HashKey, HashIV
- NodeList nodeList = doc.getElementsByTagName("MInfo");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("name").equalsIgnoreCase(mercProfile)){
- MerchantID = ele.getElementsByTagName("MerchantID").item(0).getTextContent();
- HashKey = ele.getElementsByTagName("HashKey").item(0).getTextContent();
- HashIV = ele.getElementsByTagName("HashIV").item(0).getTextContent();
- }
- }
- if(HashKey == null){
- throw new AllpayException(ErrorMessage.MInfo_NOT_SETTING);
- }
- } catch (UnsupportedEncodingException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- }
-}
diff --git a/Invoice/allpay/invoice/integration/allpayOperator/AllpayFunction.java b/Invoice/allpay/invoice/integration/allpayOperator/AllpayFunction.java
deleted file mode 100644
index b5e55e9..0000000
--- a/Invoice/allpay/invoice/integration/allpayOperator/AllpayFunction.java
+++ /dev/null
@@ -1,321 +0,0 @@
-package allpay.invoice.integration.allpayOperator;
-
-import java.io.BufferedReader;
-import java.io.DataOutputStream;
-import java.io.InputStreamReader;
-import java.io.UnsupportedEncodingException;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.net.HttpURLConnection;
-import java.net.URL;
-import java.net.URLEncoder;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.security.cert.CertificateException;
-import java.security.cert.X509Certificate;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Date;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Set;
-import java.util.TreeSet;
-
-import javax.net.ssl.HttpsURLConnection;
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.TrustManager;
-import javax.net.ssl.X509TrustManager;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import org.w3c.dom.Document;
-
-import allpay.invoice.integration.config.AllpayConfig;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-/**
- * 共用函式類別
- * @author mark.chiu
- *
- */
-public class AllpayFunction {
- private final static char[] hexArray = "0123456789ABCDEF".toCharArray();
-
- /**
- * 產生檢查碼
- * @param key
- * @param iv
- * @param obj
- * @return
- */
- public final static String genCheckMacValue(String key, String iv, Object obj) {
- Class> cls = obj.getClass();
- List fieldNames = getSortedFieldNames(cls);
- String data = "";
- try{
- for(String name: fieldNames){
- if(name != "CheckMacValue" && name != "InvoiceRemark" && name != "ItemName" && name != "ItemWord" && name != "ItemRemark" && name != "Reason"){
- Method method = cls.getMethod("get"+name.substring(0, 1).toUpperCase()+name.substring(1), null);
- data = data + '&' + name + '=' + method.invoke(obj).toString();
- }
- }
- String urlEncode = urlEncode("HashKey=" + key + data + "&HashIV=" + iv).toLowerCase();
- urlEncode = netUrlEncode(urlEncode);
- return hash(urlEncode.getBytes(), "MD5");
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.GEN_CHECK_MAC_VALUE_FAIL);
- }
- }
-
- /**
- * 產生檢查碼
- * @param key
- * @param iv
- * @param Hashtable params
- * @return
- */
- public final static String genCheckMacValue(String key, String iv, Hashtable params){
- Set keySet = params.keySet();
- TreeSet treeSet = new TreeSet(String.CASE_INSENSITIVE_ORDER);
- treeSet.addAll(keySet);
- String name[] = treeSet.toArray(new String[treeSet.size()]);
- String paramStr = "";
- for(int i = 0; i < name.length; i++){
- if(!name[i].equals("CheckMacValue")){
- paramStr += "&" + name[i] + "=" + params.get(name[i]);
- }
- }
- String urlEncode = urlEncode("Hashkey=" + key + paramStr + "&HashIV=" + iv).toLowerCase();
- urlEncode = netUrlEncode(urlEncode);
- return hash(urlEncode.getBytes(), "MD5");
- }
-
- /**
- * 將物件的屬性與檢查碼組合成http的參數資料格式
- * @param obj
- * @param CheckMacValue
- * @return string
- */
- public final static String genHttpValue(Object obj, String CheckMacValue){
- Class> cls = obj.getClass();
- List fieldNames = getSortedFieldNames(cls);
- Method method;
- String result = "";
- for(int i = 0; i < fieldNames.size(); i++){
- try {
- method = cls.getMethod("get"+fieldNames.get(i).substring(0, 1).toUpperCase()+fieldNames.get(i).substring(1), null);
- fieldNames.set(i, fieldNames.get(i) + '=' + invokeMethod(method, obj));
- } catch (Exception e) {
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- result = result + fieldNames.get(i) + '&';
- }
- return result + "CheckMacValue=" + CheckMacValue;
- }
-
- /**
- * 將物件轉為Hashtable
- * @param obj
- * @return Hashtable
- */
- public final static HashtableobjToHashtable(Object obj) {
- Class> cls = obj.getClass();
- Hashtable resultDict = new Hashtable();
- List fieldNames = getSortedFieldNames(cls);
- for(int i = 0; i < fieldNames.size(); i++){
- Method method;
- try {
- method = cls.getMethod("get"+fieldNames.get(i).substring(0, 1).toUpperCase()+fieldNames.get(i).substring(1), null);
- resultDict.put(fieldNames.get(i), invokeMethod(method, obj));
- } catch (Exception e) {
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- }
- return resultDict;
- }
-
- private final static String invokeMethod(Method method, Object obj){
- try {
- return method.invoke(obj, null).toString();
- } catch (Exception e) {
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- }
-
- /**
- * client http post的功能
- * @param url
- * @param urlParameters
- * @return response string
- */
- public final static String httpPost(String url, String urlParameters, String encoding){
- try{
- URL obj = new URL(url);
- HttpURLConnection connection = null;
- if (obj.getProtocol().toLowerCase().equals("https")) {
- trustAllHosts();
- connection = (HttpsURLConnection) obj.openConnection();
- }
- else {
- connection = (HttpURLConnection) obj.openConnection();
- }
- connection.setRequestMethod("POST");
- connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.2171.71 Safari/537.36 EcPay JAVA API Version " + AllpayConfig.version);
- connection.setRequestProperty("Accept-Language", encoding);
- connection.setDoOutput(true);
- DataOutputStream wr = new DataOutputStream(connection.getOutputStream());
- wr.writeBytes(urlParameters);
- wr.flush();
- wr.close();
- BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream(), encoding));
- String inputLine;
- StringBuffer response = new StringBuffer();
- while ((inputLine = in.readLine()) != null) {
- response.append(inputLine);
- }
- in.close();
- return response.toString();
- } catch(Exception e){
- throw new AllpayException(e.getMessage());
- }
- }
-
- /**
- * 產生 Unix TimeStamp
- * @return TimeStamp
- */
- public final static String genUnixTimeStamp(){
- Date date = new Date();
- Integer timeStamp = (int)(date.getTime() / 1000);
- return timeStamp.toString();
- }
-
- public final static Document xmlParser(String uri) {
- try{
- DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
- factory.setValidating(false);
- factory.setIgnoringElementContentWhitespace(true);
- DocumentBuilder builder = factory.newDocumentBuilder();
- return builder.parse(uri);
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.CONF_FILE_ERROR);
- }
- }
-
- /**
- * https 處理
- */
- private static void trustAllHosts() {
-
- X509TrustManager easyTrustManager = new X509TrustManager() {
-
- public void checkClientTrusted(
- X509Certificate[] chain,
- String authType) throws CertificateException {
- // Oh, I am easy!
- }
-
- public void checkServerTrusted(
- X509Certificate[] chain,
- String authType) throws CertificateException {
- // Oh, I am easy!
- }
-
- public X509Certificate[] getAcceptedIssuers() {
- return null;
- }
-
- };
-
- // Create a trust manager that does not validate certificate chains
- TrustManager[] trustAllCerts = new TrustManager[] {easyTrustManager};
-
- // Install the all-trusting trust manager
- try {
- SSLContext sc = SSLContext.getInstance("TLS");
-
- sc.init(null, trustAllCerts, new java.security.SecureRandom());
-
- HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
-
- }
- catch (Exception e) {
- e.printStackTrace();
- }
-
- }
-
- /**
- * 針對物件內屬性的參數作排序
- * @param Class
- * @return List
- */
- private static List getSortedFieldNames(Class> cls){
- Field[] fields = cls.getDeclaredFields();
- List fieldNames = new ArrayList();
- for(Field field: fields){
- fieldNames.add(field.getName());
- }
- Collections.sort(fieldNames, String.CASE_INSENSITIVE_ORDER);
- return fieldNames;
- }
-
- /**
- * 將資料做 urlEncode編碼
- * @param data
- * @return url encoded string
- */
- public static String urlEncode(String data){
- String result = "";
- try {
- result = URLEncoder.encode(data, "UTF-8");
- } catch (UnsupportedEncodingException e) {
- }
- return result;
- }
-
- /**
- * 將做完的urlEncode字串做轉換符合 .NET語言的轉換規則
- * @param url
- * @return .Net url encoded string
- */
- private static String netUrlEncode(String url){
- String netUrlEncode = url.replaceAll("%21", "\\!").replaceAll("%28", "\\(").replaceAll("%29", "\\)");
- return netUrlEncode;
- }
-
- /**
- * 將 byte array 資料做 hash md5或 sha256 運算,並回傳 hex值的字串資料
- * @param data
- * @param isMD5
- * @return string
- */
- private final static String hash(byte data[], String mode){
- MessageDigest md = null;
- try{
- if(mode == "MD5"){
- md = MessageDigest.getInstance("MD5");
- }
- else if(mode == "SHA-256"){
- md = MessageDigest.getInstance("SHA-256");
- }
- } catch(NoSuchAlgorithmException e){
- }
- return bytesToHex(md.digest(data));
- }
-
- /**
- * 將 byte array 資料轉換成 hex字串值
- * @param bytes
- * @return string
- */
- private final static String bytesToHex(byte[] bytes) {
- char[] hexChars = new char[bytes.length * 2];
- for ( int j = 0; j < bytes.length; j++ ) {
- int v = bytes[j] & 0xFF;
- hexChars[j * 2] = hexArray[v >>> 4];
- hexChars[j * 2 + 1] = hexArray[v & 0x0F];
- }
- return new String(hexChars);
- }
-}
diff --git a/Invoice/allpay/invoice/integration/allpayOperator/InvoiceVerifyBase.java b/Invoice/allpay/invoice/integration/allpayOperator/InvoiceVerifyBase.java
deleted file mode 100644
index e72b31f..0000000
--- a/Invoice/allpay/invoice/integration/allpayOperator/InvoiceVerifyBase.java
+++ /dev/null
@@ -1,829 +0,0 @@
-package allpay.invoice.integration.allpayOperator;
-
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.domain.AllowanceObj;
-import allpay.invoice.integration.domain.DelayIssueObj;
-import allpay.invoice.integration.domain.InvoiceNotifyObj;
-import allpay.invoice.integration.domain.IssueObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class InvoiceVerifyBase {
- protected String confPath = "/allpay/invoice/integration/config/AllpayInvoice.xml";
- protected Document doc;
- public InvoiceVerifyBase(){
- URL fileURL = this.getClass().getResource(confPath);
- doc = AllpayFunction.xmlParser(fileURL.toString());
- doc.getDocumentElement().normalize();
- }
-
- protected void requireCheck(String FieldName, String objValue, String require){
- if(require.equals("1") && objValue.isEmpty())
- throw new AllpayException(FieldName+"為必填");
- }
-
- protected void valueCheck(String type, String objValue, Element ele){
- if(objValue.isEmpty())
- return;
- if(type.equals("String")){
- if(ele.getElementsByTagName("pattern") != null){
- Pattern r = Pattern.compile(ele.getElementsByTagName("pattern").item(0).getTextContent().toString());
- Matcher m = r.matcher(objValue);
- if(!m.find()){
- throw new AllpayException(ele.getAttribute("name")+ErrorMessage.COLUMN_RULE_ERROR);
- }
- }
- } else if(type.equals("Opt")){
- List opt = new ArrayList();
- NodeList n = ele.getElementsByTagName("option");
- for(int i=0; i < n.getLength(); i++){
- opt.add(n.item(i).getTextContent().toString());
- }
- if(!opt.contains(objValue)){
- throw new AllpayException(ele.getAttribute("name")+ErrorMessage.COLUMN_RULE_ERROR);
- }
- } else if(type.equals("Int")){
- String mode = ele.getElementsByTagName("mode").item(0).getTextContent();
- String minimum = ele.getElementsByTagName("minimal").item(0).getTextContent();
- String maximum = ele.getElementsByTagName("maximum").item(0).getTextContent();
- if(objValue.isEmpty()){
- throw new AllpayException(ele.getAttribute("name")+ErrorMessage.CANNOT_BE_EMPTY);
- }
- int value = Integer.valueOf(objValue);
- if(mode.equals("GE") && value < Integer.valueOf(minimum)){
- throw new AllpayException(ele.getAttribute("name")+"不能小於"+minimum);
- } else if(mode.equals("LE") && value > Integer.valueOf(maximum)){
- throw new AllpayException(ele.getAttribute("name")+"不能大於"+maximum);
- } else if(mode.equals("BETWEEN") && value < Integer.valueOf(minimum) && value > Integer.valueOf(maximum)){
- throw new AllpayException(ele.getAttribute("name")+"必須介於"+minimum+"和"+maximum+"之間");
- } else if(mode.equals("EXCLUDE") && value >= Integer.valueOf(minimum) && value <= Integer.valueOf(maximum)){
- throw new AllpayException(ele.getAttribute("name")+"必須小於"+minimum+"或大於"+maximum);
- }
- } else if(type.equals("DepOpt")){
- // TODO
- }
- }
-
- public void verifyIssue(IssueObj obj){
- String[] itemParamsList = new String[]{};
- String[] vatParamsList = new String[]{};
- double taxFee = 1.0;
- //1. 比對特殊欄位相依需求
- //a [CarruerType]為 1 => CustomerID 不能為空
- // [CustomerID]不為空 => CarruerType 不能為空
- if(obj.getCarruerType().equals("1")){
- if(obj.getCustomerID().isEmpty())
- throw new AllpayException("CustomerID cannot be empty when CarruerType is 1.");
- } else if(obj.getCarruerType().isEmpty()){
- if(!obj.getCustomerID().isEmpty())
- throw new AllpayException("CarruerType cannot be empty when CustomerID is not empty.");
- }
- //b 列印註記[Print]為 1 => CustomerName, CustomerAddr
- if(obj.getPrint().equals("1")){
- if(obj.getCustomerName().isEmpty() || obj.getCustomerAddr().isEmpty())
- throw new AllpayException("CustomerName and CustomerAddr cannot be empty when Print is 1.");
- if(!obj.getCustomerID().isEmpty())
- throw new AllpayException("Print cannot be 1 when CustomerID is not empty.");
- if(!obj.getCarruerType().isEmpty())
- throw new AllpayException("Print cannot be 1 when CarruerType is not empty.");
- if(!obj.getCarruerNum().isEmpty())
- throw new AllpayException("Print cannot be 1 when CarruerNum is not empty.");
- }
- //c CustomerPhone和CustomerEmail至少一個有值
- if(obj.getCustomerPhone().isEmpty() && obj.getCustomerEmail().isEmpty())
- throw new AllpayException("CustomerPhone and CustomerEmail cannot both be empty.");
- //d 別[TaxType]為 2 => ClearanceMark = 1 or 2,ItemTaxType 必須為空
- if(obj.getTaxType().equals("2")){
- if(!obj.getItemRemark().isEmpty())
- itemParamsList = new String[]{"ItemCount", "ItemWord", "ItemPrice", "ItemAmount", "ItemRemark"};
- else
- itemParamsList = new String[]{"ItemCount", "ItemWord", "ItemPrice", "ItemAmount"};
- vatParamsList = new String[]{"ItemCount", "ItemAmount"};
- if(!obj.getClearanceMark().equals("1") && !obj.getClearanceMark().equals("2"))
- throw new AllpayException("ClearanceMark has to be 1 or 2 when TaxType is 2.");
-// if(!obj.getItemTaxType().isEmpty())
-// throw new AllpayException("ItemTaxType must be empty when TaxType is 2.");
- //當[TaxType]為2時為零稅率,vat為0時商品單價為免稅,不須再加稅
- //若vat為1時商品單價為含稅,須再退稅
- if(obj.getVat().equals("0"))
- taxFee = 1;
- else if(obj.getVat().equals("1"))
- taxFee = 1.05;
- //d.1 [TaxType]為 1 => ItemTaxType, ClearanceMark 必須為空
- } else if(obj.getTaxType().equals("1")){
- if(!obj.getItemRemark().isEmpty())
- itemParamsList = new String[]{"ItemCount", "ItemWord", "ItemPrice", "ItemAmount", "ItemRemark"};
- else
- itemParamsList = new String[]{"ItemCount", "ItemWord", "ItemPrice", "ItemAmount"};
- vatParamsList = new String[]{"ItemCount", "ItemAmount"};
-// if(!obj.getItemTaxType().isEmpty())
-// throw new AllpayException("ItemTaxType must be empty when TaxType is 1.");
- if(!obj.getClearanceMark().isEmpty())
- throw new AllpayException("ClearanceMark must be empty when TaxType is 1.");
- //當[TaxType]為1時為應稅,vat為0時商品單價為免稅,須再加稅
- //若vat為1時商品單價為含稅,不須再加稅
- if(obj.getVat().equals("0"))
- taxFee = 1.05;
- else if(obj.getVat().equals("1"))
- taxFee = 1;
- //d.2 [TaxType]為 3 => ItemTaxType, ClearanceMark 必須為空
- } else if(obj.getTaxType().equals("3")){
- if(!obj.getItemRemark().isEmpty())
- itemParamsList = new String[]{"ItemCount", "ItemWord", "ItemPrice", "ItemAmount", "ItemRemark"};
- else
- itemParamsList = new String[]{"ItemCount", "ItemWord", "ItemPrice", "ItemAmount"};
- vatParamsList = new String[]{"ItemCount", "ItemAmount"};
-// if(!obj.getItemTaxType().isEmpty())
-// throw new AllpayException("ItemTaxType must be empty when TaxType is 3.");
- if(!obj.getClearanceMark().isEmpty())
- throw new AllpayException("ClearanceMark must be empty when TaxType is 3.");
- //當[TaxType]為3時為免稅,vat為0時商品單價為免稅,不須再加稅
- //若vat為1時商品單價為含稅,須再退稅
- if(obj.getVat().equals("0"))
- taxFee = 1;
- else if(obj.getVat().equals("1"))
- taxFee = 1.05;
- //d.3 [TaxType]為 9 => ItemTaxType 必須為兩項商品(含)以上,且不可為空
- } else if(obj.getTaxType().equals("9")){
- if(!obj.getItemRemark().isEmpty())
- itemParamsList = new String[]{"ItemCount", "ItemWord", "ItemPrice", "ItemAmount", "ItemRemark", "ItemTaxType"};
- else
- itemParamsList = new String[]{"ItemCount", "ItemWord", "ItemPrice", "ItemAmount", "ItemTaxType"};
- vatParamsList = new String[]{"ItemCount", "ItemAmount", "ItemTaxType"};
- if(!obj.getItemTaxType().contains("|"))
- throw new AllpayException("ItemTaxType must contain at least one |.");
- if(obj.getItemTaxType().isEmpty())
- throw new AllpayException("ItemTaxType cannot be empty when TaxType is 9.");
- //當[ItmeTaxType]含2選項的話[ClearanceMark]須為1或2
- if(obj.getItemTaxType().contains("2"))
- if(!obj.getClearanceMark().equals("1") && !obj.getClearanceMark().equals("2"))
- throw new AllpayException("ClearanceMark must be 1 or 2 when ItemTaxType contains 2.");
- }
- //e 統一編號[CustomerIdentifier]有值時 => CarruerType != 1 or 2 or 3, *Donation = 2, print = 1
- if(!obj.getCustomerIdentifier().isEmpty()){
- if(obj.getCarruerType().equals("1") || obj.getCarruerType().equals("2") || obj.getCarruerType().equals("3"))
- throw new AllpayException("CarruerType cannot be 1 or 2 or 3 when CustomerIdentifier is given");
- if(!obj.getDonation().equals("2") && !obj.getPrint().equals("1"))
- throw new AllpayException("Print must be 1 and Donation must be 2 when CustomerIdentifier is given");
- }
- //f [CarruerType]為'' or 1 時 => CarruerNum = '', [CarruerType]為 2, CarruerNum = 固定長度為 16 且格式為 2 碼大小寫字母加上 14 碼數字。 [CarruerType]為 3 ,帶固定長度為 8 且格式為 1 碼斜線「/」加上由 7 碼數字及大小寫字母組成
- if(obj.getCarruerType().isEmpty() || obj.getCarruerType().equals("1")){
- if(!obj.getCarruerNum().isEmpty())
- throw new AllpayException("CarruerNum must be empty when CarruerType is empty or 1.");
- } else if(obj.getCarruerType().equals("2")){
- if(!obj.getCustomerID().isEmpty())
- throw new AllpayException("CustomerID must be empty when CarruerType is 2.");
- Pattern r = Pattern.compile("[A-Za-z]{2}[0-9]{14}");
- Matcher CarrNum = r.matcher(obj.getCarruerNum());
- if(!CarrNum.find())
- throw new AllpayException("CarruerNum must contain 2 alphabets and 14 numbers when CarruerType is 2.");
- } else if(obj.getCarruerType().equals("3")){
- if(!obj.getCustomerID().isEmpty())
- throw new AllpayException("CustomerID must be empty when CarruerType is 3.");
- Pattern r = Pattern.compile("^\\/[A-Za-z0-9\\s+-]{7}$");
- Matcher CarrNum = r.matcher(obj.getCarruerNum());
- if(!CarrNum.find())
- throw new AllpayException("CarruerNum must start with / and followed by 7 characters containing alphabets and digits when CarruerType is 3.");
- } else{
- throw new AllpayException("Unexpected value in CarruerType.");
- }
- //g Donation = 1 => LoveCode不能為空, print = 0
- if(obj.getDonation().equals("1")){
- if(obj.getLoveCode().isEmpty())
- throw new AllpayException("LoveCode cannot be empty when Donation is 1.");
- if(!obj.getPrint().equals("0"))
- throw new AllpayException("Print must be 0 when Donation is 1.");
- } else if(obj.getDonation().equals("2"))
- if(!obj.getLoveCode().isEmpty())
- throw new AllpayException("LoveCode must be empty when Donation is 2.");
- //[vat]為0時 => ItemPrice = 未稅, ItemAmount = (ItemPrice * ItemCount) + (ItemPrice * ItemCount * tax(5%))
- //未稅加稅單一商品時直接四捨五入帶入ItemAmount,且ItemAmount等於SalesAmount
- //未稅加稅多樣商品時先算稅金加總帶入ItemAmount,且ItemAmount全部金額加總後帶入SalesAmount後四捨五入
- //商品價錢含有管線 => 認為是多樣商品 *ItemCount , *ItemPrice , *ItemAmount 逐一用管線分割,計算數量後與第一個比對
- if(obj.getVat().equals("0")){
- if(!obj.getItemPrice().contains("|")){
- if((int)(Float.parseFloat(obj.getItemAmount())+0.5f) != (int)Math.round(Integer.parseInt(obj.getItemPrice())*Integer.parseInt(obj.getItemCount())*taxFee))
- throw new AllpayException("ItemPrice * ItemCount + tax != ItemAmount");
- //驗證單筆商品合計是否等於發票金額
- if(Integer.parseInt(obj.getSalesAmount()) != (int)(Float.parseFloat(obj.getItemAmount())+0.5f))
- throw new AllpayException("ItemAmount is not equal to SalesAmount");
- } else if(obj.getItemPrice().contains("|")){
- int itemCount = obj.getItemPrice().split("\\|").length;
- int paramCount = 0;
- Pattern r = Pattern.compile("(\\|\\||^\\||\\|$)");
- Matcher itCount = r.matcher(obj.getItemCount());
- Matcher itAmount = r.matcher(obj.getItemAmount());
- // check if there's empty value.
- if(itCount.find())
- throw new AllpayException("ItemCount contains empty value.");
- else{
- paramCount = obj.getItemCount().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemCount("+paramCount+") not match item count from ItemPrice("+itemCount+")");
- }
- if(itAmount.find())
- throw new AllpayException("ItemAmount contains empty value.");
- else{
- paramCount = obj.getItemAmount().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemAmount("+paramCount+") not match item count from ItemPrice("+itemCount+")");
- }
- if(vatParamsList.length == 3){
- Matcher itTaxType = r.matcher(obj.getItemTaxType());
- if(itTaxType.find())
- throw new AllpayException("ItemTaxType contains empty value.");
- else{
- paramCount = obj.getItemTaxType().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemTaxType("+paramCount+")not match item count from ItemPrice("+itemCount+")");
- }
- }
- String[] amount = obj.getItemAmount().split("\\|");
- String[] price = obj.getItemPrice().split("\\|");
- String[] count = obj.getItemCount().split("\\|");
- for(int i = 0; i <= itemCount-1; i++){
- if(vatParamsList.length == 3){
- String[] itemTaxArr = obj.getItemTaxType().split("\\|");
- if(itemTaxArr[i].equals("1"))
- taxFee = 1.05;
- else if(itemTaxArr[i].equals("2") || itemTaxArr[i].equals("3"))
- taxFee = 1;
- else
- throw new AllpayException("ItemTaxType cannot be "+itemTaxArr[i]+". Available option: 1, 2, 3.");
- }
- if(Double.parseDouble(amount[i]) != Integer.parseInt(price[i])*Integer.parseInt(count[i])*taxFee)
- throw new AllpayException("ItemPrice * ItemCount + 5% tax != ItemAmount");
- //Verify ItemAmount subtotal equal SalesAmount
- Double tmp = 0.0;
- for(int j = 0; j <= itemCount-1; j++)
- tmp += Double.parseDouble(amount[j]);
- if(Integer.parseInt(obj.getSalesAmount()) != tmp.intValue())
- throw new AllpayException("ItemAmount subtotal is not equal to SalesAmount.");
- }
- }
- }
- // vat為1時 => ItemPrice = 含稅, ItemAmount = ItemPrice * ItemCount
- // 商品價錢含有管線 => 認為是多樣商品 *ItemCount , *ItemPrice , *ItemAmount 逐一用管線分割,計算數量後與第一個比對
- // 未稅扣稅單一商品時直接四捨五入帶入ItemAmount,且ItemAmount等於SalesAmount
- // 未稅扣稅多樣商品時先算稅金加總四捨五入後帶入ItemAmount,且ItemAmount全部金額加總後等於SalesAmount
- if(obj.getVat().equals("1")){
- if(!obj.getItemPrice().contains("|")){
- if(Integer.parseInt(obj.getItemAmount()) != (int)Math.round(Integer.parseInt(obj.getItemPrice())*Integer.parseInt(obj.getItemCount())/taxFee))
- throw new AllpayException("ItemPrice * ItemCount - tax != ItemAmount");
- // 驗證單筆商品合計是否等於發票金額
- if(Integer.parseInt(obj.getSalesAmount()) != Integer.parseInt(obj.getItemAmount()))
- throw new AllpayException("ItemAmount is not equal to SalesAmount");
- } else if(obj.getItemPrice().contains("|")){
- int itemCount = obj.getItemPrice().split("\\|").length;
- int paramCount = 0;
- Pattern r = Pattern.compile("(\\|\\||^\\||\\|$)");
- Matcher itCount = r.matcher(obj.getItemCount());
- Matcher itAmount = r.matcher(obj.getItemAmount());
- // check if there's empty value.
- if(itCount.find())
- throw new AllpayException("ItemCount contains empty value.");
- else{
- paramCount = obj.getItemCount().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemCount("+paramCount+") not match item count from ItemPrice("+itemCount+")");
- }
- if(itAmount.find())
- throw new AllpayException("ItemAmount contains empty value.");
- else{
- paramCount = obj.getItemAmount().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemAmount("+paramCount+") not match item count from ItemPrice("+itemCount+")");
- }
- if(vatParamsList.length == 3){
- Matcher itTaxType = r.matcher(obj.getItemTaxType());
- if(itTaxType.find())
- throw new AllpayException("ItemTaxType contains empty value.");
- else{
- paramCount = obj.getItemTaxType().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemTaxType("+paramCount+")not match item count from ItemPrice("+itemCount+")");
- }
- }
- String[] amount = obj.getItemAmount().split("\\|");
- String[] price = obj.getItemPrice().split("\\|");
- String[] count = obj.getItemCount().split("\\|");
- for(int i = 0; i <= itemCount-1; i++){
- if(vatParamsList.length == 3){
- String[] itemTaxArr = obj.getItemTaxType().split("\\|");
- if(itemTaxArr[i].equals("1"))
- taxFee = 1;
- else if(itemTaxArr[i].equals("2") || itemTaxArr[i].equals("3"))
- taxFee = 1.05;
- else
- throw new AllpayException("ItemTaxType cannot be "+itemTaxArr[i]+". Available option: 1, 2, 3.");
- }
- if(Double.parseDouble(amount[i]) != Integer.parseInt(price[i])*Integer.parseInt(count[i])/taxFee)
- throw new AllpayException("ItemPrice * ItemCount - 5% tax != ItemAmount");
- //Verify ItemAmount subtotal equal SalesAmount
- Double tmp = 0.0;
- for(int j = 0; j <= itemCount-1; j++)
- tmp += Double.parseDouble(amount[j]);
- if(Integer.parseInt(obj.getSalesAmount()) != tmp.intValue())
- throw new AllpayException("ItemAmount subtotal is not equal to SalesAmount.");
- }
- }
- }
- // 3. 比對商品名稱,數量,單位,價格,tax,合計,備註項目數量是否一致,欄位是否為空
- if(obj.getItemName().isEmpty() || obj.getItemWord().isEmpty())
- throw new AllpayException("ItemName or ItemWord cannot be empty.");
- // ItemTaxType and ItemRemark會因為TaxType and ItemRemark is not empty 新增至@item_params_list
- // 商品名稱含有管線 => 認為是多樣商品 *ItemName, *ItemCount ,*ItemWord, *ItemPrice, *ItemAmount, *ItemTaxType, *ItemRemark逐一用管線分割,計算數量後與第一個比對
- if(obj.getItemName().contains("|")){
- int itemCount = obj.getItemName().split("\\|").length;
- int paramCount = 0;
- Pattern r = Pattern.compile("(\\|\\||^\\||\\|$)");
- Matcher itCount = r.matcher(obj.getItemCount());
- Matcher itWord = r.matcher(obj.getItemWord());
- Matcher itPrice = r.matcher(obj.getItemPrice());
- Matcher itAmount = r.matcher(obj.getItemAmount());
- if(itCount.find())
- throw new AllpayException("ItemCount contains empty value.");
- else{
- paramCount = obj.getItemCount().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemCount("+paramCount+") not match item count from ItemName("+itemCount+")");
- }
- if(itWord.find())
- throw new AllpayException("ItemWord contains empty value.");
- else{
- paramCount = obj.getItemWord().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemWord("+paramCount+") not match item count from ItemName("+itemCount+")");
- }
- if(itPrice.find())
- throw new AllpayException("ItemPrice contains empty value.");
- else{
- paramCount = obj.getItemPrice().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemPrice("+paramCount+") not match item count from ItemName("+itemCount+")");
- }
- if(itAmount.find())
- throw new AllpayException("ItemAmount contains empty value.");
- else{
- paramCount = obj.getItemAmount().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemAmount("+paramCount+") not match item count from ItemName("+itemCount+")");
- }
- if(Arrays.asList(itemParamsList).contains("ItemRemark")){
- Matcher itRemark = r.matcher(obj.getItemRemark());
- if(itRemark.find())
- throw new AllpayException("ItemRemark contains empty value.");
- else{
- paramCount = obj.getItemRemark().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemRemark("+paramCount+") not match item count from ItemName("+itemCount+")");
- }
- }
- if(Arrays.asList(itemParamsList).contains("ItemTaxType")){
- Matcher itTaxType = r.matcher(obj.getItemTaxType());
- if(itTaxType.find())
- throw new AllpayException("ItemTaxType contains empty value.");
- else{
- paramCount = obj.getItemTaxType().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemTaxType("+paramCount+") not match item count from ItemName("+itemCount+")");
- }
- }
- // 課稅類別[TaxType] = 9 時 => ItemTaxType 能含有1,2 3(and at least contains one 1 and other)
- if(obj.getTaxType().equals("9")){
- String[] itemTax = obj.getItemTaxType().split("\\|");
- if(!Arrays.asList(itemTax).contains("1") && !Arrays.asList(itemTax).contains("2") && !Arrays.asList(itemTax).contains("3"))
- throw new AllpayException("Illegal ItemTaxType!");
- if(!Arrays.asList(itemTax).contains("1"))
- throw new AllpayException("ItemTaxType must contain at least one 1 when TaxType is 9.");
- if(!Arrays.asList(itemTax).contains("2") && !Arrays.asList(itemTax).contains("3"))
- throw new AllpayException("ItemTaxType cannot be all 1 when TaxType is 9.");
- if(Arrays.asList(itemTax).contains("2") && Arrays.asList(itemTax).contains("3"))
- throw new AllpayException("ItemTaxType cannot contain 2 and 3 at the same time.");
- }
- } else{
- // 沒有管線 => 逐一檢查@item_params_list的欄位有無管線
- if(obj.getItemCount().contains("|"))
- throw new AllpayException("ItemCount contains pipeline delimiter but there's only one item in param ItemName.");
- if(obj.getItemWord().contains("|"))
- throw new AllpayException("ItemWord contains pipeline delimiter but there's only one item in param ItemName.");
- if(obj.getItemPrice().contains("|"))
- throw new AllpayException("ItemPrice contains pipeline delimiter but there's only one item in param ItemName.");
- if(obj.getItemAmount().contains("|"))
- throw new AllpayException("ItemAmount contains pipeline delimiter but there's only one item in param ItemName.");
- if(Arrays.asList(itemParamsList).contains("ItemRemark"))
- if(obj.getItemRemark().contains("|"))
- throw new AllpayException("ItemRemark contains pipeline delimiter but there's only one item in param ItemName.");
- if(Arrays.asList(itemParamsList).contains("ItemTaxType"))
- if(obj.getItemTaxType().contains("|"))
- throw new AllpayException("ItemTaxType contains pipeline delimiter but there's only one item in param ItemName.");
- }
- }
-
- public void verifyDelayIssue(DelayIssueObj obj){
- String[] vatParamsList = new String[]{};
- double taxFee = 1.0;
- // 1. 比對特殊欄位值相依需求
- // a [CarruerType]為 1 => CustomerID 不能為空
- if(obj.getCarruerType().equals("1")){
- if(obj.getCustomerID().isEmpty())
- throw new AllpayException("CustomerID cannot be empty when CarruerType is 1.");
- // CustomerID不為空 => CarruerType 不能為空
- } else if(obj.getCarruerType().isEmpty()){
- if(!obj.getCustomerID().isEmpty())
- throw new AllpayException("CarruerType cannot be empty when CustomerID is not empty.");
- }
- // b 列印註記[Print]為 1 => CustomerName, CustomerAddr
- if(obj.getPrint().equals("1")){
- if(obj.getCustomerName().isEmpty() || obj.getCustomerAddr().isEmpty())
- throw new AllpayException("CustomeName and CustomeAddr cannot be empty when Print is 1.");
- if(!obj.getCustomerID().isEmpty())
- throw new AllpayException("Print cannot be 1 when CustomerID is not empty.");
- if(!obj.getCarruerType().isEmpty())
- throw new AllpayException("Print cannot be 1 when CarruerType is not empty.");
- if(!obj.getCarruerNum().isEmpty())
- throw new AllpayException("Print cannot be 1 when CarruerNum is not empty.");
- }
- // c CustomerPhone和CustomerEmail至少一個有值
- if(obj.getCustomerPhone().isEmpty() && obj.getCustomerEmail().isEmpty())
- throw new AllpayException("CustomerPhone and CustomerEmail cannot both be empty.");
- // d [TaxType]為 2 => ClearanceMark = 必須為 1 or 2,ItemTaxType 必須為空
- if(obj.getTaxType().equals("2")){
- taxFee = 1.05;
- vatParamsList = new String[]{"ItemCount", "ItemAmount"};
- if(!obj.getClearanceMark().equals("1") && !obj.getClearanceMark().equals("2"))
- throw new AllpayException("ClearanceMark must be 1 or 2 when TaxType is 2.");
-// if(!obj.getItemTaxType().isEmpty())
-// throw new AllpayException("ItemTaxType must be empty when TaxType is 2.");
- // d.1 [TaxType]為 1 => ItemTaxType, ClearanceMark 必須為空
- } else if(obj.getTaxType().equals("1")){
- taxFee = 1;
- vatParamsList = new String[]{"ItemCount", "ItemAmount"};
-// if(!obj.getItemTaxType().isEmpty())
-// throw new AllpayException("ItemTaxType must be empty when TaxType is 1.");
- if(!obj.getClearanceMark().isEmpty())
- throw new AllpayException("ClearanceMark must be empty when TaxType is 1.");
- // d.2 [TaxType]為 3 => ItemTaxType, ClearanceMark 必須為空
- } else if(obj.getTaxType().equals("3")){
- taxFee = 1.05;
- vatParamsList = new String[]{"ItemCount", "ItemAmount"};
-// if(!obj.getItemTaxType().isEmpty())
-// throw new AllpayException("ItemTaxType must be empty when TaxType is 3.");
- if(!obj.getClearanceMark().isEmpty())
- throw new AllpayException("ClearanceMark must be empty when TaxType is 3.");
- // d.3 [TaxType]為 9 => ItemTaxType 必須為兩項商品(含)以上,且不可為空
- } else if(obj.getTaxType().equals("9")){
- vatParamsList = new String[]{"ItemCount", "ItemAmount", "ItemTaxType"};
- if(!obj.getItemTaxType().contains("|"))
- throw new AllpayException("ItemTaxType must contain at least one |.");
- if(obj.getItemTaxType().isEmpty())
- throw new AllpayException("ItemTaxType cannot be empty when TaxType is 9.");
- }
- // e 統一編號[CustomerIdentifier]有值時 => CarruerType != 1 or 2, *Donation = 2, print = 1
- if(!obj.getCustomerIdentifier().isEmpty()){
- if(obj.getCarruerType().equals("1") || obj.getCarruerType().equals("2"))
- throw new AllpayException("CarruerType cannot be 1 or 2 when CustomerIdentifier is given.");
- if(!obj.getDonation().equals("2") || !obj.getPrint().equals("1"))
- throw new AllpayException("Print must be 1 and Donation must be 2 when CustomerIdentifier is given.");
- }
- // DelayFlag Rules When [DelayFlag] is '1' the [DelayDay] range be between 1 and 15
- // When [DelayFlag] is '2' the [DelayDay] range be between 0 and 15
- if(obj.getDelayFlag().equals("1")){
- if(Integer.parseInt(obj.getDelayDay()) > 15 || Integer.parseInt(obj.getDelayDay()) < 1)
- throw new AllpayException("DelayDay must be between 1 and 15 when DelayFlag is 1.");
- } else if(obj.getDelayFlag().equals("2")){
- if(Integer.parseInt(obj.getDelayDay()) > 15 || Integer.parseInt(obj.getDelayDay()) < 0)
- throw new AllpayException("DelayDay must be between 0 and 15 when DelayFlag is 2.");
- }
- // [CarruerType]為'' or 1 時 => CarruerNum = '', [CarruerType]為 2, CarruerNum = 固定長度為 16 且格式為 2 碼大小寫字母加上 14 碼數字。 [CarruerType]為 3 ,帶固定長度為 8 且格式為 1 碼斜線「/」加上由 7 碼數字及大小寫字母組成
- if(obj.getCarruerType().isEmpty() || obj.getCarruerType().equals("1")){
- if(!obj.getCarruerNum().isEmpty())
- throw new AllpayException("CarruerNum must be empty when CarruerType is empty or 1.");
- } else if(obj.getCarruerType().equals("2")){
- if(!obj.getCustomerID().isEmpty())
- throw new AllpayException("CustomerID must be empty when CarruerType is 2.");
- Pattern r = Pattern.compile("[A-Za-z]{2}[0-9]{14}");
- Matcher m = r.matcher(obj.getCarruerNum());
- if(!m.find())
- throw new AllpayException("CarruerNum must be 2 alphabets and 14 numbers when CarruerType is 2.");
- } else if(obj.getCarruerType().equals("3")){
- if(!obj.getCustomerID().isEmpty())
- throw new AllpayException("CustomerID must be empty when CarruerType is 2.");
- Pattern r = Pattern.compile("^\\/[A-Za-z0-9\\s+-]{7}$");
- Matcher m = r.matcher(obj.getCarruerNum());
- if(!m.find())
- throw new AllpayException("CarruerNum must start with / followed by 7 alphabet and number characters when CarruerType is 3.");
- } else{
- throw new AllpayException("Unexpected value in CarruerType.");
- }
- // Donation = 1 => LoveCode不能為空, print = 0
- if(obj.getDonation().equals("1")){
- if(obj.getLoveCode().isEmpty())
- throw new AllpayException("LoveCode cannot be empty when Donation is 1.");
- if(!obj.getPrint().equals("0"))
- throw new AllpayException("Print must be 0 when Donation is 1.");
- } else if(obj.getDonation().equals("2")){
- if(!obj.getLoveCode().isEmpty())
- throw new AllpayException("LoveCode must be empty when Donation is 2.");
- }
- // 商品價錢含有管線 => 認為是多樣商品 *ItemCount , *ItemPrice , *ItemAmount 逐一用管線分割,計算數量後與第一個比對
- if(!obj.getItemPrice().contains("|")){
- if((int)(Float.parseFloat(obj.getItemAmount())+0.5f) != (int)Math.round(Integer.parseInt(obj.getItemPrice())*Integer.parseInt(obj.getItemCount())/taxFee))
- throw new AllpayException("ItemPrice * ItemCount - tax != ItemAmount");
- // 驗證單筆商品合計是否等於發票金額
- if(Integer.parseInt(obj.getSalesAmount()) != ((int)(Float.parseFloat(obj.getItemAmount())+0.5f)))
- throw new AllpayException("ItemAmount is not equal to SalesAmount.");
- } else if(obj.getItemPrice().contains("|")){
- int itemCount = obj.getItemPrice().split("\\|").length;
- int paramCount = 0;
- Pattern r = Pattern.compile("(\\|\\||^\\||\\|$)");
- Matcher itCount = r.matcher(obj.getItemCount());
- Matcher itAmount = r.matcher(obj.getItemAmount());
- // check if there's empty value.
- if(itCount.find())
- throw new AllpayException("ItemCount contains empty value.");
- else{
- paramCount = obj.getItemCount().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemCount("+paramCount+") not match item count from ItemPrice("+itemCount+")");
- }
- if(itAmount.find())
- throw new AllpayException("ItemAmount contains empty value.");
- else{
- paramCount = obj.getItemAmount().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemAmount("+paramCount+") not match item count from ItemPrice("+itemCount+")");
- }
- if(vatParamsList.length == 3){
- Matcher itTaxType = r.matcher(obj.getItemTaxType());
- if(itTaxType.find())
- throw new AllpayException("ItemTaxType contains empty value.");
- else{
- paramCount = obj.getItemTaxType().split("\\|").length;
- if(paramCount != itemCount)
- throw new AllpayException("Count of item info ItemTaxType("+paramCount+")not match item count from ItemPrice("+itemCount+")");
- }
- }
- String[] amount = obj.getItemAmount().split("\\|");
- String[] price = obj.getItemPrice().split("\\|");
- String[] count = obj.getItemCount().split("\\|");
- for(int i = 0; i <= itemCount-1; i++){
- if(vatParamsList.length == 3){
- String[] itemTaxArr = obj.getItemTaxType().split("\\|");
- if(itemTaxArr[i].equals("1"))
- taxFee = 1;
- else if(itemTaxArr[i].equals("2") || itemTaxArr[i].equals("3"))
- taxFee = 1.05;
- else
- throw new AllpayException("ItemTaxType cannot be "+itemTaxArr[i]+". Available option: 1, 2, 3.");
- }
- if((int)(Float.parseFloat(amount[i])+0.5f) != (int)(Integer.parseInt(price[i])*Integer.parseInt(count[i])/taxFee+0.5f))
- throw new AllpayException("ItemPrice * ItemCount - 5% tax != ItemAmount");
- //Verify ItemAmount subtotal equal SalesAmount
- Float tmp = 0.0f;
- for(int j = 0; j <= itemCount-1; j++)
- tmp += Float.parseFloat(amount[j]);
- if(Integer.parseInt(obj.getSalesAmount()) != (int)(tmp+0.5f))
- throw new AllpayException("ItemAmount subtotal is not equal to SalesAmount.");
- }
- }
- // 3. 比對商品名稱,數量,單位,價格,tax,合計,備註項目數量是否一致,欄位是否為空
- if(obj.getItemName().isEmpty() || obj.getItemWord().isEmpty()){
- throw new AllpayException("ItemName or ItemWord cannot be empty.");
- }
- // 商品名稱含有管線 => 認為是多樣商品 *ItemName, *ItemCount ,*ItemWord, *ItemPrice, *ItemAmount逐一用管線分割,計算數量後與第一個比對
- if(obj.getItemName().contains("|")){
- int itemName = obj.getItemName().split("\\|").length;
- int paramCount = 0;
- Pattern r = Pattern.compile("(\\|\\||^\\||\\|$)");
- Matcher itCount = r.matcher(obj.getItemCount());
- Matcher itWord = r.matcher(obj.getItemWord());
- Matcher itPrice = r.matcher(obj.getItemPrice());
- Matcher itAmount = r.matcher(obj.getItemAmount());
- // check if there's empty value.
- if(itCount.find())
- throw new AllpayException("ItemCount contains empty value.");
- else{
- paramCount = obj.getItemCount().split("\\|").length;
- if(paramCount != itemName)
- throw new AllpayException("Count of item info ItemCount("+paramCount+") not match item count from ItemName("+itemName+")");
- }
- if(itWord.find())
- throw new AllpayException("ItemWord contains empty value.");
- else{
- paramCount = obj.getItemWord().split("\\|").length;
- if(paramCount != itemName)
- throw new AllpayException("Count of item info ItemWord("+paramCount+") not match item count from ItemName("+itemName+")");
- }
- if(itPrice.find())
- throw new AllpayException("ItemPrice contains empty value.");
- else{
- paramCount = obj.getItemPrice().split("\\|").length;
- if(paramCount != itemName)
- throw new AllpayException("Count of item info ItemPrice("+paramCount+") not match item count from ItemName("+itemName+")");
- }
- if(itAmount.find())
- throw new AllpayException("ItemAmount contains empty value.");
- else{
- paramCount = obj.getItemAmount().split("\\|").length;
- if(paramCount != itemName)
- throw new AllpayException("Count of item info ItemAmount("+paramCount+") not match item count from ItemName("+itemName+")");
- }
- // 課稅類別[TaxType] = 9 時 => ItemTaxType 能含有1,2 3(and at least contains one 1 and other)
- if(obj.getTaxType().equals("9")){
- String[] itemTax = obj.getItemTaxType().split("\\|");
- if(!Arrays.asList(itemTax).contains("1") && !Arrays.asList(itemTax).contains("2") && !Arrays.asList(itemTax).contains("3"))
- throw new AllpayException("Illegal ItemTaxType!");
- if(!Arrays.asList(itemTax).contains("1"))
- throw new AllpayException("ItemTaxType must contain at least one 1 when TaxType is 9.");
- if(!Arrays.asList(itemTax).contains("2") && !Arrays.asList(itemTax).contains("3"))
- throw new AllpayException("ItemTaxType cannot be all 1 when TaxType is 9.");
- if(Arrays.asList(itemTax).contains("2") && Arrays.asList(itemTax).contains("3"))
- throw new AllpayException("ItemTaxType cannot contain 2 and 3 at the same time.");
- }
- } else{
- // 沒有管線 => 逐一檢查有無管線
- if(obj.getItemCount().contains("|"))
- throw new AllpayException("ItemCount contains pipeline delimiter but there's only one item in param ItemName.");
- if(obj.getItemWord().contains("|"))
- throw new AllpayException("ItemWord contains pipeline delimiter but there's only one item in param ItemName.");
- if(obj.getItemPrice().contains("|"))
- throw new AllpayException("ItemPrice contains pipeline delimiter but there's only one item in param ItemName.");
- if(obj.getItemAmount().contains("|"))
- throw new AllpayException("ItemAmount contains pipeline delimiter but there's only one item in param ItemName.");
- }
- }
-
- public void verifyAllowance(AllowanceObj obj){
- // 比對特殊欄位值相依需求
- // NotifyPhone和NotifyMail至少一個有值
- if(obj.getAllowanceNotify().equals("S")){
- if(obj.getNotifyPhone().isEmpty())
- throw new AllpayException("NotifyPhone cannot be empty when AllowanceNotify is S.");
- } else if(obj.getAllowanceNotify().equals("E")){
- if(obj.getNotifyMail().isEmpty())
- throw new AllpayException("NotifyEmail cannot be empty when AllowanceNotify is E.");
- } else if(obj.getAllowanceNotify().equals("A")){
- if(obj.getNotifyPhone().isEmpty() || obj.getNotifyMail().isEmpty())
- throw new AllpayException("NotifyPhone and NotifyMail cannot be empty.");
- }
- // 商品價錢含有管線 => 認為是多樣商品 *ItemCount , *ItemPrice , *ItemAmount 逐一用管線分割,計算數量後與第一個比對
- // 驗證單筆ItemAmount = (ItemPrice * ItemCount)
- if(!obj.getItemPrice().contains("|")){
- if(Integer.parseInt(obj.getItemAmount()) != Integer.parseInt(obj.getItemPrice()) * Integer.parseInt(obj.getItemCount()))
- throw new AllpayException("ItemPrice * ItemCount != ItemAmount.");
- // 驗證單筆商品合計是否等於發票金額
- if(Integer.parseInt(obj.getAllowanceAmount()) != Integer.parseInt(obj.getItemAmount()))
- throw new AllpayException("ItemAmount is not equal to AllowanceAmount.");
- } else if(obj.getItemPrice().contains("|")){
- int itemPrice = obj.getItemPrice().split("\\|").length;
- int paramCount = 0;
- Pattern r = Pattern.compile("(\\|\\||^\\||\\|$)");
- Matcher itCount = r.matcher(obj.getItemCount());
- Matcher itAmount = r.matcher(obj.getItemAmount());
- // check if there's empty value.
- if(itCount.find())
- throw new AllpayException("ItemCount contains empty value.");
- else{
- paramCount = obj.getItemCount().split("\\|").length;
- if(paramCount != itemPrice)
- throw new AllpayException("Count of item info ItemCount("+paramCount+") not match item count from ItemPrice("+itemPrice+")");
- }
- if(itAmount.find())
- throw new AllpayException("ItemAmount contains empty value.");
- else{
- paramCount = obj.getItemAmount().split("\\|").length;
- if(paramCount != itemPrice)
- throw new AllpayException("Count of item info ItemAmount("+paramCount+") not match item count from ItemPrice("+itemPrice+")");
- }
- String[] amount = obj.getItemAmount().split("\\|");
- String[] price = obj.getItemPrice().split("\\|");
- String[] count = obj.getItemCount().split("\\|");
- for(int i = 0; i <= itemPrice-1; i++){
- if(Integer.parseInt(amount[i]) != Integer.parseInt(price[i])*Integer.parseInt(count[i]))
- throw new AllpayException("ItemPrice * ItemCount != ItemAmount");
- // Verify ItemAmount subtotal equal SalesAmount
- int itemPriceSum = 0;
- for(int j = 0; j <= itemPrice-1; j++)
- itemPriceSum += Integer.parseInt(amount[j]);
- if(Integer.parseInt(obj.getAllowanceAmount()) != itemPriceSum)
- throw new AllpayException("ItemAmount subtotal is not equal to AllowanceAmount.");
- }
- }
- // 比對商品名稱,數量,單位,價格,tax,合計,備註項目數量是否一致,欄位是否為空
- if(obj.getItemName().isEmpty() || obj.getItemWord().isEmpty())
- throw new AllpayException("ItemName or ItemWord cannot be empty.");
- // 商品名稱含有管線 => 認為是多樣商品 *ItemName, *ItemCount ,*ItemWord, *ItemPrice, *ItemAmount逐一用管線分割,計算數量後與第一個比對
- if(obj.getItemName().contains("|")){
- int itemName = obj.getItemName().split("\\|").length;
- int paramCount = 0;
- Pattern r = Pattern.compile("(\\|\\||^\\||\\|$)");
- Matcher itCount = r.matcher(obj.getItemCount());
- Matcher itWord = r.matcher(obj.getItemWord());
- Matcher itPrice = r.matcher(obj.getItemPrice());
- Matcher itAmount = r.matcher(obj.getItemAmount());
- // check if there's empty value.
- if(itCount.find())
- throw new AllpayException("ItemCount contains empty value.");
- else{
- paramCount = obj.getItemCount().split("\\|").length;
- if(paramCount != itemName)
- throw new AllpayException("Count of item info ItemCount("+paramCount+") not match item count from ItemName("+itemName+")");
- }
- if(itWord.find())
- throw new AllpayException("ItemWord contains empty value.");
- else{
- paramCount = obj.getItemWord().split("\\|").length;
- if(paramCount != itemName)
- throw new AllpayException("Count of item info ItemWord("+paramCount+") not match item count from ItemName("+itemName+")");
- }
- if(itPrice.find())
- throw new AllpayException("ItemPrice contains empty value.");
- else{
- paramCount = obj.getItemPrice().split("\\|").length;
- if(paramCount != itemName)
- throw new AllpayException("Count of item info ItemPrice("+paramCount+") not match item count from ItemName("+itemName+")");
- }
- if(itAmount.find())
- throw new AllpayException("ItemAmount contains empty value.");
- else{
- paramCount = obj.getItemAmount().split("\\|").length;
- if(paramCount != itemName)
- throw new AllpayException("Count of item info ItemAmount("+paramCount+") not match item count from ItemName("+itemName+")");
- }
- // ItemTaxType 能含有1, 3
- if(!obj.getItemTaxType().equals("")){
- String[] itemTax = obj.getItemTaxType().split("\\|");
- if(itemTax.length > 0){
- for(int i = 0; i < itemTax.length; i++){
- if(!itemTax[i].equals("1") && !itemTax[i].equals("3")){
- throw new AllpayException("Illegal ItemTaxType!");
- }
- }
- }
- }
- }else{
- // 沒有管線 => 逐一檢查有無管線
- if(obj.getItemCount().contains("|"))
- throw new AllpayException("ItemCount contains pipeline delimiter but there's only one item in param ItemName.");
- if(obj.getItemWord().contains("|"))
- throw new AllpayException("ItemWord contains pipeline delimiter but there's only one item in param ItemName.");
- if(obj.getItemPrice().contains("|"))
- throw new AllpayException("ItemPrice contains pipeline delimiter but there's only one item in param ItemName.");
- if(obj.getItemAmount().contains("|"))
- throw new AllpayException("ItemAmount contains pipeline delimiter but there's only one item in param ItemName.");
- }
- }
-
- public void verifyNotify(InvoiceNotifyObj obj){
- // 比對特殊欄位值相依需求
- // a Phone和NotifyMail至少一個有值
- if(obj.getPhone().isEmpty() && obj.getNotifyMail().isEmpty())
- throw new AllpayException("Phone and NotifyMail cannot both be empty.");
- // b [Notify] is S [Phone] can not be empty or [Notify] is E [NotifyMail] can not be empty
- // If [Notify] is A [Phone] and [NotifyMail] can not both be empty
- if(obj.getNotify().equals("S")){
- if(obj.getPhone().isEmpty())
- throw new AllpayException("Phone cannot be empty when Notify is S.");
- } else if(obj.getNotify().equals("E")){
- if(obj.getNotifyMail().isEmpty())
- throw new AllpayException("NotifyMail cannot be empty when Notify is E.");
- } else if(obj.getNotify().equals("A")){
- if(obj.getPhone().isEmpty() || obj.getNotifyMail().isEmpty())
- throw new AllpayException("Phone and NotifyMail cannot be empty when Notify is A.");
- } else{
- throw new AllpayException("Unexpected value in Notify.");
- }
- // c [InvoiceTag] is I,II,A,AI,AW [InvoiceNo] can not be empty or [InvoiceTag] is A,AI [AllowanceNo] can not be empty
- if(obj.getInvoiceTag().equals("I") || obj.getInvoiceTag().equals("II") || obj.getInvoiceTag().equals("AW")){
- if(obj.getInvoiceNo().isEmpty())
- throw new AllpayException("InvoiceNo cannot be empty when InvoiceTag is I, II or AW.");
- } else if(obj.getInvoiceTag().equals("A") || obj.getInvoiceTag().equals("AI")){
- Pattern r = Pattern.compile("^\\d{16}$");
- Matcher AllowanceNo = r.matcher(obj.getAllowanceNo());
- if(!AllowanceNo.find())
- throw new AllpayException("AllowanceNo must followed by 16 number characters when InvoiceTag is A or AI.");
- if(obj.getInvoiceNo().isEmpty()){
- if(obj.getAllowanceNo().isEmpty())
- throw new AllpayException("InvoiceNo and AllowanceNo cannot be empty when Notify is A or AI.");
- throw new AllpayException("InvoiceNo cannot be empty.");
- }
- if(!obj.getInvoiceNo().isEmpty()){
- if(obj.getAllowanceNo().isEmpty())
- throw new AllpayException("AllowanceNo cannot be empty.");
- }
- } else{
- throw new AllpayException("Unexpected value in InvoiceTag.");
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/config/AllpayConfig.java b/Invoice/allpay/invoice/integration/config/AllpayConfig.java
deleted file mode 100644
index 80b27bc..0000000
--- a/Invoice/allpay/invoice/integration/config/AllpayConfig.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package allpay.invoice.integration.config;
-
-public class AllpayConfig {
- public final static String version = "2.0.0";
-}
diff --git a/Invoice/allpay/invoice/integration/config/AllpayInvoice.xml b/Invoice/allpay/invoice/integration/config/AllpayInvoice.xml
deleted file mode 100644
index 3f991c2..0000000
--- a/Invoice/allpay/invoice/integration/config/AllpayInvoice.xml
+++ /dev/null
@@ -1,567 +0,0 @@
-
-
-
-
- https://einvoice.allpay.com.tw/Invoice/Issue
- https://einvoice-stage.allpay.com.tw/Invoice/Issue
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^.{1,30}$
-
-
- ^([\w_]{1,20}|)$
-
-
- ^(\d{8}|)$
-
-
- ^.{0,20}$
-
-
- ^.{0,200}$
-
-
- ^(\d{10,20}|)$
-
-
- ^.{0,200}$
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ^([Xx]\d{2,6}|\d{3,7}|)$
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- GE
-
- 1
-
-
- ^.{0,4096}$
-
-
- ^.{0,4096}$
-
-
- ^[\d\|]{0,4096}$
-
-
- ^.{0,4096}$
-
-
- ^[\d\|]{0,4096}$
-
-
- ^([1-3\|]{0,4096}|)$
-
-
- ^[\d\|]{0,4096}$
-
-
- ^.{0,4096}$
-
-
-
-
-
-
-
-
-
-
-
-
-
- https://einvoice.allpay.com.tw/Invoice/DelayIssue
- https://einvoice-stage.allpay.com.tw/Invoice/DelayIssue
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^.{1,30}$
-
-
- ^([\w_]{1,20}|)$
-
-
- ^(\d{8}|)$
-
-
- ^.{0,20}$
-
-
- ^.{0,200}$
-
-
- ^(\d{10,20}|)$
-
-
- ^.{0,200}$
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ^([Xx]\d{2,6}|\d{3,7}|)$
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- GE
-
- 1
-
-
- ^.{0,4096}$
-
-
- ^.{0,4096}$$
-
-
- ^[\d\|]{0,4096}$
-
-
- ^.{0,4096}$
-
-
- ^[\d\|]{0,4096}$
-
-
- ^.{0,4096}$
-
-
- ^[\d\|]{0,4096}$
-
-
-
-
-
-
-
-
-
-
- ^\d{1,15}$
-
-
- ^.{1,30}$
-
-
- ^[3]$
-
-
- ^ALLPAY$
-
-
- ^.{0,200}$
-
-
-
-
-
- https://einvoice.allpay.com.tw/Invoice/TriggerIssue
- https://einvoice-stage.allpay.com.tw/Invoice/TriggerIssue
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^.{1,30}$
-
-
- ^[3]$
-
-
-
-
-
- https://einvoice.allpay.com.tw/Invoice/Allowance
- https://einvoice-stage.allpay.com.tw/Invoice/Allowance
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^[A-Z]{2}\d{8}$
-
-
-
-
-
-
-
-
- ^.{0,20}$
-
-
- ^.{0,100}$
-
-
- ^(\d{10,20}|)$
-
-
- GE
-
- 1
-
-
- ^.{0,4096}$
-
-
- ^[\d\|]{0,4096}$
-
-
- ^.{0,4096}$
-
-
- ^[\d\|]{0,4096}$
-
-
- ^.{0,4096}$$
-
-
- ^[\d\|]{0,4096}$
-
-
-
-
-
- https://einvoice.allpay.com.tw/Invoice/IssueInvalid
- https://einvoice-stage.allpay.com.tw/Invoice/IssueInvalid
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^[A-Z]{2}\d{8}$
-
-
- ^.{0,4096}$
-
-
-
-
-
- https://einvoice.allpay.com.tw/Invoice/AllowanceInvalid
- https://einvoice-stage.allpay.com.tw/Invoice/AllowanceInvalid
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^[A-Z]{2}\d{8}$
-
-
- ^\d{16}$
-
-
- ^.{0,4096}$
-
-
-
-
-
- https://einvoice.allpay.com.tw/Query/Issue
- https://einvoice-stage.allpay.com.tw/Query/Issue
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^.{0,30}$
-
-
-
-
-
- https://einvoice.allpay.com.tw/Query/Allowance
- https://einvoice-stage.allpay.com.tw/Query/Allowance
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^[A-Z]{2}\d{8}$
-
-
- ^\d{16}$
-
-
-
-
-
- https://einvoice.allpay.com.tw/Query/IssueInvalid
- https://einvoice-stage.allpay.com.tw/Query/IssueInvalid
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^.{0,30}$
-
-
-
-
-
- https://einvoice.allpay.com.tw/Query/AllowanceInvalid
- https://einvoice-stage.allpay.com.tw/Query/AllowanceInvalid
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^[A-Z]{2}\d{8}$
-
-
- ^\d{16}$
-
-
-
-
-
- https://einvoice.allpay.com.tw/Query/CheckMobileBarCode
- https://einvoice-stage.allpay.com.tw/Query/CheckMobileBarCode
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^\/[A-Za-z0-9\ \-\+]{7}$
-
-
-
-
-
- https://einvoice.allpay.com.tw/Query/CheckLoveCode
- https://einvoice-stage.allpay.com.tw/Query/CheckLoveCode
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^([Xx]\d{2,6}|\d{3,7})$
-
-
-
-
-
- https://einvoice.allpay.com.tw/Notify/InvoiceNotify
- https://einvoice-stage.allpay.com.tw/Notify/InvoiceNotify
-
-
-
-
-
-
-
-
-
- ^\d{10}$
-
-
- ^\d{7,10}$
-
-
- ^[A-Z]{2}\d{8}$
-
-
-
-
-
- ^(\d{10,20}|)$
-
-
- ^.{0,80}$
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Invoice/allpay/invoice/integration/domain/AllowanceInvalidObj.java b/Invoice/allpay/invoice/integration/domain/AllowanceInvalidObj.java
deleted file mode 100644
index 3275e35..0000000
--- a/Invoice/allpay/invoice/integration/domain/AllowanceInvalidObj.java
+++ /dev/null
@@ -1,117 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 作廢折讓物件
- * @author mark.chiu
- *
- */
-public class AllowanceInvalidObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantId
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * InvoiceNo
- * 發票號碼,長度固定為10碼
- */
- private String InvoiceNo = "";
-
- /**
- * AllowanceNo
- * 折讓號號,長度固定為16碼
- */
- private String AllowanceNo = "";
-
- /**
- * Reason
- * 作廢原因
- */
- private String Reason = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantId
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得InvoiceNo 發票號碼,長度固定為10碼
- * @return InvoiceNo
- */
- public String getInvoiceNo() {
- return InvoiceNo;
- }
- /**
- * 設定InvoiceNo 發票號碼,長度固定為10碼
- * @param invoiceNo
- */
- public void setInvoiceNo(String invoiceNo) {
- InvoiceNo = invoiceNo;
- }
- /**
- * 取得AllowanceNo 折讓號號,長度固定為16碼
- * @return AllowanceNo
- */
- public String getAllowanceNo() {
- return AllowanceNo;
- }
- /**
- * 設定AllowanceNo 折讓號號,長度固定為16碼
- * @param allowanceNo
- */
- public void setAllowanceNo(String allowanceNo) {
- AllowanceNo = allowanceNo;
- }
- /**
- * 取得Reason 作廢原因
- * @return Reason
- */
- public String getReason() {
- return Reason;
- }
- /**
- * 設定Reason 作廢原因
- * @param reason
- */
- public void setReason(String reason) {
- Reason = reason;
- }
- @Override
- public String toString() {
- return "AllowanceInvalidObj [TimeStamp=" + TimeStamp + ", MerchantId=" + MerchantID + ", InvoiceNo=" + InvoiceNo
- + ", AllowanceNo=" + AllowanceNo + ", Reason=" + Reason + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/AllowanceObj.java b/Invoice/allpay/invoice/integration/domain/AllowanceObj.java
deleted file mode 100644
index 86c4541..0000000
--- a/Invoice/allpay/invoice/integration/domain/AllowanceObj.java
+++ /dev/null
@@ -1,300 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 開立折讓物件
- * @author mark.chiu
- *
- */
-public class AllowanceObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * InvoiceNo
- * 發票號碼,長度固定為10碼
- */
- private String InvoiceNo = "";
-
- /**
- * AllowanceNotify
- * 通知類別 S:簡訊 E:電子郵件 A:皆通知時 N:皆不通知
- */
- private String AllowanceNotify = "";
-
- /**
- * CustomerName
- * 客戶名稱
- */
- private String CustomerName = "";
-
- /**
- * NotifyMail
- * 通知電子信箱
- */
- private String NotifyMail = "";
-
- /**
- * NotifyPhone
- * 通知手機號碼
- */
- private String NotifyPhone = "";
-
- /**
- * AllowanceAmount
- * 折讓單總金額(含稅)
- */
- private String AllowanceAmount = "";
-
- /**
- * ItemName
- * 商品名稱
- */
- private String ItemName = "";
-
- /**
- * ItemCount
- * 商品數量
- */
- private String ItemCount = "";
-
- /**
- * ItemWord
- * 商品單位
- */
- private String ItemWord = "";
-
- /**
- * ItemPrice
- * 商品價格
- */
- private String ItemPrice = "";
-
- /**
- * ItemTaxType
- * 商品課稅別
- */
- private String ItemTaxType = "";
-
- /**
- * ItemAmount
- * 商品合計,此為含稅小計金額 商品合計若超過二筆以上請以「|」符號區隔
- */
- private String ItemAmount = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得InvoiceNo 發票號碼,長度固定為10碼
- * @return InvoiceNo
- */
- public String getInvoiceNo() {
- return InvoiceNo;
- }
- /**
- * 設定InvoiceNo 發票號碼,長度固定為10碼
- * @param invoiceNo
- */
- public void setInvoiceNo(String invoiceNo) {
- InvoiceNo = invoiceNo;
- }
- /**
- * 取得AllowanceNotify 通知類別 S:簡訊 E:電子郵件 A:皆通知時 N:皆不通知
- * @return AllowanceNotify
- */
- public String getAllowanceNotify() {
- return AllowanceNotify;
- }
- /**
- * 設定AllowanceNotify 通知類別 S:簡訊 E:電子郵件 A:皆通知時 N:皆不通知
- * @param allowanceNotify
- */
- public void setAllowanceNotify(String allowanceNotify) {
- AllowanceNotify = allowanceNotify;
- }
- /**
- * 取得CustomerName 客戶名稱
- * @return CustomerName
- */
- public String getCustomerName() {
- return CustomerName;
- }
- /**
- * 設定CustomerName 客戶名稱
- * @param customerName
- */
- public void setCustomerName(String customerName) {
- CustomerName = customerName;
- }
- /**
- * 取得NotifyMail 通知電子信箱
- * @return NotifyMail
- */
- public String getNotifyMail() {
- return NotifyMail;
- }
- /**
- * 設定NotifyMail 通知電子信箱
- * @param notifyMail
- */
- public void setNotifyMail(String notifyMail) {
- NotifyMail = notifyMail;
- }
- /**
- * 取得NotifyPhone 通知手機號碼
- * @return NotifyPhone
- */
- public String getNotifyPhone() {
- return NotifyPhone;
- }
- /**
- * 設定NotifyPhone 通知手機號碼
- * @param notifyPhone
- */
- public void setNotifyPhone(String notifyPhone) {
- NotifyPhone = notifyPhone;
- }
- /**
- * 取得AllowanceAmount 折讓單總金額(含稅)
- * @return AllowanceAmount
- */
- public String getAllowanceAmount() {
- return AllowanceAmount;
- }
- /**
- * 設定AllowanceAmount 折讓單總金額(含稅)
- * @param allowanceAmount
- */
- public void setAllowanceAmount(String allowanceAmount) {
- AllowanceAmount = allowanceAmount;
- }
- /**
- * 取得ItemName 商品名稱
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 設定ItemName 商品名稱
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 取得ItemCount 商品數量
- * @return ItemCount
- */
- public String getItemCount() {
- return ItemCount;
- }
- /**
- * 設定ItemCount 商品數量
- * @param itemCount
- */
- public void setItemCount(String itemCount) {
- ItemCount = itemCount;
- }
- /**
- * 取得ItemWord 商品單位
- * @return ItemWord
- */
- public String getItemWord() {
- return ItemWord;
- }
- /**
- * 設定ItemWord 商品單位
- * @param itemWord
- */
- public void setItemWord(String itemWord) {
- ItemWord = itemWord;
- }
- /**
- * 取得ItemPrice 商品價格
- * @return ItemPrice
- */
- public String getItemPrice() {
- return ItemPrice;
- }
- /**
- * 設定ItemPrice 商品價格
- * @param itemPrice
- */
- public void setItemPrice(String itemPrice) {
- ItemPrice = itemPrice;
- }
- /**
- * 取得ItemTaxType 商品課稅別
- * @return ItemTaxType
- */
- public String getItemTaxType() {
- return ItemTaxType;
- }
- /**
- * 設定ItemTaxType 商品課稅別
- * @param itemTaxType
- */
- public void setItemTaxType(String itemTaxType) {
- ItemTaxType = itemTaxType;
- }
- /**
- * 取得ItemAmount 商品合計,此為含稅小計金額 商品合計若超過二筆以上請以「|」符號區隔
- * @return ItemAmount
- */
- public String getItemAmount() {
- return ItemAmount;
- }
- /**
- * 設定ItemAmount 商品合計,此為含稅小計金額 商品合計若超過二筆以上請以「|」符號區隔
- * @param itemAmount
- */
- public void setItemAmount(String itemAmount) {
- ItemAmount = itemAmount;
- }
- @Override
- public String toString() {
- return "AllowanceObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", InvoiceNo=" + InvoiceNo
- + ", AllowanceNotify=" + AllowanceNotify + ", CustomerName=" + CustomerName + ", NotifyMail="
- + NotifyMail + ", NotifyPhone=" + NotifyPhone + ", AllowanceAmount=" + AllowanceAmount + ", ItemName="
- + ItemName + ", ItemCount=" + ItemCount + ", ItemWord=" + ItemWord + ", ItemPrice=" + ItemPrice
- + ", ItemTaxType=" + ItemTaxType + ", ItemAmount=" + ItemAmount + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/CheckLoveCodeObj.java b/Invoice/allpay/invoice/integration/domain/CheckLoveCodeObj.java
deleted file mode 100644
index 4b365fb..0000000
--- a/Invoice/allpay/invoice/integration/domain/CheckLoveCodeObj.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 愛心碼驗證物件
- * @author mark.chiu
- *
- */
-public class CheckLoveCodeObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * LoveCode
- * 受贈單位之愛心碼
- */
- private String LoveCode = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得LoveCode 受贈單位之愛心碼
- * @return LoveCode
- */
- public String getLoveCode() {
- return LoveCode;
- }
- /**
- * 設定LoveCode 受贈單位之愛心碼
- * @param loveCode
- */
- public void setLoveCode(String loveCode) {
- LoveCode = loveCode;
- }
- @Override
- public String toString() {
- return "CheckLoveCodeObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", LoveCode=" + LoveCode
- + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/CheckMobileBarCodeObj.java b/Invoice/allpay/invoice/integration/domain/CheckMobileBarCodeObj.java
deleted file mode 100644
index f5fd4b2..0000000
--- a/Invoice/allpay/invoice/integration/domain/CheckMobileBarCodeObj.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 手機條碼驗證物件
- * @author mark.chiu
- *
- */
-public class CheckMobileBarCodeObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * BarCode
- * 手機條碼,格式應為1 碼「/」由7 碼數字及大小寫字母組成(長度固定7 碼)
- */
- private String BarCode = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得BarCode 手機條碼,格式應為1 碼「/」由7 碼數字及大小寫字母組成(長度固定7 碼)
- * @return BarCode
- */
- public String getBarCode() {
- return BarCode;
- }
- /**
- * 設定BarCode 手機條碼,格式應為1 碼「/」由7 碼數字及大小寫字母組成(長度固定7 碼)
- * @param barCode
- */
- public void setBarCode(String barCode) {
- BarCode = barCode;
- }
- @Override
- public String toString() {
- return "CheckMobileBarCodeObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", BarCode=" + BarCode
- + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/DelayIssueObj.java b/Invoice/allpay/invoice/integration/domain/DelayIssueObj.java
deleted file mode 100644
index aa869cc..0000000
--- a/Invoice/allpay/invoice/integration/domain/DelayIssueObj.java
+++ /dev/null
@@ -1,637 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 延遲開立發票(預約開立發票)物件
- * @author mark.chiu
- *
- */
-public class DelayIssueObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * RelateNumber
- * 商家自訂編號
- */
- private String RelateNumber = "";
-
- /**
- * CustomerID
- * 客戶代號
- */
- private String CustomerID = "";
-
- /**
- * CustomerIdentifier
- * 統一編號,固定長度為數字8碼
- */
- private String CustomerIdentifier = "";
-
- /**
- * CustomeName
- * 客戶名稱
- */
- private String CustomerName = "";
-
- /**
- * CustomerAddr
- * 客戶地址
- */
- private String CustomerAddr = "";
-
- /**
- * CustomerPhone
- * 客戶手機號碼
- */
- private String CustomerPhone = "";
-
- /**
- * CustomerEmail
- * 客戶電子信箱
- */
- private String CustomerEmail = "";
-
- /**
- * ClearanceMark
- * 通關方式,若課稅類別[TaxType]為零稅率時,則該參數請帶1(經海關出口)或2(非經海關出口)
- */
- private String ClearanceMark = "";
-
- /**
- * Print
- * 列印註記
- */
- private String Print = "";
-
- /**
- * Donation
- * 捐贈註記
- */
- private String Donation = "";
-
- /**
- * LoveCode
- * 愛心碼
- */
- private String LoveCode = "";
-
- /**
- * CarruerType
- * 載具類別,若為無載具時,則請帶空字串
- */
- private String CarruerType = "";
-
- /**
- * CarruerNum
- * 載具編號
- */
- private String CarruerNum = "";
-
- /**
- * TaxType
- * 課稅類別
- */
- private String TaxType = "";
-
- /**
- * SalseAmount
- * 發票總金額(含稅)
- */
- private String SalesAmount = "";
-
- /**
- * InvoiceRemark
- * 備註
- */
- private String InvoiceRemark = "";
-
- /**
- * ItemName
- * 商品名稱
- */
- private String ItemName = "";
-
- /**
- * ItemCount
- * 商品數量
- */
- private String ItemCount = "";
-
- /**
- * ItemWord
- * 商品單位
- */
- private String ItemWord = "";
-
- /**
- * ItemPrice
- * 商品價格
- */
- private String ItemPrice = "";
-
- /**
- * ItemTaxType
- * 商品課稅別
- */
- private String ItemTaxType = "";
-
- /**
- * ItemAmount
- * 商品合計,此為含稅小計金額
- */
- private String ItemAmount = "";
-
- /**
- * InvType
- * 該張發票的發票字軌類型
- */
- private String InvType = "";
-
- /**
- * DelayFlag
- * 可註記此張發票要延遲開立或觸發開立發票
- */
- private String DelayFlag = "";
-
- /**
- * DelayDay
- * 延遲天數
- */
- private String DelayDay = "";
-
- /**
- * Tsr
- * 交易單號
- */
- private String Tsr = "";
-
- /**
- * PayType
- * 交易類別
- */
- private String PayType = "3";
-
- /**
- * PayAct
- * 交易類別名稱
- */
- private String PayAct = "ALLPAY";
-
- /**
- * NotifyURL
- * 開立完成時通知商家系統的網址
- */
- private String NotifyURL = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得RelateNumber 商家自訂編號
- * @return RelateNumber
- */
- public String getRelateNumber() {
- return RelateNumber;
- }
- /**
- * 設定RelateNumber 商家自訂編號
- * @param relateNumber
- */
- public void setRelateNumber(String relateNumber) {
- RelateNumber = relateNumber;
- }
- /**
- * 取得CustomerID 客戶代號
- * @return CustomerID
- */
- public String getCustomerID() {
- return CustomerID;
- }
- /**
- * 設定CustomerID 客戶代號
- * @param customerID
- */
- public void setCustomerID(String customerID) {
- CustomerID = customerID;
- }
- /**
- * 取得CustomerIdentifier 統一編號,固定長度為數字8碼
- * @return CustomerIdentifier
- */
- public String getCustomerIdentifier() {
- return CustomerIdentifier;
- }
- /**
- * 設定CustomerIdentifier 統一編號,固定長度為數字8碼
- * @param customerIdentifier
- */
- public void setCustomerIdentifier(String customerIdentifier) {
- CustomerIdentifier = customerIdentifier;
- }
- /**
- * 取得CustomerName 客戶名稱
- * @return CustomerName
- */
- public String getCustomerName() {
- return CustomerName;
- }
- /**
- * 設定CustomerName 客戶名稱
- * @param customerName
- */
- public void setCustomerName(String customerName) {
- CustomerName = customerName;
- }
- /**
- * 取得CustomerAddr 客戶地址
- * @return CustomerAddr
- */
- public String getCustomerAddr() {
- return CustomerAddr;
- }
- /**
- * 設定CustomerAddr 客戶地址
- * @param customerAddr
- */
- public void setCustomerAddr(String customerAddr) {
- CustomerAddr = customerAddr;
- }
- /**
- * 取得CustomerPhone 客戶手機號碼
- * @return CustomerPhone
- */
- public String getCustomerPhone() {
- return CustomerPhone;
- }
- /**
- * 設定CustomerPhone 客戶手機號碼
- * @param customerPhone
- */
- public void setCustomerPhone(String customerPhone) {
- CustomerPhone = customerPhone;
- }
- /**
- * 取得CustomerEmail 客戶電子信箱
- * @return CustomerEmail
- */
- public String getCustomerEmail() {
- return CustomerEmail;
- }
- /**
- * 設定CustomerEmail 客戶電子信箱
- * @param customerEmail
- */
- public void setCustomerEmail(String customerEmail) {
- CustomerEmail = customerEmail;
- }
- /**
- * 取得ClearanceMark 通關方式,若課稅類別[TaxType]為零稅率時,則該參數請帶1(經海關出口)或2(非經海關出口)
- * @return ClearanceMark
- */
- public String getClearanceMark() {
- return ClearanceMark;
- }
- /**
- * 設定ClearanceMark 通關方式,若課稅類別[TaxType]為零稅率時,則該參數請帶1(經海關出口)或2(非經海關出口)
- * @param clearanceMark
- */
- public void setClearanceMark(String clearanceMark) {
- ClearanceMark = clearanceMark;
- }
- /**
- * 取得Print 列印註記
- * @return Print
- */
- public String getPrint() {
- return Print;
- }
- /**
- * 設定Print 列印註記
- * @param print
- */
- public void setPrint(String print) {
- Print = print;
- }
- /**
- * 取得Donation 捐贈註記
- * @return Donation
- */
- public String getDonation() {
- return Donation;
- }
- /**
- * 設定Donation 捐贈註記
- * @param donation
- */
- public void setDonation(String donation) {
- Donation = donation;
- }
- /**
- * 取得LoveCode 愛心碼
- * @return LoveCode
- */
- public String getLoveCode() {
- return LoveCode;
- }
- /**
- * 設定LoveCode 愛心碼
- * @param loveCode
- */
- public void setLoveCode(String loveCode) {
- LoveCode = loveCode;
- }
- /**
- * 取得CarruerType 載具類別,若為無載具時,則請帶空字串
- * @return CarruerType
- */
- public String getCarruerType() {
- return CarruerType;
- }
- /**
- * 設定CarruerType 載具類別,若為無載具時,則請帶空字串
- * @param carruerType
- */
- public void setCarruerType(String carruerType) {
- CarruerType = carruerType;
- }
- /**
- * 取得CarruerNum 載具編號
- * @return CarruerNum
- */
- public String getCarruerNum() {
- return CarruerNum;
- }
- /**
- * 設定CarruerNum 載具編號
- * @param carruerNum
- */
- public void setCarruerNum(String carruerNum) {
- CarruerNum = carruerNum;
- }
- /**
- * 取得TaxType 課稅類別
- * @return TaxType
- */
- public String getTaxType() {
- return TaxType;
- }
- /**
- * 設定TaxType 課稅類別
- * @param taxType
- */
- public void setTaxType(String taxType) {
- TaxType = taxType;
- }
- /**
- * 取得SalesAmount 發票總金額(含稅)
- * @return SalesAmount
- */
- public String getSalesAmount() {
- return SalesAmount;
- }
- /**
- * 設定SalesAmount 發票總金額(含稅)
- * @param salesAmount
- */
- public void setSalesAmount(String salesAmount) {
- SalesAmount = salesAmount;
- }
- /**
- * 取得InvoiceRemark 備註
- * @return InvoiceRemark
- */
- public String getInvoiceRemark() {
- return InvoiceRemark;
- }
- /**
- * 設定InvoiceRemark 備註
- * @param invoiceRemark
- */
- public void setInvoiceRemark(String invoiceRemark) {
- InvoiceRemark = invoiceRemark;
- }
- /**
- * 取得ItemName 商品名稱
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 設定ItemName 商品名稱
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 取得ItemCount 商品數量
- * @return ItemCount
- */
- public String getItemCount() {
- return ItemCount;
- }
- /**
- * 設定ItemCount 商品數量
- * @param itemCount
- */
- public void setItemCount(String itemCount) {
- ItemCount = itemCount;
- }
- /**
- * 取得ItemWord 商品單位
- * @return ItemWord
- */
- public String getItemWord() {
- return ItemWord;
- }
- /**
- * 設定ItemWord 商品單位
- * @param itemWord
- */
- public void setItemWord(String itemWord) {
- ItemWord = itemWord;
- }
- /**
- * 取得ItemPrice 商品價格
- * @return ItemPrice
- */
- public String getItemPrice() {
- return ItemPrice;
- }
- /**
- * 設定ItemPrice 商品價格
- * @param itemPrice
- */
- public void setItemPrice(String itemPrice) {
- ItemPrice = itemPrice;
- }
- /**
- * 取得ItemTaxType 商品課稅別
- * @return ItemTaxType
- */
- public String getItemTaxType() {
- return ItemTaxType;
- }
- /**
- * 設定ItemTaxType 商品課稅別
- * @param itemTaxType
- */
- public void setItemTaxType(String itemTaxType) {
- ItemTaxType = itemTaxType;
- }
- /**
- * 取得ItemAmount 商品合計,此為含稅小計金額
- * @return ItemAmount
- */
- public String getItemAmount() {
- return ItemAmount;
- }
- /**
- * 設定ItemAmount 商品合計,此為含稅小計金額
- * @param itemAmount
- */
- public void setItemAmount(String itemAmount) {
- ItemAmount = itemAmount;
- }
- /**
- * 取得InvType 該張發票的發票字軌類型
- * @return InvType
- */
- public String getInvType() {
- return InvType;
- }
- /**
- * 設定InvType 該張發票的發票字軌類型
- * @param invType
- */
- public void setInvType(String invType) {
- InvType = invType;
- }
- /**
- * 取得DelayFlag 可註記此張發票要延遲開立或觸發開立發票
- * @return DelayFlag
- */
- public String getDelayFlag() {
- return DelayFlag;
- }
- /**
- * 設定DelayFlag 可註記此張發票要延遲開立或觸發開立發票
- * @param delayFlag
- */
- public void setDelayFlag(String delayFlag) {
- DelayFlag = delayFlag;
- }
- /**
- * 取得DelayDay 延遲天數
- * @return DelayDay
- */
- public String getDelayDay() {
- return DelayDay;
- }
- /**
- * 設定DelayDay 延遲天數
- * @param delayDay
- */
- public void setDelayDay(String delayDay) {
- DelayDay = delayDay;
- }
- /**
- * 取得Tsr 交易單號
- * @return Tsr
- */
- public String getTsr() {
- return Tsr;
- }
- /**
- * 設定Tsr 交易單號
- * @param tsr
- */
- public void setTsr(String tsr) {
- Tsr = tsr;
- }
- /**
- * 取得PayType 交易類別
- * @return PayType
- */
- public String getPayType() {
- return PayType;
- }
-// public void setPayType(String payType) {
-// PayType = payType;
-// }
- /**
- * 取得PayAct 交易類別名稱
- * @return PayAct
- */
- public String getPayAct() {
- return PayAct;
- }
-// public void setPayAct(String payAct) {
-// PayAct = payAct;
-// }
- /**
- * 取得NotifyURL 開立完成時通知商家系統的網址
- * @return NotifyURL
- */
- public String getNotifyURL() {
- return NotifyURL;
- }
- /**
- * 設定NotifyURL 開立完成時通知商家系統的網址
- * @param notifyURL
- */
- public void setNotifyURL(String notifyURL) {
- NotifyURL = notifyURL;
- }
- @Override
- public String toString() {
- return "DelayIssueObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", RelateNumber=" + RelateNumber
- + ", CustomerID=" + CustomerID + ", CustomerIdentifier=" + CustomerIdentifier + ", CustomeName="
- + CustomerName + ", CustomerAddr=" + CustomerAddr + ", CustomerPhone=" + CustomerPhone
- + ", CustomerEmail=" + CustomerEmail + ", ClearanceMark=" + ClearanceMark + ", Print=" + Print
- + ", Donation=" + Donation + ", LoveCode=" + LoveCode + ", CarruerType=" + CarruerType + ", CarruerNum="
- + CarruerNum + ", TaxType=" + TaxType + ", SalesAmount=" + SalesAmount + ", InvoiceRemark="
- + InvoiceRemark + ", ItemName=" + ItemName + ", ItemCount=" + ItemCount + ", ItemWord=" + ItemWord
- + ", ItemPrice=" + ItemPrice + ", ItemTaxType=" + ItemTaxType + ", ItemAmount=" + ItemAmount
- + ", InvType=" + InvType + ", DelayFlag=" + DelayFlag + ", DelayDay=" + DelayDay + ", Tsr=" + Tsr
- + ", PayType=" + PayType + ", PayAct=" + PayAct + ", NotifyURL=" + NotifyURL + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/InvoiceNotifyObj.java b/Invoice/allpay/invoice/integration/domain/InvoiceNotifyObj.java
deleted file mode 100644
index c888e48..0000000
--- a/Invoice/allpay/invoice/integration/domain/InvoiceNotifyObj.java
+++ /dev/null
@@ -1,198 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 發送發票通知物件
- * @author mark.chiu
- *
- */
-public class InvoiceNotifyObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * InvoiceNo
- * 發票號碼,長度固定為10 碼
- */
- private String InvoiceNo = "";
-
- /**
- * AllowanceNo
- * 折讓編號,長度固定為16 碼
- */
- private String AllowanceNo = "";
-
- /**
- * Phone
- * 發送簡訊號碼
- */
- private String Phone = "";
-
- /**
- * NotifyMail
- * 發送電子郵件
- */
- private String NotifyMail = "";
-
- /**
- * Notify
- * 發送方式 S:簡訊 E:電子郵件 A:皆通知時
- */
- private String Notify = "";
-
- /**
- * InvoiceTag
- * 發送內容類型 I:發票開立 II:發票作廢 A:折讓開立 AI:折讓作廢 AW:發票中獎
- */
- private String InvoiceTag = "";
-
- /**
- * Notified
- * 發送對象 C:發送通知給客戶 M:發送通知給商家 A:皆發送通知
- */
- private String Notified = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得InvoiceNo 發票號碼,長度固定為10 碼
- * @return InvoiceNo
- */
- public String getInvoiceNo() {
- return InvoiceNo;
- }
- /**
- * 設定InvoiceNo 發票號碼,長度固定為10 碼
- * @param invoiceNo
- */
- public void setInvoiceNo(String invoiceNo) {
- InvoiceNo = invoiceNo;
- }
- /**
- * 取得AllowanceNo 折讓編號,長度固定為16 碼
- * @return AllowanceNo
- */
- public String getAllowanceNo() {
- return AllowanceNo;
- }
- /**
- * 設定AllowanceNo 折讓編號,長度固定為16 碼
- * @param allowanceNo
- */
- public void setAllowanceNo(String allowanceNo) {
- AllowanceNo = allowanceNo;
- }
- /**
- * 取得Phone 發送簡訊號碼
- * @return Phone
- */
- public String getPhone() {
- return Phone;
- }
- /**
- * 設定Phone 發送簡訊號碼
- * @param phone
- */
- public void setPhone(String phone) {
- Phone = phone;
- }
- /**
- * 取得NotifyMail 發送電子郵件
- * @return NotifyMail
- */
- public String getNotifyMail() {
- return NotifyMail;
- }
- /**
- * 設定NotifyMail 發送電子郵件
- * @param notifyMail
- */
- public void setNotifyMail(String notifyMail) {
- NotifyMail = notifyMail;
- }
- /**
- * 取得Notify 發送方式 S:簡訊 E:電子郵件 A:皆通知時
- * @return Notify
- */
- public String getNotify() {
- return Notify;
- }
- /**
- * 設定Notify 發送方式 S:簡訊 E:電子郵件 A:皆通知時
- * @param notify
- */
- public void setNotify(String notify) {
- Notify = notify;
- }
- /**
- * 取得InvoiceTag 發送內容類型 I:發票開立 II:發票作廢 A:折讓開立 AI:折讓作廢 AW:發票中獎
- * @return InvoiceTag
- */
- public String getInvoiceTag() {
- return InvoiceTag;
- }
- /**
- * 設定InvoiceTag 發送內容類型 I:發票開立 II:發票作廢 A:折讓開立 AI:折讓作廢 AW:發票中獎
- * @param invoiceTag
- */
- public void setInvoiceTag(String invoiceTag) {
- InvoiceTag = invoiceTag;
- }
- /**
- * 取得Notified 發送對象 C:發送通知給客戶 M:發送通知給商家 A:皆發送通知
- * @return Notified
- */
- public String getNotified() {
- return Notified;
- }
- /**
- * 設定Notified 發送對象 C:發送通知給客戶 M:發送通知給商家 A:皆發送通知
- * @param notified
- */
- public void setNotified(String notified) {
- Notified = notified;
- }
- @Override
- public String toString() {
- return "InvoiceNotifyObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", InvoiceNo=" + InvoiceNo
- + ", AllowanceNo=" + AllowanceNo + ", Phone=" + Phone + ", NotifyMail=" + NotifyMail + ", Notify="
- + Notify + ", InvoiceTag=" + InvoiceTag + ", Notified=" + Notified + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/IssueInvalidObj.java b/Invoice/allpay/invoice/integration/domain/IssueInvalidObj.java
deleted file mode 100644
index d47d052..0000000
--- a/Invoice/allpay/invoice/integration/domain/IssueInvalidObj.java
+++ /dev/null
@@ -1,101 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 作廢發票物件
- * @author mark.chiu
- *
- */
-/**
- * @author mark.chiu
- *
- */
-public class IssueInvalidObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * InvoiceNumber
- * 發票號碼,長度固定為10碼
- */
- private String InvoiceNumber = "";
-
- /**
- * Reason
- * 作廢原因
- */
- private String Reason = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得InvoiceNumber 發票號碼,長度固定為10碼
- * @return InvoiceNumber
- */
- public String getInvoiceNumber() {
- return InvoiceNumber;
- }
- /**
- * 設定InvoiceNumber 發票號碼,長度固定為10碼
- * @param invoiceNumber
- */
- public void setInvoiceNumber(String invoiceNumber) {
- InvoiceNumber = invoiceNumber;
- }
- /**
- * 取得Reason 作廢原因
- * @return Reason
- */
- public String getReason() {
- return Reason;
- }
- /**
- * 設定Reason 作廢原因
- * @param reason
- */
- public void setReason(String reason) {
- Reason = reason;
- }
- @Override
- public String toString() {
- return "IssueInvalidObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", InvoiceNumber="
- + InvoiceNumber + ", Reason=" + Reason + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/IssueObj.java b/Invoice/allpay/invoice/integration/domain/IssueObj.java
deleted file mode 100644
index 2613b6f..0000000
--- a/Invoice/allpay/invoice/integration/domain/IssueObj.java
+++ /dev/null
@@ -1,564 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 一般開立發票(立即開立)物件
- * @author mark.chiu
- *
- */
-public class IssueObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * RelateNumber
- * 會員自訂編號
- */
- private String RelateNumber = "";
-
- /**
- * CustomerID
- * 客戶代號
- */
- private String CustomerID = "";
-
- /**
- * CustomerIdentifier
- * 統一編號
- */
- private String CustomerIdentifier = "";
-
- /**
- * CustomerName
- * 客戶名稱
- */
- private String CustomerName = "";
-
- /**
- * CustomerAddr
- * 客戶地址
- */
- private String CustomerAddr = "";
-
- /**
- * CustomerPhone
- * 客戶手機號碼
- */
- private String CustomerPhone = "";
-
- /**
- * CustomerEmail
- * 客戶電子信箱
- */
- private String CustomerEmail = "";
-
- /**
- * ClearanceMark
- * 通關方式
- */
- private String ClearanceMark = "";
-
- /**
- * Print
- * 列印註記
- */
- private String Print = "";
-
- /**
- * Donation
- * 捐贈註記
- */
- private String Donation = "";
-
- /**
- * LoveCode
- * 愛心碼
- */
- private String LoveCode = "";
-
- /**
- * CarruerType
- * 載具類別
- */
- private String CarruerType = "";
-
- /**
- * CarruerNum
- * 載具編號
- */
- private String CarruerNum = "";
-
- /**
- * TaxType
- * 課稅類別
- */
- private String TaxType = "";
-
- /**
- * SalesAmount
- * 發票總金額(含稅)
- */
- private String SalesAmount = "";
-
- /**
- * InvoiceRemark
- * 備註
- */
- private String InvoiceRemark = "";
-
- /**
- * ItemName
- * 商品名稱
- */
- private String ItemName = "";
-
- /**
- * ItemCount
- * 商品數量
- */
- private String ItemCount = "";
-
- /**
- * ItemWord
- * 商品單位
- */
- private String ItemWord = "";
-
- /**
- * ItemPrice
- * 商品價格
- */
- private String ItemPrice = "";
-
- /**
- * ItemTaxType
- * 商品課稅別
- */
- private String ItemTaxType = "";
-
- /**
- * ItemAmount
- * 商品合計,此為含稅小計金額
- */
- private String ItemAmount = "";
-
- /**
- * ItemRemark
- * 商品備註說明
- */
- private String ItemRemark = "";
-
- /**
- * InvType
- * 該張發票的發票字軌類型
- */
- private String InvType = "";
-
- /**
- * vat
- * 商品單價是否含稅,預設為含稅價
- */
- private String vat = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得RelateNumber 會員自訂編號
- * @return RelateNumber
- */
- public String getRelateNumber() {
- return RelateNumber;
- }
- /**
- * 設定RelateNumber 會員自訂編號
- * @param relateNumber
- */
- public void setRelateNumber(String relateNumber) {
- RelateNumber = relateNumber;
- }
- /**
- * 取得CustomerID 客戶代號
- * @return CustomerID
- */
- public String getCustomerID() {
- return CustomerID;
- }
- /**
- * 設定CustomerID 客戶代號
- * @param customerID
- */
- public void setCustomerID(String customerID) {
- CustomerID = customerID;
- }
- /**
- * 取得CustomerIdentifier 統一編號
- * @return CustomerIdentifier
- */
- public String getCustomerIdentifier() {
- return CustomerIdentifier;
- }
- /**
- * 設定CustomerIdentifier 統一編號
- * @param customerIdentifier
- */
- public void setCustomerIdentifier(String customerIdentifier) {
- CustomerIdentifier = customerIdentifier;
- }
- /**
- * 取得CustomerName 客戶名稱
- * @return CustomerName
- */
- public String getCustomerName() {
- return CustomerName;
- }
- /**
- * 設定CustomerName 客戶名稱
- * @param customerName
- */
- public void setCustomerName(String customerName) {
- CustomerName = customerName;
- }
- /**
- * 取得CustomerAddr 客戶地址
- * @return CustomerAddr
- */
- public String getCustomerAddr() {
- return CustomerAddr;
- }
- /**
- * 設定CustomerAddr 客戶地址
- * @param customerAddr
- */
- public void setCustomerAddr(String customerAddr) {
- CustomerAddr = customerAddr;
- }
- /**
- * 取得CustomerPhone 客戶手機號碼
- * @return CustomerPhone
- */
- public String getCustomerPhone() {
- return CustomerPhone;
- }
- /**
- * 設定CustomerPhone 客戶手機號碼
- * @param customerPhone
- */
- public void setCustomerPhone(String customerPhone) {
- CustomerPhone = customerPhone;
- }
- /**
- * 取得CustomerEmail 客戶電子信箱
- * @return CustomerEmail
- */
- public String getCustomerEmail() {
- return CustomerEmail;
- }
- /**
- * 設定CustomerEmail 客戶電子信箱
- * @param customerEmail
- */
- public void setCustomerEmail(String customerEmail) {
- CustomerEmail = customerEmail;
- }
- /**
- * 取得ClearanceMark 通關方式
- * @return ClearanceMark
- */
- public String getClearanceMark() {
- return ClearanceMark;
- }
- /**
- * 設定ClearanceMark 通關方式
- * @param clearanceMark
- */
- public void setClearanceMark(String clearanceMark) {
- ClearanceMark = clearanceMark;
- }
- /**
- * 取得Print 列印註記
- * @return Print
- */
- public String getPrint() {
- return Print;
- }
- /**
- * 設定Print 列印註記
- * @param print
- */
- public void setPrint(String print) {
- Print = print;
- }
- /**
- * 取得Donation 捐贈註記
- * @return Donation
- */
- public String getDonation() {
- return Donation;
- }
- /**
- * 設定Donation 捐贈註記
- * @param donation
- */
- public void setDonation(String donation) {
- Donation = donation;
- }
- /**
- * 取得LoveCode 愛心碼
- * @return LoveCode
- */
- public String getLoveCode() {
- return LoveCode;
- }
- /**
- * 設定LoveCode 愛心碼
- * @param loveCode
- */
- public void setLoveCode(String loveCode) {
- LoveCode = loveCode;
- }
- /**
- * 取得CarruerType 載具類別
- * @return CarruerType
- */
- public String getCarruerType() {
- return CarruerType;
- }
- /**
- * 設定CarruerType 載具類別
- * @param carruerType
- */
- public void setCarruerType(String carruerType) {
- CarruerType = carruerType;
- }
- /**
- * 取得CarruerNum 載具編號
- * @return CarruerNum
- */
- public String getCarruerNum() {
- return CarruerNum;
- }
- /**
- * 設定CarruerNum 載具編號
- * @param carruerNum
- */
- public void setCarruerNum(String carruerNum) {
- CarruerNum = carruerNum;
- }
- /**
- * 取得TaxType 課稅類別
- * @return TaxType
- */
- public String getTaxType() {
- return TaxType;
- }
- /**
- * 設定TaxType 課稅類別
- * @param taxType
- */
- public void setTaxType(String taxType) {
- TaxType = taxType;
- }
- /**
- * 取得SalesAmount 發票總金額(含稅)
- * @return SalesAmount
- */
- public String getSalesAmount() {
- return SalesAmount;
- }
- /**
- * 設定SalesAmount 發票總金額(含稅)
- * @param salesAmount
- */
- public void setSalesAmount(String salesAmount) {
- SalesAmount = salesAmount;
- }
- /**
- * 取得InvoiceRemark 備註
- * @return InvoiceRemark
- */
- public String getInvoiceRemark() {
- return InvoiceRemark;
- }
- /**
- * 設定InvoiceRemark 備註
- * @param invoiceRemark
- */
- public void setInvoiceRemark(String invoiceRemark) {
- InvoiceRemark = invoiceRemark;
- }
- /**
- * 取得ItemName 商品名稱
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 設定ItemName 商品名稱
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 取得ItemCount 商品數量
- * @return ItemCount
- */
- public String getItemCount() {
- return ItemCount;
- }
- /**
- * 設定ItemCount 商品數量
- * @param itemCount
- */
- public void setItemCount(String itemCount) {
- ItemCount = itemCount;
- }
- /**
- * 取得ItemWord 商品單位
- * @return ItemWord
- */
- public String getItemWord() {
- return ItemWord;
- }
- /**
- * 設定ItemWord 商品單位
- * @param itemWord
- */
- public void setItemWord(String itemWord) {
- ItemWord = itemWord;
- }
- /**
- * 取得ItemPrice 商品價格
- * @return ItemPrice
- */
- public String getItemPrice() {
- return ItemPrice;
- }
- /**
- * 設定ItemPrice 商品價格
- * @param itemPrice
- */
- public void setItemPrice(String itemPrice) {
- ItemPrice = itemPrice;
- }
- /**
- * 取得ItemTaxType 商品課稅別
- * @return ItemTaxType
- */
- public String getItemTaxType() {
- return ItemTaxType;
- }
- /**
- * 設定ItemTaxType 商品課稅別
- * @param itemTaxType
- */
- public void setItemTaxType(String itemTaxType) {
- ItemTaxType = itemTaxType;
- }
- /**
- * 取得ItemAmount 商品合計,此為含稅小計金額
- * @return ItemAmount
- */
- public String getItemAmount() {
- return ItemAmount;
- }
- /**
- * 設定ItemAmount 商品合計,此為含稅小計金額
- * @param itemAmount
- */
- public void setItemAmount(String itemAmount) {
- ItemAmount = itemAmount;
- }
- /**
- * 取得ItemRemark 商品備註說明
- * @return ItemRemark
- */
- public String getItemRemark() {
- return ItemRemark;
- }
- /**
- * 設定ItemRemark 商品備註說明
- * @param itemRemark
- */
- public void setItemRemark(String itemRemark) {
- ItemRemark = itemRemark;
- }
- /**
- * 取得InvType 該張發票的發票字軌類型
- * @return InvType
- */
- public String getInvType() {
- return InvType;
- }
- /**
- * 設定InvType 該張發票的發票字軌類型
- * @param invType
- */
- public void setInvType(String invType) {
- InvType = invType;
- }
- /**
- * 取得vat 商品單價是否含稅,預設為含稅價
- * @return vat
- */
- public String getVat() {
- return vat;
- }
- /**
- * 設定vat 商品單價是否含稅,預設為含稅價
- * @param vat
- */
- public void setVat(String vat) {
- this.vat = vat;
- }
- @Override
- public String toString() {
- return "IssueObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", RelateNumber=" + RelateNumber
- + ", CustomerID=" + CustomerID + ", CustomerIdentifier=" + CustomerIdentifier + ", CustomerName="
- + CustomerName + ", CustomerAddr=" + CustomerAddr + ", CustomerPhone=" + CustomerPhone
- + ", CustomerEmail=" + CustomerEmail + ", ClearanceMark=" + ClearanceMark + ", Print=" + Print
- + ", Donation=" + Donation + ", LoveCode=" + LoveCode + ", CarruerType=" + CarruerType + ", CarruerNum="
- + CarruerNum + ", TaxType=" + TaxType + ", SalesAmount=" + SalesAmount + ", InvoiceRemark="
- + InvoiceRemark + ", ItemName=" + ItemName + ", ItemCount=" + ItemCount + ", ItemWord=" + ItemWord
- + ", ItemPrice=" + ItemPrice + ", ItemTaxType=" + ItemTaxType + ", ItemAmount=" + ItemAmount
- + ", ItemRemark=" + ItemRemark + ", InvType=" + InvType + ", vat=" + vat + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/QueryAllowanceInvalidObj.java b/Invoice/allpay/invoice/integration/domain/QueryAllowanceInvalidObj.java
deleted file mode 100644
index 3070b3a..0000000
--- a/Invoice/allpay/invoice/integration/domain/QueryAllowanceInvalidObj.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 查詢作廢折讓明細物件
- * @author mark.chiu
- *
- */
-public class QueryAllowanceInvalidObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * InvoiceNo
- * 發票號碼,長度固定為10 碼
- */
- private String InvoiceNo = "";
-
- /**
- * AllowanceNo
- * 折讓編號,長度固定為16 碼
- */
- private String AllowanceNo = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得timeStamp 時間戳記
- * @return timeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定timeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得InvoiceNo 發票號碼,長度固定為10 碼
- * @return InvoiceNo
- */
- public String getInvoiceNo() {
- return InvoiceNo;
- }
- /**
- * 設定InvoiceNo 發票號碼,長度固定為10 碼
- * @param invoiceNo
- */
- public void setInvoiceNo(String invoiceNo) {
- InvoiceNo = invoiceNo;
- }
- /**
- * 取得AllowanceNo 折讓編號,長度固定為16 碼
- * @return AllowanceNo
- */
- public String getAllowanceNo() {
- return AllowanceNo;
- }
- /**
- * 設定AllowanceNo 折讓編號,長度固定為16 碼
- * @param allowanceNo
- */
- public void setAllowanceNo(String allowanceNo) {
- AllowanceNo = allowanceNo;
- }
- @Override
- public String toString() {
- return "QueryAllowanceInvalidObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", InvoiceNo="
- + InvoiceNo + ", AllowanceNo=" + AllowanceNo + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/QueryAllowanceObj.java b/Invoice/allpay/invoice/integration/domain/QueryAllowanceObj.java
deleted file mode 100644
index 689e836..0000000
--- a/Invoice/allpay/invoice/integration/domain/QueryAllowanceObj.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 查詢折讓明細物件
- * @author mark.chiu
- *
- */
-public class QueryAllowanceObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * InvoiceNo
- * 發票號碼,長度固定為10 碼
- */
- private String InvoiceNo = "";
-
- /**
- * AllowanceNo
- * 折讓編號,長度固定為16 碼
- */
- private String AllowanceNo = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得InvoiceNo 發票號碼,長度固定為10 碼
- * @return InvoiceNo
- */
- public String getInvoiceNo() {
- return InvoiceNo;
- }
- /**
- * 設定InvoiceNo 發票號碼,長度固定為10 碼
- * @param invoiceNo
- */
- public void setInvoiceNo(String invoiceNo) {
- InvoiceNo = invoiceNo;
- }
- /**
- * 取得AllowanceNo 折讓編號,長度固定為16 碼
- * @return AllowanceNo
- */
- public String getAllowanceNo() {
- return AllowanceNo;
- }
- /**
- * 設定AllowanceNo 折讓編號,長度固定為16 碼
- * @param allowanceNo
- */
- public void setAllowanceNo(String allowanceNo) {
- AllowanceNo = allowanceNo;
- }
- @Override
- public String toString() {
- return "QueryAllowanceObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", InvoiceNo=" + InvoiceNo
- + ", AllowanceNo=" + AllowanceNo + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/QueryIssueInvalidObj.java b/Invoice/allpay/invoice/integration/domain/QueryIssueInvalidObj.java
deleted file mode 100644
index 68fe642..0000000
--- a/Invoice/allpay/invoice/integration/domain/QueryIssueInvalidObj.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 查詢作廢發票明細物件
- * @author mark.chiu
- *
- */
-public class QueryIssueInvalidObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * RelateNumber
- * 商家自訂編號,長度固定為30 碼
- */
- private String RelateNumber = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得RelateNumber 商家自訂編號,長度固定為30 碼
- * @return RelateNumber
- */
- public String getRelateNumber() {
- return RelateNumber;
- }
- /**
- * 設定RelateNumber 商家自訂編號,長度固定為30 碼
- * @param relateNumber
- */
- public void setRelateNumber(String relateNumber) {
- RelateNumber = relateNumber;
- }
- @Override
- public String toString() {
- return "QueryIssueInvalidObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", RelateNumber="
- + RelateNumber + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/QueryIssueObj.java b/Invoice/allpay/invoice/integration/domain/QueryIssueObj.java
deleted file mode 100644
index cf3ffb3..0000000
--- a/Invoice/allpay/invoice/integration/domain/QueryIssueObj.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 查詢發票明細物件
- * @author mark.chiu
- *
- */
-public class QueryIssueObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * RelateNumber
- * 商家自訂編號,長度固定為30 碼
- */
- private String RelateNumber = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得RelateNumber 商家自訂編號,長度固定為30 碼
- * @return RelateNumber
- */
- public String getRelateNumber() {
- return RelateNumber;
- }
- /**
- * 設定RelateNumber 商家自訂編號,長度固定為30 碼
- * @param relateNumber
- */
- public void setRelateNumber(String relateNumber) {
- RelateNumber = relateNumber;
- }
- @Override
- public String toString() {
- return "QueryIssueObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", RelateNumber=" + RelateNumber
- + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/domain/TriggerIssueObj.java b/Invoice/allpay/invoice/integration/domain/TriggerIssueObj.java
deleted file mode 100644
index 6ed928f..0000000
--- a/Invoice/allpay/invoice/integration/domain/TriggerIssueObj.java
+++ /dev/null
@@ -1,93 +0,0 @@
-package allpay.invoice.integration.domain;
-
-/**
- * 觸發開立發票物件
- * @author mark.chiu
- *
- */
-public class TriggerIssueObj {
-
- /**
- * TimeStamp
- * 時間戳記
- */
- private String TimeStamp = "";
-
- /**
- * MerchantID
- * 商家編號
- */
- private String MerchantID = "";
-
- /**
- * Tsr
- * 交易單號
- */
- private String Tsr = "";
-
- /**
- * PayType
- * 交易類別
- */
- private String PayType = "3";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得TimeStamp 時間戳記
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 時間戳記
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得MerchantID 商家編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 商家編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得Tsr 交易單號
- * @return Tsr
- */
- public String getTsr() {
- return Tsr;
- }
- /**
- * 設定Tsr 交易單號
- * @param tsr
- */
- public void setTsr(String tsr) {
- Tsr = tsr;
- }
- /**
- * 取得PayType 交易類別
- * @return PayType
- */
- public String getPayType() {
- return PayType;
- }
-// public void setPayType(String payType) {
-// PayType = payType;
-// }
- @Override
- public String toString() {
- return "TriggerIssueObj [TimeStamp=" + TimeStamp + ", MerchantID=" + MerchantID + ", Tsr=" + Tsr + ", PayType="
- + PayType + "]";
- }
-}
diff --git a/Invoice/allpay/invoice/integration/errorMsg/ErrorMessage.java b/Invoice/allpay/invoice/integration/errorMsg/ErrorMessage.java
deleted file mode 100644
index 9232a27..0000000
--- a/Invoice/allpay/invoice/integration/errorMsg/ErrorMessage.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package allpay.invoice.integration.errorMsg;
-
-public class ErrorMessage {
-public final static String CHECK_MAC_VALUE_NOT_EQUALL_ERROR = "檢查碼驗證錯誤!";
-
- public final static String NO_SUCH_METHOD_EXCEPTION = "找不到此方法可呼叫!";
-
- public final static String MInfo_NOT_SETTING = "未設定相應基本資料導致無法取得MerchantID, HashKey, HashIV!";
-
- public final static String MInfo_UNDIFINED_TAG = "payment_conf設定擋MInfo放入未定義的參數";
-
- public final static String OperatingMode_ERROR = "payment_conf設定擋OperatingMode設定錯誤";
-
- public final static String COLUMN_RULE_ERROR = "填入非法值,請參閱文件規範";
-
- public final static String CANNOT_BE_EMPTY = "不能為空";
-
- public final static String HASHTABLE_WITHOUT_CHKMACVALUE = "此Hashtable並沒有CheckMacValue可比較";
-
- public final static String JSON_FORMAT_ERROR = "JSON格式錯誤導致放入JSONObject錯誤";
-
- public final static String GEN_CHECK_MAC_VALUE_FAIL = "產生檢查碼失敗";
-
- public final static String OBJ_MISSING_FIELD = "物件缺少屬性";
-
- public final static String CONF_FILE_ERROR = "設定檔格式錯誤或是設定擋放置路徑錯誤!";
-
- public final static String POST_ERROR = "POST失敗";
-
- public final static String UNDIFINED_OBJECT = "傳入非定義的物件導致錯誤!";
-
- public final static String CVS_TOTALAMT_ERROR = "金額必須介於27至2000之間";
-
- public final static String LOG4J_PATH_ERROR = "傳入Log4j.properties路徑有誤或為空字串";
-}
diff --git a/Invoice/allpay/invoice/integration/exception/AllpayException.java b/Invoice/allpay/invoice/integration/exception/AllpayException.java
deleted file mode 100644
index b67eb88..0000000
--- a/Invoice/allpay/invoice/integration/exception/AllpayException.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package allpay.invoice.integration.exception;
-
-public class AllpayException extends Error{
- private static final long serialVersionUID = 1L;
- String NewExceptionMessage;
- public AllpayException(String s){
- this.NewExceptionMessage = s;
- }
- public String getNewExceptionMessage() {
- return NewExceptionMessage;
- }
- public void setNewExceptionMessage(String newExceptionMessage) {
- NewExceptionMessage = newExceptionMessage;
- }
- public void ShowExceptionMessage(){
-
- System.out.println("發生錯誤: " + getNewExceptionMessage());
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyAllowance.java b/Invoice/allpay/invoice/integration/verification/VerifyAllowance.java
deleted file mode 100644
index fe30dd0..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyAllowance.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.AllowanceObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyAllowance extends InvoiceVerifyBase{
- public VerifyAllowance(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("InvoiceAllowance").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(AllowanceObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("InvoiceAllowance").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
-// requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- verifyAllowance(obj);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyAllowanceInvalid.java b/Invoice/allpay/invoice/integration/verification/VerifyAllowanceInvalid.java
deleted file mode 100644
index 14f519d..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyAllowanceInvalid.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.AllowanceInvalidObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyAllowanceInvalid extends InvoiceVerifyBase{
- public VerifyAllowanceInvalid(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("InvoiceAllowanceInvalid").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(AllowanceInvalidObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("InvoiceAllowanceInvalid").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyCheckLoveCode.java b/Invoice/allpay/invoice/integration/verification/VerifyCheckLoveCode.java
deleted file mode 100644
index 52465d5..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyCheckLoveCode.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.CheckLoveCodeObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyCheckLoveCode extends InvoiceVerifyBase{
- public VerifyCheckLoveCode(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("CheckLoveCode").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(CheckLoveCodeObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("CheckLoveCode").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyCheckMobileBarCode.java b/Invoice/allpay/invoice/integration/verification/VerifyCheckMobileBarCode.java
deleted file mode 100644
index 9318596..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyCheckMobileBarCode.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.CheckMobileBarCodeObj;
-import allpay.invoice.integration.domain.QueryIssueInvalidObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyCheckMobileBarCode extends InvoiceVerifyBase{
- public VerifyCheckMobileBarCode(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("CheckMobileBarCode").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(CheckMobileBarCodeObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("CheckMobileBarCode").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyDelayIssue.java b/Invoice/allpay/invoice/integration/verification/VerifyDelayIssue.java
deleted file mode 100644
index ad65e9c..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyDelayIssue.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.DelayIssueObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyDelayIssue extends InvoiceVerifyBase{
- public VerifyDelayIssue(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("InvoiceDelayIssue").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(DelayIssueObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("InvoiceDelayIssue").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
-// requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- verifyDelayIssue(obj);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyInvoiceNotify.java b/Invoice/allpay/invoice/integration/verification/VerifyInvoiceNotify.java
deleted file mode 100644
index b5fe96c..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyInvoiceNotify.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.InvoiceNotifyObj;
-import allpay.invoice.integration.domain.QueryIssueInvalidObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyInvoiceNotify extends InvoiceVerifyBase{
- public VerifyInvoiceNotify(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("InvoiceNotify").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(InvoiceNotifyObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("InvoiceNotify").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- verifyNotify(obj);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyIssue.java b/Invoice/allpay/invoice/integration/verification/VerifyIssue.java
deleted file mode 100644
index 56e3d1b..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyIssue.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.IssueObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyIssue extends InvoiceVerifyBase{
- public VerifyIssue(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("InvoiceIssue").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(IssueObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("InvoiceIssue").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name").substring(0, 1).toUpperCase()+tmpEle.getAttribute("name").substring(1), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD + ": "+ tmpEle.getAttribute("name"));
- }
-// requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- verifyIssue(obj);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyIssueInvalid.java b/Invoice/allpay/invoice/integration/verification/VerifyIssueInvalid.java
deleted file mode 100644
index d74a518..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyIssueInvalid.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.IssueInvalidObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyIssueInvalid extends InvoiceVerifyBase{
- public VerifyIssueInvalid(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("InvoiceIssueInvalid").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(IssueInvalidObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("InvoiceIssueInvalid").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyQueryAllowance.java b/Invoice/allpay/invoice/integration/verification/VerifyQueryAllowance.java
deleted file mode 100644
index 8884be9..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyQueryAllowance.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.QueryAllowanceObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyQueryAllowance extends InvoiceVerifyBase{
- public VerifyQueryAllowance(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("QueryAllowance").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(QueryAllowanceObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("QueryAllowance").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyQueryAllowanceInvalid.java b/Invoice/allpay/invoice/integration/verification/VerifyQueryAllowanceInvalid.java
deleted file mode 100644
index 023071e..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyQueryAllowanceInvalid.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.QueryAllowanceInvalidObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyQueryAllowanceInvalid extends InvoiceVerifyBase{
- public VerifyQueryAllowanceInvalid(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("QueryAllowanceInvalid").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(QueryAllowanceInvalidObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("QueryAllowanceInvalid").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyQueryIssue.java b/Invoice/allpay/invoice/integration/verification/VerifyQueryIssue.java
deleted file mode 100644
index 4cdf02b..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyQueryIssue.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.QueryIssueObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyQueryIssue extends InvoiceVerifyBase{
- public VerifyQueryIssue(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("QueryIssue").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(QueryIssueObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("QueryIssue").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyQueryIssueInvalid.java b/Invoice/allpay/invoice/integration/verification/VerifyQueryIssueInvalid.java
deleted file mode 100644
index 43f100e..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyQueryIssueInvalid.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.QueryIssueInvalidObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyQueryIssueInvalid extends InvoiceVerifyBase{
- public VerifyQueryIssueInvalid(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("QueryIssueInvalid").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(QueryIssueInvalidObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("QueryIssueInvalid").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Invoice/allpay/invoice/integration/verification/VerifyTriggerIssue.java b/Invoice/allpay/invoice/integration/verification/VerifyTriggerIssue.java
deleted file mode 100644
index b13b2b4..0000000
--- a/Invoice/allpay/invoice/integration/verification/VerifyTriggerIssue.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package allpay.invoice.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allpay.invoice.integration.allpayOperator.InvoiceVerifyBase;
-import allpay.invoice.integration.domain.TriggerIssueObj;
-import allpay.invoice.integration.errorMsg.ErrorMessage;
-import allpay.invoice.integration.exception.AllpayException;
-
-public class VerifyTriggerIssue extends InvoiceVerifyBase{
- public VerifyTriggerIssue(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("InvoiceTriggerIssue").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty())
- throw new AllpayException(ErrorMessage.OperatingMode_ERROR);
- return url;
- }
-
- public void verifyParams(TriggerIssueObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("InvoiceTriggerIssue").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try{
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch(Exception e){
- throw new AllpayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Invoice/example/ExampleInvoice.java b/Invoice/example/ExampleInvoice.java
deleted file mode 100644
index abc3a5a..0000000
--- a/Invoice/example/ExampleInvoice.java
+++ /dev/null
@@ -1,169 +0,0 @@
-package example;
-
-import java.util.UUID;
-
-import allpay.invoice.integration.AllInOne;
-import allpay.invoice.integration.domain.AllowanceInvalidObj;
-import allpay.invoice.integration.domain.AllowanceObj;
-import allpay.invoice.integration.domain.CheckLoveCodeObj;
-import allpay.invoice.integration.domain.CheckMobileBarCodeObj;
-import allpay.invoice.integration.domain.DelayIssueObj;
-import allpay.invoice.integration.domain.InvoiceNotifyObj;
-import allpay.invoice.integration.domain.IssueInvalidObj;
-import allpay.invoice.integration.domain.IssueObj;
-import allpay.invoice.integration.domain.QueryAllowanceInvalidObj;
-import allpay.invoice.integration.domain.QueryAllowanceObj;
-import allpay.invoice.integration.domain.QueryIssueInvalidObj;
-import allpay.invoice.integration.domain.QueryIssueObj;
-import allpay.invoice.integration.domain.TriggerIssueObj;
-
-public class ExampleInvoice {
- public static AllInOne all;
- public static void main(String[] args){
- initial();
- System.out.println("Issue: "+postIssue());
- System.out.println("DelayIssue: "+postDelayIssue());
- System.out.println("TriggerIssue: "+postTriggerIssue());
- System.out.println("Allowance: "+postAllowance());
- System.out.println("IssueInvalid: "+postIssueInvalid());
- System.out.println("AllowanceInvalid: "+postAllowanceInvalid());
- System.out.println("QueryIssue: "+postQueryIssue());
- System.out.println("QueryAllowance: "+postQueryAllowance());
- System.out.println("QueryIssueInvalid: "+postQueryIssueInvalid());
- System.out.println("QueryAllowanceInvalid: "+postQueryAllowanceInvalid());
- System.out.println("InvoiceNotify: "+postInvoiceNotify());
- System.out.println("CheckMobileBarCode: "+postCheckMobileBarCode());
- System.out.println("CheckLoveCode: "+postCheckLoveCode());
- }
-
- private static void initial(){
- all = new AllInOne();
- }
-
- public static String postIssue(){
- IssueObj obj = new IssueObj();
- UUID uid = UUID.randomUUID();
- obj.setRelateNumber(uid.toString().replaceAll("-", "").substring(0, 30));
- obj.setCustomerName("Mark");
- obj.setCustomerAddr("Taiwan");
- obj.setCustomerPhone("0912345678");
- obj.setPrint("1");
- obj.setDonation("2");
- obj.setTaxType("1");
- obj.setSalesAmount("100");
- obj.setItemName("運動用品");
- obj.setItemCount("1");
- obj.setItemWord("箱");
- obj.setItemPrice("100");
- obj.setItemAmount("100");
- return all.issue(obj);
- }
-
- public static String postDelayIssue(){
- DelayIssueObj obj = new DelayIssueObj();
- obj.setRelateNumber("sdflfjwklekj");
- obj.setCustomerName("Mark");
- obj.setCustomerAddr("Taiwan");
- obj.setCustomerPhone("0912345678");
- obj.setPrint("1");
- obj.setDonation("2");
- obj.setTaxType("1");
- obj.setSalesAmount("100");
- obj.setItemName("運動用品");
- obj.setItemCount("1");
- obj.setItemWord("箱");
- obj.setItemPrice("100");
- obj.setItemAmount("100");
- obj.setDelayFlag("1");
- obj.setDelayDay("7");
- obj.setTsr("sdfowijl2khj");
- return all.delayIssue(obj);
- }
-
- public static String postTriggerIssue(){
- TriggerIssueObj obj = new TriggerIssueObj();
- obj.setTsr("sdflfkjwlekfholih");
- return all.triggerIssue(obj);
- }
-
- public static String postAllowance(){
- AllowanceObj obj = new AllowanceObj();
- obj.setInvoiceNo("XN12345678");
- obj.setAllowanceNotify("A");
- obj.setCustomerName("Mark");
- obj.setNotifyMail("abc@opay.com.tw");
- obj.setNotifyPhone("0912345678");
- obj.setAllowanceAmount("90");
- obj.setItemName("運動用品");
- obj.setItemCount("1");
- obj.setItemWord("箱");
- obj.setItemPrice("90");
- obj.setItemAmount("90");
- return all.allowance(obj);
- }
-
- public static String postIssueInvalid(){
- IssueInvalidObj obj = new IssueInvalidObj();
- obj.setInvoiceNumber("XN12345678");
- obj.setReason("瑕疵");
- return all.issueInvalid(obj);
- }
-
- public static String postAllowanceInvalid(){
- AllowanceInvalidObj obj = new AllowanceInvalidObj();
- obj.setInvoiceNo("XN12345678");
- obj.setAllowanceNo("1234123412341234");
- obj.setReason("測試");
- return all.allowanceInvalid(obj);
- }
-
- public static String postQueryIssue(){
- QueryIssueObj obj = new QueryIssueObj();
- obj.setRelateNumber("sdjfklkwjegoihoi");
- return all.queryIssue(obj);
- }
-
- public static String postQueryAllowance(){
- QueryAllowanceObj obj = new QueryAllowanceObj();
- obj.setInvoiceNo("TU00005700");
- obj.setAllowanceNo("2017052311296594");
- return all.queryAllowance(obj);
- }
-
- public static String postQueryIssueInvalid(){
- QueryIssueInvalidObj obj = new QueryIssueInvalidObj();
- obj.setRelateNumber("sdfwhifueifhldiohf");
- return all.queryIssueInvalid(obj);
- }
-
- public static String postQueryAllowanceInvalid(){
- QueryAllowanceInvalidObj obj = new QueryAllowanceInvalidObj();
- obj.setInvoiceNo("TU00005705");
- obj.setAllowanceNo("2017052311296404");
- return all.queryAllowanceInvalid(obj);
- }
-
- public static String postInvoiceNotify(){
- InvoiceNotifyObj obj = new InvoiceNotifyObj();
- obj.setInvoiceNo("XN12345678");
- obj.setAllowanceNo("Allpay0123456789");
- obj.setPhone("0912345678");
- obj.setNotifyMail("abc@allpay.com");
- obj.setNotify("A");
- obj.setInvoiceTag("I");
- obj.setNotified("A");
- return all.invoiceNotify(obj);
- }
-
- public static String postCheckMobileBarCode(){
- CheckMobileBarCodeObj obj = new CheckMobileBarCodeObj();
- obj.setBarCode("/6G+X3LQ");
- return all.checkMobileBarCode(obj);
- }
-
- public static String postCheckLoveCode(){
- CheckLoveCodeObj obj = new CheckLoveCodeObj();
- obj.setLoveCode("X123456");
- return all.checkLoveCode(obj);
- }
-}
diff --git a/Invoice/invoice_conf.xml b/Invoice/invoice_conf.xml
deleted file mode 100644
index d3d6708..0000000
--- a/Invoice/invoice_conf.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
- Test
- Stage_Account
-
-
-
-
-
-
-
-
- 2000132
- ejCk326UnaZWKisg
- q9jcZX8Ib9LM8wYK
-
-
-
-
\ No newline at end of file
diff --git a/Invoice/jars/javax.servlet-3.0.0.v201112011016.jar b/Invoice/jars/javax.servlet-3.0.0.v201112011016.jar
deleted file mode 100644
index b135409..0000000
Binary files a/Invoice/jars/javax.servlet-3.0.0.v201112011016.jar and /dev/null differ
diff --git a/Invoice/jars/log4j.jar b/Invoice/jars/log4j.jar
deleted file mode 100644
index 6251307..0000000
Binary files a/Invoice/jars/log4j.jar and /dev/null differ
diff --git a/Invoice/sample/SampleCode.java b/Invoice/sample/SampleCode.java
deleted file mode 100644
index 414716d..0000000
--- a/Invoice/sample/SampleCode.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package sample;
-
-import allpay.invoice.integration.AllInOne;
-import allpay.invoice.integration.domain.IssueObj;
-
-/**
- * 此為參考用的範例程式碼,並不完整,請勿直接套用在您的商業環境,以免出錯
- * @author mark.chiu
- *
- */
-public class SampleCode {
- private AllInOne all;
-
- public void initial(){
- //此步驟為透過AllInOne建構子來實體化此類別,順便輸入log4j.properties的位置路徑
- //若不需要產生log檔,可直接在log4j.properties更改設定,或是不傳入任何參數
- // all = new AllInOne();
- all = new AllInOne("XXX/000");
- }
-
- public String sampleIssue(){
- initial();
- // 實體化出所需要的domain物件
- IssueObj issue = new IssueObj();
- // 商家後台自行產生不重複的流水號,或是UUID隨機產生不重複的廠商交易編號(記得把'-'濾掉,僅接受英文字與數字)
- issue.setRelateNumber("XXX");
- // 可以從前端使用者填入資料,或是後端DB撈出買家資訊
- issue.setCustomerName("XXX");
- // 從後端依據商品編號撈出商品資訊,請勿從前端撈取資料
- issue.setItemName("XXX");
- // 呼叫AllInOne中相對應的method,並切收回傳值
- String response = all.issue(issue);
- return response;
- }
-}
diff --git a/Payment/Doc/Java_allpay_PaymentSDK.docx b/Payment/Doc/Java_allpay_PaymentSDK.docx
deleted file mode 100644
index 1e8d47b..0000000
Binary files a/Payment/Doc/Java_allpay_PaymentSDK.docx and /dev/null differ
diff --git a/Payment/Doc/Java_allpay_PaymentSDK.pdf b/Payment/Doc/Java_allpay_PaymentSDK.pdf
deleted file mode 100644
index 91463bf..0000000
Binary files a/Payment/Doc/Java_allpay_PaymentSDK.pdf and /dev/null differ
diff --git a/Payment/README.md b/Payment/README.md
deleted file mode 100644
index 295e546..0000000
--- a/Payment/README.md
+++ /dev/null
@@ -1,33 +0,0 @@
-# 歐付寶 全方位(All In One)金流介接Java第二版
----
-
-## 1. 介紹
-
- - 歐付寶對於有收款需求的會員,提供完整的交易介接API,並有多種收款方式(All In One)可選擇使用。 本套件為Java版,可使用作建立訂單,接受付款通知,查詢訂單等金流交易的應用。
- - 收款方式清單:
- - 信用卡(一次付清、分期付款、定期定額)
- - 歐付寶儲值消費
- - 網路ATM
- - ATM櫃員機
- - 超商代碼
- - 財付通
-
-
-## 2. 安裝環境
- - _jdk 1.6以上_
-
-
-## 3. 使用教學
- - 使用者文件放置於Doc資料夾內,可供參閱
- - [歐付寶開發者專區]有詳細的教學說明及文件,並有線上模擬範例
-
-
-## 4. 聯絡我們
- - 歐付寶技術客服信箱: techsupport@allpay.com.tw
-
-
-
-
-[//]: # (These are reference links used in the body of this note and get stripped out when the markdown processor does its job. There is no need to format nicely because it shouldn't be seen. Thanks SO - http://stackoverflow.com/questions/4823468/store-comments-in-markdown-syntax)
-
- [歐付寶開發者專區]:
\ No newline at end of file
diff --git a/Payment/allPay/payment/integration/AllInOne.java b/Payment/allPay/payment/integration/AllInOne.java
deleted file mode 100644
index 0d833fc..0000000
--- a/Payment/allPay/payment/integration/AllInOne.java
+++ /dev/null
@@ -1,608 +0,0 @@
-package allPay.payment.integration;
-
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Set;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import javax.servlet.http.HttpServletRequest;
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
-import org.apache.log4j.PropertyConfigurator;
-
-import allPay.payment.integration.allPayOperator.AllPayFunction;
-import allPay.payment.integration.domain.ATMRequestObj;
-import allPay.payment.integration.domain.AioChargebackObj;
-import allPay.payment.integration.domain.AioCheckOutALL;
-import allPay.payment.integration.domain.AioCheckOutATM;
-import allPay.payment.integration.domain.AioCheckOutCVS;
-import allPay.payment.integration.domain.AioCheckOutDevide;
-import allPay.payment.integration.domain.AioCheckOutOneTime;
-import allPay.payment.integration.domain.AioCheckOutPeriod;
-import allPay.payment.integration.domain.AioCheckOutTenpay;
-import allPay.payment.integration.domain.AioCheckOutTopUpUsed;
-import allPay.payment.integration.domain.AioCheckOutWebATM;
-import allPay.payment.integration.domain.CVSRequestObj;
-import allPay.payment.integration.domain.CaptureObj;
-import allPay.payment.integration.domain.DoActionObj;
-import allPay.payment.integration.domain.FundingReconDetailObj;
-import allPay.payment.integration.domain.InvoiceObj;
-import allPay.payment.integration.domain.QueryCreditCardPeriodInfoObj;
-import allPay.payment.integration.domain.QueryTradeInfoObj;
-import allPay.payment.integration.domain.QueryTradeObj;
-import allPay.payment.integration.domain.TradeNoAioObj;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-import allPay.payment.integration.verification.VerifyAioChargeback;
-import allPay.payment.integration.verification.VerifyAioCheckOut;
-import allPay.payment.integration.verification.VerifyCapture;
-import allPay.payment.integration.verification.VerifyDoAction;
-import allPay.payment.integration.verification.VerifyFundingReconDetail;
-import allPay.payment.integration.verification.VerifyQueryCreditTrade;
-import allPay.payment.integration.verification.VerifyQueryTrade;
-import allPay.payment.integration.verification.VerifyQueryTradeInfo;
-import allPay.payment.integration.verification.VerifyTradeNoAio;
-
-/**
- * 全功能無履約保證類別
- * @author mark.chiu
- *
- */
-public class AllInOne extends AllInOneBase{
-
- private final static Logger log = Logger.getLogger(AllInOne.class.getName());
-
- /**
- * AllInOne Constructor
- * 參數帶入log4j.properties的路徑,若帶入空字串則預設不產生log
- * @param log4jPropertiesPath
- */
- public AllInOne(String log4jPropertiesPath){
- super();
- if(log4jPropertiesPath != "" && log4jPropertiesPath != null){
- if(log4jPropertiesPath.substring(log4jPropertiesPath.length()-1).equals("/"))
- PropertyConfigurator.configure(log4jPropertiesPath + "log4j.properties");
- else
- PropertyConfigurator.configure(log4jPropertiesPath + "/log4j.properties");
- } else{
- Logger.getRootLogger().setLevel(Level.OFF);
- }
- }
-
- /**
- * 檢查Hashtable中的檢查碼是否正確(確保資料未被竄改)
- * @param Hashtable params
- * @return boolean
- */
- public boolean compareCheckMacValue(Hashtable params){
- String checkMacValue = "";
- if(!params.containsKey("CheckMacValue")){
- throw new AllPayException(ErrorMessage.HASHTABLE_WITHOUT_CHKMACVALUE);
- }
- try {
- checkMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, params);
- } catch (AllPayException e) {
- throw new AllPayException(ErrorMessage.GEN_CHECK_MAC_VALUE_FAIL);
- }
- if(checkMacValue.equals(params.get("CheckMacValue"))){
- return true;
- } else{
- return false;
- }
- }
-
- /**
- * 會員申請撥款/退款的方法
- * @param captureObj
- * @return response string
- */
- public String capture(CaptureObj captureObj){
- captureObj.setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && captureObj.getMerchantID().isEmpty()){
- captureObj.setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !captureObj.getMerchantID().isEmpty()){
- } else {
- captureObj.setMerchantID(MerchantID);
- }
- log.info("capture params: " + captureObj.toString());
- String result = "";
- String CheckMacValue = "";
- try {
- VerifyCapture verify = new VerifyCapture();
- captureUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(captureObj);
- CheckMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, captureObj);
- log.info("capture generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllPayFunction.genHttpValue(captureObj, CheckMacValue);
- log.info("capture post String: " + httpValue);
- result = AllPayFunction.httpPost(captureUrl, httpValue, "UTF-8");
- } catch (AllPayException e2) {
- e2.ShowExceptionMessage();
- log.error(e2.getNewExceptionMessage());
- throw new AllPayException(e2.getNewExceptionMessage());
- }
- return result;
- }
-
- /**
- * 下載信用卡撥款對帳資料檔的方法
- * @param fundingReconDetailObj
- * @return response string
- */
- public String fundingReconDetail(FundingReconDetailObj fundingReconDetailObj){
- fundingReconDetailObj.setMerchantID(MerchantID);
- log.info("fundingReconDetail params: " + fundingReconDetailObj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyFundingReconDetail verify = new VerifyFundingReconDetail();
- fundingReconDetailUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(fundingReconDetailObj);
- CheckMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, fundingReconDetailObj);
- log.info("fundingReconDetail generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllPayFunction.genHttpValue(fundingReconDetailObj, CheckMacValue);
- log.info("fundingReconDetail post String: " + httpValue);
- result = AllPayFunction.httpPost(fundingReconDetailUrl, httpValue, "BIG5");
- List subRE = new ArrayList();
- Pattern pattern = Pattern.compile("\\d{8}\\,\\d{6}\\,\\d{5}");
- Matcher matcher = pattern.matcher(result);
- while(matcher.find()){
- subRE.add(matcher.group());
- }
- pattern = Pattern.compile("\\,+\\u6bcf\\u65e5\\u5c0f\\u8a08");
- matcher = pattern.matcher(result);
- while(matcher.find()){
- subRE.add(matcher.group());
- break;
- }
- pattern = Pattern.compile("\\,+\\u5408\\u8a08");
- matcher = pattern.matcher(result);
- while(matcher.find()){
- subRE.add(matcher.group());
- break;
- }
- pattern = Pattern.compile("\\u6388\\u6b0a\\u55ae\\u865f");
- matcher = pattern.matcher(result);
- while(matcher.find()){
- subRE.add(matcher.group());
- break;
- }
- for(String tmp : subRE){
- result = result.replace(tmp, "\r\n"+tmp);
- }
- result = result.substring(2);
- } catch (AllPayException e2) {
- e2.ShowExceptionMessage();
- log.error(e2.getNewExceptionMessage());
- throw new AllPayException(e2.getNewExceptionMessage());
- }
- return result;
- }
-
- /**
- * 會員通知退款的方法
- * @param aioChargebackObj
- * @return response string
- */
- public String aioChargeback(AioChargebackObj aioChargebackObj){
- aioChargebackObj.setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && aioChargebackObj.getMerchantID().isEmpty()){
- aioChargebackObj.setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !aioChargebackObj.getMerchantID().isEmpty()){
- } else {
- aioChargebackObj.setMerchantID(MerchantID);
- }
- log.info("aioChargeback params: " + aioChargebackObj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyAioChargeback verify = new VerifyAioChargeback();
- aioChargebackUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(aioChargebackObj);
- CheckMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, aioChargebackObj);
- log.info("aioChargeback generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllPayFunction.genHttpValue(aioChargebackObj, CheckMacValue);
- log.info("aioChargeback post String: " + httpValue);
- System.out.println(httpValue);
- System.out.println(aioChargebackUrl);
- result = AllPayFunction.httpPost(aioChargebackUrl, httpValue, "UTF-8");
- } catch (AllPayException e2) {
- e2.ShowExceptionMessage();
- log.error(e2.getNewExceptionMessage());
- throw new AllPayException(e2.getNewExceptionMessage());
- }
- return result;
- }
-
- /**
- * 查詢信用卡單筆明細記錄的方法
- * @param queryTradeObj
- * @return response string
- */
- public String queryTrade(QueryTradeObj queryTradeObj){
- queryTradeObj.setMerchantID(MerchantID);
- log.info("queryTrade params: " + queryTradeObj.toString());
- String result = "";
- String CheckMacValue = "";
- try {
- VerifyQueryTrade verify = new VerifyQueryTrade();
- queryTradeUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(queryTradeObj);
- CheckMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, queryTradeObj);
- log.info("queryTrade generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllPayFunction.genHttpValue(queryTradeObj, CheckMacValue);
- log.info("queryTrade post String: " + httpValue);
- result = AllPayFunction.httpPost(queryTradeUrl, httpValue, "UTF-8");
- } catch (AllPayException e2) {
- e2.ShowExceptionMessage();
- log.error(e2.getNewExceptionMessage());
- throw new AllPayException(e2.getNewExceptionMessage());
- }
- return result;
- }
-
- /**
- * 下載會員對帳媒體檔的方法
- * @param tradeNoAioObj
- * @return response string
- */
- public String tradeNoAio(TradeNoAioObj tradeNoAioObj){
- tradeNoAioObj.setMerchantID(MerchantID);
- log.info("tradeNoAio params: " + tradeNoAioObj.toString());
- String result = "";
- String CheckMacValue = "";
- try{
- VerifyTradeNoAio verify = new VerifyTradeNoAio();
- tradeNoAioUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(tradeNoAioObj);
- CheckMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, tradeNoAioObj);
- log.info("tradeNoAio generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllPayFunction.genHttpValue(tradeNoAioObj, CheckMacValue);
- log.info("tradeNoAio post String: " + httpValue);
- result = AllPayFunction.httpPost(tradeNoAioUrl, httpValue, "BIG5");
- List subRE = new ArrayList();
- if(tradeNoAioObj.getMediaFormated().equals("0")){
- Pattern pattern = Pattern.compile("\\d{4}\\-\\d{2}\\-\\d{2} \\d{2}:\\d{2}:\\d{2},\\d{16}");
- Matcher matcher = pattern.matcher(result);
- while(matcher.find()){
- subRE.add(matcher.group());
- }
- for(String tmp : subRE){
- result = result.replace(tmp, "\r\n"+tmp);
- }
- } else if(tradeNoAioObj.getMediaFormated().equals("1")){
- result = result.replace("=", "");
- Pattern pattern = Pattern.compile("\"\\d{4}\\/\\d{2}\\/\\d{2} \\d{2}:\\d{2}:\\d{2}\"");
- Matcher matcher = pattern.matcher(result);
- while(matcher.find()){
- subRE.add(matcher.group());
- }
- for(String tmp : subRE){
- result = result.replace(tmp, "\r\n"+tmp);
- }
- }
- } catch (AllPayException e2) {
- e2.ShowExceptionMessage();
- log.error(e2.getNewExceptionMessage());
- throw new AllPayException(e2.getNewExceptionMessage());
- }
- return result;
- }
-
- /**
- * 信用卡關帳/退刷/取消/放棄的方法
- * @param doActionObj
- * @return response string
- */
- public String doAction(DoActionObj doActionObj){
- doActionObj.setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && doActionObj.getMerchantID().isEmpty()){
- doActionObj.setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !doActionObj.getMerchantID().isEmpty()){
- } else {
- doActionObj.setMerchantID(MerchantID);
- }
- log.info("doAction params: " + doActionObj.toString());
- String result = "";
- String CheckMacValue = "";
- try {
- VerifyDoAction verify = new VerifyDoAction();
- doActionUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(doActionObj);
- CheckMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, doActionObj);
- log.info("doAction generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllPayFunction.genHttpValue(doActionObj, CheckMacValue);
- log.info("doAction post String: " + httpValue);
- result = AllPayFunction.httpPost(doActionUrl, httpValue, "UTF-8");
- } catch (AllPayException e2) {
- e2.ShowExceptionMessage();
- log.error(e2.getNewExceptionMessage());
- throw new AllPayException(e2.getNewExceptionMessage());
- }
- return result;
- }
-
- /**
- * 查詢訂單資料的方法
- * @param queryTradeInfoObj
- * @return response string
- */
- public String queryTradeInfo(QueryTradeInfoObj queryTradeInfoObj){
- queryTradeInfoObj.setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && queryTradeInfoObj.getMerchantID().isEmpty()){
- queryTradeInfoObj.setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !queryTradeInfoObj.getMerchantID().isEmpty()){
- } else {
- queryTradeInfoObj.setMerchantID(MerchantID);
- }
- queryTradeInfoObj.setTimeStamp(AllPayFunction.genUnixTimeStamp());
- log.info("queryTradeInfo params: " + queryTradeInfoObj.toString());
- String result = "";
- String CheckMacValue = "";
- try {
- VerifyQueryTradeInfo verify = new VerifyQueryTradeInfo();
- queryTradeInfoUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(queryTradeInfoObj);
- CheckMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, queryTradeInfoObj);
- log.info("queryTradeInfo generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllPayFunction.genHttpValue(queryTradeInfoObj, CheckMacValue);
- log.info("queryTradeInfo post String: " + httpValue);
- System.out.println(httpValue);
- System.out.println(queryTradeInfoUrl);
- result = AllPayFunction.httpPost(queryTradeInfoUrl, httpValue, "UTF-8");
- } catch (AllPayException e2) {
- e2.ShowExceptionMessage();
- log.error(e2.getNewExceptionMessage());
- throw new AllPayException(e2.getNewExceptionMessage());
- }
- return result;
- }
-
- /**
- * 信用卡定期定額訂單查詢
- * @param queryCreditCardPeriodInfoObj
- * @return response JSON string
- */
- public String queryCreditCardPeriodInfo(QueryCreditCardPeriodInfoObj queryCreditCardPeriodInfoObj) {
- queryCreditCardPeriodInfoObj.setMerchantID(MerchantID);
- queryCreditCardPeriodInfoObj.setTimeStamp(AllPayFunction.genUnixTimeStamp());
- log.info("queryCreditCardPeriodeInfo params: " + queryCreditCardPeriodInfoObj.toString());
- String result = "";
- String CheckMacValue = "";
- try {
- VerifyQueryCreditTrade verify = new VerifyQueryCreditTrade();
- queryCreditTradeUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(queryCreditCardPeriodInfoObj);
- CheckMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, queryCreditCardPeriodInfoObj);
- log.info("queryCreditCardPeriodInfo generate CheckMacValue: " + CheckMacValue);
- String httpValue = AllPayFunction.genHttpValue(queryCreditCardPeriodInfoObj, CheckMacValue);
- log.info("queryCreditCardPeriodInfo post String: " + httpValue);
- result = AllPayFunction.httpPost(queryCreditTradeUrl, httpValue, "UTF-8");
- } catch (AllPayException e2) {
- e2.ShowExceptionMessage();
- log.error(e2.getNewExceptionMessage());
- throw new AllPayException(e2.getNewExceptionMessage());
- }
- return result;
- }
-
-
- /**
- * 產生訂單Html Form的方法
- * @param obj AioCheckOut類型的物件
- * @param invoice
- * @return String
- */
- public String aioCheckOut(Object obj, InvoiceObj invoice){
- StringBuilder out = new StringBuilder();
- String ignoreParam = "";
- if(obj instanceof AioCheckOutALL){
- ((AioCheckOutALL) obj).setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && ((AioCheckOutALL) obj).getMerchantID().isEmpty()){
- ((AioCheckOutALL) obj).setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !((AioCheckOutALL) obj).getMerchantID().isEmpty()){
- } else {
- ((AioCheckOutALL) obj).setMerchantID(MerchantID);
- }
- ((AioCheckOutALL) obj).setInvoiceMark(invoice == null? "N" : "Y");
- if(ignorePayment.length > 0){
- ignoreParam = Arrays.toString(ignorePayment);
- ignoreParam = ignoreParam.replaceAll(", ", "#");
- ignoreParam = ignoreParam.substring(1, ignoreParam.length()-1);
- ((AioCheckOutALL) obj).setIgnorePayment(ignoreParam);
- }
- log.info("aioCheckOutALL params: " + ((AioCheckOutALL) obj).toString());
- } else if(obj instanceof AioCheckOutTopUpUsed){
- ((AioCheckOutTopUpUsed) obj).setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && ((AioCheckOutTopUpUsed) obj).getMerchantID().isEmpty()){
- ((AioCheckOutTopUpUsed) obj).setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !((AioCheckOutTopUpUsed) obj).getMerchantID().isEmpty()){
- } else {
- ((AioCheckOutTopUpUsed) obj).setMerchantID(MerchantID);
- }
- ((AioCheckOutTopUpUsed) obj).setInvoiceMark(invoice == null? "N" : "Y");
- log.info("aioCheckOutTopUpUsed params: " + ((AioCheckOutTopUpUsed) obj).toString());
- }else if(obj instanceof AioCheckOutATM){
- ((AioCheckOutATM) obj).setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && ((AioCheckOutATM) obj).getMerchantID().isEmpty()){
- ((AioCheckOutATM) obj).setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !((AioCheckOutATM) obj).getMerchantID().isEmpty()){
- } else {
- ((AioCheckOutATM) obj).setMerchantID(MerchantID);
- }
- ((AioCheckOutATM) obj).setInvoiceMark(invoice == null? "N" : "Y");
- log.info("aioCheckOutATM params: " + ((AioCheckOutATM) obj).toString());
- } else if(obj instanceof AioCheckOutCVS){
- ((AioCheckOutCVS) obj).setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && ((AioCheckOutCVS) obj).getMerchantID().isEmpty()){
- ((AioCheckOutCVS) obj).setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !((AioCheckOutCVS) obj).getMerchantID().isEmpty()){
- } else {
- ((AioCheckOutCVS) obj).setMerchantID(MerchantID);
- }
- ((AioCheckOutCVS) obj).setInvoiceMark(invoice == null? "N" : "Y");
- String TotalAmount = ((AioCheckOutCVS) obj).getTotalAmount();
- if(Integer.parseInt(TotalAmount) < 27 || Integer.parseInt(TotalAmount) > 20000){
- throw new AllPayException(ErrorMessage.CVS_TOTALAMT_ERROR);
- }
- log.info("aioCheckOutCVS params: " + ((AioCheckOutCVS) obj).toString());
- } else if(obj instanceof AioCheckOutDevide){
- ((AioCheckOutDevide) obj).setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && ((AioCheckOutDevide) obj).getMerchantID().isEmpty()){
- ((AioCheckOutDevide) obj).setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !((AioCheckOutDevide) obj).getMerchantID().isEmpty()){
- } else {
- ((AioCheckOutDevide) obj).setMerchantID(MerchantID);
- }
- ((AioCheckOutDevide) obj).setInvoiceMark(invoice == null? "N" : "Y");
- log.info("aioCheckOutDevide params: " + ((AioCheckOutDevide) obj).toString());
- } else if(obj instanceof AioCheckOutOneTime){
- ((AioCheckOutOneTime) obj).setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && ((AioCheckOutOneTime) obj).getMerchantID().isEmpty()){
- ((AioCheckOutOneTime) obj).setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !((AioCheckOutOneTime) obj).getMerchantID().isEmpty()){
- } else {
- ((AioCheckOutOneTime) obj).setMerchantID(MerchantID);
- }
- ((AioCheckOutOneTime) obj).setInvoiceMark(invoice == null? "N" : "Y");
- log.info("aioCheckOutOneTime params: " + ((AioCheckOutOneTime) obj).toString());
- } else if(obj instanceof AioCheckOutPeriod){
- ((AioCheckOutPeriod) obj).setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && ((AioCheckOutPeriod) obj).getMerchantID().isEmpty()){
- ((AioCheckOutPeriod) obj).setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !((AioCheckOutPeriod) obj).getMerchantID().isEmpty()){
- } else {
- ((AioCheckOutPeriod) obj).setMerchantID(MerchantID);
- }
- ((AioCheckOutPeriod) obj).setInvoiceMark(invoice == null? "N" : "Y");
- log.info("aioCheckOutPeriod params: " + ((AioCheckOutPeriod) obj).toString());
- } else if(obj instanceof AioCheckOutTenpay){
- ((AioCheckOutTenpay) obj).setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && ((AioCheckOutTenpay) obj).getMerchantID().isEmpty()){
- ((AioCheckOutTenpay) obj).setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !((AioCheckOutTenpay) obj).getMerchantID().isEmpty()){
- } else {
- ((AioCheckOutTenpay) obj).setMerchantID(MerchantID);
- }
- ((AioCheckOutTenpay) obj).setInvoiceMark(invoice == null? "N" : "Y");
- log.info("aioCheckOutTenpay params: " + ((AioCheckOutTenpay) obj).toString());
- } else if(obj instanceof AioCheckOutWebATM){
- ((AioCheckOutWebATM) obj).setPlatformID(PlatformID);
- if(!PlatformID.isEmpty() && ((AioCheckOutWebATM) obj).getMerchantID().isEmpty()){
- ((AioCheckOutWebATM) obj).setMerchantID(MerchantID);
- } else if(!PlatformID.isEmpty() && !((AioCheckOutWebATM) obj).getMerchantID().isEmpty()){
- } else {
- ((AioCheckOutWebATM) obj).setMerchantID(MerchantID);
- }
- ((AioCheckOutWebATM) obj).setInvoiceMark(invoice == null? "N" : "Y");
- log.info("aioCheckOutWebATM params: " + ((AioCheckOutWebATM) obj).toString());
- } else{
- throw new AllPayException(ErrorMessage.UNDIFINED_OBJECT);
- }
- try {
- VerifyAioCheckOut verify = new VerifyAioCheckOut();
- aioCheckOutUrl = verify.getAPIUrl(operatingMode);
- verify.verifyParams(obj);
- if(invoice != null){
- log.info("aioCheckOut invoice params: " + invoice.toString());
- verify.verifyParams(invoice);
- verify.verifyInvoice(invoice);
- invoice.setCustomerName(AllPayFunction.urlEncode(invoice.getCustomerName()));
- invoice.setCustomerAddr(AllPayFunction.urlEncode(invoice.getCustomerAddr()));
- invoice.setCustomerEmail(AllPayFunction.urlEncode(invoice.getCustomerEmail()));
- invoice.setInvoiceItemName(AllPayFunction.urlEncode(invoice.getInvoiceItemName()));
- invoice.setInvoiceItemWord(AllPayFunction.urlEncode(invoice.getInvoiceItemWord()));
- invoice.setInvoiceRemark(AllPayFunction.urlEncode(invoice.getInvoiceRemark()));
-
- }
- out.append(genCheckOutHtmlCode(obj, invoice));
- } catch (AllPayException e2) {
- e2.ShowExceptionMessage();
- log.error(e2.getNewExceptionMessage());
- throw new AllPayException(e2.getNewExceptionMessage());
- }
- return out.toString();
- }
-
- /**
- * ATM, CVS取號結果通知方法,接收傳送至PaymentInfoURL的資料。回傳物件分為ATMRequestObj, CVSRequestObj二種,請用適當的物件承接以免出錯
- * @param req
- * @return obj
- */
- public Object aioCheckOutFeedback(HttpServletRequest req){
- List parameterNames = new ArrayList(req.getParameterMap().keySet());
- if(parameterNames.contains("BankCode")){
- ATMRequestObj obj = new ATMRequestObj();
- for(String name: parameterNames){
- Method method;
- try {
- method = obj.getClass().getMethod("set"+name, null);
- method.invoke(obj, req.getParameter(name));
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- }
- log.info("ATMRequest params: " + obj.toString());
- String checkMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("ATMRequest self generate CheckMacValue: " + checkMacValue + ", received CheckMacValue: " + obj.getCheckMacValue());
- if(!checkMacValue.equals(obj.getCheckMacValue())){
- log.error(ErrorMessage.CHECK_MAC_VALUE_NOT_EQUALL_ERROR);
- throw new AllPayException(ErrorMessage.CHECK_MAC_VALUE_NOT_EQUALL_ERROR);
- }
- return obj;
- }else{
- CVSRequestObj obj = new CVSRequestObj();
- for(String name: parameterNames){
- Method method;
- try {
- method = obj.getClass().getMethod("set"+name, null);
- method.invoke(obj, req.getParameter(name));
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- }
- log.info("CVSRequest params: " + obj.toString());
- String checkMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, obj);
- log.info("CVSRequest self generate CheckMacValue: " + checkMacValue + ", received CheckMacValue: " + obj.getCheckMacValue());
- if(!checkMacValue.equals(obj.getCheckMacValue())){
- log.error(ErrorMessage.CHECK_MAC_VALUE_NOT_EQUALL_ERROR);
- throw new AllPayException(ErrorMessage.CHECK_MAC_VALUE_NOT_EQUALL_ERROR);
- }
- return obj;
- }
- }
-
- /**
- * 產生HTML code
- * @param aio object
- * @param invoice object
- * @return string
- */
- private String genCheckOutHtmlCode(Object aio, InvoiceObj invoice) {
- StringBuilder builder = new StringBuilder();
- Hashtable fieldValue = AllPayFunction.objToHashtable(aio);
- Hashtable invoiceField = new Hashtable();
- if(invoice != null){
- invoiceField = AllPayFunction.objToHashtable(invoice);
- fieldValue.putAll(invoiceField);
- }
- String CheckMacValue = AllPayFunction.genCheckMacValue(HashKey, HashIV, fieldValue);
- log.info("aioCheckOut generate CheckMacValue: " + CheckMacValue);
- fieldValue.put("CheckMacValue", CheckMacValue);
- Set key = fieldValue.keySet();
- String name[] = key.toArray(new String[key.size()]);
- builder.append("");
- return builder.toString();
- }
-}
diff --git a/Payment/allPay/payment/integration/AllInOneBase.java b/Payment/allPay/payment/integration/AllInOneBase.java
deleted file mode 100644
index b55ab5d..0000000
--- a/Payment/allPay/payment/integration/AllInOneBase.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package allPay.payment.integration;
-
-import java.io.UnsupportedEncodingException;
-import java.net.URLDecoder;
-
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allPay.payment.integration.allPayOperator.AllPayFunction;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-public class AllInOneBase {
- protected static String operatingMode;
- protected static String mercProfile;
- protected static String isProjectContractor;
- protected static String HashKey;
- protected static String HashIV;
- protected static String MerchantID;
- protected static String PlatformID;
- protected static String aioCheckOutUrl;
- protected static String doActionUrl;
- protected static String queryCreditTradeUrl;
- protected static String queryTradeInfoUrl;
- protected static String captureUrl;
- protected static String queryTradeUrl;
- protected static String tradeNoAioUrl;
- protected static String fundingReconDetailUrl;
- protected static String aioChargebackUrl;
- protected static String[] ignorePayment;
- public AllInOneBase(){
- try{
- Document doc;
-
- /* when using web project, please use the following code with try/catch wrapped*/
- ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
- String configPath = URLDecoder.decode(classLoader.getResource("/payment_conf.xml").getPath(), "UTF-8");
- doc = AllPayFunction.xmlParser(configPath);
- /* when using testing code*/
-// String paymentConfPath = "./src/main/resources/payment_conf.xml";
-// doc = AllPayFunction.xmlParser(paymentConfPath);
-
- doc.getDocumentElement().normalize();
- //OperatingMode
- Element ele = (Element)doc.getElementsByTagName("OperatingMode").item(0);
- operatingMode = ele.getTextContent();
- //MercProfile
- ele = (Element)doc.getElementsByTagName("MercProfile").item(0);
- mercProfile = ele.getTextContent();
- //IsProjectContractor
- ele = (Element)doc.getElementsByTagName("IsProjectContractor").item(0);
- isProjectContractor = ele.getTextContent();
- //MID, HashKey, HashIV, PlatformID
- NodeList nodeList = doc.getElementsByTagName("MInfo");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("name").equalsIgnoreCase(mercProfile)){
- MerchantID = ele.getElementsByTagName("MerchantID").item(0).getTextContent();
- HashKey = ele.getElementsByTagName("HashKey").item(0).getTextContent();
- HashIV = ele.getElementsByTagName("HashIV").item(0).getTextContent();
- PlatformID = isProjectContractor.equalsIgnoreCase("N")? "" : MerchantID;
- }
- }
- //IgnorePayment
- ele = (Element)doc.getElementsByTagName("IgnorePayment").item(0);
- nodeList = ele.getElementsByTagName("Method");
- ignorePayment = new String[nodeList.getLength()];
- for(int i = 0; i < nodeList.getLength(); i++){
- ignorePayment[i] = nodeList.item(i).getTextContent();
- }
- if(HashKey == null){
- throw new AllPayException(ErrorMessage.MInfo_NOT_SETTING);
- }
- } catch (UnsupportedEncodingException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
-}
diff --git a/Payment/allPay/payment/integration/allPayOperator/AllPayFunction.java b/Payment/allPay/payment/integration/allPayOperator/AllPayFunction.java
deleted file mode 100644
index a57bc33..0000000
--- a/Payment/allPay/payment/integration/allPayOperator/AllPayFunction.java
+++ /dev/null
@@ -1,322 +0,0 @@
-package allPay.payment.integration.allPayOperator;
-
-import java.io.BufferedReader;
-import java.io.DataOutputStream;
-import java.io.InputStreamReader;
-import java.io.UnsupportedEncodingException;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.net.HttpURLConnection;
-import java.net.URL;
-import java.net.URLEncoder;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.security.cert.CertificateException;
-import java.security.cert.X509Certificate;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Date;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Set;
-import java.util.TreeSet;
-
-import javax.net.ssl.HttpsURLConnection;
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.TrustManager;
-import javax.net.ssl.X509TrustManager;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import org.w3c.dom.Document;
-import allPay.payment.integration.config.AllPayConfig;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-/**
- * 共用函式類別
- * @author mark.chiu
- *
- */
-public class AllPayFunction {
-
- private final static char[] hexArray = "0123456789ABCDEF".toCharArray();
-
- /**
- * 產生檢查碼
- * @param key
- * @param iv
- * @param obj
- * @return
- */
- public final static String genCheckMacValue(String key, String iv, Object obj) {
- Class> cls = obj.getClass();
- List fieldNames = getSortedFieldNames(cls);
- String data = "";
- try{
- for(String name: fieldNames){
- if(name != "CheckMacValue"){
- Method method = cls.getMethod("get"+name.substring(0, 1).toUpperCase()+name.substring(1), null);
- data = data + '&' + name + '=' + method.invoke(obj).toString();
- }
- }
- String urlEncode = urlEncode("HashKey=" + key + data + "&HashIV=" + iv).toLowerCase();
- urlEncode = netUrlEncode(urlEncode);
- return hash(urlEncode.getBytes(), "SHA-256");
- } catch(Exception e){
- throw new AllPayException(ErrorMessage.GEN_CHECK_MAC_VALUE_FAIL);
- }
- }
-
- /**
- * 產生檢查碼
- * @param key
- * @param iv
- * @param Hashtable params
- * @return
- */
- public final static String genCheckMacValue(String key, String iv, Hashtable params){
- Set keySet = params.keySet();
- TreeSet treeSet = new TreeSet(String.CASE_INSENSITIVE_ORDER);
- treeSet.addAll(keySet);
- String name[] = treeSet.toArray(new String[treeSet.size()]);
- String paramStr = "";
- for(int i = 0; i < name.length; i++){
- if(!name[i].equals("CheckMacValue")){
- paramStr += "&" + name[i] + "=" + params.get(name[i]);
- }
- }
- String urlEncode = urlEncode("Hashkey=" + key + paramStr + "&HashIV=" + iv).toLowerCase();
- urlEncode = netUrlEncode(urlEncode);
- return hash(urlEncode.getBytes(), "SHA-256");
- }
-
- /**
- * 將物件的屬性與檢查碼組合成http的參數資料格式
- * @param obj
- * @param CheckMacValue
- * @return string
- */
- public final static String genHttpValue(Object obj, String CheckMacValue){
- Class> cls = obj.getClass();
- List fieldNames = getSortedFieldNames(cls);
- Method method;
- String result = "";
- for(int i = 0; i < fieldNames.size(); i++){
- try {
- method = cls.getMethod("get"+fieldNames.get(i).substring(0, 1).toUpperCase()+fieldNames.get(i).substring(1), null);
- fieldNames.set(i, fieldNames.get(i) + '=' + invokeMethod(method, obj));
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- result = result + fieldNames.get(i) + '&';
- }
- return result + "CheckMacValue=" + CheckMacValue;
- }
-
- /**
- * 將物件轉為Hashtable
- * @param obj
- * @return Hashtable
- */
- public final static HashtableobjToHashtable(Object obj) {
- Class> cls = obj.getClass();
- Hashtable resultDict = new Hashtable();
- List fieldNames = getSortedFieldNames(cls);
- for(int i = 0; i < fieldNames.size(); i++){
- Method method;
- try {
- method = cls.getMethod("get"+fieldNames.get(i).substring(0, 1).toUpperCase()+fieldNames.get(i).substring(1), null);
- resultDict.put(fieldNames.get(i), invokeMethod(method, obj));
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- }
- return resultDict;
- }
-
- private final static String invokeMethod(Method method, Object obj){
- try {
- return method.invoke(obj, null).toString();
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- }
-
- /**
- * client http post的功能
- * @param url
- * @param urlParameters
- * @return response string
- */
- public final static String httpPost(String url, String urlParameters, String encoding){
- try{
- URL obj = new URL(url);
- HttpURLConnection connection = null;
- if (obj.getProtocol().toLowerCase().equals("https")) {
- trustAllHosts();
- connection = (HttpsURLConnection) obj.openConnection();
- }
- else {
- connection = (HttpURLConnection) obj.openConnection();
- }
- connection.setRequestMethod("POST");
- connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.2171.71 Safari/537.36 EcPay JAVA API Version " + AllPayConfig.version);
- connection.setRequestProperty("Accept-Language", encoding);
- connection.setDoOutput(true);
- DataOutputStream wr = new DataOutputStream(connection.getOutputStream());
- wr.write(urlParameters.getBytes(encoding));
- wr.flush();
- wr.close();
- BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream(), encoding));
- String inputLine;
- StringBuffer response = new StringBuffer();
- while ((inputLine = in.readLine()) != null) {
- response.append(inputLine);
- }
- in.close();
- return response.toString();
- } catch(Exception e){
- throw new AllPayException(e.getMessage());
- }
- }
-
- /**
- * 產生 Unix TimeStamp
- * @return TimeStamp
- */
- public final static String genUnixTimeStamp(){
- Date date = new Date();
- Integer timeStamp = (int)(date.getTime() / 1000);
- return timeStamp.toString();
- }
-
- public final static Document xmlParser(String uri) {
- try{
- DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
- factory.setValidating(false);
- factory.setIgnoringElementContentWhitespace(true);
- DocumentBuilder builder = factory.newDocumentBuilder();
- return builder.parse(uri);
- } catch(Exception e){
- throw new AllPayException(ErrorMessage.CONF_FILE_ERROR);
- }
- }
-
- /**
- * https 處理
- */
- private static void trustAllHosts() {
-
- X509TrustManager easyTrustManager = new X509TrustManager() {
-
- public void checkClientTrusted(
- X509Certificate[] chain,
- String authType) throws CertificateException {
- // Oh, I am easy!
- }
-
- public void checkServerTrusted(
- X509Certificate[] chain,
- String authType) throws CertificateException {
- // Oh, I am easy!
- }
-
- public X509Certificate[] getAcceptedIssuers() {
- return null;
- }
-
- };
-
- // Create a trust manager that does not validate certificate chains
- TrustManager[] trustAllCerts = new TrustManager[] {easyTrustManager};
-
- // Install the all-trusting trust manager
- try {
- SSLContext sc = SSLContext.getInstance("TLS");
-
- sc.init(null, trustAllCerts, new java.security.SecureRandom());
-
- HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
-
- }
- catch (Exception e) {
- e.printStackTrace();
- }
-
- }
-
- /**
- * 針對物件內屬性的參數作排序
- * @param Class
- * @return List
- */
- private static List getSortedFieldNames(Class> cls){
- Field[] fields = cls.getDeclaredFields();
- List fieldNames = new ArrayList();
- for(Field field: fields){
- fieldNames.add(field.getName());
- }
- Collections.sort(fieldNames, String.CASE_INSENSITIVE_ORDER);
- return fieldNames;
- }
-
- /**
- * 將資料做 urlEncode編碼
- * @param data
- * @return url encoded string
- */
- public static String urlEncode(String data){
- String result = "";
- try {
- result = URLEncoder.encode(data, "UTF-8");
- } catch (UnsupportedEncodingException e) {
- }
- return result;
- }
-
- /**
- * 將做完的urlEncode字串做轉換符合 .NET語言的轉換規則
- * @param url
- * @return .Net url encoded string
- */
- private static String netUrlEncode(String url){
- String netUrlEncode = url.replaceAll("%21", "\\!").replaceAll("%28", "\\(").replaceAll("%29", "\\)");
- return netUrlEncode;
- }
-
- /**
- * 將 byte array 資料做 hash md5或 sha256 運算,並回傳 hex值的字串資料
- * @param data
- * @param isMD5
- * @return string
- */
- private final static String hash(byte data[], String mode){
- MessageDigest md = null;
- try{
- if(mode == "MD5"){
- md = MessageDigest.getInstance("MD5");
- }
- else if(mode == "SHA-256"){
- md = MessageDigest.getInstance("SHA-256");
- }
- } catch(NoSuchAlgorithmException e){
- }
- return bytesToHex(md.digest(data));
- }
-
- /**
- * 將 byte array 資料轉換成 hex字串值
- * @param bytes
- * @return string
- */
- private final static String bytesToHex(byte[] bytes) {
- char[] hexChars = new char[bytes.length * 2];
- for ( int j = 0; j < bytes.length; j++ ) {
- int v = bytes[j] & 0xFF;
- hexChars[j * 2] = hexArray[v >>> 4];
- hexChars[j * 2 + 1] = hexArray[v & 0x0F];
- }
- return new String(hexChars);
- }
-
-}
diff --git a/Payment/allPay/payment/integration/allPayOperator/PaymentVerifyBase.java b/Payment/allPay/payment/integration/allPayOperator/PaymentVerifyBase.java
deleted file mode 100644
index 5961c84..0000000
--- a/Payment/allPay/payment/integration/allPayOperator/PaymentVerifyBase.java
+++ /dev/null
@@ -1,70 +0,0 @@
-package allPay.payment.integration.allPayOperator;
-
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-public class PaymentVerifyBase{
- protected String confPath = "/AllPay/Payment/Integration/Config/AllpayPayment.xml";
- protected Document doc;
- public PaymentVerifyBase(){
- URL fileURL = this.getClass().getResource(confPath);
- doc = AllPayFunction.xmlParser(fileURL.toString());
- doc.getDocumentElement().normalize();
- }
-
- protected void requireCheck(String FieldName, String objValue, String require){
- if(require.equals("1") && objValue.isEmpty())
- throw new AllPayException(FieldName+"為必填");
- }
-
- protected void valueCheck(String type, String objValue, Element ele){
- if(objValue.isEmpty())
- return;
- if(type.equals("String")){
- if(ele.getElementsByTagName("pattern") != null){
- Pattern r = Pattern.compile(ele.getElementsByTagName("pattern").item(0).getTextContent().toString());
- Matcher m = r.matcher(objValue);
- if(!m.find()){
- throw new AllPayException(ele.getAttribute("name")+ErrorMessage.COLUMN_RULE_ERROR);
- }
- }
- } else if(type.equals("Opt")){
- List opt = new ArrayList();
- NodeList n = ele.getElementsByTagName("option");
- for(int i=0; i < n.getLength(); i++){
- opt.add(n.item(i).getTextContent().toString());
- }
- if(!opt.contains(objValue)){
- throw new AllPayException(ele.getAttribute("name")+ErrorMessage.COLUMN_RULE_ERROR);
- }
- } else if(type.equals("Int")){
- String mode = ele.getElementsByTagName("mode").item(0).getTextContent();
- String minimum = ele.getElementsByTagName("minimal").item(0).getTextContent();
- String maximum = ele.getElementsByTagName("maximum").item(0).getTextContent();
- if(objValue.isEmpty()){
- throw new AllPayException(ele.getAttribute("name")+ErrorMessage.CANNOT_BE_EMPTY);
- }
- int value = Integer.valueOf(objValue);
- if(mode.equals("GE") && value < Integer.valueOf(minimum)){
- throw new AllPayException(ele.getAttribute("name")+"不能小於"+minimum);
- } else if(mode.equals("LE") && value > Integer.valueOf(maximum)){
- throw new AllPayException(ele.getAttribute("name")+"不能大於"+maximum);
- } else if(mode.equals("BETWEEN") && value < Integer.valueOf(minimum) && value > Integer.valueOf(maximum)){
- throw new AllPayException(ele.getAttribute("name")+"必須介於"+minimum+"和"+maximum+"之間");
- } else if(mode.equals("EXCLUDE") && value >= Integer.valueOf(minimum) && value <= Integer.valueOf(maximum)){
- throw new AllPayException(ele.getAttribute("name")+"必須小於"+minimum+"或大於"+maximum);
- }
- } else if(type.equals("DepOpt")){
- // TODO
- }
- }
-}
diff --git a/Payment/allPay/payment/integration/config/AllPayConfig.java b/Payment/allPay/payment/integration/config/AllPayConfig.java
deleted file mode 100644
index f1c0d29..0000000
--- a/Payment/allPay/payment/integration/config/AllPayConfig.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package allPay.payment.integration.config;
-
-public class AllPayConfig {
- public final static String version = "2.0.0";
-}
diff --git a/Payment/allPay/payment/integration/config/AllpayPayment.xml b/Payment/allPay/payment/integration/config/AllpayPayment.xml
deleted file mode 100644
index 86ab0ae..0000000
--- a/Payment/allPay/payment/integration/config/AllpayPayment.xml
+++ /dev/null
@@ -1,579 +0,0 @@
-
-
-
-
- https://payment.allPay.com.tw/Cashier/AioCheckOut/V4
- https://payment-stage.allPay.com.tw/Cashier/AioCheckOut/V4
-
-
-
- ChoosePayment
- InvoiceMark
-
-
-
-
- ^\d{7,10}$
-
-
- ^\w{4,20}$
-
-
- ^.{0,20}$
-
-
- ^\d{4}\/\d{2}\/\d{2} \d{2}:\d{2}:\d{2}$
-
-
- aio
-
-
-
- GE
-
- 1
-
-
- ^.{0,200}$
-
-
- ^.{0,200}$
-
-
- ^.{0,200}$
-
-
-
-
-
-
-
-
-
-
-
- ^(3|6|12|18|24){1}(,3|,6|,12|,18|,24){0,4}$
-
-
- GE
-
- 1
-
-
- GE
-
- 1
-
-
-
-
-
-
-
- BETWEEN
- 365
- 1
-
-
- BETWEEN
- 999
- 1
-
-
- .{0,200}
-
-
-
-
-
-
- BETWEEN
- 60
- 1
-
-
- ^.{0,200}$
-
-
- ^.{0,200}$
-
-
-
-
-
- BETWEEN
- 99
- 1
-
-
- ^.{0,20}$
-
-
- ^.{0,20}$
-
-
- ^.{0,20}$
-
-
- ^.{0,20}$
-
-
- ^.{0,200}$
-
-
- ^.{0,200}$
-
-
-
-
-
-
-
- ^.{0,200}$
-
-
- ^.{0,200}$
-
-
- ^.{0,100}$
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ^.{0,200}$
-
-
-
-
-
-
- ^.{0,200}$
-
-
- ^.{0,100}$
-
-
- ^(\d{7,10}|)$
-
-
-
-
-
- ^[\w_\-#$]{0,30}$
-
-
- ^[\w_]{1,20}$
-
-
- ^(\d{8}|)$
-
-
- ^.{0,20}$
-
-
- ^.{0,200}$
-
-
- ^(\d{10,20}|)$
-
-
- ^.{0,200}$
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- .{0,16}
-
-
-
-
-
-
- ^([Xx]\d{2,6}|\d{3,7}|)$
-
-
-
-
-
-
- ^.{0,4096}$
-
-
- ^[\d\|]{0,4096}$
-
-
- ^.{0,4096}$
-
-
- ^.{0,4096}$
-
-
- ^.{0,4096}$
-
-
- ^.{0,4096}$
-
-
- BETWEEN
- 15
- 0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- https://payment.allPay.com.tw/Cashier/QueryTradeInfo/V4
- https://payment-stage.allPay.com.tw/Cashier/QueryTradeInfo/V4
-
-
-
-
-
-
-
-
-
- ^\d{7,10}$
-
-
- ^\w{4,20}$
-
-
- ^\d{10}$
-
-
- ^(\d{7,10}|)$
-
-
-
-
-
-
- https://payment.allPay.com.tw/Cashier/QueryCreditCardPeriodInfo
- https://payment-stage.allpay.com.tw/Cashier/QueryCreditCardPeriodInfo
-
-
-
-
-
-
-
-
-
- ^\d{7,10}$
-
-
- ^\w{4,20}$
-
-
- ^\d{10}$
-
-
-
-
-
-
- https://payment.allPay.com.tw/CreditDetail/DoAction
- https://payment-stage.allpay.com.tw/CreditDetail/DoAction
-
-
-
-
-
-
-
-
-
- ^\d{7,10}$
-
-
- ^\w{4,20}$
-
-
- ^\w{4,20}$
-
-
-
-
-
-
-
-
- GE
-
- 1
-
-
- ^(\d{7,10}|)$
-
-
-
-
-
-
- https://payment.allPay.com.tw/Cashier/AioChargeback
- https://payment-stage.allPay.com.tw/Cashier/AioChargeback
-
-
-
-
-
-
-
-
-
- ^\d{7,10}$
-
-
- ^\w{4,20}$
-
-
- ^\w{4,20}$
-
-
- GE
-
- 1
-
-
- ^.{0,100}$
-
-
- ^(\d{7,10}|)$
-
-
-
-
-
-
- https://payment.allPay.com.tw/Cashier/Capture
- https://payment-stage.allPay.com.tw/Cashier/Capture
-
-
-
-
-
-
-
-
-
- ^\d{7,10}$
-
-
- ^\w{4,20}$
-
-
- GE
-
- 0
-
-
- GE
-
- 0
-
-
- ^(\d{7,10}|)$
-
-
-
-
-
- GE
-
- 0
-
-
-
-
-
-
- ^.{0,30}$
-
-
-
-
-
-
- https://vendor.allPay.com.tw/PaymentMedia/TradeNoAio
- https://vendor-stage.allPay.com.tw/PaymentMedia/TradeNoAio
-
-
-
-
-
-
-
-
-
- ^\d{7,10}$
-
-
-
-
-
-
-
-
- ^\d{4}-\d{2}-\d{2}
-
-
- ^\d{4}-\d{2}-\d{2}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- https://payment.allPay.com.tw/CreditDetail/QueryTrade/V2
- https://payment-stage.allPay.com.tw/CreditDetail/QueryTrade/V2
-
-
-
-
-
-
-
-
-
- ^\d{7,10}$
-
-
- ^\w{4,20}$
-
-
- GE
-
- 1
-
-
- ^\d{7,10}$
-
-
-
-
-
-
- https://payment.allPay.com.tw/CreditDetail/FundingReconDetail
- https://payment-stage.allPay.com.tw/CreditDetail/FundingReconDetail
-
-
-
-
-
-
-
-
-
- ^\d{7,10}$
-
-
-
-
-
-
-
- ^\d{4}-\d{2}-\d{2}$
-
-
- ^\d{4}-\d{2}-\d{2}$
-
-
-
-
-
\ No newline at end of file
diff --git a/Payment/allPay/payment/integration/domain/ATMRequestObj.java b/Payment/allPay/payment/integration/domain/ATMRequestObj.java
deleted file mode 100644
index 3e4d1c8..0000000
--- a/Payment/allPay/payment/integration/domain/ATMRequestObj.java
+++ /dev/null
@@ -1,361 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 當ChoosePayment為ATM時的取號結果通知物件
- * @author mark.chiu
- *
- */
-public class ATMRequestObj {
-
- /**
- * MerchantID
- * 會員編號
- */
- private String MerchantID;
-
- /**
- * MerchantTradeNo
- * 會員交易編號
- */
- private String MerchantTradeNo;
-
- /**
- * RtnCode
- * 交易狀態
- */
- private String RtnCode;
-
- /**
- * RtnMsg
- * 交易訊息
- */
- private String RtnMsg;
-
- /**
- * TradeNo
- * allPay的交易編號
- */
- private String TradeNo;
-
- /**
- * TradeAmt
- * 交易金額
- */
- private String TradeAmt;
-
- /**
- * PayAmt
- * 實際付款金額
- */
- private String PayAmt;
-
- /**
- * RedeemAmt
- * 折抵金額
- */
- private String RedeemAmt;
-
- /**
- * PaymentType
- * 會員選擇的付款方式
- */
- private String PaymentType;
-
- /**
- * TradeDate
- * 訂單成立時間
- */
- private String TradeDate;
-
- /**
- * Barcode1
- * 條碼第一段號碼
- */
- private String Barcode1;
-
- /**
- * Barcode2
- * 條碼第二段號碼
- */
- private String Barcode2;
-
- /**
- * Barcode3
- * 條碼第三段號碼
- */
- private String Barcode3;
-
- /**
- * CheckMacValue
- * 檢查碼
- */
- private String CheckMacValue;
-
- /**
- * BankCode
- * 繳費銀行代碼
- */
- private String BankCode;
-
- /**
- * vAccount
- * 繳費虛擬帳號
- */
- private String vAccount;
-
- /**
- * ExpireDate
- * 繳費期限
- */
- private String ExpireDate;
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,訂單產生時傳送給O’Pay的會員交易編號。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,訂單產生時傳送給O’Pay的會員交易編號。
- * @param MerchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得RtnCode 交易狀態
- * @return RtnCode
- */
- public String getRtnCode() {
- return RtnCode;
- }
- /**
- * 設定RtnCode 交易狀態
- * @param RtnCode
- */
- public void setRtnCode(String rtnCode) {
- RtnCode = rtnCode;
- }
- /**
- * 取得RtnMsg 交易訊息
- * @return RtnMsg
- */
- public String getRtnMsg() {
- return RtnMsg;
- }
- /**
- * 設定RtnMsg 交易訊息
- * @param RtnMsg
- */
- public void setRtnMsg(String rtnMsg) {
- RtnMsg = rtnMsg;
- }
- /**
- * 取得TradeNo allPay的交易編號
- * @return TradeNo
- */
- public String getTradeNo() {
- return TradeNo;
- }
- /**
- * 設定TradeNo allPay的交易編號
- * @param TradeNo
- */
- public void setTradeNo(String tradeNo) {
- TradeNo = tradeNo;
- }
- /**
- * 取得TradeAmt 交易金額
- * @return TradeAmt
- */
- public String getTradeAmt() {
- return TradeAmt;
- }
- /**
- * 設定TradeAmt 交易金額
- * @param TradeAmt
- */
- public void setTradeAmt(String tradeAmt) {
- TradeAmt = tradeAmt;
- }
- /**
- * 取得PaymentType 會員選擇的付款方式
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
- /**
- * 設定PaymentType 會員選擇的付款方式
- * @param PaymentType
- */
- public void setPaymentType(String paymentType) {
- PaymentType = paymentType;
- }
- /**
- * 取得TradeDate 訂單成立時間
- * @return TradeDate
- */
- public String getTradeDate() {
- return TradeDate;
- }
- /**
- * 設定TradeDate 訂單成立時間
- * @param TradeDate
- */
- public void setTradeDate(String tradeDate) {
- TradeDate = tradeDate;
- }
- /**
- * 取得CheckMacValue 檢查碼
- * @return CheckMacValue
- */
- public String getCheckMacValue() {
- return CheckMacValue;
- }
- /**
- * 設定CheckMacValue 檢查碼
- * @param CheckMacValue
- */
- public void setCheckMacValue(String checkMacValue) {
- CheckMacValue = checkMacValue;
- }
- /**
- * 取得BankCode 繳費銀行代碼
- * @return BankCode
- */
- public String getBankCode() {
- return BankCode;
- }
- /**
- * 設定BankCode 繳費銀行代碼
- * @param BankCode
- */
- public void setBankCode(String bankCode) {
- BankCode = bankCode;
- }
- /**
- * 取得vAccount 繳費虛擬帳號
- * @return vAccount
- */
- public String getvAccount() {
- return vAccount;
- }
- /**
- * 設定vAccount 繳費虛擬帳號
- * @param vAccount
- */
- public void setvAccount(String vAccount) {
- this.vAccount = vAccount;
- }
- /**
- * 取得ExpireDate 繳費期限
- * @return ExpireDate
- */
- public String getExpireDate() {
- return ExpireDate;
- }
- /**
- * 設定ExpireDate 繳費期限
- * @param ExpireDate
- */
- public void setExpireDate(String expireDate) {
- ExpireDate = expireDate;
- }
- /**
- * 取得PayAmt 實際付款金額
- * @return PayAmt
- */
- public String getPayAmt() {
- return PayAmt;
- }
- /**
- * 設定PayAmt 實際付款金額
- * @param payAmt
- */
- public void setPayAmt(String payAmt) {
- PayAmt = payAmt;
- }
- /**
- * 取得RedeemAmt 折抵金額
- * @return RedeemAmt
- */
- public String getRedeemAmt() {
- return RedeemAmt;
- }
- /**
- * 設定RedeemAmt 折抵金額
- * @param redeemAmt
- */
- public void setRedeemAmt(String redeemAmt) {
- RedeemAmt = redeemAmt;
- }
- /**
- * 取得Barcode1 條碼第一段號碼
- * @return Barcode1
- */
- public String getBarcode1() {
- return Barcode1;
- }
- /**
- * 設定Barcode1 條碼第一段號碼
- * @param barcode1
- */
- public void setBarcode1(String barcode1) {
- Barcode1 = barcode1;
- }
- /**
- * 取得Barcode2 條碼第二段號碼
- * @return Barcode2
- */
- public String getBarcode2() {
- return Barcode2;
- }
- /**
- * 設定Barcode2 條碼第二段號碼
- * @param barcode2
- */
- public void setBarcode2(String barcode2) {
- Barcode2 = barcode2;
- }
- /**
- * 取得Barcode3 條碼第三段號碼
- * @return Barcode3
- */
- public String getBarcode3() {
- return Barcode3;
- }
- /**
- * 設定Barcode3 條碼第三段號碼
- * @param barcode3
- */
- public void setBarcode3(String barcode3) {
- Barcode3 = barcode3;
- }
- @Override
- public String toString() {
- return "ATMRequestObj [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", RtnCode="
- + RtnCode + ", RtnMsg=" + RtnMsg + ", TradeNo=" + TradeNo + ", TradeAmt=" + TradeAmt + ", PayAmt="
- + PayAmt + ", RedeemAmt=" + RedeemAmt + ", PaymentType=" + PaymentType + ", TradeDate=" + TradeDate
- + ", Barcode1=" + Barcode1 + ", Barcode2=" + Barcode2 + ", Barcode3=" + Barcode3 + ", CheckMacValue="
- + CheckMacValue + ", BankCode=" + BankCode + ", vAccount=" + vAccount + ", ExpireDate=" + ExpireDate
- + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/AioChargebackObj.java b/Payment/allPay/payment/integration/domain/AioChargebackObj.java
deleted file mode 100644
index 3253be1..0000000
--- a/Payment/allPay/payment/integration/domain/AioChargebackObj.java
+++ /dev/null
@@ -1,138 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 會員通知退款物件
- * @author mark.chiu
- *
- */
-public class AioChargebackObj {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * 會員交易編號
- */
- private String MerchantTradeNo = "";
-
- /**
- * TradeNo
- * allPay的交易編號
- */
- private String TradeNo = "";
-
- /**
- * ChargeBackTotalAmount
- * 退款金額
- */
- private String ChargeBackTotalAmount = "";
-
- /**
- * Remark
- * 備註欄位
- */
- private String Remark = "";
-
- /**
- * PlatformID
- * 特約合作平台商代號(由allPay提供)
- */
- private String PlatformID = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O'Pay提供)
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O'Pay提供)
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,訂單成立時的會員交易編號。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,訂單成立時的會員交易編號。
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得TradeNo O'Pay的交易編號,歐付寶在付款成功時,回傳的O’Pay交易編號。
- * @return TradeNo
- */
- public String getTradeNo() {
- return TradeNo;
- }
- /**
- * 設定TradeNo O'Pay的交易編號,歐付寶在付款成功時,回傳的O’Pay交易編號。
- * @param tradeNo
- */
- public void setTradeNo(String tradeNo) {
- TradeNo = tradeNo;
- }
- /**
- * 取得ChargeBackTotalAmount 退款金額
- * @return ChargeBackTotalAmount
- */
- public String getChargeBackTotalAmount() {
- return ChargeBackTotalAmount;
- }
- /**
- * 設定ChargeBackTotalAmount 退款金額
- * @param chargeBackTotalAmount
- */
- public void setChargeBackTotalAmount(String chargeBackTotalAmount) {
- ChargeBackTotalAmount = chargeBackTotalAmount;
- }
- /**
- * 取得Remark 備註欄位
- * @return Remark
- */
- public String getRemark() {
- return Remark;
- }
- /**
- * 設定Remark 備註欄位
- * @param remark
- */
- public void setRemark(String remark) {
- Remark = remark;
- }
- /**
- * 取得PlatformID 特約合作平台商代號(由allPay提供)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 設定PlatformID 特約合作平台商代號(由allPay提供)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- @Override
- public String toString() {
- return "AioChargebackObj [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", TradeNo="
- + TradeNo + ", ChargeBackTotalAmount=" + ChargeBackTotalAmount + ", Remark=" + Remark + ", PlatformID="
- + PlatformID + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/AioCheckOutALL.java b/Payment/allPay/payment/integration/domain/AioCheckOutALL.java
deleted file mode 100644
index 9a908ee..0000000
--- a/Payment/allPay/payment/integration/domain/AioCheckOutALL.java
+++ /dev/null
@@ -1,912 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * Y閮桃拐辣(銝摰隞甈暹孵嚗望隞撖園*蝷)
- * @author mark.chiu
- *
- */
-public class AioCheckOutALL {
-
- /**
- * MerchantID
- * ∠楊(屠'Pay靘)嚗嗆迨撟喳啁箇寧雿撟喳唳炬撱箇閮格嚗閰脫雿銝砍像啣隢敹賜交迨甈雿
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * ∩漱蝺刻嚗敹箏臭潘撱箄降雿輻20蝣墀ID
- */
- private String MerchantTradeNo = "";
-
- /**
- * StoreID
- * ∪摨隞蝣潘靘∪‵亙摰嗡誨蝣潔蝙
- */
- private String StoreID = "";
-
- /**
- * MerchantTradeDate
- * ∩漱嚗澆漾yyy/MM/dd HH:mm:ss
- */
- private String MerchantTradeDate = "";
-
- /**
- * PaymentType
- * 鈭斗憿
- */
- private String PaymentType = "aio";
-
- /**
- * TotalAmount
- * 鈭斗憿
- */
- private String TotalAmount = "";
-
- /**
- * TradeDesc
- * 鈭斗餈
- */
- private String TradeDesc = "";
-
- /**
- * ItemName
- * 蝔
- */
- private String ItemName = "";
-
- /**
- * ReturnURL
- * 隞甈曉亙喟雯
- */
- private String ReturnURL = "";
-
- /**
- * ChoosePayment
- * 豢閮凋甈暹孵
- */
- private String ChoosePayment = "ALL";
-
- /**
- * ClientBackURL
- * Client蝡航∠頂蝯梁蝯
- */
- private String ClientBackURL = "";
-
- /**
- * ItemURL
- * 瑕桃雯
- */
- private String ItemURL = "";
-
- /**
- * Remark
- * 閮餅雿
- */
- private String Remark = "";
-
- /**
- * ChooseSubPayment
- * 豢閮凋甈曉
- */
- private String ChooseSubPayment = "";
-
- /**
- * OrderResultURL
- * Client蝡臬喃甈曄蝬脣
- */
- private String OrderResultURL = "";
-
- /**
- * NeedExtraPaidInfo
- * 臬阡閬憿憭隞甈曇閮
- */
- private String NeedExtraPaidInfo = "";
-
- /**
- * DeviceSource
- * 鋆蝵桐皞嚗隢撣嗥征潘帶llPay芸文
- */
- private String DeviceSource = "";
-
- /**
- * IgnorePayment
- * 梯隞甈暹孵嚗閮剖瑼芸撣嗅
- */
- private String IgnorePayment = "";
-
- /**
- * PlatformID
- * 寧雿撟喳啣隞(帶llPay靘)嚗閮剖瑼芸撣嗅
- */
- private String PlatformID = "";
-
- /**
- * InvoiceMark
- * 餃潛巨蝡閮餉嚗蝔撘芸斗
- */
- private String InvoiceMark = "";
-
- /**
- * HoldTradeAMT
- * 臬血辣脫交狡
- */
- private String HoldTradeAMT = "";
-
- /**
- * EncryptType
- * CheckMacValue撖憿
- */
- private String EncryptType = "1";
-
- /**
- * UseRedeem
- * 臬血臭誑雿輻刻頃拚/蝝
- */
- private String UseRedeem = "";
-
- /**
- * ExpireDate
- * 閮梁像鞎餅憭拇賂仿閮剖 60 憭抬1憭押芾身摰甇文詨閮剔3憭
- */
- private String ExpireDate = "";
-
- /**
- * PaymentInfoURL
- * Server蝡臬喃甈曄賊鞈閮
- */
- private String PaymentInfoURL = "";
-
- /**
- * ClientRedirectURL
- * Client蝡臬喃甈曄賊鞈閮
- */
- private String ClientRedirectURL = "";
-
- /**
- * StoreExpireDate
- * 頞蝜唾祥芣迫
- */
- private String StoreExpireDate = "";
-
- /**
- * Desc_1
- * 鈭斗餈1
- */
- private String Desc_1 = "";
-
- /**
- * Desc_2
- * 鈭斗餈2
- */
- private String Desc_2 = "";
-
- /**
- * Desc_3
- * 鈭斗餈3
- */
- private String Desc_3 = "";
-
- /**
- * Desc_4
- * 鈭斗餈4
- */
- private String Desc_4 = "";
-
- /**
- * ExpireTime
- * 隞甈暹芣迫嚗澆漾yyy/MM/dd HH:mm:ss芾賢葆仿箔漱敺72撠(銝憭)銋扳銝憛怠閮剔粹箔漱敺72撠
- */
- private String ExpireTime = "";
-
- /**
- * Redeem
- * 靽∠典⊥臬虫蝙函拇蛛閮剔旖嚗嗆隞撖嗆⊿豢靽∠典∩甈暹嚗脣亦拇萇鈭斗瘚蝔
- */
- private String Redeem = "";
-
- /**
- * CreditInstallment
- * 瑕∪賂靘瑕∪賂銝敺撠2
- */
- private String CreditInstallment = "";
-
- /**
- * InstallmentAmount
- * 雿輻典瑕∪蝮賭甈暸憿嚗瑕∪蝮賭甈暸憿亥鈭斗憿嚗蓉otalAmount嚗賜詨嚗銝喳交迨詻
- */
- private String InstallmentAmount = "";
-
- /**
- * PeriodAmount
- * 瘥甈⊥甈憿
- */
- private String PeriodAmount = "";
-
- /**
- * PeriodType
- * 望蝔桅 D嚗隞亙予粹望嚗M嚗隞交粹望嚗Y嚗隞亙僑粹望
- */
- private String PeriodType = "";
-
- /**
- * Frequency
- * 瑁餌嚗甇文貊其摰蝢拙銋閬瑁銝甈
- */
- private String Frequency = "";
-
- /**
- * ExecTimes
- * 瑁甈⊥
- */
- private String ExecTimes = "";
-
- /**
- * PeriodReturnURL
- * 摰摰憿瑁蝯URL
- */
- private String PeriodReturnURL = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 敺MerchantID ∠楊(屠'Pay靘)嚗嗆迨撟喳啁箇寧雿撟喳唳炬撱箇閮格嚗閰脫雿銝砍像啣隢敹賜交迨甈雿
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 閮剖MerchantID ∠楊(屠'Pay靘)嚗嗆迨撟喳啁箇寧雿撟喳唳炬撱箇閮格嚗閰脫雿銝砍像啣隢敹賜交迨甈雿
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 敺MerchantTradeNo ∩漱蝺刻嚗望詨憭批撖急毽嚗閰脖漱蝺刻銝舫銴嚗憒雿輻沌latformID嚗撟喳啣摨銝摰嗡閮桃楊鈭虫舫銴
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 閮剖MerchantTradeNo ∩漱蝺刻嚗望詨憭批撖急毽嚗閰脖漱蝺刻銝舫銴嚗憒雿輻沌latformID嚗撟喳啣摨銝摰嗡閮桃楊鈭虫舫銴
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 敺MerchantTradeDate ∩漱嚗澆漾yyy/MM/dd HH:mm:ss
- * @return MerchantTradeDate
- */
- public String getMerchantTradeDate() {
- return MerchantTradeDate;
- }
- /**
- * 閮剖MerchantTradeDate ∩漱嚗隢隞 yyyy/MM/dd HH:mm:ss澆撣嗅
- * @param merchantTradeDate
- */
- public void setMerchantTradeDate(String merchantTradeDate) {
- MerchantTradeDate = merchantTradeDate;
- }
- /**
- * 敺PaymentType 鈭斗憿
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
- /**
- * 閮剖PaymentType 鈭斗憿
- * @param paymentType
- */
-// public void setPaymentType(String paymentType) {
-// PaymentType = paymentType;
-// }
- /**
- * 敺TotalAmount 鈭斗憿嚗箸迤湔
- * @return TotalAmount
- */
- public String getTotalAmount() {
- return TotalAmount;
- }
- /**
- * 閮剖TotalAmount 鈭斗憿嚗箸迤湔
- * @param totalAmount
- */
- public void setTotalAmount(String totalAmount) {
- TotalAmount = totalAmount;
- }
- /**
- * 敺TradeDesc 鈭斗餈
- * @return TradeDesc
- */
- public String getTradeDesc() {
- return TradeDesc;
- }
- /**
- * 閮剖TradeDesc 鈭斗餈
- * @param tradeDesc
- */
- public void setTradeDesc(String tradeDesc) {
- TradeDesc = tradeDesc;
- }
- /**
- * 敺ItemName 蝔梧交憭蝑嚗券瘚豢 銝銵銝銵憿舐內蝔梁閰梧蝔梯隞亦泵#
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 閮剖ItemName 蝔梧交憭蝑嚗券瘚豢 銝銵銝銵憿舐內蝔梁閰梧蝔梯隞亦泵#
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 敺ReturnURL 隞甈曉亙喟雯嚗嗆鞎餉隞甈曉敺嚗甇隞撖嗆撠隞甈 蝯訾誑撟敺(Server POST)喳 閰脩雯
- * @return ReturnURL
- */
- public String getReturnURL() {
- return ReturnURL;
- }
- /**
- * 閮剖ReturnURL 隞甈曉亙喟雯嚗嗆鞎餉隞甈曉敺嚗甇隞撖嗆撠隞甈 蝯訾誑撟敺(Server POST)喳 閰脩雯
- * @param returnURL
- */
- public void setReturnURL(String returnURL) {
- ReturnURL = returnURL;
- }
- /**
- * 敺ChoosePayment 豢閮凋甈暹孵
- * @return ChoosePayment
- */
- public String getChoosePayment() {
- return ChoosePayment;
- }
- /**
- * 閮剖ChoosePayment 豢閮凋甈暹孵
- * @param choosePayment
- */
-// public void setChoosePayment(String choosePayment) {
-// ChoosePayment = choosePayment;
-// }
- /**
- * 敺ClientBackURL Client蝡航∠頂蝯梁蝯閮剖甇文賂甇隞撖嗆其甈曉 摰V憿舐內[餈摨]
- *瘨鞎餉暺豢迨敺嚗撠W唳迨閮剖蝬脣
- *瘜冽鈭嚗砍詨批嗅W嚗銝撠隞甈曄鞈閮POST啗身摰澆抒URL潛蝪∟ OTP 撽霅憭望甇文豢潭嚗V鈭行憿舐內
- *亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @return ClientBackURL
- */
- public String getClientBackURL() {
- return ClientBackURL;
- }
- /**
- * 閮剖ClientBackURL Client蝡航∠頂蝯梁蝯閮剖甇文賂甇隞撖嗆其甈曉 摰V憿舐內[餈摨]
- *瘨鞎餉暺豢迨敺嚗撠W唳迨閮剖蝬脣
- *瘜冽鈭嚗砍詨批嗅W嚗銝撠隞甈曄鞈閮POST啗身摰澆抒URL潛蝪∟ OTP 撽霅憭望甇文豢潭嚗V鈭行憿舐內
- *亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @param clientBackURL
- */
- public void setClientBackURL(String clientBackURL) {
- ClientBackURL = clientBackURL;
- }
- /**
- * 敺ItemURL 瑕桃雯
- * @return ItemURL
- */
- public String getItemURL() {
- return ItemURL;
- }
- /**
- * 閮剖 ItemURL 瑕桃雯
- * @param itemURL
- */
- public void setItemURL(String itemURL) {
- ItemURL = itemURL;
- }
- /**
- * 敺Remark 閮餅雿
- * @return Remark
- */
- public String getRemark() {
- return Remark;
- }
- /**
- * 閮剖Remark 閮餅雿
- * @param remark
- */
- public void setRemark(String remark) {
- Remark = remark;
- }
- /**
- * 敺ChooseSubPayment 豢閮凋甈曉柴亥身摰甇文賂雿輻刻⊥閬瘚 豢嚗銝雿輻刻敹閬撌脩餃交隞撖嗚
- * 靘憒嚗隞甈暹孵[ChoosePayment]閮剖 WebATM嚗隞甈曉 [ChooseSubPayment]閮剖 TAISHIN嚗
- * 甇斗活鈭斗隞亙唳圈銵 蝬脰楝 ATM 隞甈整隢隞甈暹孵銝閬質”
- * @return ChooseSubPayment
- */
- public String getChooseSubPayment() {
- return ChooseSubPayment;
- }
- /**
- * 閮剖ChooseSubPayment 豢閮凋甈曉柴亥身摰甇文賂雿輻刻⊥閬瘚 豢嚗銝雿輻刻敹閬撌脩餃交隞撖嗚
- * 靘憒嚗隞甈暹孵[ChoosePayment]閮剖 WebATM嚗隞甈曉 [ChooseSubPayment]閮剖 TAISHIN嚗
- * 甇斗活鈭斗隞亙唳圈銵 蝬脰楝 ATM 隞甈整隢隞甈暹孵銝閬質”
- * @param chooseSubPayment
- */
- public void setChooseSubPayment(String chooseSubPayment) {
- ChooseSubPayment = chooseSubPayment;
- }
- /**
- * 敺OrderResultURL Client蝡臬喃甈曄蝬脣隞甈曉敺嚗甇隞撖嗅W唳 ∠雯嚗銝血隞甈曄撣嗅
- * 瘜冽鈭嚗
- * 1. 瘝撣嗆迨詨憿舐內甇隞撖嗥隞 甈曉
- * 2. 憒閬撠隞甈曄憿舐內冽 蝟餌絞改隢閮剖甇文詻
- * 3. 亥身摰甇文賂撠雿輯身摰 Client 蝡航∠頂蝯梁 蝯[ClientBackURL]憭望
- * 4. 典銵 WebATM 其漱 敺,券銵,銝虫撠 蝯行隞撖,隞交隞撖嗡銝撠 W豺OrderResultURL]
- * 5. 鞎∩鈭斗(ATMCVS) 銝舀湔迨詻
- * 6. 撱箄降冽葫閰阡畾菜銝閬閮剖甇 賂臬恍W冽隞撖塚 閬甇隞撖嗆靘航炊閮荔靘踹 隞交日胯
- * 7. 交閮剖甇文賂隢敹寞 鈭斗靘斗琿*蝷箔甈暹 衣U
- * 8. 亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @return OrderResultURL
- */
- public String getOrderResultURL() {
- return OrderResultURL;
- }
- /**
- * 閮剖OrderResultURL Client蝡臬喃甈曄蝬脣隞甈曉敺嚗甇隞撖嗅W唳 ∠雯嚗銝血隞甈曄撣嗅
- * 瘜冽鈭嚗
- * 1. 瘝撣嗆迨詨憿舐內甇隞撖嗥隞 甈曉
- * 2. 憒閬撠隞甈曄憿舐內冽 蝟餌絞改隢閮剖甇文詻
- * 3. 亥身摰甇文賂撠雿輯身摰 Client 蝡航∠頂蝯梁 蝯[ClientBackURL]憭望
- * 4. 典銵 WebATM 其漱 敺,券銵,銝虫撠 蝯行隞撖,隞交隞撖嗡銝撠 W豺OrderResultURL]
- * 5. 鞎∩鈭斗(ATMCVS) 銝舀湔迨詻
- * 6. 撱箄降冽葫閰阡畾菜銝閬閮剖甇 賂臬恍W冽隞撖塚 閬甇隞撖嗆靘航炊閮荔靘踹 隞交日胯
- * 7. 交閮剖甇文賂隢敹寞 鈭斗靘斗琿*蝷箔甈暹 衣U
- * 8. 亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @param orderResultURL
- */
- public void setOrderResultURL(String orderResultURL) {
- OrderResultURL = orderResultURL;
- }
- /**
- * 敺NeedExtraPaidInfo 臬阡閬憿憭隞甈曇閮單渲底蝝啁隞甈曇閮袒eturnURL豢摰URL閮剔摸
- * @return NeedExtraPaidInfo
- */
- public String getNeedExtraPaidInfo() {
- return NeedExtraPaidInfo;
- }
- /**
- * 閮剖NeedExtraPaidInfo 臬阡閬憿憭隞甈曇閮 單渲底蝝啁隞甈曇閮袒eturnURL豢摰URL閮剔摸
- * @param needExtraPaidInfo
- */
- public void setNeedExtraPaidInfo(String needExtraPaidInfo) {
- NeedExtraPaidInfo = needExtraPaidInfo;
- }
- /**
- * 敺DeviceSource 鋆蝵桐皞
- * @return DeviceSource
- */
- public String getDeviceSource() {
- return DeviceSource;
- }
- /**
- * 閮剖DeviceSource 鋆蝵桐皞
- * @param deviceSource
- */
-// public void setDeviceSource(String deviceSource) {
-// DeviceSource = deviceSource;
-// }
- /**
- * 敺IgnorePayment 梯隞甈暹孵
- * @return IgnorePayment
- */
- public String getIgnorePayment() {
- return IgnorePayment;
- }
- /**
- * 閮剖IgnorePayment 梯隞甈暹孵
- * @param ignorePayment
- */
- public void setIgnorePayment(String ignorePayment) {
- IgnorePayment = ignorePayment;
- }
- /**
- * 敺PlatformID 寧雿撟喳啣隞(屠Pay靘)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 閮剖PlatformID 寧雿撟喳啣隞(屠Pay靘)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- /**
- * 敺InvoiceMark 餃潛巨蝡閮餉
- * @return InvoiceMark
- */
- public String getInvoiceMark() {
- return InvoiceMark;
- }
- /**
- * 閮剖InvoiceMark 餃潛巨蝡閮餉
- * @param invoiceMark
- */
- public void setInvoiceMark(String invoiceMark) {
- InvoiceMark = invoiceMark;
- }
- /**
- * 敺HoldTradeAMT 臬血辣脫交狡
- * 1. 亦箔撱園脫交狡嚗隢撣塚0嚗鞎瑟嫣甈曉敺嚗甇隞撖嗡蝝蝝摰銋嚗交狡蝯行
- * 2. 亦箏辣脫交狡嚗隢撣塚1嚗鞎瑟嫣 甈曉敺嚗澆怒∠唾 甈暸甈整API嚗霈甇隞撖嗆交狡蝯行 ∴甈曄策鞎瑟嫘
- * 瘜冽鈭嚗 餃交∩港唾交狡嚗甇斤閮 甈暸銝湔曉冽隞撖塚游唳∠唾 交狡
- * 餃辣脫交狡銝拍具靽∠典∼鞎∩ 銋隞甈暹孵
- * @return HoldTradeAMT
- */
- public String getHoldTradeAMT() {
- return HoldTradeAMT;
- }
- /**
- * 閮剖HoldTradeAMT 臬血辣脫交狡
- * 1. 亦箔撱園脫交狡嚗隢撣塚0嚗鞎瑟嫣甈曉敺嚗甇隞撖嗡蝝蝝摰銋嚗交狡蝯行
- * 2. 亦箏辣脫交狡嚗隢撣塚1嚗鞎瑟嫣 甈曉敺嚗澆怒∠唾 甈暸甈整API嚗霈甇隞撖嗆交狡蝯行 ∴甈曄策鞎瑟嫘
- * 瘜冽鈭嚗 餃交∩港唾交狡嚗甇斤閮 甈暸銝湔曉冽隞撖塚游唳∠唾 交狡
- * 餃辣脫交狡銝拍具靽∠典∼鞎∩ 銋隞甈暹孵
- * @param holdTradeAMT
- */
- public void setHoldTradeAMT(String holdTradeAMT) {
- HoldTradeAMT = holdTradeAMT;
- }
- /**
- * 敺EncryptType CheckMacValue撖憿
- * @return EncryptType
- */
- public String getEncryptType() {
- return EncryptType;
- }
- /**
- * 閮剖EncryptType CheckMacValue撖憿
- * @param encryptType
- */
-// public void setEncryptType(String encryptType) {
-// EncryptType = encryptType;
-// }
- /**
- * 敺UseRedeem 臬血臭誑雿輻刻頃拚/蝝萸其閮剖甇斤鈭斗臬血臭誑雿輻刻頃 /蝝萸
- * 1. 亦箏臭蝙冽嚗隢撣塚嚗
- * 2. 亦箔臭蝙冽嚗隢撣塚N
- * 瘜冽鈭嚗
- * 1. 菜孵舀潦撱敺堆蝝 菔身摰賣啣函菜隞塚 亙歇菔身摰嚗甇文 賂靘瘙箏甇斤鈭斗臬血臭誑雿輻 鞈潛拚/蝝萸
- * 2. 菔頃拚/蝝∴甇隞 撖嗅拚脰鞎餅嚗萎 憿嚗望∟
- * 3. 亙臭蝙刻頃拚/蝝菜嚗 瘜冽交嗡甈曄交嚗隢隞乩漱 憿[TradeAmt]閮桅憿瑼X乓
- * @return UseRedeem
- */
- public String getUseRedeem() {
- return UseRedeem;
- }
- /**
- * 閮剖UseRedeem 臬血臭誑雿輻刻頃拚/蝝萸其閮剖甇斤鈭斗臬血臭誑雿輻刻頃 /蝝萸
- * 1. 亦箏臭蝙冽嚗隢撣塚嚗
- * 2. 亦箔臭蝙冽嚗隢撣塚N
- * 瘜冽鈭嚗
- * 1. 菜孵舀潦撱敺堆蝝 菔身摰賣啣函菜隞塚 亙歇菔身摰嚗甇文 賂靘瘙箏甇斤鈭斗臬血臭誑雿輻 鞈潛拚/蝝萸
- * 2. 菔頃拚/蝝∴甇隞 撖嗅拚脰鞎餅嚗萎 憿嚗望∟
- * 3. 亙臭蝙刻頃拚/蝝菜嚗 瘜冽交嗡甈曄交嚗隢隞乩漱 憿[TradeAmt]閮桅憿瑼X乓
- * @param useRedeem
- */
- public void setUseRedeem(String useRedeem) {
- UseRedeem = useRedeem;
- }
- /**
- * 敺ExpireDate 閮梁像鞎餅憭拇賂仿閮剖 60 憭抬1憭押芾身摰甇文詨閮剔3憭
- * 瘜冽鈭嚗 隞亙予箏桐
- * @return ExpireDate
- */
- public String getExpireDate() {
- return ExpireDate;
- }
- /**
- * 閮剖ExpireDate 閮梁像鞎餅憭拇賂仿閮剖 60 憭抬1憭押芾身摰甇文詨閮剔3憭
- * 瘜冽鈭嚗 隞亙予箏桐
- * @param expireDate
- */
- public void setExpireDate(String expireDate) {
- ExpireDate = expireDate;
- }
- /**
- * 敺PaymentInfoURL Server蝡臬喃甈曄賊鞈閮交閮剖甇文賂閮桀遣蝡摰敺(隞甈曉)
- * 嚗甇隞撖嗆Server蝡航臬單鞎餉隞甈暹孵賊鞈閮(靘嚗銵隞蝣潦蝜唾祥砍董蝜唾祥衣)
- * 瘜冽鈭嚗W冽隞撖塚憿舐內蝜唾祥賊鞈閮
- * @return PaymentInfoURL
- */
- public String getPaymentInfoURL() {
- return PaymentInfoURL;
- }
- /**
- * 閮剖PaymentInfoURL Server蝡臬喃甈曄賊鞈閮交閮剖甇文賂閮桀遣蝡摰敺(隞甈曉)
- * 嚗甇隞撖嗆Server蝡航臬單鞎餉隞甈暹孵賊鞈閮(靘嚗銵隞蝣潦蝜唾祥砍董蝜唾祥衣)
- * 瘜冽鈭嚗W冽隞撖塚憿舐內蝜唾祥賊鞈閮
- * @param paymentInfoURL
- */
- public void setPaymentInfoURL(String paymentInfoURL) {
- PaymentInfoURL = paymentInfoURL;
- }
- /**
- * 敺ClientRedirectURL Client蝡臬喃甈曄賊鞈閮交閮剖甇文賂閮桀遣蝡摰敺(隞甈曉)
- * 嚗甇隞撖嗆Client蝡臬單鞎餉隞甈暹孵賊鞈閮(靘嚗銵隞蝣潦蝜唾祥砍董蝜唾祥衣)銝撠Z唳∠頂蝯望摰g
- * 憿舐內蝜唾祥賊鞈閮
- * 瘜冽鈭嚗
- * 1. 亥身摰甇文賂撠雿輯身摰餈∠頂蝯梁蝯[ClientBackURL]憭望
- * 2. 亙蝬脣芯蝙玖ttps嚗其遢閬賢典航賣箇曇郎閮胯
- * @return ClientRedirectURL
- */
- public String getClientRedirectURL() {
- return ClientRedirectURL;
- }
- /**
- * 閮剖ClientRedirectURL Client蝡臬喃甈曄賊鞈閮交閮剖甇文賂閮桀遣蝡摰敺(隞甈曉)
- * 嚗甇隞撖嗆Client蝡臬單鞎餉隞甈暹孵賊鞈閮(靘嚗銵隞蝣潦蝜唾祥砍董蝜唾祥衣)銝撠Z唳∠頂蝯望摰g
- * 憿舐內蝜唾祥賊鞈閮
- * 瘜冽鈭嚗
- * 1. 亥身摰甇文賂撠雿輯身摰餈∠頂蝯梁蝯[ClientBackURL]憭望
- * 2. 亙蝬脣芯蝙玖ttps嚗其遢閬賢典航賣箇曇郎閮胯
- * @param clientRedirectURL
- */
- public void setClientRedirectURL(String clientRedirectURL) {
- ClientRedirectURL = clientRedirectURL;
- }
- /**
- * 敺StoreExpireDate 頞蝜唾祥芣迫嚗隞亙予箏桐嚗閮剔7憭
- * 靘嚗08/0120:15鞈潸眺嚗蝜唾祥7憭抬銵函內8/0820:15典敺蝜唾祥
- * @return StoreExpireDate
- */
- public String getStoreExpireDate() {
- return StoreExpireDate;
- }
- /**
- * 閮剖StoreExpireDate 頞蝜唾祥芣迫嚗隞亙予箏桐嚗閮剔7憭
- * 靘嚗08/0120:15鞈潸眺嚗蝜唾祥7憭抬銵函內8/0820:15典敺蝜唾祥
- * @param storeExpireDate
- */
- public void setStoreExpireDate(String storeExpireDate) {
- StoreExpireDate = storeExpireDate;
- }
- /**
- * 敺Desc_1 鈭斗餈1嚗箇曉刻蝜唾祥撟喳啗W銝
- * @return Desc_1
- */
- public String getDesc_1() {
- return Desc_1;
- }
- /**
- * 閮剖Desc_1 鈭斗餈1嚗箇曉刻蝜唾祥撟喳啗W銝
- * @param desc_1
- */
- public void setDesc_1(String desc_1) {
- Desc_1 = desc_1;
- }
- /**
- * 敺Desc_2 鈭斗餈2嚗箇曉刻蝜唾祥撟喳啗W銝
- * @return Desc_2
- */
- public String getDesc_2() {
- return Desc_2;
- }
- /**
- * 閮剖Desc_2 鈭斗餈2嚗箇曉刻蝜唾祥撟喳啗W銝
- * @param desc_2
- */
- public void setDesc_2(String desc_2) {
- Desc_2 = desc_2;
- }
- /**
- * 敺Desc_3 鈭斗餈3嚗箇曉刻蝜唾祥撟喳啗W銝
- * @return Desc_3
- */
- public String getDesc_3() {
- return Desc_3;
- }
- /**
- * 閮剖Desc_3 鈭斗餈3嚗箇曉刻蝜唾祥撟喳啗W銝
- * @param desc_3
- */
- public void setDesc_3(String desc_3) {
- Desc_3 = desc_3;
- }
- /**
- * 敺Desc_4 鈭斗餈4嚗箇曉刻蝜唾祥撟喳啗W銝
- * @return Desc_4
- */
- public String getDesc_4() {
- return Desc_4;
- }
- /**
- * 閮剖Desc_4 鈭斗餈4嚗箇曉刻蝜唾祥撟喳啗W銝
- * @param desc_4
- */
- public void setDesc_4(String desc_4) {
- Desc_4 = desc_4;
- }
- /**
- * 敺ExpireTime 隞甈暹芣迫嚗澆漾yyy/MM/dd HH:mm:ss芾賢葆仿箔漱敺72撠(銝憭)銋扳銝憛怠閮剔粹箔漱敺72撠
- * @return ExpireTime
- */
- public String getExpireTime() {
- return ExpireTime;
- }
- /**
- * 閮剖ExpireTime 隞甈暹芣迫嚗澆漾yyy/MM/dd HH:mm:ss芾賢葆仿箔漱敺72撠(銝憭)銋扳銝憛怠閮剔粹箔漱敺72撠
- * @param expireTime
- */
- public void setExpireTime(String expireTime) {
- ExpireTime = expireTime;
- }
- /**
- * 敺Redeem 靽∠典⊥臬虫蝙函拇蛛閮剔旖嚗嗆隞撖嗆⊿豢靽∠典∩甈暹嚗脣亦拇萇鈭斗瘚蝔
- * @return Redeem
- */
- public String getRedeem() {
- return Redeem;
- }
- /**
- * 閮剖Redeem 靽∠典⊥臬虫蝙函拇蛛閮剔旖嚗嗆隞撖嗆⊿豢靽∠典∩甈暹嚗脣亦拇萇鈭斗瘚蝔
- * @param redeem
- */
- public void setRedeem(String redeem) {
- Redeem = redeem;
- }
- /**
- * 敺CreditInstallment 瑕∪賂靘瑕∪賂銝敺撠2
- * @return CreditInstallment
- */
- public String getCreditInstallment() {
- return CreditInstallment;
- }
- /**
- * 閮剖CreditInstallment 瑕∪賂靘瑕∪賂銝敺撠2
- * @param creditInstallment
- */
- public void setCreditInstallment(String creditInstallment) {
- CreditInstallment = creditInstallment;
- }
- /**
- * 敺InstallmentAmount 雿輻典瑕∪蝮賭甈暸憿嚗瑕∪蝮賭甈暸憿亥鈭斗憿嚗蓉otalAmount嚗賜詨嚗銝喳交迨詻
- * @return InstallmentAmount
- */
- public String getInstallmentAmount() {
- return InstallmentAmount;
- }
- /**
- * 閮剖InstallmentAmount 雿輻典瑕∪蝮賭甈暸憿嚗瑕∪蝮賭甈暸憿亥鈭斗憿嚗蓉otalAmount嚗賜詨嚗銝喳交迨詻
- * @param installmentAmount
- */
- public void setInstallmentAmount(String installmentAmount) {
- InstallmentAmount = installmentAmount;
- }
- /**
- * 敺PeriodAmount 瘥甈⊥甈憿
- * 瘜冽鈭嚗 甇隞撖嗆靘甇斗活甈憿[PeriodAmount]閮剖憿箔敺箏甈憿
- * 鈭斗憿[TotalAmount]閮剖憿敹甈憿[PeriodAmount]詨
- * 隢撣嗆湔賂銝舀撠賊啣啣馳
- * @return PeriodAmount
- */
- public String getPeriodAmount() {
- return PeriodAmount;
- }
- /**
- * 閮剖PeriodAmount 瘥甈⊥甈憿
- * 瘜冽鈭嚗 甇隞撖嗆靘甇斗活甈憿[PeriodAmount]閮剖憿箔敺箏甈憿
- * 鈭斗憿[TotalAmount]閮剖憿敹甈憿[PeriodAmount]詨
- * 隢撣嗆湔賂銝舀撠賊啣啣馳
- * @param periodAmount
- */
- public void setPeriodAmount(String periodAmount) {
- PeriodAmount = periodAmount;
- }
- /**
- * 敺PeriodType 望蝔桅 D嚗隞亙予粹望嚗M嚗隞交粹望嚗Y嚗隞亙僑粹望
- * @return PeriodType
- */
- public String getPeriodType() {
- return PeriodType;
- }
- /**
- * 閮剖PeriodType 望蝔桅 D嚗隞亙予粹望嚗M嚗隞交粹望嚗Y嚗隞亙僑粹望
- * @param periodType
- */
- public void setPeriodType(String periodType) {
- PeriodType = periodType;
- }
- /**
- * 敺Frequency 瑁餌嚗甇文貊其摰蝢拙銋閬瑁銝甈
- * 瘜冽鈭嚗
- * 1. 喳閬憭扳潛1甈∩誑銝
- * 2. 賀eriodType閮剔慣嚗憭航身365甈∼
- * 3. 賀eriodType閮剔撤嚗憭航身12甈∼
- * 4. 賀eriodType閮剔旖嚗憭航身1甈∼
- * @return Frequency
- */
- public String getFrequency() {
- return Frequency;
- }
- /**
- * 閮剖Frequency 瑁餌嚗甇文貊其摰蝢拙銋閬瑁銝甈
- * 瘜冽鈭嚗
- * 1. 喳閬憭扳潛1甈∩誑銝
- * 2. 賀eriodType閮剔慣嚗憭航身365甈∼
- * 3. 賀eriodType閮剔撤嚗憭航身12甈∼
- * 4. 賀eriodType閮剔旖嚗憭航身1甈∼
- * @param frequency
- */
- public void setFrequency(String frequency) {
- Frequency = frequency;
- }
- /**
- * 敺ExecTimes 瑁甈⊥賂蝮賢梯瑁撟暹活
- * @return ExecTimes
- */
- public String getExecTimes() {
- return ExecTimes;
- }
- /**
- * 閮剖ExecTimes 瑁甈⊥賂蝮賢梯瑁撟暹活
- * @param execTimes
- */
- public void setExecTimes(String execTimes) {
- ExecTimes = execTimes;
- }
- /**
- * 敺PeriodReturnURL 摰摰憿瑁蝯URL嚗乩漱臭縑典∪摰憿孵嚗瘥甈∪瑁甈摰嚗撠甈蝯喳圈閮剖URL
- * @return PeriodReturnURL
- */
- public String getPeriodReturnURL() {
- return PeriodReturnURL;
- }
- /**
- * 閮剖PeriodReturnURL 摰摰憿瑁蝯URL嚗乩漱臭縑典∪摰憿孵嚗瘥甈∪瑁甈摰嚗撠甈蝯喳圈閮剖URL
- * @param periodReturnURL
- */
- public void setPeriodReturnURL(String periodReturnURL) {
- PeriodReturnURL = periodReturnURL;
- }
- /**
- * 敺StoreID ∪摨隞蝣潘靘∪‵亙摰嗡誨蝣潔蝙
- * @return StoreID
- */
- public String getStoreID() {
- return StoreID;
- }
- /**
- * 閮剖StoreID ∪摨隞蝣潘靘∪‵亙摰嗡誨蝣潔蝙
- * @param storeID
- */
- public void setStoreID(String storeID) {
- StoreID = storeID;
- }
- @Override
- public String toString() {
- return "AioCheckOutALL [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", StoreID="
- + StoreID + ", MerchantTradeDate=" + MerchantTradeDate + ", PaymentType=" + PaymentType
- + ", TotalAmount=" + TotalAmount + ", TradeDesc=" + TradeDesc + ", ItemName=" + ItemName
- + ", ReturnURL=" + ReturnURL + ", ChoosePayment=" + ChoosePayment + ", ClientBackURL=" + ClientBackURL
- + ", ItemURL=" + ItemURL + ", Remark=" + Remark + ", ChooseSubPayment=" + ChooseSubPayment
- + ", OrderResultURL=" + OrderResultURL + ", NeedExtraPaidInfo=" + NeedExtraPaidInfo + ", DeviceSource="
- + DeviceSource + ", IgnorePayment=" + IgnorePayment + ", PlatformID=" + PlatformID + ", InvoiceMark="
- + InvoiceMark + ", HoldTradeAMT=" + HoldTradeAMT + ", EncryptType=" + EncryptType + ", UseRedeem="
- + UseRedeem + ", ExpireDate=" + ExpireDate + ", PaymentInfoURL=" + PaymentInfoURL
- + ", ClientRedirectURL=" + ClientRedirectURL + ", StoreExpireDate=" + StoreExpireDate + ", Desc_1="
- + Desc_1 + ", Desc_2=" + Desc_2 + ", Desc_3=" + Desc_3 + ", Desc_4=" + Desc_4 + ", ExpireTime="
- + ExpireTime + ", Redeem=" + Redeem + ", CreditInstallment=" + CreditInstallment
- + ", InstallmentAmount=" + InstallmentAmount + ", PeriodAmount=" + PeriodAmount + ", PeriodType="
- + PeriodType + ", Frequency=" + Frequency + ", ExecTimes=" + ExecTimes + ", PeriodReturnURL="
- + PeriodReturnURL + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/AioCheckOutATM.java b/Payment/allPay/payment/integration/domain/AioCheckOutATM.java
deleted file mode 100644
index 7c27459..0000000
--- a/Payment/allPay/payment/integration/domain/AioCheckOutATM.java
+++ /dev/null
@@ -1,636 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 產生ATM訂單物件
- * @author mark.chiu
- *
- */
-public class AioCheckOutATM {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * 會員交易編號,該交易編號不可重複
- */
- private String MerchantTradeNo = "";
-
- /**
- * StoreID
- * 會員商店代碼,提供會員填入店家代碼使用
- */
- private String StoreID = "";
-
- /**
- * MerchantTradeDate
- * 會員交易時間
- */
- private String MerchantTradeDate = "";
-
- /**
- * PaymentType
- * 交易類型
- */
- private String PaymentType = "aio";
-
- /**
- * TotalAmount
- * 交易金額
- */
- private String TotalAmount = "";
-
- /**
- * TradeDesc
- * 交易描述
- */
- private String TradeDesc = "";
-
- /**
- * ItemName
- * 商品名稱
- */
- private String ItemName = "";
-
- /**
- * ReturnURL
- * 付款完成通知回傳網址
- */
- private String ReturnURL = "";
-
- /**
- * ChoosePayment
- * 選擇預設付款方式
- */
- private String ChoosePayment = "ATM";
-
- /**
- * ClientBackURL
- * Client端返回會員系統的按鈕連結
- */
- private String ClientBackURL = "";
-
- /**
- * ItemURL
- * 商品銷售網址
- */
- private String ItemURL = "";
-
- /**
- * Remark
- * 備註欄位
- */
- private String Remark = "";
-
- /**
- * ChooseSubPayment
- * 選擇預設付款子項目
- */
- private String ChooseSubPayment = "";
-
- /**
- * OrderResultURL
- * Client端回傳付款結果網址
- */
- private String OrderResultURL = "";
-
- /**
- * NeedExtraPaidInfo
- * 是否需要額外的付款資訊
- */
- private String NeedExtraPaidInfo = "";
-
- /**
- * DeviceSource
- * 裝置來源,請帶空值,由allPay自動判定。
- */
- private String DeviceSource = "";
-
- /**
- * IgnorePayment
- * 隱藏付款方式,設定檔自動帶入
- */
- private String IgnorePayment = "";
-
- /**
- * PlatformID
- * 特約合作平台商代號(由allPay提供),設定檔自動帶入
- */
- private String PlatformID = "";
-
- /**
- * InvoiceMark
- * 電子發票開立註記,程式自動判斷
- */
- private String InvoiceMark = "";
-
- /**
- * HoldTradeAMT
- * 是否延遲撥款
- */
- private String HoldTradeAMT = "";
-
- /**
- * EncryptType
- * CheckMacValue加密類型
- */
- private String EncryptType = "1";
-
- /**
- * UseRedeem
- * 是否可以使用購物金/紅包折抵
- */
- private String UseRedeem = "";
-
- /**
- * ExpireDate
- * 允許繳費有效天數
- */
- private String ExpireDate = "";
-
- /**
- * PaymentInfoURL
- * Server端回傳付款相關資訊
- */
- private String PaymentInfoURL = "";
-
- /**
- * ClientRedirectURL
- * Client端回傳付款相關資訊
- */
- private String ClientRedirectURL = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得MerchantTradeDate 會員交易時間
- * @return MerchantTradeDate
- */
- public String getMerchantTradeDate() {
- return MerchantTradeDate;
- }
- /**
- * 設定MerchantTradeDate 會員交易時間,請以 yyyy/MM/dd HH:mm:ss格式帶入
- * @param merchantTradeDate
- */
- public void setMerchantTradeDate(String merchantTradeDate) {
- MerchantTradeDate = merchantTradeDate;
- }
- /**
- * 取得PaymentType 交易類型
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
- /**
- * 設定PaymentType 交易類型
- * @param paymentType
- */
-// public void setPaymentType(String paymentType) {
-// PaymentType = paymentType;
-// }
- /**
- * 取得TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @return TotalAmount
- */
- public String getTotalAmount() {
- return TotalAmount;
- }
- /**
- * 設定TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @param totalAmount
- */
- public void setTotalAmount(String totalAmount) {
- TotalAmount = totalAmount;
- }
- /**
- * 取得TradeDesc 交易描述
- * @return TradeDesc
- */
- public String getTradeDesc() {
- return TradeDesc;
- }
- /**
- * 設定TradeDesc 交易描述
- * @param tradeDesc
- */
- public void setTradeDesc(String tradeDesc) {
- TradeDesc = tradeDesc;
- }
- /**
- * 取得ItemName 商品名稱,如果商品名稱有多筆,需在金流選擇頁一行一行顯示商品名稱的話,商品名稱請以符號#分隔
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 設定ItemName 商品名稱,如果商品名稱有多筆,需在金流選擇頁一行一行顯示商品名稱的話,商品名稱請以符號#分隔
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 取得ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款結果參數以幕後(Server POST)回傳到該網址。
- * @return ReturnURL
- */
- public String getReturnURL() {
- return ReturnURL;
- }
- /**
- * 設定ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款結果參數以幕後(Server POST)回傳到該網址。
- * @param returnURL
- */
- public void setReturnURL(String returnURL) {
- ReturnURL = returnURL;
- }
- /**
- * 取得ChoosePayment 選擇預設付款方式,歐付寶提供下列付款方式,請於建立訂單時傳送過來:
- * Credit:信用卡
- * WebATM:網路ATM
- * ATM:自動櫃員機
- * CVS:超商代碼
- * Tenpay:財付通
- * TopUpUsed:儲值消費
- * ALL:不指定付款方式,由歐付寶顯示付款方式選擇頁面。
- * 注意事項:
- * 若為手機版時不支援下列付款方式:
- * WebATM:網路ATM
- * @return ChoosePayment
- */
- public String getChoosePayment() {
- return ChoosePayment;
- }
- /**
- * 設定ChoosePayment 選擇預設付款方式,歐付寶提供下列付款方式,請於建立訂單時傳送過來:
- * Credit:信用卡
- * WebATM:網路ATM
- * ATM:自動櫃員機
- * CVS:超商代碼
- * Tenpay:財付通
- * TopUpUsed:儲值消費
- * ALL:不指定付款方式,由歐付寶顯示付款方式選擇頁面。
- * 注意事項:
- * 若為手機版時不支援下列付款方式:
- * WebATM:網路ATM
- * @param choosePayment
- */
-// public void setChoosePayment(String choosePayment) {
-// ChoosePayment = choosePayment;
-// }
- /**
- * 取得ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ClientBackURL
- */
- public String getClientBackURL() {
- return ClientBackURL;
- }
- /**
- * 設定ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param clientBackURL
- */
- public void setClientBackURL(String clientBackURL) {
- ClientBackURL = clientBackURL;
- }
- /**
- * 取得ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ItemURL
- */
- public String getItemURL() {
- return ItemURL;
- }
- /**
- * 設定 ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param itemURL
- */
- public void setItemURL(String itemURL) {
- ItemURL = itemURL;
- }
- /**
- * 取得Remark 備註欄位
- * @return Remark
- */
- public String getRemark() {
- return Remark;
- }
- /**
- * 設定Remark 備註欄位
- * @param remark
- */
- public void setRemark(String remark) {
- Remark = remark;
- }
- /**
- * 取得ChooseSubPayment 選擇預設付款子項目
- * @return ChooseSubPayment
- */
- public String getChooseSubPayment() {
- return ChooseSubPayment;
- }
- /**
- * 設定ChooseSubPayment 選擇預設付款子項目
- * @param chooseSubPayment
- */
- public void setChooseSubPayment(String chooseSubPayment) {
- ChooseSubPayment = chooseSubPayment;
- }
- /**
- * 取得OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return OrderResultURL
- */
- public String getOrderResultURL() {
- return OrderResultURL;
- }
- /**
- * 設定OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param orderResultURL
- */
- public void setOrderResultURL(String orderResultURL) {
- OrderResultURL = orderResultURL;
- }
- /**
- * 取得NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @return NeedExtraPaidInfo
- */
- public String getNeedExtraPaidInfo() {
- return NeedExtraPaidInfo;
- }
- /**
- * 設定NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @param needExtraPaidInfo
- */
- public void setNeedExtraPaidInfo(String needExtraPaidInfo) {
- NeedExtraPaidInfo = needExtraPaidInfo;
- }
- /**
- * 取得DeviceSource 裝置來源
- * @return DeviceSource
- */
- public String getDeviceSource() {
- return DeviceSource;
- }
- /**
- * 設定DeviceSource 裝置來源
- * @param deviceSource
- */
-// public void setDeviceSource(String deviceSource) {
-// DeviceSource = deviceSource;
-// }
- /**
- * 取得IgnorePayment 隱藏付款方式
- * @return IgnorePayment
- */
- public String getIgnorePayment() {
- return IgnorePayment;
- }
- /**
- * 設定IgnorePayment 隱藏付款方式
- * @param ignorePayment
- */
- public void setIgnorePayment(String ignorePayment) {
- IgnorePayment = ignorePayment;
- }
- /**
- * 取得PlatformID 特約合作平台商代號(由allPay提供)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 設定PlatformID 特約合作平台商代號(由allPay提供)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- /**
- * 取得InvoiceMark 電子發票開立註記
- * @return InvoiceMark
- */
- public String getInvoiceMark() {
- return InvoiceMark;
- }
- /**
- * 設定InvoiceMark 電子發票開立註記
- * @param invoiceMark
- */
- public void setInvoiceMark(String invoiceMark) {
- InvoiceMark = invoiceMark;
- }
- /**
- * 取得HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @return HoldTradeAMT
- */
- public String getHoldTradeAMT() {
- return HoldTradeAMT;
- }
- /**
- * 設定HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @param holdTradeAMT
- */
- public void setHoldTradeAMT(String holdTradeAMT) {
- HoldTradeAMT = holdTradeAMT;
- }
- /**
- * 取得EncryptType CheckMacValue加密類型
- * @return EncryptType
- */
- public String getEncryptType() {
- return EncryptType;
- }
- /**
- * 設定EncryptType CheckMacValue加密類型
- * @param encryptType
- */
-// public void setEncryptType(String encryptType) {
-// EncryptType = encryptType;
-// }
- /**
- * 取得UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @return UseRedeem
- */
- public String getUseRedeem() {
- return UseRedeem;
- }
- /**
- * 設定UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @param useRedeem
- */
- public void setUseRedeem(String useRedeem) {
- UseRedeem = useRedeem;
- }
- /**
- * 取得ExpireDate 允許繳費有效天數,若需設定最長 60 天,最短1天。未設定此參數則預設為3天
- * @return ExpireDate
- */
- public String getExpireDate() {
- return ExpireDate;
- }
-
- /**
- * 設定ExpireDate 允許繳費有效天數,若需設定最長 60 天,最短1天。未設定此參數則預設為3天
- * @param expireDate
- */
- public void setExpireDate(String expireDate) {
- ExpireDate = expireDate;
- }
- /**
- * 取得PaymentInfoURL Server端回傳付款相關資訊。若有設定此參數,訂單建立完成後(非付款完成)
- * ,歐付寶會Server端背景回傳消費者付款方式相關資訊(例:銀行代碼、繳費虛擬帳號繳費期限…等)。
- * 注意事項:頁面將會停留在歐付寶,顯示繳費的相關資訊。
- * @return PaymentInfoURL
- */
- public String getPaymentInfoURL() {
- return PaymentInfoURL;
- }
- /**
- * 設定PaymentInfoURL Server端回傳付款相關資訊。若有設定此參數,訂單建立完成後(非付款完成)
- * ,歐付寶會Server端背景回傳消費者付款方式相關資訊(例:銀行代碼、繳費虛擬帳號繳費期限…等)。
- * 注意事項:頁面將會停留在歐付寶,顯示繳費的相關資訊。
- * @param paymentInfoURL
- */
- public void setPaymentInfoURL(String paymentInfoURL) {
- PaymentInfoURL = paymentInfoURL;
- }
- /**
- * 取得ClientRedirectURL Client端回傳付款相關資訊。若有設定此參數,訂單建立完成後(非付款完成)
- * ,歐付寶會Client端回傳消費者付款方式相關資訊(例:銀行代碼、繳費虛擬帳號繳費期限…等)且將頁面轉到會員系統指定的頁面,
- * 顯示繳費的相關資訊。
- * 注意事項:
- * 1. 若設定此參數,將會使設定的返回會員系統的按鈕連結[ClientBackURL]失效。
- * 2. 若導回網址未使用https時,部份瀏覽器可能會出現警告訊息。
- * @return ClientRedirectURL
- */
- public String getClientRedirectURL() {
- return ClientRedirectURL;
- }
- /**
- * 設定ClientRedirectURL Client端回傳付款相關資訊。若有設定此參數,訂單建立完成後(非付款完成)
- * ,歐付寶會Client端回傳消費者付款方式相關資訊(例:銀行代碼、繳費虛擬帳號繳費期限…等)且將頁面轉到會員系統指定的頁面,
- * 顯示繳費的相關資訊。
- * 注意事項:
- * 1. 若設定此參數,將會使設定的返回會員系統的按鈕連結[ClientBackURL]失效。
- * 2. 若導回網址未使用https時,部份瀏覽器可能會出現警告訊息。
- * @param clientRedirectURL
- */
- public void setClientRedirectURL(String clientRedirectURL) {
- ClientRedirectURL = clientRedirectURL;
- }
- /**
- * 取得StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @return StoreID
- */
- public String getStoreID() {
- return StoreID;
- }
- /**
- * 設定StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @param storeID
- */
- public void setStoreID(String storeID) {
- StoreID = storeID;
- }
- @Override
- public String toString() {
- return "AioCheckOutATM [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", StoreID="
- + StoreID + ", MerchantTradeDate=" + MerchantTradeDate + ", PaymentType=" + PaymentType
- + ", TotalAmount=" + TotalAmount + ", TradeDesc=" + TradeDesc + ", ItemName=" + ItemName
- + ", ReturnURL=" + ReturnURL + ", ChoosePayment=" + ChoosePayment + ", ClientBackURL=" + ClientBackURL
- + ", ItemURL=" + ItemURL + ", Remark=" + Remark + ", ChooseSubPayment=" + ChooseSubPayment
- + ", OrderResultURL=" + OrderResultURL + ", NeedExtraPaidInfo=" + NeedExtraPaidInfo + ", DeviceSource="
- + DeviceSource + ", IgnorePayment=" + IgnorePayment + ", PlatformID=" + PlatformID + ", InvoiceMark="
- + InvoiceMark + ", HoldTradeAMT=" + HoldTradeAMT + ", EncryptType=" + EncryptType + ", UseRedeem="
- + UseRedeem + ", ExpireDate=" + ExpireDate + ", PaymentInfoURL=" + PaymentInfoURL
- + ", ClientRedirectURL=" + ClientRedirectURL + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/AioCheckOutCVS.java b/Payment/allPay/payment/integration/domain/AioCheckOutCVS.java
deleted file mode 100644
index 7ab5768..0000000
--- a/Payment/allPay/payment/integration/domain/AioCheckOutCVS.java
+++ /dev/null
@@ -1,722 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 產生CVS超商代碼繳費訂單物件
- * @author mark.chiu
- *
- */
-public class AioCheckOutCVS {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * 會員交易編號,該交易編號不可重複
- */
- private String MerchantTradeNo = "";
-
- /**
- * StoreID
- * 會員商店代碼,提供會員填入店家代碼使用
- */
- private String StoreID = "";
-
- /**
- * MerchantTradeDate
- * 會員交易時間
- */
- private String MerchantTradeDate = "";
-
- /**
- * PaymentType
- * 交易類型
- */
- private String PaymentType = "aio";
-
- /**
- * TotalAmount
- * 交易金額
- */
- private String TotalAmount = "";
-
- /**
- * TradeDesc
- * 交易描述
- */
- private String TradeDesc = "";
-
- /**
- * ItemName
- * 商品名稱
- */
- private String ItemName = "";
-
- /**
- * ReturnURL
- * 付款完成通知回傳網址
- */
- private String ReturnURL = "";
-
- /**
- * ChoosePayment
- * 選擇預設付款方式
- */
- private String ChoosePayment = "CVS";
-
- /**
- * ClientBackURL
- * Client端返回會員系統的按鈕連結
- */
- private String ClientBackURL = "";
-
- /**
- * ItemURL
- * 商品銷售網址
- */
- private String ItemURL = "";
-
- /**
- * Remark
- * 備註欄位
- */
- private String Remark = "";
-
- /**
- * ChooseSubPayment
- * 選擇預設付款子項目
- */
- private String ChooseSubPayment = "";
-
- /**
- * OrderResultURL
- * Client端回傳付款結果網址
- */
- private String OrderResultURL = "";
-
- /**
- * NeedExtraPaidInfo
- * 是否需要額外的付款資訊
- */
- private String NeedExtraPaidInfo = "";
-
- /**
- * DeviceSource
- * 裝置來源,由allPay自動判定。
- */
- private String DeviceSource = "";
-
- /**
- * IgnorePayment
- * 隱藏付款方式,設定檔自動帶入
- */
- private String IgnorePayment = "";
-
- /**
- * PlatformID
- * 特約合作平台商代號(由allPay提供),設定檔自動帶入
- */
- private String PlatformID = "";
-
- /**
- * InvoiceMark
- * 電子發票開立註記,程式自動判斷
- */
- private String InvoiceMark = "";
-
- /**
- * HoldTradeAMT
- * 是否延遲撥款
- */
- private String HoldTradeAMT = "";
-
- /**
- * EncryptType
- * CheckMacValue加密類型
- */
- private String EncryptType = "1";
-
- /**
- * UseRedeem
- * 是否可以使用購物金/紅包折抵
- */
- private String UseRedeem = "";
-
- /**
- * StoreExpireDate
- * 超商繳費截止時間
- */
- private String StoreExpireDate = "";
-
- /**
- * Desc_1
- * 交易描述1
- */
- private String Desc_1 = "";
-
- /**
- * Desc_2
- * 交易描述2
- */
- private String Desc_2 = "";
-
- /**
- * Desc_3
- * 交易描述3
- */
- private String Desc_3 = "";
-
- /**
- * Desc_4
- * 交易描述4
- */
- private String Desc_4 = "";
-
- /**
- * PaymentInfoURL
- * Server端回傳付款相關資訊
- */
- private String PaymentInfoURL = "";
-
- /**
- * ClientRedirectURL
- * Client端回傳付款方式相關資訊
- */
- private String ClientRedirectURL = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得MerchantTradeDate 會員交易時間
- * @return MerchantTradeDate
- */
- public String getMerchantTradeDate() {
- return MerchantTradeDate;
- }
- /**
- * 設定MerchantTradeDate 會員交易時間,請以 yyyy/MM/dd HH:mm:ss格式帶入
- * @param merchantTradeDate
- */
- public void setMerchantTradeDate(String merchantTradeDate) {
- MerchantTradeDate = merchantTradeDate;
- }
- /**
- * 取得PaymentType 交易類型
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
- /**
- * 設定PaymentType 交易類型
- * @param paymentType
- */
-// public void setPaymentType(String paymentType) {
-// PaymentType = paymentType;
-// }
- /**
- * 取得TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @return TotalAmount
- */
- public String getTotalAmount() {
- return TotalAmount;
- }
- /**
- * 設定TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @param totalAmount
- */
- public void setTotalAmount(String totalAmount) {
- TotalAmount = totalAmount;
- }
- /**
- * 取得TradeDesc 交易描述
- * @return TradeDesc
- */
- public String getTradeDesc() {
- return TradeDesc;
- }
- /**
- * 設定TradeDesc 交易描述
- * @param tradeDesc
- */
- public void setTradeDesc(String tradeDesc) {
- TradeDesc = tradeDesc;
- }
- /**
- * 取得ItemName 商品名稱,如果商品名稱有多筆,需在金流選擇頁一行一行顯示商品名稱的話,商品名稱請以符號#分隔
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 設定ItemName 商品名稱,如果商品名稱有多筆,需在金流選擇頁一行一行顯示商品名稱的話,商品名稱請以符號#分隔
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 取得ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款結果參數以幕後(Server POST)回傳到該網址。
- * @return ReturnURL
- */
- public String getReturnURL() {
- return ReturnURL;
- }
- /**
- * 設定ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款結果參數以幕後(Server POST)回傳到該網址。
- * @param returnURL
- */
- public void setReturnURL(String returnURL) {
- ReturnURL = returnURL;
- }
- /**
- * 取得ChoosePayment 選擇預設付款方式,歐付寶提供下列付款方式,請於建立訂單時傳送過來:
- * Credit:信用卡
- * WebATM:網路ATM
- * ATM:自動櫃員機
- * CVS:超商代碼
- * Tenpay:財付通
- * TopUpUsed:儲值消費
- * ALL:不指定付款方式,由歐付寶顯示付款方式選擇頁面。
- * 注意事項:
- * 若為手機版時不支援下列付款方式:
- * WebATM:網路ATM
- * @return ChoosePayment
- */
- public String getChoosePayment() {
- return ChoosePayment;
- }
- /**
- * 設定ChoosePayment 選擇預設付款方式,歐付寶提供下列付款方式,請於建立訂單時傳送過來:
- * Credit:信用卡
- * WebATM:網路ATM
- * ATM:自動櫃員機
- * CVS:超商代碼
- * Tenpay:財付通
- * TopUpUsed:儲值消費
- * ALL:不指定付款方式,由歐付寶顯示付款方式選擇頁面。
- * 注意事項:
- * 若為手機版時不支援下列付款方式:
- * WebATM:網路ATM
- * @param choosePayment
- */
-// public void setChoosePayment(String choosePayment) {
-// ChoosePayment = choosePayment;
-// }
- /**
- * 取得ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ClientBackURL
- */
- public String getClientBackURL() {
- return ClientBackURL;
- }
- /**
- * 設定ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param clientBackURL
- */
- public void setClientBackURL(String clientBackURL) {
- ClientBackURL = clientBackURL;
- }
- /**
- * 取得ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ItemURL
- */
- public String getItemURL() {
- return ItemURL;
- }
- /**
- * 設定 ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param itemURL
- */
- public void setItemURL(String itemURL) {
- ItemURL = itemURL;
- }
- /**
- * 取得Remark 備註欄位
- * @return Remark
- */
- public String getRemark() {
- return Remark;
- }
- /**
- * 設定Remark 備註欄位
- * @param remark
- */
- public void setRemark(String remark) {
- Remark = remark;
- }
- /**
- * 取得ChooseSubPayment 選擇預設付款子項目。若設定此參數,使用者則無法看見金流 選擇頁,且使用者必須要已登入歐付寶。
- * 例如:付款方式[ChoosePayment]設定 WebATM,付款子項目 [ChooseSubPayment]設定 TAISHIN,
- * 此次交易僅會以台新銀行的 網路 ATM 付款。請參考付款方式一覽表
- * @return ChooseSubPayment
- */
- public String getChooseSubPayment() {
- return ChooseSubPayment;
- }
- /**
- * 設定ChooseSubPayment 選擇預設付款子項目。若設定此參數,使用者則無法看見金流 選擇頁,且使用者必須要已登入歐付寶。
- * 例如:付款方式[ChoosePayment]設定 WebATM,付款子項目 [ChooseSubPayment]設定 TAISHIN,
- * 此次交易僅會以台新銀行的 網路 ATM 付款。請參考付款方式一覽表
- * @param chooseSubPayment
- */
- public void setChooseSubPayment(String chooseSubPayment) {
- ChooseSubPayment = chooseSubPayment;
- }
- /**
- * 取得OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return OrderResultURL
- */
- public String getOrderResultURL() {
- return OrderResultURL;
- }
- /**
- * 設定OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param orderResultURL
- */
- public void setOrderResultURL(String orderResultURL) {
- OrderResultURL = orderResultURL;
- }
- /**
- * 取得NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @return NeedExtraPaidInfo
- */
- public String getNeedExtraPaidInfo() {
- return NeedExtraPaidInfo;
- }
- /**
- * 設定NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @param needExtraPaidInfo
- */
- public void setNeedExtraPaidInfo(String needExtraPaidInfo) {
- NeedExtraPaidInfo = needExtraPaidInfo;
- }
- /**
- * 取得DeviceSource 裝置來源
- * @return DeviceSource
- */
- public String getDeviceSource() {
- return DeviceSource;
- }
- /**
- * 設定DeviceSource 裝置來源
- * @param deviceSource
- */
-// public void setDeviceSource(String deviceSource) {
-// DeviceSource = deviceSource;
-// }
- /**
- * 取得IgnorePayment 隱藏付款方式
- * @return IgnorePayment
- */
- public String getIgnorePayment() {
- return IgnorePayment;
- }
- /**
- * 設定IgnorePayment 隱藏付款方式
- * @param ignorePayment
- */
- public void setIgnorePayment(String ignorePayment) {
- IgnorePayment = ignorePayment;
- }
- /**
- * 取得PlatformID 特約合作平台商代號(由O’Pay提供)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 設定PlatformID 特約合作平台商代號(由O’Pay提供)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- /**
- * 取得InvoiceMark 電子發票開立註記
- * @return InvoiceMark
- */
- public String getInvoiceMark() {
- return InvoiceMark;
- }
- /**
- * 設定InvoiceMark 電子發票開立註記
- * @param invoiceMark
- */
- public void setInvoiceMark(String invoiceMark) {
- InvoiceMark = invoiceMark;
- }
- /**
- * 取得HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @return HoldTradeAMT
- */
- public String getHoldTradeAMT() {
- return HoldTradeAMT;
- }
- /**
- * 設定HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @param holdTradeAMT
- */
- public void setHoldTradeAMT(String holdTradeAMT) {
- HoldTradeAMT = holdTradeAMT;
- }
- /**
- * 取得EncryptType CheckMacValue加密類型
- * @return EncryptType
- */
- public String getEncryptType() {
- return EncryptType;
- }
- /**
- * 設定EncryptType CheckMacValue加密類型
- * @param encryptType
- */
-// public void setEncryptType(String encryptType) {
-// EncryptType = encryptType;
-// }
- /**
- * 取得UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @return UseRedeem
- */
- public String getUseRedeem() {
- return UseRedeem;
- }
- /**
- * 設定UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @param useRedeem
- */
- public void setUseRedeem(String useRedeem) {
- UseRedeem = useRedeem;
- }
- /**
- * 取得StoreExpireDate 超商繳費截止時間,以天為單位,預設為7天
- * 例:08/01的20:15分購買商品,繳費期限為7天,表示8/08的20:15分前您必須前往繳費。
- * @return StoreExpireDate
- */
- public String getStoreExpireDate() {
- return StoreExpireDate;
- }
- /**
- * 設定StoreExpireDate 超商繳費截止時間,以天為單位,預設為7天
- * 例:08/01的20:15分購買商品,繳費期限為7天,表示8/08的20:15分前您必須前往繳費。
- * @param storeExpireDate
- */
- public void setStoreExpireDate(String storeExpireDate) {
- StoreExpireDate = storeExpireDate;
- }
- /**
- * 取得Desc_1 交易描述1,會出現在超商繳費平台螢幕上
- * @return Desc_1
- */
- public String getDesc_1() {
- return Desc_1;
- }
- /**
- * 設定Desc_1 交易描述1,會出現在超商繳費平台螢幕上
- * @param desc_1
- */
- public void setDesc_1(String desc_1) {
- Desc_1 = desc_1;
- }
- /**
- * 取得Desc_2 交易描述2,會出現在超商繳費平台螢幕上
- * @return Desc_2
- */
- public String getDesc_2() {
- return Desc_2;
- }
- /**
- * 設定Desc_2 交易描述2,會出現在超商繳費平台螢幕上
- * @param desc_2
- */
- public void setDesc_2(String desc_2) {
- Desc_2 = desc_2;
- }
- /**
- * 取得Desc_3 交易描述3,會出現在超商繳費平台螢幕上
- * @return Desc_3
- */
- public String getDesc_3() {
- return Desc_3;
- }
- /**
- * 設定Desc_3 交易描述3,會出現在超商繳費平台螢幕上
- * @param desc_3
- */
- public void setDesc_3(String desc_3) {
- Desc_3 = desc_3;
- }
- /**
- * 取得Desc_4 交易描述4,會出現在超商繳費平台螢幕上
- * @return Desc_4
- */
- public String getDesc_4() {
- return Desc_4;
- }
- /**
- * 設定Desc_4 交易描述4,會出現在超商繳費平台螢幕上
- * @param desc_4
- */
- public void setDesc_4(String desc_4) {
- Desc_4 = desc_4;
- }
- /**
- * 取得PaymentInfoURL Server端回傳付款相關資訊。若有設定此參數,訂單建立完成後(非付款完成)
- * ,歐付寶會Server端背景回傳消費者付款方式相關資訊(例:銀行代碼、繳費虛擬帳號繳費期限…等)。
- * 注意事項:頁面將會停留在歐付寶,顯示繳費的相關資訊。
- * @return PaymentInfoURL
- */
- public String getPaymentInfoURL() {
- return PaymentInfoURL;
- }
- /**
- * 設定PaymentInfoURL Server端回傳付款相關資訊。若有設定此參數,訂單建立完成後(非付款完成)
- * ,歐付寶會Server端背景回傳消費者付款方式相關資訊(例:銀行代碼、繳費虛擬帳號繳費期限…等)。
- * 注意事項:頁面將會停留在歐付寶,顯示繳費的相關資訊。
- * @param paymentInfoURL
- */
- public void setPaymentInfoURL(String paymentInfoURL) {
- PaymentInfoURL = paymentInfoURL;
- }
- /**
- * 取得ClientRedirectURL Client端回傳付款方式相關資訊。若有設定此參數,訂單建立完成後(非付款完成)
- * ,歐付寶會Client端回傳消費者付款方式相關資訊(例:銀行代碼、繳費虛擬帳號繳費期限…等)且將頁面轉到會員系統指定的頁面,
- * 顯示繳費的相關資訊。
- * 注意事項:
- * 1. 若設定此參數,將會使設定的返回會員系統的按鈕連結[ClientBackURL]失效。
- * 2. 若導回網址未使用https時,部份瀏覽器可能會出現警告訊息。
- * @return ClientRedirectURL
- */
- public String getClientRedirectURL() {
- return ClientRedirectURL;
- }
- /**
- * 設定ClientRedirectURL Client端回傳付款方式相關資訊。若有設定此參數,訂單建立完成後(非付款完成)
- * ,歐付寶會Client端回傳消費者付款方式相關資訊(例:銀行代碼、繳費虛擬帳號繳費期限…等)且將頁面轉到會員系統指定的頁面,
- * 顯示繳費的相關資訊。
- * 注意事項:
- * 1. 若設定此參數,將會使設定的返回會員系統的按鈕連結[ClientBackURL]失效。
- * 2. 若導回網址未使用https時,部份瀏覽器可能會出現警告訊息。
- * @param clientRedirectURL
- */
- public void setClientRedirectURL(String clientRedirectURL) {
- ClientRedirectURL = clientRedirectURL;
- }
- /**
- * 取得StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @return StoreID
- */
- public String getStoreID() {
- return StoreID;
- }
- /**
- * 設定StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @param storeID
- */
- public void setStoreID(String storeID) {
- StoreID = storeID;
- }
- @Override
- public String toString() {
- return "AioCheckOutCVS [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", StoreID="
- + StoreID + ", MerchantTradeDate=" + MerchantTradeDate + ", PaymentType=" + PaymentType
- + ", TotalAmount=" + TotalAmount + ", TradeDesc=" + TradeDesc + ", ItemName=" + ItemName
- + ", ReturnURL=" + ReturnURL + ", ChoosePayment=" + ChoosePayment + ", ClientBackURL=" + ClientBackURL
- + ", ItemURL=" + ItemURL + ", Remark=" + Remark + ", ChooseSubPayment=" + ChooseSubPayment
- + ", OrderResultURL=" + OrderResultURL + ", NeedExtraPaidInfo=" + NeedExtraPaidInfo + ", DeviceSource="
- + DeviceSource + ", IgnorePayment=" + IgnorePayment + ", PlatformID=" + PlatformID + ", InvoiceMark="
- + InvoiceMark + ", HoldTradeAMT=" + HoldTradeAMT + ", EncryptType=" + EncryptType + ", UseRedeem="
- + UseRedeem + ", StoreExpireDate=" + StoreExpireDate + ", Desc_1=" + Desc_1 + ", Desc_2=" + Desc_2
- + ", Desc_3=" + Desc_3 + ", Desc_4=" + Desc_4 + ", PaymentInfoURL=" + PaymentInfoURL
- + ", ClientRedirectURL=" + ClientRedirectURL + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/AioCheckOutDevide.java b/Payment/allPay/payment/integration/domain/AioCheckOutDevide.java
deleted file mode 100644
index 868e4b9..0000000
--- a/Payment/allPay/payment/integration/domain/AioCheckOutDevide.java
+++ /dev/null
@@ -1,585 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * Y靽∠典∪隞甈曇桃拐辣
- * @author mark.chiu
- *
- */
-public class AioCheckOutDevide {
-
- /**
- * MerchantID
- * ∠楊(帶llPay靘)
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * ∩漱蝺刻嚗閰脖漱蝺刻銝舫銴
- */
- private String MerchantTradeNo = "";
-
- /**
- * StoreID
- * ∪摨隞蝣潘靘∪‵亙摰嗡誨蝣潔蝙
- */
- private String StoreID = "";
-
- /**
- * MerchantTradeDate
- * ∩漱
- */
- private String MerchantTradeDate = "";
-
- /**
- * PaymentType
- * 鈭斗憿
- */
- private String PaymentType = "aio";
-
- /**
- * TotalAmount
- * 鈭斗憿
- */
- private String TotalAmount = "";
-
- /**
- * TradeDesc
- * 鈭斗餈
- */
- private String TradeDesc = "";
-
- /**
- * ItemName
- * 蝔
- */
- private String ItemName = "";
-
- /**
- * ReturnURL
- * 隞甈曉亙喟雯
- */
- private String ReturnURL = "";
-
- /**
- * ChoosePayment
- * 豢閮凋甈暹孵
- */
- private String ChoosePayment = "Credit";
-
- /**
- * ClientBackURL
- * Client蝡航∠頂蝯梁蝯
- */
- private String ClientBackURL = "";
-
- /**
- * ItemURL
- * 瑕桃雯
- */
- private String ItemURL = "";
-
- /**
- * Remark
- * 閮餅雿
- */
- private String Remark = "";
-
- /**
- * ChooseSubPayment
- * 豢閮凋甈曉
- */
- private String ChooseSubPayment = "";
-
- /**
- * OrderResultURL
- * Client蝡臬喃甈曄蝬脣
- */
- private String OrderResultURL = "";
-
- /**
- * NeedExtraPaidInfo
- * 臬阡閬憿憭隞甈曇閮
- */
- private String NeedExtraPaidInfo = "";
-
- /**
- * DeviceSource
- * 鋆蝵桐皞嚗隢撣嗥征潘帶llPay芸文
- */
- private String DeviceSource = "";
-
- /**
- * IgnorePayment
- * 梯隞甈暹孵嚗閮剖瑼芸撣嗅
- */
- private String IgnorePayment = "";
-
- /**
- * PlatformID
- * 寧雿撟喳啣隞(帶llPay靘)嚗閮剖瑼芸撣嗅
- */
- private String PlatformID = "";
-
- /**
- * InvoiceMark
- * 餃潛巨蝡閮餉嚗蝔撘芸斗
- */
- private String InvoiceMark = "";
-
- /**
- * HoldTradeAMT
- * 臬血辣脫交狡
- */
- private String HoldTradeAMT = "";
-
- /**
- * EncryptType
- * CheckMacValue撖憿
- */
- private String EncryptType = "1";
-
- /**
- * UseRedeem
- * 臬血臭誑雿輻刻頃拚/蝝
- */
- private String UseRedeem = "";
-
- /**
- * CreditInstallment
- * 瑕∪
- */
- private String CreditInstallment = "";
-
- /**
- * InstallmentAmount
- * 雿輻典瑕∪蝮賭甈暸憿
- */
- private String InstallmentAmount = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 敺MerchantID ∠楊(屠'Pay靘)嚗嗆迨撟喳啁箇寧雿撟喳唳炬撱箇閮格嚗閰脫雿銝砍像啣隢敹賜交迨甈雿
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 閮剖MerchantID ∠楊(屠'Pay靘)嚗嗆迨撟喳啁箇寧雿撟喳唳炬撱箇閮格嚗閰脫雿銝砍像啣隢敹賜交迨甈雿
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 敺MerchantTradeNo ∩漱蝺刻嚗望詨憭批撖急毽嚗閰脖漱蝺刻銝舫銴嚗憒雿輻沌latformID嚗撟喳啣摨銝摰嗡閮桃楊鈭虫舫銴
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 閮剖MerchantTradeNo ∩漱蝺刻嚗望詨憭批撖急毽嚗閰脖漱蝺刻銝舫銴嚗憒雿輻沌latformID嚗撟喳啣摨銝摰嗡閮桃楊鈭虫舫銴
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 敺MerchantTradeDate ∩漱
- * @return MerchantTradeDate
- */
- public String getMerchantTradeDate() {
- return MerchantTradeDate;
- }
- /**
- * 閮剖MerchantTradeDate ∩漱嚗隢隞 yyyy/MM/dd HH:mm:ss澆撣嗅
- * @param merchantTradeDate
- */
- public void setMerchantTradeDate(String merchantTradeDate) {
- MerchantTradeDate = merchantTradeDate;
- }
- /**
- * 敺PaymentType 鈭斗憿
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
- /**
- * 閮剖PaymentType 鈭斗憿
- * @param paymentType
- */
-// public void setPaymentType(String paymentType) {
-// PaymentType = paymentType;
-// }
- /**
- * 敺TotalAmount 鈭斗憿嚗隢撣嗆湔賂銝舀撠賊
- * 憿銝舐0
- * CVS雿嗥27嚗擃嗥20000
- * 靽∠典⊿憿仿孵∪蝚砌憿鈭/賜(霅啁)嚗憿銝臬5
- * @return TotalAmount
- */
- public String getTotalAmount() {
- return TotalAmount;
- }
- /**
- * 閮剖TotalAmount 鈭斗憿嚗隢撣嗆湔賂銝舀撠賊
- * 憿銝舐0
- * CVS雿嗥27嚗擃嗥20000
- * 靽∠典⊿憿仿孵∪蝚砌憿鈭/賜(霅啁)嚗憿銝臬5
- * @param totalAmount
- */
- public void setTotalAmount(String totalAmount) {
- TotalAmount = totalAmount;
- }
- /**
- * 敺TradeDesc 鈭斗餈
- * @return TradeDesc
- */
- public String getTradeDesc() {
- return TradeDesc;
- }
- /**
- * 閮剖TradeDesc 鈭斗餈
- * @param tradeDesc
- */
- public void setTradeDesc(String tradeDesc) {
- TradeDesc = tradeDesc;
- }
- /**
- * 敺ItemName 蝔梧交憭蝑嚗券瘚豢 銝銵銝銵憿舐內蝔梁閰梧蝔梯隞亦泵#
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 閮剖ItemName 蝔梧交憭蝑嚗券瘚豢 銝銵銝銵憿舐內蝔梁閰梧蝔梯隞亦泵#
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 敺ReturnURL 隞甈曉亙喟雯嚗嗆鞎餉隞甈曉敺嚗甇隞撖嗆撠隞甈 蝯訾誑撟敺(Server POST)喳 閰脩雯
- * @return ReturnURL
- */
- public String getReturnURL() {
- return ReturnURL;
- }
- /**
- * 閮剖ReturnURL 隞甈曉亙喟雯嚗嗆鞎餉隞甈曉敺嚗甇隞撖嗆撠隞甈 蝯訾誑撟敺(Server POST)喳 閰脩雯
- * @param returnURL
- */
- public void setReturnURL(String returnURL) {
- ReturnURL = returnURL;
- }
- /**
- * 敺ChoosePayment 豢閮凋甈暹孵
- * @return ChoosePayment
- */
- public String getChoosePayment() {
- return ChoosePayment;
- }
- /**
- * 閮剖ChoosePayment 豢閮凋甈暹孵
- * @param choosePayment
- */
-// public void setChoosePayment(String choosePayment) {
-// ChoosePayment = choosePayment;
-// }
- /**
- * 敺ClientBackURL Client蝡航∠頂蝯梁蝯閮剖甇文賂甇隞撖嗆其甈曉 摰V憿舐內[餈摨]
- *瘨鞎餉暺豢迨敺嚗撠W唳迨閮剖蝬脣
- *瘜冽鈭嚗砍詨批嗅W嚗銝撠隞甈曄鞈閮POST啗身摰澆抒URL潛蝪∟ OTP 撽霅憭望甇文豢潭嚗V鈭行憿舐內
- *亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @return ClientBackURL
- */
- public String getClientBackURL() {
- return ClientBackURL;
- }
- /**
- * 閮剖ClientBackURL Client蝡航∠頂蝯梁蝯閮剖甇文賂甇隞撖嗆其甈曉 摰V憿舐內[餈摨]
- *瘨鞎餉暺豢迨敺嚗撠W唳迨閮剖蝬脣
- *瘜冽鈭嚗砍詨批嗅W嚗銝撠隞甈曄鞈閮POST啗身摰澆抒URL潛蝪∟ OTP 撽霅憭望甇文豢潭嚗V鈭行憿舐內
- *亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @param clientBackURL
- */
- public void setClientBackURL(String clientBackURL) {
- ClientBackURL = clientBackURL;
- }
- /**
- * 敺ItemURL 瑕桃雯閮剖甇文賂甇隞撖嗆其甈曉 摰V憿舐內[餈摨]
- *瘨鞎餉暺豢迨敺嚗撠W唳迨閮剖蝬脣
- *瘜冽鈭嚗砍詨批嗅W嚗銝撠隞甈曄鞈閮POST啗身摰澆抒URL潛蝪∟ OTP 撽霅憭望甇文豢潭嚗V鈭行憿舐內
- *亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @return ItemURL
- */
- public String getItemURL() {
- return ItemURL;
- }
- /**
- * 閮剖 ItemURL 瑕桃雯閮剖甇文賂甇隞撖嗆其甈曉 摰V憿舐內[餈摨]
- *瘨鞎餉暺豢迨敺嚗撠W唳迨閮剖蝬脣
- *瘜冽鈭嚗砍詨批嗅W嚗銝撠隞甈曄鞈閮POST啗身摰澆抒URL潛蝪∟ OTP 撽霅憭望甇文豢潭嚗V鈭行憿舐內
- *亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @param itemURL
- */
- public void setItemURL(String itemURL) {
- ItemURL = itemURL;
- }
- /**
- * 敺Remark 閮餅雿
- * @return Remark
- */
- public String getRemark() {
- return Remark;
- }
- /**
- * 閮剖Remark 閮餅雿
- * @param remark
- */
- public void setRemark(String remark) {
- Remark = remark;
- }
- /**
- * 敺ChooseSubPayment 豢閮凋甈曉柴亥身摰甇文賂雿輻刻⊥閬瘚 豢嚗銝雿輻刻敹閬撌脩餃交隞撖嗚
- * 靘憒嚗隞甈暹孵[ChoosePayment]閮剖 WebATM嚗隞甈曉 [ChooseSubPayment]閮剖 TAISHIN嚗
- * 甇斗活鈭斗隞亙唳圈銵 蝬脰楝 ATM 隞甈整隢隞甈暹孵銝閬質”
- * @return ChooseSubPayment
- */
- public String getChooseSubPayment() {
- return ChooseSubPayment;
- }
- /**
- * 閮剖ChooseSubPayment 豢閮凋甈曉柴亥身摰甇文賂雿輻刻⊥閬瘚 豢嚗銝雿輻刻敹閬撌脩餃交隞撖嗚
- * 靘憒嚗隞甈暹孵[ChoosePayment]閮剖 WebATM嚗隞甈曉 [ChooseSubPayment]閮剖 TAISHIN嚗
- * 甇斗活鈭斗隞亙唳圈銵 蝬脰楝 ATM 隞甈整隢隞甈暹孵銝閬質”
- * @param chooseSubPayment
- */
- public void setChooseSubPayment(String chooseSubPayment) {
- ChooseSubPayment = chooseSubPayment;
- }
- /**
- * 敺OrderResultURL Client蝡臬喃甈曄蝬脣隞甈曉敺嚗甇隞撖嗅W唳 ∠雯嚗銝血隞甈曄撣嗅
- * 瘜冽鈭嚗
- * 1. 瘝撣嗆迨詨憿舐內甇隞撖嗥隞 甈曉
- * 2. 憒閬撠隞甈曄憿舐內冽 蝟餌絞改隢閮剖甇文詻
- * 3. 亥身摰甇文賂撠雿輯身摰 Client 蝡航∠頂蝯梁 蝯[ClientBackURL]憭望
- * 4. 典銵 WebATM 其漱 敺,券銵,銝虫撠 蝯行隞撖,隞交隞撖嗡銝撠 W豺OrderResultURL]
- * 5. 鞎∩鈭斗(ATMCVS) 銝舀湔迨詻
- * 6. 撱箄降冽葫閰阡畾菜銝閬閮剖甇 賂臬恍W冽隞撖塚 閬甇隞撖嗆靘航炊閮荔靘踹 隞交日胯
- * 7. 交閮剖甇文賂隢敹寞 鈭斗靘斗琿*蝷箔甈暹 衣U
- * 8. 亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @return OrderResultURL
- */
- public String getOrderResultURL() {
- return OrderResultURL;
- }
- /**
- * 閮剖OrderResultURL Client蝡臬喃甈曄蝬脣隞甈曉敺嚗甇隞撖嗅W唳 ∠雯嚗銝血隞甈曄撣嗅
- * 瘜冽鈭嚗
- * 1. 瘝撣嗆迨詨憿舐內甇隞撖嗥隞 甈曉
- * 2. 憒閬撠隞甈曄憿舐內冽 蝟餌絞改隢閮剖甇文詻
- * 3. 亥身摰甇文賂撠雿輯身摰 Client 蝡航∠頂蝯梁 蝯[ClientBackURL]憭望
- * 4. 典銵 WebATM 其漱 敺,券銵,銝虫撠 蝯行隞撖,隞交隞撖嗡銝撠 W豺OrderResultURL]
- * 5. 鞎∩鈭斗(ATMCVS) 銝舀湔迨詻
- * 6. 撱箄降冽葫閰阡畾菜銝閬閮剖甇 賂臬恍W冽隞撖塚 閬甇隞撖嗆靘航炊閮荔靘踹 隞交日胯
- * 7. 交閮剖甇文賂隢敹寞 鈭斗靘斗琿*蝷箔甈暹 衣U
- * 8. 亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @param orderResultURL
- */
- public void setOrderResultURL(String orderResultURL) {
- OrderResultURL = orderResultURL;
- }
- /**
- * 敺NeedExtraPaidInfo 臬阡閬憿憭隞甈曇閮 單渲底蝝啁隞甈曇閮袒eturnURL豢摰URL閮剔摸
- * @return NeedExtraPaidInfo
- */
- public String getNeedExtraPaidInfo() {
- return NeedExtraPaidInfo;
- }
- /**
- * 閮剖NeedExtraPaidInfo 臬阡閬憿憭隞甈曇閮 單渲底蝝啁隞甈曇閮袒eturnURL豢摰URL閮剔摸
- * @param needExtraPaidInfo
- */
- public void setNeedExtraPaidInfo(String needExtraPaidInfo) {
- NeedExtraPaidInfo = needExtraPaidInfo;
- }
- /**
- * 敺DeviceSource 鋆蝵桐皞
- * @return DeviceSource
- */
- public String getDeviceSource() {
- return DeviceSource;
- }
- /**
- * 閮剖DeviceSource 鋆蝵桐皞
- * @param deviceSource
- */
-// public void setDeviceSource(String deviceSource) {
-// DeviceSource = deviceSource;
-// }
- /**
- * 敺IgnorePayment 梯隞甈暹孵
- * @return IgnorePayment
- */
- public String getIgnorePayment() {
- return IgnorePayment;
- }
- /**
- * 閮剖IgnorePayment 梯隞甈暹孵
- * @param ignorePayment
- */
- public void setIgnorePayment(String ignorePayment) {
- IgnorePayment = ignorePayment;
- }
- /**
- * 敺PlatformID 寧雿撟喳啣隞(屠Pay靘)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 閮剖PlatformID 寧雿撟喳啣隞(屠Pay靘)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- /**
- * 敺InvoiceMark 餃潛巨蝡閮餉
- * @return InvoiceMark
- */
- public String getInvoiceMark() {
- return InvoiceMark;
- }
- /**
- * 閮剖InvoiceMark 餃潛巨蝡閮餉
- * @param invoiceMark
- */
- public void setInvoiceMark(String invoiceMark) {
- InvoiceMark = invoiceMark;
- }
- /**
- * 敺HoldTradeAMT 臬血辣脫交狡
- * 1. 亦箔撱園脫交狡嚗隢撣塚0嚗鞎瑟嫣甈曉敺嚗甇隞撖嗡蝝蝝摰銋嚗交狡蝯行
- * 2. 亦箏辣脫交狡嚗隢撣塚1嚗鞎瑟嫣 甈曉敺嚗澆怒∠唾 甈暸甈整API嚗霈甇隞撖嗆交狡蝯行 ∴甈曄策鞎瑟嫘
- * 瘜冽鈭嚗 餃交∩港唾交狡嚗甇斤閮 甈暸銝湔曉冽隞撖塚游唳∠唾 交狡
- * 餃辣脫交狡銝拍具靽∠典∼鞎∩ 銋隞甈暹孵
- * @return HoldTradeAMT
- */
- public String getHoldTradeAMT() {
- return HoldTradeAMT;
- }
- /**
- * 閮剖HoldTradeAMT 臬血辣脫交狡
- * 1. 亦箔撱園脫交狡嚗隢撣塚0嚗鞎瑟嫣甈曉敺嚗甇隞撖嗡蝝蝝摰銋嚗交狡蝯行
- * 2. 亦箏辣脫交狡嚗隢撣塚1嚗鞎瑟嫣 甈曉敺嚗澆怒∠唾 甈暸甈整API嚗霈甇隞撖嗆交狡蝯行 ∴甈曄策鞎瑟嫘
- * 瘜冽鈭嚗 餃交∩港唾交狡嚗甇斤閮 甈暸銝湔曉冽隞撖塚游唳∠唾 交狡
- * 餃辣脫交狡銝拍具靽∠典∼鞎∩ 銋隞甈暹孵
- * @param holdTradeAMT
- */
- public void setHoldTradeAMT(String holdTradeAMT) {
- HoldTradeAMT = holdTradeAMT;
- }
- /**
- * 敺EncryptType CheckMacValue撖憿
- * @return EncryptType
- */
- public String getEncryptType() {
- return EncryptType;
- }
- /**
- * 閮剖EncryptType CheckMacValue撖憿
- * @param encryptType
- */
-// public void setEncryptType(String encryptType) {
-// EncryptType = encryptType;
-// }
- /**
- * 敺UseRedeem 臬血臭誑雿輻刻頃拚/蝝萸其閮剖甇斤鈭斗臬血臭誑雿輻刻頃 /蝝萸
- * 1. 亦箏臭蝙冽嚗隢撣塚嚗
- * 2. 亦箔臭蝙冽嚗隢撣塚N
- * 瘜冽鈭嚗
- * 1. 菜孵舀潦撱敺堆蝝 菔身摰賣啣函菜隞塚 亙歇菔身摰嚗甇文 賂靘瘙箏甇斤鈭斗臬血臭誑雿輻 鞈潛拚/蝝萸
- * 2. 菔頃拚/蝝∴甇隞 撖嗅拚脰鞎餅嚗萎 憿嚗望∟
- * 3. 亙臭蝙刻頃拚/蝝菜嚗 瘜冽交嗡甈曄交嚗隢隞乩漱 憿[TradeAmt]閮桅憿瑼X乓
- * @return UseRedeem
- */
- public String getUseRedeem() {
- return UseRedeem;
- }
- /**
- * 閮剖UseRedeem 臬血臭誑雿輻刻頃拚/蝝萸其閮剖甇斤鈭斗臬血臭誑雿輻刻頃 /蝝萸
- * 1. 亦箏臭蝙冽嚗隢撣塚嚗
- * 2. 亦箔臭蝙冽嚗隢撣塚N
- * 瘜冽鈭嚗
- * 1. 菜孵舀潦撱敺堆蝝 菔身摰賣啣函菜隞塚 亙歇菔身摰嚗甇文 賂靘瘙箏甇斤鈭斗臬血臭誑雿輻 鞈潛拚/蝝萸
- * 2. 菔頃拚/蝝∴甇隞 撖嗅拚脰鞎餅嚗萎 憿嚗望∟
- * 3. 亙臭蝙刻頃拚/蝝菜嚗 瘜冽交嗡甈曄交嚗隢隞乩漱 憿[TradeAmt]閮桅憿瑼X乓
- * @param useRedeem
- */
- public void setUseRedeem(String useRedeem) {
- UseRedeem = useRedeem;
- }
- /**
- * 敺CreditInstallment 瑕∪賂靘瑕∪賂銝敺撠2
- * @return CreditInstallment
- */
- public String getCreditInstallment() {
- return CreditInstallment;
- }
- /**
- * 閮剖CreditInstallment 瑕∪賂靘瑕∪賂銝敺撠2
- * @param creditInstallment
- */
- public void setCreditInstallment(String creditInstallment) {
- CreditInstallment = creditInstallment;
- }
- /**
- * 敺InstallmentAmount 雿輻典瑕∪蝮賭甈暸憿嚗瑕∪蝮賭甈暸憿亥鈭斗憿嚗蓉otalAmount嚗賜詨嚗銝喳交迨詻
- * @return InstallmentAmount
- */
- public String getInstallmentAmount() {
- return InstallmentAmount;
- }
- /**
- * 閮剖InstallmentAmount 雿輻典瑕∪蝮賭甈暸憿嚗瑕∪蝮賭甈暸憿亥鈭斗憿嚗蓉otalAmount嚗賜詨嚗銝喳交迨詻
- * @param installmentAmount
- */
- public void setInstallmentAmount(String installmentAmount) {
- InstallmentAmount = installmentAmount;
- }
- /**
- * 敺StoreID ∪摨隞蝣潘靘∪‵亙摰嗡誨蝣潔蝙
- * @return StoreID
- */
- public String getStoreID() {
- return StoreID;
- }
- /**
- * 閮剖StoreID ∪摨隞蝣潘靘∪‵亙摰嗡誨蝣潔蝙
- * @param storeID
- */
- public void setStoreID(String storeID) {
- StoreID = storeID;
- }
- @Override
- public String toString() {
- return "AioCheckOutDevide [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", StoreID="
- + StoreID + ", MerchantTradeDate=" + MerchantTradeDate + ", PaymentType=" + PaymentType
- + ", TotalAmount=" + TotalAmount + ", TradeDesc=" + TradeDesc + ", ItemName=" + ItemName
- + ", ReturnURL=" + ReturnURL + ", ChoosePayment=" + ChoosePayment + ", ClientBackURL=" + ClientBackURL
- + ", ItemURL=" + ItemURL + ", Remark=" + Remark + ", ChooseSubPayment=" + ChooseSubPayment
- + ", OrderResultURL=" + OrderResultURL + ", NeedExtraPaidInfo=" + NeedExtraPaidInfo + ", DeviceSource="
- + DeviceSource + ", IgnorePayment=" + IgnorePayment + ", PlatformID=" + PlatformID + ", InvoiceMark="
- + InvoiceMark + ", HoldTradeAMT=" + HoldTradeAMT + ", EncryptType=" + EncryptType + ", UseRedeem="
- + UseRedeem + ", CreditInstallment=" + CreditInstallment + ", InstallmentAmount=" + InstallmentAmount
- + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/AioCheckOutOneTime.java b/Payment/allPay/payment/integration/domain/AioCheckOutOneTime.java
deleted file mode 100644
index b5563ee..0000000
--- a/Payment/allPay/payment/integration/domain/AioCheckOutOneTime.java
+++ /dev/null
@@ -1,563 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 產生信用卡一次付清訂單物件
- * @author mark.chiu
- *
- */
-public class AioCheckOutOneTime {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * 會員交易編號,該交易編號不可重複
- */
- private String MerchantTradeNo = "";
-
- /**
- * StoreID
- * 會員商店代碼,提供會員填入店家代碼使用
- */
- private String StoreID = "";
-
- /**
- * MerchantTradeDate
- * 會員交易時間
- */
- private String MerchantTradeDate = "";
-
- /**
- * PaymentType
- * 交易類型
- */
- private String PaymentType = "aio";
-
- /**
- * TotalAmount
- * 交易金額
- */
- private String TotalAmount = "";
-
- /**
- * TradeDesc
- * 交易描述
- */
- private String TradeDesc = "";
-
- /**
- * ItemName
- * 商品名稱
- */
- private String ItemName = "";
-
- /**
- * ReturnURL
- * 付款完成通知回傳網址
- */
- private String ReturnURL = "";
-
- /**
- * ChoosePayment
- * 選擇預設付款方式
- */
- private String ChoosePayment = "Credit";
-
- /**
- * ClientBackURL
- * Client端返回會員系統的按鈕連結
- */
- private String ClientBackURL = "";
-
- /**
- * ItemURL
- * 商品銷售網址
- */
- private String ItemURL = "";
-
- /**
- * Remark
- * 備註欄位
- */
- private String Remark = "";
-
- /**
- * ChooseSubPayment
- * 選擇預設付款子項目
- */
- private String ChooseSubPayment = "";
-
- /**
- * OrderResultURL
- * Client端回傳付款結果網址
- */
- private String OrderResultURL = "";
-
- /**
- * NeedExtraPaidInfo
- * 是否需要額外的付款資訊
- */
- private String NeedExtraPaidInfo = "";
-
- /**
- * DeviceSource
- * 裝置來源,由allPay自動判定。
- */
- private String DeviceSource = "";
-
- /**
- * IgnorePayment
- * 隱藏付款方式,設定檔自動帶入
- */
- private String IgnorePayment = "";
-
- /**
- * PlatformID
- * 特約合作平台商代號(由allPay提供),設定檔自動帶入
- */
- private String PlatformID = "";
-
- /**
- * InvoiceMark
- * 電子發票開立註記,程式自動判斷
- */
- private String InvoiceMark = "";
-
- /**
- * HoldTradeAMT
- * 是否延遲撥款
- */
- private String HoldTradeAMT = "";
-
- /**
- * EncryptType
- * CheckMacValue加密類型
- */
- private String EncryptType = "1";
-
- /**
- * UseRedeem
- * 是否可以使用購物金/紅包折抵
- */
- private String UseRedeem = "";
-
- /**
- * Redeem
- * 信用卡是否使用紅利折抵
- */
- private String Redeem = "";
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得MerchantTradeDate 會員交易時間
- * @return MerchantTradeDate
- */
- public String getMerchantTradeDate() {
- return MerchantTradeDate;
- }
- /**
- * 設定MerchantTradeDate 會員交易時間,請以 yyyy/MM/dd HH:mm:ss格式帶入
- * @param merchantTradeDate
- */
- public void setMerchantTradeDate(String merchantTradeDate) {
- MerchantTradeDate = merchantTradeDate;
- }
- /**
- * 取得PaymentType 交易類型
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
- /**
- * 設定PaymentType 交易類型
- * @param paymentType
- */
-// public void setPaymentType(String paymentType) {
-// PaymentType = paymentType;
-// }
- /**
- * 取得TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @return TotalAmount
- */
- public String getTotalAmount() {
- return TotalAmount;
- }
- /**
- * 設定TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @param totalAmount
- */
- public void setTotalAmount(String totalAmount) {
- TotalAmount = totalAmount;
- }
- /**
- * 取得TradeDesc 交易描述
- * @return TradeDesc
- */
- public String getTradeDesc() {
- return TradeDesc;
- }
- /**
- * 設定TradeDesc 交易描述
- * @param tradeDesc
- */
- public void setTradeDesc(String tradeDesc) {
- TradeDesc = tradeDesc;
- }
- /**
- * 取得ItemName 商品名稱,若有多筆,需在金流選擇頁 一行一行顯示商品名稱的話,商品名稱請以符號#分隔。
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 設定ItemName 商品名稱,若有多筆,需在金流選擇頁 一行一行顯示商品名稱的話,商品名稱請以符號#分隔。
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 取得ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款 結果參數以幕後(Server POST)回傳到 該網址。
- * @return ReturnURL
- */
- public String getReturnURL() {
- return ReturnURL;
- }
- /**
- * 設定ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款 結果參數以幕後(Server POST)回傳到 該網址。
- * @param returnURL
- */
- public void setReturnURL(String returnURL) {
- ReturnURL = returnURL;
- }
- /**
- * 取得ChoosePayment 選擇預設付款方式
- * @return ChoosePayment
- */
- public String getChoosePayment() {
- return ChoosePayment;
- }
- /**
- * 設定ChoosePayment 選擇預設付款方式
- * @param choosePayment
- */
-// public void setChoosePayment(String choosePayment) {
-// ChoosePayment = choosePayment;
-// }
- /**
- * 取得ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ClientBackURL
- */
- public String getClientBackURL() {
- return ClientBackURL;
- }
- /**
- * 設定ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param clientBackURL
- */
- public void setClientBackURL(String clientBackURL) {
- ClientBackURL = clientBackURL;
- }
- /**
- * 取得ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ItemURL
- */
- public String getItemURL() {
- return ItemURL;
- }
- /**
- * 設定 ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param itemURL
- */
- public void setItemURL(String itemURL) {
- ItemURL = itemURL;
- }
- /**
- * 取得Remark 備註欄位
- * @return Remark
- */
- public String getRemark() {
- return Remark;
- }
- /**
- * 設定Remark 備註欄位
- * @param remark
- */
- public void setRemark(String remark) {
- Remark = remark;
- }
- /**
- * 取得ChooseSubPayment 選擇預設付款子項目。若設定此參數,使用者則無法看見金流 選擇頁,且使用者必須要已登入歐付寶。
- * 例如:付款方式[ChoosePayment]設定 WebATM,付款子項目 [ChooseSubPayment]設定 TAISHIN,
- * 此次交易僅會以台新銀行的 網路 ATM 付款。請參考付款方式一覽表
- * @return ChooseSubPayment
- */
- public String getChooseSubPayment() {
- return ChooseSubPayment;
- }
- /**
- * 設定ChooseSubPayment 選擇預設付款子項目。若設定此參數,使用者則無法看見金流 選擇頁,且使用者必須要已登入歐付寶。
- * 例如:付款方式[ChoosePayment]設定 WebATM,付款子項目 [ChooseSubPayment]設定 TAISHIN,
- * 此次交易僅會以台新銀行的 網路 ATM 付款。請參考付款方式一覽表
- * @param chooseSubPayment
- */
- public void setChooseSubPayment(String chooseSubPayment) {
- ChooseSubPayment = chooseSubPayment;
- }
- /**
- * 取得OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return OrderResultURL
- */
- public String getOrderResultURL() {
- return OrderResultURL;
- }
- /**
- * 設定OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param orderResultURL
- */
- public void setOrderResultURL(String orderResultURL) {
- OrderResultURL = orderResultURL;
- }
- /**
- * 取得NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @return NeedExtraPaidInfo
- */
- public String getNeedExtraPaidInfo() {
- return NeedExtraPaidInfo;
- }
- /**
- * 設定NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @param needExtraPaidInfo
- */
- public void setNeedExtraPaidInfo(String needExtraPaidInfo) {
- NeedExtraPaidInfo = needExtraPaidInfo;
- }
- /**
- * 取得DeviceSource 裝置來源
- * @return DeviceSource
- */
- public String getDeviceSource() {
- return DeviceSource;
- }
- /**
- * 設定DeviceSource 裝置來源
- * @param deviceSource
- */
-// public void setDeviceSource(String deviceSource) {
-// DeviceSource = deviceSource;
-// }
- /**
- * 取得IgnorePayment 隱藏付款方式
- * @return IgnorePayment
- */
- public String getIgnorePayment() {
- return IgnorePayment;
- }
- /**
- * 設定IgnorePayment 隱藏付款方式
- * @param ignorePayment
- */
- public void setIgnorePayment(String ignorePayment) {
- IgnorePayment = ignorePayment;
- }
- /**
- * 取得PlatformID 特約合作平台商代號(由O’Pay提供)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 設定PlatformID 特約合作平台商代號(由O’Pay提供)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- /**
- * 取得InvoiceMark 電子發票開立註記
- * @return InvoiceMark
- */
- public String getInvoiceMark() {
- return InvoiceMark;
- }
- /**
- * 設定InvoiceMark 電子發票開立註記
- * @param invoiceMark
- */
- public void setInvoiceMark(String invoiceMark) {
- InvoiceMark = invoiceMark;
- }
- /**
- * 取得HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @return HoldTradeAMT
- */
- public String getHoldTradeAMT() {
- return HoldTradeAMT;
- }
- /**
- * 設定HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @param holdTradeAMT
- */
- public void setHoldTradeAMT(String holdTradeAMT) {
- HoldTradeAMT = holdTradeAMT;
- }
- /**
- * 取得EncryptType CheckMacValue加密類型
- * @return EncryptType
- */
- public String getEncryptType() {
- return EncryptType;
- }
- /**
- * 設定EncryptType CheckMacValue加密類型
- * @param encryptType
- */
-// public void setEncryptType(String encryptType) {
-// EncryptType = encryptType;
-// }
- /**
- * 取得UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @return UseRedeem
- */
- public String getUseRedeem() {
- return UseRedeem;
- }
- /**
- * 設定UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @param useRedeem
- */
- public void setUseRedeem(String useRedeem) {
- UseRedeem = useRedeem;
- }
- /**
- * 取得Redeem 信用卡是否使用紅利折抵,設為Y時,當歐付寶會員選擇信用卡付款時,會進入紅利折抵的交易流程
- * @return Redeem
- */
- public String getRedeem() {
- return Redeem;
- }
- /**
- * 設定Redeem 信用卡是否使用紅利折抵,設為Y時,當歐付寶會員選擇信用卡付款時,會進入紅利折抵的交易流程
- * @param redeem
- */
- public void setRedeem(String redeem) {
- Redeem = redeem;
- }
- /**
- * 取得StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @return StoreID
- */
- public String getStoreID() {
- return StoreID;
- }
- /**
- * 設定StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @param storeID
- */
- public void setStoreID(String storeID) {
- StoreID = storeID;
- }
- @Override
- public String toString() {
- return "AioCheckOutOneTime [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", StoreID="
- + StoreID + ", MerchantTradeDate=" + MerchantTradeDate + ", PaymentType=" + PaymentType
- + ", TotalAmount=" + TotalAmount + ", TradeDesc=" + TradeDesc + ", ItemName=" + ItemName
- + ", ReturnURL=" + ReturnURL + ", ChoosePayment=" + ChoosePayment + ", ClientBackURL=" + ClientBackURL
- + ", ItemURL=" + ItemURL + ", Remark=" + Remark + ", ChooseSubPayment=" + ChooseSubPayment
- + ", OrderResultURL=" + OrderResultURL + ", NeedExtraPaidInfo=" + NeedExtraPaidInfo + ", DeviceSource="
- + DeviceSource + ", IgnorePayment=" + IgnorePayment + ", PlatformID=" + PlatformID + ", InvoiceMark="
- + InvoiceMark + ", HoldTradeAMT=" + HoldTradeAMT + ", EncryptType=" + EncryptType + ", UseRedeem="
- + UseRedeem + ", Redeem=" + Redeem + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/AioCheckOutPeriod.java b/Payment/allPay/payment/integration/domain/AioCheckOutPeriod.java
deleted file mode 100644
index e9c7bcf..0000000
--- a/Payment/allPay/payment/integration/domain/AioCheckOutPeriod.java
+++ /dev/null
@@ -1,661 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 產生信用卡定期定額訂單物件
- * @author mark.chiu
- *
- */
-public class AioCheckOutPeriod {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * 會員交易編號,該交易編號不可重複
- */
- private String MerchantTradeNo = "";
-
- /**
- * StoreID
- * 會員商店代碼,提供會員填入店家代碼使用
- */
- private String StoreID = "";
-
- /**
- * MerchantTradeDate
- * 會員交易時間
- */
- private String MerchantTradeDate = "";
-
- /**
- * PaymentType
- * 交易類型
- */
- private String PaymentType = "aio";
-
- /**
- * TotalAmount
- * 交易金額
- */
- private String TotalAmount = "";
-
- /**
- * TradeDesc
- * 交易描述
- */
- private String TradeDesc = "";
-
- /**
- * ItemName
- * 商品名稱
- */
- private String ItemName = "";
-
- /**
- * ReturnURL
- * 付款完成通知回傳網址
- */
- private String ReturnURL = "";
-
- /**
- * ChoosePayment
- * 選擇預設付款方式
- */
- private String ChoosePayment = "Credit";
-
- /**
- * ClientBackURL
- * Client端返回會員系統的按鈕連結
- */
- private String ClientBackURL = "";
-
- /**
- * ItemURL
- * 商品銷售網址
- */
- private String ItemURL = "";
-
- /**
- * Remark
- * 備註欄位
- */
- private String Remark = "";
-
- /**
- * ChooseSubPayment
- * 選擇預設付款子項目
- */
- private String ChooseSubPayment = "";
-
- /**
- * OrderResultURL
- * Client端回傳付款結果網址
- */
- private String OrderResultURL = "";
-
- /**
- * NeedExtraPaidInfo
- * 是否需要額外的付款資訊
- */
- private String NeedExtraPaidInfo = "";
-
- /**
- * DeviceSource
- * 裝置來源,請帶空值,由allPay自動判定。
- */
- private String DeviceSource = "";
-
- /**
- * IgnorePayment
- * 隱藏付款方式,設定檔自動帶入
- */
- private String IgnorePayment = "";
-
- /**
- * PlatformID
- * 特約合作平台商代號(由allPay提供),設定檔自動帶入
- */
- private String PlatformID = "";
-
- /**
- * InvoiceMark
- * 電子發票開立註記,程式自動判斷
- */
- private String InvoiceMark = "";
-
- /**
- * HoldTradeAMT
- * 是否延遲撥款
- */
- private String HoldTradeAMT = "";
-
- /**
- * EncryptType
- * CheckMacValue加密類型
- */
- private String EncryptType = "1";
-
- /**
- * UseRedeem
- * 是否可以使用購物金/紅包折抵
- */
- private String UseRedeem = "";
-
- /**
- * PeriodAmount
- * 每次授權金額
- */
- private String PeriodAmount = "";
-
- /**
- * PeriodType
- * 週期種類
- */
- private String PeriodType = "";
-
- /**
- * Frequency
- * 執行頻率
- */
- private String Frequency = "";
-
- /**
- * ExecTimes
- * 執行次數
- */
- private String ExecTimes = "";
-
- /**
- * PeriodReturnURL
- * 定期定額的執行結果回應URL
- */
- private String PeriodReturnURL = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得MerchantTradeDate 會員交易時間
- * @return MerchantTradeDate
- */
- public String getMerchantTradeDate() {
- return MerchantTradeDate;
- }
- /**
- * 設定MerchantTradeDate 會員交易時間,請以 yyyy/MM/dd HH:mm:ss格式帶入
- * @param merchantTradeDate
- */
- public void setMerchantTradeDate(String merchantTradeDate) {
- MerchantTradeDate = merchantTradeDate;
- }
- /**
- * 取得PaymentType 交易類型
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
- /**
- * 設定PaymentType 交易類型
- * @param paymentType
- */
-// public void setPaymentType(String paymentType) {
-// PaymentType = paymentType;
-// }
- /**
- * 取得TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @return TotalAmount
- */
- public String getTotalAmount() {
- return TotalAmount;
- }
- /**
- * 設定TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @param totalAmount
- */
- public void setTotalAmount(String totalAmount) {
- TotalAmount = totalAmount;
- }
- /**
- * 取得TradeDesc 交易描述
- * @return TradeDesc
- */
- public String getTradeDesc() {
- return TradeDesc;
- }
- /**
- * 設定TradeDesc 交易描述
- * @param tradeDesc
- */
- public void setTradeDesc(String tradeDesc) {
- TradeDesc = tradeDesc;
- }
- /**
- * 取得ItemName 商品名稱,若有多筆,需在金流選擇頁 一行一行顯示商品名稱的話,商品名稱請以符號#分隔。
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 設定ItemName 商品名稱,若有多筆,需在金流選擇頁 一行一行顯示商品名稱的話,商品名稱請以符號#分隔。
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 取得ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款 結果參數以幕後(Server POST)回傳到 該網址。
- * @return ReturnURL
- */
- public String getReturnURL() {
- return ReturnURL;
- }
- /**
- * 設定ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款 結果參數以幕後(Server POST)回傳到 該網址。
- * @param returnURL
- */
- public void setReturnURL(String returnURL) {
- ReturnURL = returnURL;
- }
- /**
- * 取得ChoosePayment 選擇預設付款方式
- * @return ChoosePayment
- */
- public String getChoosePayment() {
- return ChoosePayment;
- }
- /**
- * 設定ChoosePayment 選擇預設付款方式
- * @param choosePayment
- */
-// public void setChoosePayment(String choosePayment) {
-// ChoosePayment = choosePayment;
-// }
- /**
- * 取得ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ClientBackURL
- */
- public String getClientBackURL() {
- return ClientBackURL;
- }
- /**
- * 設定ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param clientBackURL
- */
- public void setClientBackURL(String clientBackURL) {
- ClientBackURL = clientBackURL;
- }
- /**
- * 取得ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ItemURL
- */
- public String getItemURL() {
- return ItemURL;
- }
- /**
- * 設定 ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param itemURL
- */
- public void setItemURL(String itemURL) {
- ItemURL = itemURL;
- }
- /**
- * 取得Remark 備註欄位
- * @return Remark
- */
- public String getRemark() {
- return Remark;
- }
- /**
- * 設定Remark 備註欄位
- * @param remark
- */
- public void setRemark(String remark) {
- Remark = remark;
- }
- /**
- * 取得ChooseSubPayment 選擇預設付款子項目。若設定此參數,使用者則無法看見金流 選擇頁,且使用者必須要已登入歐付寶。
- * 例如:付款方式[ChoosePayment]設定 WebATM,付款子項目 [ChooseSubPayment]設定 TAISHIN,
- * 此次交易僅會以台新銀行的 網路 ATM 付款。請參考付款方式一覽表
- * @return ChooseSubPayment
- */
- public String getChooseSubPayment() {
- return ChooseSubPayment;
- }
- /**
- * 設定ChooseSubPayment 選擇預設付款子項目。若設定此參數,使用者則無法看見金流 選擇頁,且使用者必須要已登入歐付寶。
- * 例如:付款方式[ChoosePayment]設定 WebATM,付款子項目 [ChooseSubPayment]設定 TAISHIN,
- * 此次交易僅會以台新銀行的 網路 ATM 付款。請參考付款方式一覽表
- * @param chooseSubPayment
- */
- public void setChooseSubPayment(String chooseSubPayment) {
- ChooseSubPayment = chooseSubPayment;
- }
- /**
- * 取得OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return OrderResultURL
- */
- public String getOrderResultURL() {
- return OrderResultURL;
- }
- /**
- * 設定OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param orderResultURL
- */
- public void setOrderResultURL(String orderResultURL) {
- OrderResultURL = orderResultURL;
- }
- /**
- * 取得NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @return NeedExtraPaidInfo
- */
- public String getNeedExtraPaidInfo() {
- return NeedExtraPaidInfo;
- }
- /**
- * 設定NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @param needExtraPaidInfo
- */
- public void setNeedExtraPaidInfo(String needExtraPaidInfo) {
- NeedExtraPaidInfo = needExtraPaidInfo;
- }
- /**
- * 取得DeviceSource 裝置來源
- * @return DeviceSource
- */
- public String getDeviceSource() {
- return DeviceSource;
- }
- /**
- * 設定DeviceSource 裝置來源
- * @param deviceSource
- */
-// public void setDeviceSource(String deviceSource) {
-// DeviceSource = deviceSource;
-// }
- /**
- * 取得IgnorePayment 隱藏付款方式
- * @return IgnorePayment
- */
- public String getIgnorePayment() {
- return IgnorePayment;
- }
- /**
- * 設定IgnorePayment 隱藏付款方式
- * @param ignorePayment
- */
- public void setIgnorePayment(String ignorePayment) {
- IgnorePayment = ignorePayment;
- }
- /**
- * 取得PlatformID 特約合作平台商代號(由O’Pay提供)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 設定PlatformID 特約合作平台商代號(由O’Pay提供)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- /**
- * 取得InvoiceMark 電子發票開立註記
- * @return InvoiceMark
- */
- public String getInvoiceMark() {
- return InvoiceMark;
- }
- /**
- * 設定InvoiceMark 電子發票開立註記
- * @param invoiceMark
- */
- public void setInvoiceMark(String invoiceMark) {
- InvoiceMark = invoiceMark;
- }
- /**
- * 取得HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @return HoldTradeAMT
- */
- public String getHoldTradeAMT() {
- return HoldTradeAMT;
- }
- /**
- * 設定HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @param holdTradeAMT
- */
- public void setHoldTradeAMT(String holdTradeAMT) {
- HoldTradeAMT = holdTradeAMT;
- }
- /**
- * 取得EncryptType CheckMacValue加密類型
- * @return EncryptType
- */
- public String getEncryptType() {
- return EncryptType;
- }
- /**
- * 設定EncryptType CheckMacValue加密類型
- * @param encryptType
- */
-// public void setEncryptType(String encryptType) {
-// EncryptType = encryptType;
-// }
- /**
- * 取得UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @return UseRedeem
- */
- public String getUseRedeem() {
- return UseRedeem;
- }
- /**
- * 設定UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @param useRedeem
- */
- public void setUseRedeem(String useRedeem) {
- UseRedeem = useRedeem;
- }
- /**
- * 取得PeriodAmount 每次授權金額
- * 注意事項: 歐付寶會依此次授權金額[PeriodAmount]所設定的金額做為之後固定授權的金額。
- * 交易金額[TotalAmount]設定金額必須和授權金額[PeriodAmount]相同。
- * 請帶整數,不可有小數點。僅限新台幣。
- * @return PeriodAmount
- */
- public String getPeriodAmount() {
- return PeriodAmount;
- }
- /**
- * 設定PeriodAmount 每次授權金額
- * 注意事項: 歐付寶會依此次授權金額[PeriodAmount]所設定的金額做為之後固定授權的金額。
- * 交易金額[TotalAmount]設定金額必須和授權金額[PeriodAmount]相同。
- * 請帶整數,不可有小數點。僅限新台幣。
- * @param periodAmount
- */
- public void setPeriodAmount(String periodAmount) {
- PeriodAmount = periodAmount;
- }
- /**
- * 取得PeriodType 週期種類 D:以天為週期,M:以月為週期,Y:以年為週期
- * @return PeriodType
- */
- public String getPeriodType() {
- return PeriodType;
- }
- /**
- * 設定PeriodType 週期種類 D:以天為週期,M:以月為週期,Y:以年為週期
- * @param periodType
- */
- public void setPeriodType(String periodType) {
- PeriodType = periodType;
- }
- /**
- * 取得Frequency 執行頻率,此參數用來定義多久要執行一次
- * 注意事項:
- * 1. 至少要大於等於1次以上。
- * 2. 當PeriodType設為D時,最多可設365次。
- * 3. 當PeriodType設為M時,最多可設12次。
- * 4. 當PeriodType設為Y時,最多可設1次。
- * @return Frequency
- */
- public String getFrequency() {
- return Frequency;
- }
- /**
- * 設定Frequency 執行頻率,此參數用來定義多久要執行一次
- * 注意事項:
- * 1. 至少要大於等於1次以上。
- * 2. 當PeriodType設為D時,最多可設365次。
- * 3. 當PeriodType設為M時,最多可設12次。
- * 4. 當PeriodType設為Y時,最多可設1次。
- * @param frequency
- */
- public void setFrequency(String frequency) {
- Frequency = frequency;
- }
- /**
- * 取得ExecTimes 執行次數,總共要執行幾次。
- * @return ExecTimes
- */
- public String getExecTimes() {
- return ExecTimes;
- }
- /**
- * 設定ExecTimes 執行次數,總共要執行幾次。
- * @param execTimes
- */
- public void setExecTimes(String execTimes) {
- ExecTimes = execTimes;
- }
- /**
- * 取得PeriodReturnURL 定期定額的執行結果回應URL,若交易是信用卡定期定額的方式,則每次執行授權完,會將授權結果回傳到這個設定的URL。
- * @return PeriodReturnURL
- */
- public String getPeriodReturnURL() {
- return PeriodReturnURL;
- }
- /**
- * 設定PeriodReturnURL 定期定額的執行結果回應URL,若交易是信用卡定期定額的方式,則每次執行授權完,會將授權結果回傳到這個設定的URL。
- * @param periodReturnURL
- */
- public void setPeriodReturnURL(String periodReturnURL) {
- PeriodReturnURL = periodReturnURL;
- }
- /**
- * 取得StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @return StoreID
- */
- public String getStoreID() {
- return StoreID;
- }
- /**
- * 設定StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @param storeID
- */
- public void setStoreID(String storeID) {
- StoreID = storeID;
- }
- @Override
- public String toString() {
- return "AioCheckOutPeriod [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", StoreID="
- + StoreID + ", MerchantTradeDate=" + MerchantTradeDate + ", PaymentType=" + PaymentType
- + ", TotalAmount=" + TotalAmount + ", TradeDesc=" + TradeDesc + ", ItemName=" + ItemName
- + ", ReturnURL=" + ReturnURL + ", ChoosePayment=" + ChoosePayment + ", ClientBackURL=" + ClientBackURL
- + ", ItemURL=" + ItemURL + ", Remark=" + Remark + ", ChooseSubPayment=" + ChooseSubPayment
- + ", OrderResultURL=" + OrderResultURL + ", NeedExtraPaidInfo=" + NeedExtraPaidInfo + ", DeviceSource="
- + DeviceSource + ", IgnorePayment=" + IgnorePayment + ", PlatformID=" + PlatformID + ", InvoiceMark="
- + InvoiceMark + ", HoldTradeAMT=" + HoldTradeAMT + ", EncryptType=" + EncryptType + ", UseRedeem="
- + UseRedeem + ", PeriodAmount=" + PeriodAmount + ", PeriodType=" + PeriodType + ", Frequency="
- + Frequency + ", ExecTimes=" + ExecTimes + ", PeriodReturnURL=" + PeriodReturnURL + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/AioCheckOutTenpay.java b/Payment/allPay/payment/integration/domain/AioCheckOutTenpay.java
deleted file mode 100644
index 6814248..0000000
--- a/Payment/allPay/payment/integration/domain/AioCheckOutTenpay.java
+++ /dev/null
@@ -1,559 +0,0 @@
-package allPay.payment.integration.domain;
-
-public class AioCheckOutTenpay {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * 會員交易編號,該交易編號不可重複
- */
- private String MerchantTradeNo = "";
-
- /**
- * StoreID
- * 會員商店代碼,提供會員填入店家代碼使用
- */
- private String StoreID = "";
-
- /**
- * MerchantTradeDate
- * 會員交易時間
- */
- private String MerchantTradeDate = "";
-
- /**
- * PaymentType
- * 交易類型
- */
- private String PaymentType = "aio";
-
- /**
- * TotalAmount
- * 交易金額
- */
- private String TotalAmount = "";
-
- /**
- * TradeDesc
- * 交易描述
- */
- private String TradeDesc = "";
-
- /**
- * ItemName
- * 商品名稱
- */
- private String ItemName = "";
-
- /**
- * ReturnURL
- * 付款完成通知回傳網址
- */
- private String ReturnURL = "";
-
- /**
- * ChoosePayment
- * 選擇預設付款方式
- */
- private String ChoosePayment = "Tenpay";
-
- /**
- * ClientBackURL
- * Client端返回會員系統的按鈕連結
- */
- private String ClientBackURL = "";
-
- /**
- * ItemURL
- * 商品銷售網址
- */
- private String ItemURL = "";
-
- /**
- * Remark
- * 備註欄位
- */
- private String Remark = "";
-
- /**
- * ChooseSubPayment
- * 選擇預設付款子項目
- */
- private String ChooseSubPayment = "Tenpay";
-
- /**
- * OrderResultURL
- * Client端回傳付款結果網址
- */
- private String OrderResultURL = "";
-
- /**
- * NeedExtraPaidInfo
- * 是否需要額外的付款資訊
- */
- private String NeedExtraPaidInfo = "";
-
- /**
- * DeviceSource
- * 裝置來源,請帶空值,由allPay自動判定。
- */
- private String DeviceSource = "";
-
- /**
- * IgnorePayment
- * 隱藏付款方式,設定檔自動帶入
- */
- private String IgnorePayment = "";
-
- /**
- * PlatformID
- * 特約合作平台商代號(由allPay提供),設定檔自動帶入
- */
- private String PlatformID = "";
-
- /**
- * InvoiceMark
- * 電子發票開立註記,程式自動判斷
- */
- private String InvoiceMark = "";
-
- /**
- * HoldTradeAMT
- * 是否延遲撥款
- */
- private String HoldTradeAMT = "";
-
- /**
- * EncryptType
- * CheckMacValue加密類型
- */
- private String EncryptType = "1";
-
- /**
- * UseRedeem
- * 是否可以使用購物金/紅包折抵
- */
- private String UseRedeem = "";
-
- /**
- * ExpireTime
- * 付款截止時間
- */
- private String ExpireTime = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得MerchantTradeDate 會員交易時間
- * @return MerchantTradeDate
- */
- public String getMerchantTradeDate() {
- return MerchantTradeDate;
- }
- /**
- * 設定MerchantTradeDate 會員交易時間,請以 yyyy/MM/dd HH:mm:ss格式帶入
- * @param merchantTradeDate
- */
- public void setMerchantTradeDate(String merchantTradeDate) {
- MerchantTradeDate = merchantTradeDate;
- }
- /**
- * 取得PaymentType 交易類型
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
- /**
- * 設定PaymentType 交易類型
- * @param paymentType
- */
-// public void setPaymentType(String paymentType) {
-// PaymentType = paymentType;
-// }
- /**
- * 取得TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @return TotalAmount
- */
- public String getTotalAmount() {
- return TotalAmount;
- }
- /**
- * 設定TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @param totalAmount
- */
- public void setTotalAmount(String totalAmount) {
- TotalAmount = totalAmount;
- }
- /**
- * 取得TradeDesc 交易描述
- * @return TradeDesc
- */
- public String getTradeDesc() {
- return TradeDesc;
- }
- /**
- * 設定TradeDesc 交易描述
- * @param tradeDesc
- */
- public void setTradeDesc(String tradeDesc) {
- TradeDesc = tradeDesc;
- }
- /**
- * 取得ItemName 商品名稱,若有多筆,需在金流選擇頁 一行一行顯示商品名稱的話,商品名稱請以符號#分隔。
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 設定ItemName 商品名稱,若有多筆,需在金流選擇頁 一行一行顯示商品名稱的話,商品名稱請以符號#分隔。
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 取得ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款 結果參數以幕後(Server POST)回傳到 該網址。
- * @return ReturnURL
- */
- public String getReturnURL() {
- return ReturnURL;
- }
- /**
- * 設定ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款 結果參數以幕後(Server POST)回傳到 該網址。
- * @param returnURL
- */
- public void setReturnURL(String returnURL) {
- ReturnURL = returnURL;
- }
- /**
- * 取得ChoosePayment 選擇預設付款方式
- * @return ChoosePayment
- */
- public String getChoosePayment() {
- return ChoosePayment;
- }
- /**
- * 設定ChoosePayment 選擇預設付款方式
- * @param choosePayment
- */
-// public void setChoosePayment(String choosePayment) {
-// ChoosePayment = choosePayment;
-// }
- /**
- * 取得ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ClientBackURL
- */
- public String getClientBackURL() {
- return ClientBackURL;
- }
- /**
- * 設定ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param clientBackURL
- */
- public void setClientBackURL(String clientBackURL) {
- ClientBackURL = clientBackURL;
- }
- /**
- * 取得ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ItemURL
- */
- public String getItemURL() {
- return ItemURL;
- }
- /**
- * 設定 ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param itemURL
- */
- public void setItemURL(String itemURL) {
- ItemURL = itemURL;
- }
- /**
- * 取得Remark 備註欄位
- * @return Remark
- */
- public String getRemark() {
- return Remark;
- }
- /**
- * 設定Remark 備註欄位
- * @param remark
- */
- public void setRemark(String remark) {
- Remark = remark;
- }
- /**
- * 取得ChooseSubPayment 選擇預設付款子項目。若設定此參數,使用者則無法看見金流 選擇頁,且使用者必須要已登入歐付寶。
- * 例如:付款方式[ChoosePayment]設定 WebATM,付款子項目 [ChooseSubPayment]設定 TAISHIN,
- * 此次交易僅會以台新銀行的 網路 ATM 付款。請參考付款方式一覽表
- * @return ChooseSubPayment
- */
- public String getChooseSubPayment() {
- return ChooseSubPayment;
- }
- /**
- * 設定ChooseSubPayment 選擇預設付款子項目。若設定此參數,使用者則無法看見金流 選擇頁,且使用者必須要已登入歐付寶。
- * 例如:付款方式[ChoosePayment]設定 WebATM,付款子項目 [ChooseSubPayment]設定 TAISHIN,
- * 此次交易僅會以台新銀行的 網路 ATM 付款。請參考付款方式一覽表
- * @param chooseSubPayment
- */
-// public void setChooseSubPayment(String chooseSubPayment) {
-// ChooseSubPayment = chooseSubPayment;
-// }
- /**
- * 取得OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return OrderResultURL
- */
- public String getOrderResultURL() {
- return OrderResultURL;
- }
- /**
- * 設定OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param orderResultURL
- */
- public void setOrderResultURL(String orderResultURL) {
- OrderResultURL = orderResultURL;
- }
- /**
- * 取得NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @return NeedExtraPaidInfo
- */
- public String getNeedExtraPaidInfo() {
- return NeedExtraPaidInfo;
- }
- /**
- * 設定NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @param needExtraPaidInfo
- */
- public void setNeedExtraPaidInfo(String needExtraPaidInfo) {
- NeedExtraPaidInfo = needExtraPaidInfo;
- }
- /**
- * 取得DeviceSource 裝置來源
- * @return DeviceSource
- */
- public String getDeviceSource() {
- return DeviceSource;
- }
- /**
- * 設定DeviceSource 裝置來源
- * @param deviceSource
- */
-// public void setDeviceSource(String deviceSource) {
-// DeviceSource = deviceSource;
-// }
- /**
- * 取得IgnorePayment 隱藏付款方式
- * @return IgnorePayment
- */
- public String getIgnorePayment() {
- return IgnorePayment;
- }
- /**
- * 設定IgnorePayment 隱藏付款方式
- * @param ignorePayment
- */
- public void setIgnorePayment(String ignorePayment) {
- IgnorePayment = ignorePayment;
- }
- /**
- * 取得PlatformID 特約合作平台商代號(由O’Pay提供)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 設定PlatformID 特約合作平台商代號(由O’Pay提供)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- /**
- * 取得InvoiceMark 電子發票開立註記
- * @return InvoiceMark
- */
- public String getInvoiceMark() {
- return InvoiceMark;
- }
- /**
- * 設定InvoiceMark 電子發票開立註記
- * @param invoiceMark
- */
- public void setInvoiceMark(String invoiceMark) {
- InvoiceMark = invoiceMark;
- }
- /**
- * 取得HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @return HoldTradeAMT
- */
- public String getHoldTradeAMT() {
- return HoldTradeAMT;
- }
- /**
- * 設定HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @param holdTradeAMT
- */
- public void setHoldTradeAMT(String holdTradeAMT) {
- HoldTradeAMT = holdTradeAMT;
- }
- /**
- * 取得EncryptType CheckMacValue加密類型
- * @return EncryptType
- */
- public String getEncryptType() {
- return EncryptType;
- }
- /**
- * 設定EncryptType CheckMacValue加密類型
- * @param encryptType
- */
-// public void setEncryptType(String encryptType) {
-// EncryptType = encryptType;
-// }
- /**
- * 取得UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @return UseRedeem
- */
- public String getUseRedeem() {
- return UseRedeem;
- }
- /**
- * 設定UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @param useRedeem
- */
- public void setUseRedeem(String useRedeem) {
- UseRedeem = useRedeem;
- }
- /**
- * 取得ExpireTime 付款截止時間,格式為yyyy/MM/dd HH:mm:ss。只能帶入送出交易後的72小時(三天)之內時間。不填則預設為送出交易後的72小時。
- * @return ExpireTime
- */
- public String getExpireTime() {
- return ExpireTime;
- }
- /**
- * 設定ExpireTime 付款截止時間,格式為yyyy/MM/dd HH:mm:ss。只能帶入送出交易後的72小時(三天)之內時間。不填則預設為送出交易後的72小時。
- * @param expireTime
- */
- public void setExpireTime(String expireTime) {
- ExpireTime = expireTime;
- }
- /**
- * 取得StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @return StoreID
- */
- public String getStoreID() {
- return StoreID;
- }
- /**
- * 設定StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @param storeID
- */
- public void setStoreID(String storeID) {
- StoreID = storeID;
- }
- @Override
- public String toString() {
- return "AioCheckOutTenpay [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", StoreID="
- + StoreID + ", MerchantTradeDate=" + MerchantTradeDate + ", PaymentType=" + PaymentType
- + ", TotalAmount=" + TotalAmount + ", TradeDesc=" + TradeDesc + ", ItemName=" + ItemName
- + ", ReturnURL=" + ReturnURL + ", ChoosePayment=" + ChoosePayment + ", ClientBackURL=" + ClientBackURL
- + ", ItemURL=" + ItemURL + ", Remark=" + Remark + ", ChooseSubPayment=" + ChooseSubPayment
- + ", OrderResultURL=" + OrderResultURL + ", NeedExtraPaidInfo=" + NeedExtraPaidInfo + ", DeviceSource="
- + DeviceSource + ", IgnorePayment=" + IgnorePayment + ", PlatformID=" + PlatformID + ", InvoiceMark="
- + InvoiceMark + ", HoldTradeAMT=" + HoldTradeAMT + ", EncryptType=" + EncryptType + ", UseRedeem="
- + UseRedeem + ", ExpireTime=" + ExpireTime + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/AioCheckOutTopUpUsed.java b/Payment/allPay/payment/integration/domain/AioCheckOutTopUpUsed.java
deleted file mode 100644
index f17b8d0..0000000
--- a/Payment/allPay/payment/integration/domain/AioCheckOutTopUpUsed.java
+++ /dev/null
@@ -1,537 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * Y閮桃拐辣(銝摰隞甈暹孵嚗望隞撖園*蝷)
- * @author mark.chiu
- *
- */
-public class AioCheckOutTopUpUsed {
-
- /**
- * MerchantID
- * ∠楊(屠'Pay靘)嚗嗆迨撟喳啁箇寧雿撟喳唳炬撱箇閮格嚗閰脫雿銝砍像啣隢敹賜交迨甈雿
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * ∩漱蝺刻嚗敹箏臭潘撱箄降雿輻20蝣墀ID
- */
- private String MerchantTradeNo = "";
-
- /**
- * StoreID
- * ∪摨隞蝣潘靘∪‵亙摰嗡誨蝣潔蝙
- */
- private String StoreID = "";
-
- /**
- * MerchantTradeDate
- * ∩漱嚗澆漾yyy/MM/dd HH:mm:ss
- */
- private String MerchantTradeDate = "";
-
- /**
- * PaymentType
- * 鈭斗憿
- */
- private String PaymentType = "aio";
-
- /**
- * TotalAmount
- * 鈭斗憿
- */
- private String TotalAmount = "";
-
- /**
- * TradeDesc
- * 鈭斗餈
- */
- private String TradeDesc = "";
-
- /**
- * ItemName
- * 蝔
- */
- private String ItemName = "";
-
- /**
- * ReturnURL
- * 隞甈曉亙喟雯
- */
- private String ReturnURL = "";
-
- /**
- * ChoosePayment
- * 豢閮凋甈暹孵
- */
- private String ChoosePayment = "TopUpUsed";
-
- /**
- * ClientBackURL
- * Client蝡航∠頂蝯梁蝯
- */
- private String ClientBackURL = "";
-
- /**
- * ItemURL
- * 瑕桃雯
- */
- private String ItemURL = "";
-
- /**
- * Remark
- * 閮餅雿
- */
- private String Remark = "";
-
- /**
- * ChooseSubPayment
- * 豢閮凋甈曉
- */
- private String ChooseSubPayment = "";
-
- /**
- * OrderResultURL
- * Client蝡臬喃甈曄蝬脣
- */
- private String OrderResultURL = "";
-
- /**
- * NeedExtraPaidInfo
- * 臬阡閬憿憭隞甈曇閮
- */
- private String NeedExtraPaidInfo = "";
-
- /**
- * DeviceSource
- * 鋆蝵桐皞嚗隢撣嗥征潘帶llPay芸文
- */
- private String DeviceSource = "";
-
- /**
- * IgnorePayment
- * 梯隞甈暹孵嚗閮剖瑼芸撣嗅
- */
- private String IgnorePayment = "";
-
- /**
- * PlatformID
- * 寧雿撟喳啣隞(帶llPay靘)嚗閮剖瑼芸撣嗅
- */
- private String PlatformID = "";
-
- /**
- * InvoiceMark
- * 餃潛巨蝡閮餉嚗蝔撘芸斗
- */
- private String InvoiceMark = "";
-
- /**
- * HoldTradeAMT
- * 臬血辣脫交狡
- */
- private String HoldTradeAMT = "";
-
- /**
- * EncryptType
- * CheckMacValue撖憿
- */
- private String EncryptType = "1";
-
- /**
- * UseRedeem
- * 臬血臭誑雿輻刻頃拚/蝝
- */
- private String UseRedeem = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 敺MerchantID ∠楊(屠'Pay靘)嚗嗆迨撟喳啁箇寧雿撟喳唳炬撱箇閮格嚗閰脫雿銝砍像啣隢敹賜交迨甈雿
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 閮剖MerchantID ∠楊(屠'Pay靘)嚗嗆迨撟喳啁箇寧雿撟喳唳炬撱箇閮格嚗閰脫雿銝砍像啣隢敹賜交迨甈雿
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 敺MerchantTradeNo ∩漱蝺刻嚗望詨憭批撖急毽嚗閰脖漱蝺刻銝舫銴嚗憒雿輻沌latformID嚗撟喳啣摨銝摰嗡閮桃楊鈭虫舫銴
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 閮剖MerchantTradeNo ∩漱蝺刻嚗望詨憭批撖急毽嚗閰脖漱蝺刻銝舫銴嚗憒雿輻沌latformID嚗撟喳啣摨銝摰嗡閮桃楊鈭虫舫銴
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 敺MerchantTradeDate ∩漱嚗澆漾yyy/MM/dd HH:mm:ss
- * @return MerchantTradeDate
- */
- public String getMerchantTradeDate() {
- return MerchantTradeDate;
- }
- /**
- * 閮剖MerchantTradeDate ∩漱嚗隢隞 yyyy/MM/dd HH:mm:ss澆撣嗅
- * @param merchantTradeDate
- */
- public void setMerchantTradeDate(String merchantTradeDate) {
- MerchantTradeDate = merchantTradeDate;
- }
- /**
- * 敺PaymentType 鈭斗憿
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
- /**
- * 閮剖PaymentType 鈭斗憿
- * @param paymentType
- */
-// public void setPaymentType(String paymentType) {
-// PaymentType = paymentType;
-// }
- /**
- * 敺TotalAmount 鈭斗憿嚗箸迤湔
- * @return TotalAmount
- */
- public String getTotalAmount() {
- return TotalAmount;
- }
- /**
- * 閮剖TotalAmount 鈭斗憿嚗箸迤湔
- * @param totalAmount
- */
- public void setTotalAmount(String totalAmount) {
- TotalAmount = totalAmount;
- }
- /**
- * 敺TradeDesc 鈭斗餈
- * @return TradeDesc
- */
- public String getTradeDesc() {
- return TradeDesc;
- }
- /**
- * 閮剖TradeDesc 鈭斗餈
- * @param tradeDesc
- */
- public void setTradeDesc(String tradeDesc) {
- TradeDesc = tradeDesc;
- }
- /**
- * 敺ItemName 蝔梧交憭蝑嚗券瘚豢 銝銵銝銵憿舐內蝔梁閰梧蝔梯隞亦泵#
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 閮剖ItemName 蝔梧交憭蝑嚗券瘚豢 銝銵銝銵憿舐內蝔梁閰梧蝔梯隞亦泵#
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 敺ReturnURL 隞甈曉亙喟雯嚗嗆鞎餉隞甈曉敺嚗甇隞撖嗆撠隞甈 蝯訾誑撟敺(Server POST)喳 閰脩雯
- * @return ReturnURL
- */
- public String getReturnURL() {
- return ReturnURL;
- }
- /**
- * 閮剖ReturnURL 隞甈曉亙喟雯嚗嗆鞎餉隞甈曉敺嚗甇隞撖嗆撠隞甈 蝯訾誑撟敺(Server POST)喳 閰脩雯
- * @param returnURL
- */
- public void setReturnURL(String returnURL) {
- ReturnURL = returnURL;
- }
- /**
- * 敺ChoosePayment 豢閮凋甈暹孵
- * @return ChoosePayment
- */
- public String getChoosePayment() {
- return ChoosePayment;
- }
- /**
- * 閮剖ChoosePayment 豢閮凋甈暹孵
- * @param choosePayment
- */
-// public void setChoosePayment(String choosePayment) {
-// ChoosePayment = choosePayment;
-// }
- /**
- * 敺ClientBackURL Client蝡航∠頂蝯梁蝯閮剖甇文賂甇隞撖嗆其甈曉 摰V憿舐內[餈摨]
- *瘨鞎餉暺豢迨敺嚗撠W唳迨閮剖蝬脣
- *瘜冽鈭嚗砍詨批嗅W嚗銝撠隞甈曄鞈閮POST啗身摰澆抒URL潛蝪∟ OTP 撽霅憭望甇文豢潭嚗V鈭行憿舐內
- *亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @return ClientBackURL
- */
- public String getClientBackURL() {
- return ClientBackURL;
- }
- /**
- * 閮剖ClientBackURL Client蝡航∠頂蝯梁蝯閮剖甇文賂甇隞撖嗆其甈曉 摰V憿舐內[餈摨]
- *瘨鞎餉暺豢迨敺嚗撠W唳迨閮剖蝬脣
- *瘜冽鈭嚗砍詨批嗅W嚗銝撠隞甈曄鞈閮POST啗身摰澆抒URL潛蝪∟ OTP 撽霅憭望甇文豢潭嚗V鈭行憿舐內
- *亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @param clientBackURL
- */
- public void setClientBackURL(String clientBackURL) {
- ClientBackURL = clientBackURL;
- }
- /**
- * 敺ItemURL 瑕桃雯
- * @return ItemURL
- */
- public String getItemURL() {
- return ItemURL;
- }
- /**
- * 閮剖 ItemURL 瑕桃雯
- * @param itemURL
- */
- public void setItemURL(String itemURL) {
- ItemURL = itemURL;
- }
- /**
- * 敺Remark 閮餅雿
- * @return Remark
- */
- public String getRemark() {
- return Remark;
- }
- /**
- * 閮剖Remark 閮餅雿
- * @param remark
- */
- public void setRemark(String remark) {
- Remark = remark;
- }
- /**
- * 敺ChooseSubPayment 豢閮凋甈曉柴亥身摰甇文賂雿輻刻⊥閬瘚 豢嚗銝雿輻刻敹閬撌脩餃交隞撖嗚
- * 靘憒嚗隞甈暹孵[ChoosePayment]閮剖 WebATM嚗隞甈曉 [ChooseSubPayment]閮剖 TAISHIN嚗
- * 甇斗活鈭斗隞亙唳圈銵 蝬脰楝 ATM 隞甈整隢隞甈暹孵銝閬質”
- * @return ChooseSubPayment
- */
- public String getChooseSubPayment() {
- return ChooseSubPayment;
- }
- /**
- * 閮剖ChooseSubPayment 豢閮凋甈曉柴亥身摰甇文賂雿輻刻⊥閬瘚 豢嚗銝雿輻刻敹閬撌脩餃交隞撖嗚
- * 靘憒嚗隞甈暹孵[ChoosePayment]閮剖 WebATM嚗隞甈曉 [ChooseSubPayment]閮剖 TAISHIN嚗
- * 甇斗活鈭斗隞亙唳圈銵 蝬脰楝 ATM 隞甈整隢隞甈暹孵銝閬質”
- * @param chooseSubPayment
- */
- public void setChooseSubPayment(String chooseSubPayment) {
- ChooseSubPayment = chooseSubPayment;
- }
- /**
- * 敺OrderResultURL Client蝡臬喃甈曄蝬脣隞甈曉敺嚗甇隞撖嗅W唳 ∠雯嚗銝血隞甈曄撣嗅
- * 瘜冽鈭嚗
- * 1. 瘝撣嗆迨詨憿舐內甇隞撖嗥隞 甈曉
- * 2. 憒閬撠隞甈曄憿舐內冽 蝟餌絞改隢閮剖甇文詻
- * 3. 亥身摰甇文賂撠雿輯身摰 Client 蝡航∠頂蝯梁 蝯[ClientBackURL]憭望
- * 4. 典銵 WebATM 其漱 敺,券銵,銝虫撠 蝯行隞撖,隞交隞撖嗡銝撠 W豺OrderResultURL]
- * 5. 鞎∩鈭斗(ATMCVS) 銝舀湔迨詻
- * 6. 撱箄降冽葫閰阡畾菜銝閬閮剖甇 賂臬恍W冽隞撖塚 閬甇隞撖嗆靘航炊閮荔靘踹 隞交日胯
- * 7. 交閮剖甇文賂隢敹寞 鈭斗靘斗琿*蝷箔甈暹 衣U
- * 8. 亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @return OrderResultURL
- */
- public String getOrderResultURL() {
- return OrderResultURL;
- }
- /**
- * 閮剖OrderResultURL Client蝡臬喃甈曄蝬脣隞甈曉敺嚗甇隞撖嗅W唳 ∠雯嚗銝血隞甈曄撣嗅
- * 瘜冽鈭嚗
- * 1. 瘝撣嗆迨詨憿舐內甇隞撖嗥隞 甈曉
- * 2. 憒閬撠隞甈曄憿舐內冽 蝟餌絞改隢閮剖甇文詻
- * 3. 亥身摰甇文賂撠雿輯身摰 Client 蝡航∠頂蝯梁 蝯[ClientBackURL]憭望
- * 4. 典銵 WebATM 其漱 敺,券銵,銝虫撠 蝯行隞撖,隞交隞撖嗡銝撠 W豺OrderResultURL]
- * 5. 鞎∩鈭斗(ATMCVS) 銝舀湔迨詻
- * 6. 撱箄降冽葫閰阡畾菜銝閬閮剖甇 賂臬恍W冽隞撖塚 閬甇隞撖嗆靘航炊閮荔靘踹 隞交日胯
- * 7. 交閮剖甇文賂隢敹寞 鈭斗靘斗琿*蝷箔甈暹 衣U
- * 8. 亙蝬脣芯蝙 https 嚗其遢 閬賢典航賣箇曇郎閮胯
- * @param orderResultURL
- */
- public void setOrderResultURL(String orderResultURL) {
- OrderResultURL = orderResultURL;
- }
- /**
- * 敺NeedExtraPaidInfo 臬阡閬憿憭隞甈曇閮單渲底蝝啁隞甈曇閮袒eturnURL豢摰URL閮剔摸
- * @return NeedExtraPaidInfo
- */
- public String getNeedExtraPaidInfo() {
- return NeedExtraPaidInfo;
- }
- /**
- * 閮剖NeedExtraPaidInfo 臬阡閬憿憭隞甈曇閮 單渲底蝝啁隞甈曇閮袒eturnURL豢摰URL閮剔摸
- * @param needExtraPaidInfo
- */
- public void setNeedExtraPaidInfo(String needExtraPaidInfo) {
- NeedExtraPaidInfo = needExtraPaidInfo;
- }
- /**
- * 敺DeviceSource 鋆蝵桐皞
- * @return DeviceSource
- */
- public String getDeviceSource() {
- return DeviceSource;
- }
- /**
- * 閮剖DeviceSource 鋆蝵桐皞
- * @param deviceSource
- */
-// public void setDeviceSource(String deviceSource) {
-// DeviceSource = deviceSource;
-// }
- /**
- * 敺IgnorePayment 梯隞甈暹孵
- * @return IgnorePayment
- */
- public String getIgnorePayment() {
- return IgnorePayment;
- }
- /**
- * 閮剖IgnorePayment 梯隞甈暹孵
- * @param ignorePayment
- */
- public void setIgnorePayment(String ignorePayment) {
- IgnorePayment = ignorePayment;
- }
- /**
- * 敺PlatformID 寧雿撟喳啣隞(屠Pay靘)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 閮剖PlatformID 寧雿撟喳啣隞(屠Pay靘)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- /**
- * 敺InvoiceMark 餃潛巨蝡閮餉
- * @return InvoiceMark
- */
- public String getInvoiceMark() {
- return InvoiceMark;
- }
- /**
- * 閮剖InvoiceMark 餃潛巨蝡閮餉
- * @param invoiceMark
- */
- public void setInvoiceMark(String invoiceMark) {
- InvoiceMark = invoiceMark;
- }
- /**
- * 敺HoldTradeAMT 臬血辣脫交狡
- * 1. 亦箔撱園脫交狡嚗隢撣塚0嚗鞎瑟嫣甈曉敺嚗甇隞撖嗡蝝蝝摰銋嚗交狡蝯行
- * 2. 亦箏辣脫交狡嚗隢撣塚1嚗鞎瑟嫣 甈曉敺嚗澆怒∠唾 甈暸甈整API嚗霈甇隞撖嗆交狡蝯行 ∴甈曄策鞎瑟嫘
- * 瘜冽鈭嚗 餃交∩港唾交狡嚗甇斤閮 甈暸銝湔曉冽隞撖塚游唳∠唾 交狡
- * 餃辣脫交狡銝拍具靽∠典∼鞎∩ 銋隞甈暹孵
- * @return HoldTradeAMT
- */
- public String getHoldTradeAMT() {
- return HoldTradeAMT;
- }
- /**
- * 閮剖HoldTradeAMT 臬血辣脫交狡
- * 1. 亦箔撱園脫交狡嚗隢撣塚0嚗鞎瑟嫣甈曉敺嚗甇隞撖嗡蝝蝝摰銋嚗交狡蝯行
- * 2. 亦箏辣脫交狡嚗隢撣塚1嚗鞎瑟嫣 甈曉敺嚗澆怒∠唾 甈暸甈整API嚗霈甇隞撖嗆交狡蝯行 ∴甈曄策鞎瑟嫘
- * 瘜冽鈭嚗 餃交∩港唾交狡嚗甇斤閮 甈暸銝湔曉冽隞撖塚游唳∠唾 交狡
- * 餃辣脫交狡銝拍具靽∠典∼鞎∩ 銋隞甈暹孵
- * @param holdTradeAMT
- */
- public void setHoldTradeAMT(String holdTradeAMT) {
- HoldTradeAMT = holdTradeAMT;
- }
- /**
- * 敺EncryptType CheckMacValue撖憿
- * @return EncryptType
- */
- public String getEncryptType() {
- return EncryptType;
- }
- /**
- * 閮剖EncryptType CheckMacValue撖憿
- * @param encryptType
- */
-// public void setEncryptType(String encryptType) {
-// EncryptType = encryptType;
-// }
- /**
- * 敺UseRedeem 臬血臭誑雿輻刻頃拚/蝝萸其閮剖甇斤鈭斗臬血臭誑雿輻刻頃 /蝝萸
- * 1. 亦箏臭蝙冽嚗隢撣塚嚗
- * 2. 亦箔臭蝙冽嚗隢撣塚N
- * 瘜冽鈭嚗
- * 1. 菜孵舀潦撱敺堆蝝 菔身摰賣啣函菜隞塚 亙歇菔身摰嚗甇文 賂靘瘙箏甇斤鈭斗臬血臭誑雿輻 鞈潛拚/蝝萸
- * 2. 菔頃拚/蝝∴甇隞 撖嗅拚脰鞎餅嚗萎 憿嚗望∟
- * 3. 亙臭蝙刻頃拚/蝝菜嚗 瘜冽交嗡甈曄交嚗隢隞乩漱 憿[TradeAmt]閮桅憿瑼X乓
- * @return UseRedeem
- */
- public String getUseRedeem() {
- return UseRedeem;
- }
- /**
- * 閮剖UseRedeem 臬血臭誑雿輻刻頃拚/蝝萸其閮剖甇斤鈭斗臬血臭誑雿輻刻頃 /蝝萸
- * 1. 亦箏臭蝙冽嚗隢撣塚嚗
- * 2. 亦箔臭蝙冽嚗隢撣塚N
- * 瘜冽鈭嚗
- * 1. 菜孵舀潦撱敺堆蝝 菔身摰賣啣函菜隞塚 亙歇菔身摰嚗甇文 賂靘瘙箏甇斤鈭斗臬血臭誑雿輻 鞈潛拚/蝝萸
- * 2. 菔頃拚/蝝∴甇隞 撖嗅拚脰鞎餅嚗萎 憿嚗望∟
- * 3. 亙臭蝙刻頃拚/蝝菜嚗 瘜冽交嗡甈曄交嚗隢隞乩漱 憿[TradeAmt]閮桅憿瑼X乓
- * @param useRedeem
- */
- public void setUseRedeem(String useRedeem) {
- UseRedeem = useRedeem;
- }
- /**
- * 敺ExpireDate 閮梁像鞎餅憭拇賂仿閮剖 60 憭抬1憭押芾身摰甇文詨閮剔3憭
- * 瘜冽鈭嚗 隞亙予箏桐
- * @return ExpireDate
- */
- /**
- * 敺StoreID ∪摨隞蝣潘靘∪‵亙摰嗡誨蝣潔蝙
- * @return StoreID
- */
- public String getStoreID() {
- return StoreID;
- }
- /**
- * 閮剖StoreID ∪摨隞蝣潘靘∪‵亙摰嗡誨蝣潔蝙
- * @param storeID
- */
- public void setStoreID(String storeID) {
- StoreID = storeID;
- }
- @Override
- public String toString() {
- return "AioCheckOutTopUpUsed [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", StoreID="
- + StoreID + ", MerchantTradeDate=" + MerchantTradeDate + ", PaymentType=" + PaymentType
- + ", TotalAmount=" + TotalAmount + ", TradeDesc=" + TradeDesc + ", ItemName=" + ItemName
- + ", ReturnURL=" + ReturnURL + ", ChoosePayment=" + ChoosePayment + ", ClientBackURL=" + ClientBackURL
- + ", ItemURL=" + ItemURL + ", Remark=" + Remark + ", ChooseSubPayment=" + ChooseSubPayment
- + ", OrderResultURL=" + OrderResultURL + ", NeedExtraPaidInfo=" + NeedExtraPaidInfo + ", DeviceSource="
- + DeviceSource + ", IgnorePayment=" + IgnorePayment + ", PlatformID=" + PlatformID + ", InvoiceMark="
- + InvoiceMark + ", HoldTradeAMT=" + HoldTradeAMT + ", EncryptType=" + EncryptType + ", UseRedeem="
- + UseRedeem + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/AioCheckOutWebATM.java b/Payment/allPay/payment/integration/domain/AioCheckOutWebATM.java
deleted file mode 100644
index fe5849c..0000000
--- a/Payment/allPay/payment/integration/domain/AioCheckOutWebATM.java
+++ /dev/null
@@ -1,560 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 產生網路ATM訂單物件
- * @author mark.chiu
- *
- */
-public class AioCheckOutWebATM {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * 會員交易編號,該交易編號不可重複
- */
- private String MerchantTradeNo = "";
-
- /**
- * StoreID
- * 會員商店代碼,提供會員填入店家代碼使用
- */
- private String StoreID = "";
-
- /**
- * MerchantTradeDate
- * 會員交易時間
- */
- private String MerchantTradeDate = "";
-
- /**
- * PaymentType
- * 交易類型
- */
- private String PaymentType = "aio";
-
- /**
- * TotalAmount
- * 交易金額
- */
- private String TotalAmount = "";
-
- /**
- * TradeDesc
- * 交易描述
- */
- private String TradeDesc = "";
-
- /**
- * ItemName
- * 商品名稱
- */
- private String ItemName = "";
-
- /**
- * ReturnURL
- * 付款完成通知回傳網址
- */
- private String ReturnURL = "";
-
- /**
- * ChoosePayment
- * 選擇預設付款方式
- */
- private String ChoosePayment = "WebATM";
-
- /**
- * ClientBackURL
- * Client端返回會員系統的按鈕連結
- */
- private String ClientBackURL = "";
-
- /**
- * ItemURL
- * 商品銷售網址
- */
- private String ItemURL = "";
-
- /**
- * Remark
- * 備註欄位
- */
- private String Remark = "";
-
- /**
- * ChooseSubPayment
- * 選擇預設付款子項目
- */
- private String ChooseSubPayment = "";
-
- /**
- * OrderResultURL
- * Client端回傳付款結果網址
- */
- private String OrderResultURL = "";
-
- /**
- * NeedExtraPaidInfo
- * 是否需要額外的付款資訊
- */
- private String NeedExtraPaidInfo = "";
-
- /**
- * DeviceSource
- * 裝置來源,請帶空值,由allPay自動判定。
- */
- private String DeviceSource = "";
-
- /**
- * IgnorePayment
- * 隱藏付款方式,設定檔自動帶入
- */
- private String IgnorePayment = "";
-
- /**
- * PlatformID
- * 特約合作平台商代號(由allPay提供),設定檔自動帶入
- */
- private String PlatformID = "";
-
- /**
- * InvoiceMark
- * 電子發票開立註記,程式自動判斷
- */
- private String InvoiceMark = "";
-
- /**
- * HoldTradeAMT
- * 是否延遲撥款
- */
- private String HoldTradeAMT = "";
-
- /**
- * EncryptType
- * CheckMacValue加密類型
- */
- private String EncryptType = "1";
-
- /**
- * UseRedeem
- * 是否可以使用購物金/紅包折抵
- */
- private String UseRedeem = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,英數字大小寫混合,該交易編號不可重複,如有使用PlatformID,平台商底下所有商家之訂單編號亦不可重複。
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得MerchantTradeDate 會員交易時間
- * @return MerchantTradeDate
- */
- public String getMerchantTradeDate() {
- return MerchantTradeDate;
- }
- /**
- * 設定MerchantTradeDate 會員交易時間,請以 yyyy/MM/dd HH:mm:ss格式帶入
- * @param merchantTradeDate
- */
- public void setMerchantTradeDate(String merchantTradeDate) {
- MerchantTradeDate = merchantTradeDate;
- }
- /**
- * 取得PaymentType 交易類型
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
- /**
- * 設定PaymentType 交易類型
- * @param paymentType
- */
-// public void setPaymentType(String paymentType) {
-// PaymentType = paymentType;
-// }
- /**
- * 取得TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @return TotalAmount
- */
- public String getTotalAmount() {
- return TotalAmount;
- }
- /**
- * 設定TotalAmount 交易金額,請帶整數,不可有小數點
- * 金額不可為0元
- * CVS最低限制為27元,最高限制為20000元
- * 信用卡金額若非特店會員及第三類個人/商務鑽石(議約),金額不可小於5元
- * @param totalAmount
- */
- public void setTotalAmount(String totalAmount) {
- TotalAmount = totalAmount;
- }
- /**
- * 取得TradeDesc 交易描述
- * @return TradeDesc
- */
- public String getTradeDesc() {
- return TradeDesc;
- }
- /**
- * 設定TradeDesc 交易描述
- * @param tradeDesc
- */
- public void setTradeDesc(String tradeDesc) {
- TradeDesc = tradeDesc;
- }
- /**
- * 取得ItemName 商品名稱,如果商品名稱有多筆,需在金流選擇頁一行一行顯示商品名稱的話,商品名稱請以符號#分隔
- * @return ItemName
- */
- public String getItemName() {
- return ItemName;
- }
- /**
- * 設定ItemName 商品名稱,如果商品名稱有多筆,需在金流選擇頁一行一行顯示商品名稱的話,商品名稱請以符號#分隔
- * @param itemName
- */
- public void setItemName(String itemName) {
- ItemName = itemName;
- }
- /**
- * 取得ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款結果參數以幕後(Server POST)回傳到該網址。
- * @return ReturnURL
- */
- public String getReturnURL() {
- return ReturnURL;
- }
- /**
- * 設定ReturnURL 付款完成通知回傳網址,當消費者付款完成後,歐付寶會將付款結果參數以幕後(Server POST)回傳到該網址。
- * @param returnURL
- */
- public void setReturnURL(String returnURL) {
- ReturnURL = returnURL;
- }
- /**
- * 取得ChoosePayment 選擇預設付款方式,歐付寶提供下列付款方式,請於建立訂單時傳送過來:
- * Credit:信用卡
- * WebATM:網路ATM
- * ATM:自動櫃員機
- * CVS:超商代碼
- * Tenpay:財付通
- * TopUpUsed:儲值消費
- * ALL:不指定付款方式,由歐付寶顯示付款方式選擇頁面。
- * 注意事項:
- * 若為手機版時不支援下列付款方式:
- * WebATM:網路ATM
- * @return ChoosePayment
- */
- public String getChoosePayment() {
- return ChoosePayment;
- }
- /**
- * 設定ChoosePayment 選擇預設付款方式,歐付寶提供下列付款方式,請於建立訂單時傳送過來:
- * Credit:信用卡
- * WebATM:網路ATM
- * ATM:自動櫃員機
- * CVS:超商代碼
- * Tenpay:財付通
- * TopUpUsed:儲值消費
- * ALL:不指定付款方式,由歐付寶顯示付款方式選擇頁面。
- * 注意事項:
- * 若為手機版時不支援下列付款方式:
- * WebATM:網路ATM
- * @param choosePayment
- */
-// public void setChoosePayment(String choosePayment) {
-// ChoosePayment = choosePayment;
-// }
- /**
- * 取得ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ClientBackURL
- */
- public String getClientBackURL() {
- return ClientBackURL;
- }
- /**
- * 設定ClientBackURL Client端返回會員系統的按鈕連結。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param clientBackURL
- */
- public void setClientBackURL(String clientBackURL) {
- ClientBackURL = clientBackURL;
- }
- /**
- * 取得ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return ItemURL
- */
- public String getItemURL() {
- return ItemURL;
- }
- /**
- * 設定 ItemURL 商品銷售網址。設定此參數,歐付寶會在付款完成 或取號完成頁面上顯示[返回商店] 的按鈕。
- *消費者點選此按鈕後,會將頁面導回到此設定的網址。
- *注意事項:本參數僅控制將頁面導回,不會將付款結果資訊POST到設定值內的URL。發生簡訊 OTP 驗證失敗而此參數有值時,頁面上亦會顯示按鈕。
- *若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param itemURL
- */
- public void setItemURL(String itemURL) {
- ItemURL = itemURL;
- }
- /**
- * 取得Remark 備註欄位
- * @return Remark
- */
- public String getRemark() {
- return Remark;
- }
- /**
- * 設定Remark 備註欄位
- * @param remark
- */
- public void setRemark(String remark) {
- Remark = remark;
- }
- /**
- * 取得ChooseSubPayment 選擇預設付款子項目
- * @return ChooseSubPayment
- */
- public String getChooseSubPayment() {
- return ChooseSubPayment;
- }
- /**
- * 設定ChooseSubPayment 選擇預設付款子項目
- * @param chooseSubPayment
- */
- public void setChooseSubPayment(String chooseSubPayment) {
- ChooseSubPayment = chooseSubPayment;
- }
- /**
- * 取得OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @return OrderResultURL
- */
- public String getOrderResultURL() {
- return OrderResultURL;
- }
- /**
- * 設定OrderResultURL Client端回傳付款結果網址。付款完成後,歐付寶將頁面導回到會 員網址,並將付款結果帶回
- * 注意事項:
- * 1. 沒帶此參數則會顯示歐付寶的付 款完成頁。
- * 2. 如果要將付款結果頁顯示在會員 系統內,請設定此參數。
- * 3. 若設定此參數,將會使設定的 Client 端返回會員系統的按鈕連 結[ClientBackURL]失效。
- * 4. 部分銀行 WebATM 在交易成功 後,會停留在銀行的頁面,並不會導 回給歐付寶,所以歐付寶也不會將 頁面導回到[OrderResultURL]的頁面
- * 5. 財付通和非及時交易(ATM、CVS) 不支援此參數。
- * 6. 建議在測試階段時先不要設定此 參數,可將畫面停留在歐付寶,看 見歐付寶所提供的錯誤訊息,便可 以有效除錯。
- * 7. 若有設定此參數,請務必根據回傳 的交易狀態來判斷顯示付款成功 與否的頁面。
- * 8. 若導回網址未使用 https 時,部份 瀏覽器可能會出現警告訊息。
- * @param orderResultURL
- */
- public void setOrderResultURL(String orderResultURL) {
- OrderResultURL = orderResultURL;
- }
- /**
- * 取得NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @return NeedExtraPaidInfo
- */
- public String getNeedExtraPaidInfo() {
- return NeedExtraPaidInfo;
- }
- /**
- * 設定NeedExtraPaidInfo 是否需要額外的付款資訊 。回傳更詳細的付款資訊至ReturnURL參數指定的URL。預設為N。
- * @param needExtraPaidInfo
- */
- public void setNeedExtraPaidInfo(String needExtraPaidInfo) {
- NeedExtraPaidInfo = needExtraPaidInfo;
- }
- /**
- * 取得DeviceSource 裝置來源
- * @return DeviceSource
- */
- public String getDeviceSource() {
- return DeviceSource;
- }
- /**
- * 設定DeviceSource 裝置來源
- * @param deviceSource
- */
-// public void setDeviceSource(String deviceSource) {
-// DeviceSource = deviceSource;
-// }
- /**
- * 取得IgnorePayment 隱藏付款方式
- * @return IgnorePayment
- */
- public String getIgnorePayment() {
- return IgnorePayment;
- }
- /**
- * 設定IgnorePayment 隱藏付款方式
- * @param ignorePayment
- */
- public void setIgnorePayment(String ignorePayment) {
- IgnorePayment = ignorePayment;
- }
- /**
- * 取得PlatformID 特約合作平台商代號(由allPay提供)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 設定PlatformID 特約合作平台商代號(由allPay提供)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- /**
- * 取得InvoiceMark 電子發票開立註記
- * @return InvoiceMark
- */
- public String getInvoiceMark() {
- return InvoiceMark;
- }
- /**
- * 設定InvoiceMark 電子發票開立註記
- * @param invoiceMark
- */
- public void setInvoiceMark(String invoiceMark) {
- InvoiceMark = invoiceMark;
- }
- /**
- * 取得HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @return HoldTradeAMT
- */
- public String getHoldTradeAMT() {
- return HoldTradeAMT;
- }
- /**
- * 設定HoldTradeAMT 是否延遲撥款
- * 1. 若為不延遲撥款,請帶:0,買方付款完成後,歐付寶依合約約定之時間,撥款給會員
- * 2. 若為延遲撥款,請帶:1,買方付 款完成後,需再呼叫「會員申請撥 款退款」API,讓歐付寶撥款給會 員,或退款給買方。
- * 注意事項: ※倘若會員一直不申請撥款,此筆訂單 款項會一直放在歐付寶,直到會員申請 撥款。
- * ※延遲撥款不適用「信用卡」、「財付通」 之付款方式。
- * @param holdTradeAMT
- */
- public void setHoldTradeAMT(String holdTradeAMT) {
- HoldTradeAMT = holdTradeAMT;
- }
- /**
- * 取得EncryptType CheckMacValue加密類型
- * @return EncryptType
- */
- public String getEncryptType() {
- return EncryptType;
- }
- /**
- * 設定EncryptType CheckMacValue加密類型
- * @param encryptType
- */
-// public void setEncryptType(String encryptType) {
-// EncryptType = encryptType;
-// }
- /**
- * 取得UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @return UseRedeem
- */
- public String getUseRedeem() {
- return UseRedeem;
- }
- /**
- * 設定UseRedeem 是否可以使用購物金/紅包折抵。用來設定此筆交易是否可以使用購物 金/紅包折抵。
- * 1. 若為可使用時,請帶:Y
- * 2. 若為不可使用時,請帶:N
- * 注意事項:
- * 1. 折抵方式可於「廠商後台/紅包折 抵設定」功能新增您的折抵條件, 若已開啟折抵設定,需再配合此參 數,來決定此筆交易是否可以使用 購物金/紅包折抵。
- * 2. 配合折抵購物金/紅包會員,歐付 寶將協助進行免費曝光,折抵之金 額,則由會員負擔。
- * 3. 若可使用購物金/紅包折抵時,需 注意接收付款結果通知時,請以交 易金額[TradeAmt]做訂單金額的檢查。
- * @param useRedeem
- */
- public void setUseRedeem(String useRedeem) {
- UseRedeem = useRedeem;
- }
- /**
- * 取得StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @return StoreID
- */
- public String getStoreID() {
- return StoreID;
- }
- /**
- * 設定StoreID 會員商店代碼,提供會員填入店家代碼使用
- * @param storeID
- */
- public void setStoreID(String storeID) {
- StoreID = storeID;
- }
- @Override
- public String toString() {
- return "AioCheckOutWebATM [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", StoreID="
- + StoreID + ", MerchantTradeDate=" + MerchantTradeDate + ", PaymentType=" + PaymentType
- + ", TotalAmount=" + TotalAmount + ", TradeDesc=" + TradeDesc + ", ItemName=" + ItemName
- + ", ReturnURL=" + ReturnURL + ", ChoosePayment=" + ChoosePayment + ", ClientBackURL=" + ClientBackURL
- + ", ItemURL=" + ItemURL + ", Remark=" + Remark + ", ChooseSubPayment=" + ChooseSubPayment
- + ", OrderResultURL=" + OrderResultURL + ", NeedExtraPaidInfo=" + NeedExtraPaidInfo + ", DeviceSource="
- + DeviceSource + ", IgnorePayment=" + IgnorePayment + ", PlatformID=" + PlatformID + ", InvoiceMark="
- + InvoiceMark + ", HoldTradeAMT=" + HoldTradeAMT + ", EncryptType=" + EncryptType + ", UseRedeem="
- + UseRedeem + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/CVSRequestObj.java b/Payment/allPay/payment/integration/domain/CVSRequestObj.java
deleted file mode 100644
index 5b9b9a6..0000000
--- a/Payment/allPay/payment/integration/domain/CVSRequestObj.java
+++ /dev/null
@@ -1,359 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 當ChoosePayment為CVS時的取號結果通知物件
- * @author mark.chiu
- *
- */
-public class CVSRequestObj {
-
- /**
- * MerchantID
- * 會員編號
- */
- private String MerchantID;
-
- /**
- * MerchantTradeNo
- * 會員交易編號
- */
- private String MerchantTradeNo;
-
- /**
- * RtnCode
- * 交易狀態
- */
- private String RtnCode;
-
- /**
- * RtnMsg
- * 交易訊息
- */
- private String RtnMsg;
-
- /**
- * TradeNo
- * allPay的交易編號
- */
- private String TradeNo;
-
- /**
- * TradeAmt
- * 交易金額
- */
- private String TradeAmt;
-
- /**
- * PayAmt
- * 實際付款金額
- */
- private String PayAmt;
-
- /**
- * RedeemAmt
- * 折抵金額
- */
- private String RedeemAmt;
-
- /**
- * PaymentType
- * 會員選擇的付款方式
- */
- private String PaymentType;
-
- /**
- * TradeDate
- * 訂單成立時間
- */
- private String TradeDate;
-
- /**
- * Barcode1
- * 條碼第一段號碼
- */
- private String Barcode1;
-
- /**
- * Barcode2
- * 條碼第二段號碼
- */
- private String Barcode2;
-
- /**
- * Barcode3
- * 條碼第三段號碼
- */
- private String Barcode3;
-
- /**
- * CheckMacValue
- * 檢查碼
- */
- private String CheckMacValue;
-
- /**
- * PaymentNo
- * 繳費代碼
- */
- private String PaymentNo;
-
- /**
- * ExpireDate
- * 繳費期限
- */
- private String ExpireDate;
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
-
- /**
- * 設定MerchantID 會員編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
-
- /**
- * 取得MerchantTradeNo 會員交易編號
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
-
- /**
- * 設定MerchantTradeNo 會員交易編號
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
-
- /**
- * 取得RtnCode 交易狀態
- * @return RtnCode
- */
- public String getRtnCode() {
- return RtnCode;
- }
-
- /**
- * 設定RtnCode 交易狀態
- * @param rtnCode
- */
- public void setRtnCode(String rtnCode) {
- RtnCode = rtnCode;
- }
-
- /**
- * 取得RtnMsg 交易訊息
- * @return RtnMsg
- */
- public String getRtnMsg() {
- return RtnMsg;
- }
-
- /**
- * 設定RtnMsg 交易訊息
- * @param rtnMsg
- */
- public void setRtnMsg(String rtnMsg) {
- RtnMsg = rtnMsg;
- }
-
- /**
- * 取得TradeNo allPay的交易編號
- * @return TradeNo
- */
- public String getTradeNo() {
- return TradeNo;
- }
-
- /**
- * 設定TradeNo allPay的交易編號
- * @param tradeNo
- */
- public void setTradeNo(String tradeNo) {
- TradeNo = tradeNo;
- }
-
- /**
- * 取得TradeAmt 交易金額
- * @return TradeAmt
- */
- public String getTradeAmt() {
- return TradeAmt;
- }
-
- /**
- * 設定TradeAmt 交易金額
- * @param tradeAmt
- */
- public void setTradeAmt(String tradeAmt) {
- TradeAmt = tradeAmt;
- }
-
- /**
- * 取得PaymentType 會員選擇的付款方式
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
-
- /**
- * 設定PaymentType 會員選擇的付款方式
- * @param paymentType
- */
- public void setPaymentType(String paymentType) {
- PaymentType = paymentType;
- }
-
- /**
- * 取得TradeDate 訂單成立時間
- * @return TradeDate
- */
- public String getTradeDate() {
- return TradeDate;
- }
-
- /**
- * 設定TradeDate 訂單成立時間
- * @param tradeDate
- */
- public void setTradeDate(String tradeDate) {
- TradeDate = tradeDate;
- }
-
- /**
- * 取得CheckMacValue 檢查碼
- * @return CheckMacValue
- */
- public String getCheckMacValue() {
- return CheckMacValue;
- }
-
- /**
- * 設定CheckMacValue 檢查碼
- * @param checkMacValue
- */
- public void setCheckMacValue(String checkMacValue) {
- CheckMacValue = checkMacValue;
- }
-
- /**
- * 取得PaymentNo 繳費代碼
- * @return PaymentNo
- */
- public String getPaymentNo() {
- return PaymentNo;
- }
-
- /**
- * 設定PaymentNo 繳費代碼
- * @param paymentNo
- */
- public void setPaymentNo(String paymentNo) {
- PaymentNo = paymentNo;
- }
-
- /**
- * 取得ExpireDate 繳費期限
- * @return ExpireDate
- */
- public String getExpireDate() {
- return ExpireDate;
- }
-
- /**
- * 設定ExpireDate 繳費期限
- * @param expireDate
- */
- public void setExpireDate(String expireDate) {
- ExpireDate = expireDate;
- }
-
- /**
- * 取得Barcode1 條碼第一段號碼
- * @return Barcode1
- */
- public String getBarcode1() {
- return Barcode1;
- }
-
- /**
- * 設定Barcode1 條碼第一段號碼
- * @param barcode1
- */
- public void setBarcode1(String barcode1) {
- Barcode1 = barcode1;
- }
-
- /**
- * 取得Barcode2 條碼第二段號碼
- * @return Barcode2
- */
- public String getBarcode2() {
- return Barcode2;
- }
-
- /**
- * 設定Barcode2 條碼第二段號碼
- * @param barcode2
- */
- public void setBarcode2(String barcode2) {
- Barcode2 = barcode2;
- }
-
- /**
- * 取得Barcode3 條碼第三段號碼
- * @return Barcode3
- */
- public String getBarcode3() {
- return Barcode3;
- }
-
- /**
- * 設定Barcode3 條碼第三段號碼
- * @param barcode3
- */
- public void setBarcode3(String barcode3) {
- Barcode3 = barcode3;
- }
- /**
- * 取得PayAmt 實際付款金額
- * @return PayAmt
- */
- public String getPayAmt() {
- return PayAmt;
- }
- /**
- * 設定PayAmt 實際付款金額
- * @param payAmt
- */
- public void setPayAmt(String payAmt) {
- PayAmt = payAmt;
- }
- /**
- * 取得RedeemAmt 折抵金額
- * @return RedeemAmt
- */
- public String getRedeemAmt() {
- return RedeemAmt;
- }
- /**
- * 設定RedeemAmt 折抵金額
- * @param redeemAmt
- */
- public void setRedeemAmt(String redeemAmt) {
- RedeemAmt = redeemAmt;
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/CaptureObj.java b/Payment/allPay/payment/integration/domain/CaptureObj.java
deleted file mode 100644
index d773088..0000000
--- a/Payment/allPay/payment/integration/domain/CaptureObj.java
+++ /dev/null
@@ -1,203 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 會員申請撥款/退款物件
- * @author mark.chiu
- *
- */
-public class CaptureObj {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * 會員交易編號
- */
- private String MerchantTradeNo = "";
-
- /**
- * CaptureAMT
- * 會員申請撥款金額
- */
- private String CaptureAMT = "";
-
- /**
- * UserRefundAMT
- * 要退款給買方的金額
- */
- private String UserRefundAMT = "";
-
- /**
- * PlatformID
- * 特約合作平台商代號(由allPay提供)
- */
- private String PlatformID = "";
-
- /**
- * UpdatePlatformChargeFee
- * 是否更改特約合作平台商手續費
- */
- private String UpdatePlatformChargeFee = "";
-
- /**
- * PlatformChargeFee
- * 特約合作平台商手續費
- */
- private String PlatformChargeFee = "";
-
- /**
- * Remark
- * 備註
- */
- private String Remark = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,訂單產生時傳送給O’Pay的會員交易編號。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,訂單產生時傳送給O’Pay的會員交易編號。
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得CaptureAMT 會員申請撥款金額
- * @return CaptureAMT
- */
- public String getCaptureAMT() {
- return CaptureAMT;
- }
- /**
- * 設定CaptureAMT 會員申請撥款金額
- * @param captureAMT
- */
- public void setCaptureAMT(String captureAMT) {
- CaptureAMT = captureAMT;
- }
- /**
- * 取得UserRefundAMT 要退款給買方的金額,若不需要處理退款給買方,請帶0,
- * 「訂單交易金額」扣除「必要手續費」後,撥款給平台會員。
- * 注意事項:
- * ※若需要處理全額或部份退款給買方時,請帶此參數。有效範圍為0∼訂單交易金額。
- * ※會員申請撥款金額[CaptureAMT] +要退款給買方的金額[UserRefundAMT] = 訂單交易金額。
- * @return UserRefundAMT
- */
- public String getUserRefundAMT() {
- return UserRefundAMT;
- }
- /**
- * 設定UserRefundAMT 要退款給買方的金額,若不需要處理退款給買方,請帶0,
- * 「訂單交易金額」扣除「必要手續費」後,撥款給平台會員。
- * 注意事項:
- * ※若需要處理全額或部份退款給買方時,請帶此參數。有效範圍為0∼訂單交易金額。
- * ※會員申請撥款金額[CaptureAMT] +要退款給買方的金額[UserRefundAMT] = 訂單交易金額。
- * @param userRefundAMT
- */
- public void setUserRefundAMT(String userRefundAMT) {
- UserRefundAMT = userRefundAMT;
- }
- /**
- * 取得PlatformID 特約合作平台商代號(由O'Pay提供)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 設定PlatformID 特約合作平台商代號(由O'Pay提供)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- /**
- * 取得UpdatePlatformChargeFee 是否更改特約合作平台商手續費,預設為N。
- * 若平台有需要更改「訂單產生」時的特約合作平台商手續費[PlatformChargeFee]時:
- * 若不更改時,參數請帶:N。
- * 若要更改時,參數請帶:Y。
- * 注意事項: ※此參數為專案合作的平台商使用,一般會員介接請放空值。
- * @return UpdatePlatformChargeFee
- */
- public String getUpdatePlatformChargeFee() {
- return UpdatePlatformChargeFee;
- }
- /**
- * 設定UpdatePlatformChargeFee 是否更改特約合作平台商手續費,預設為N。
- * 若平台有需要更改「訂單產生」時的特約合作平台商手續費[PlatformChargeFee]時:
- * 若不更改時,參數請帶:N。
- * 若要更改時,參數請帶:Y。
- * 注意事項: ※此參數為專案合作的平台商使用,一般會員介接請放空值。
- * @param updatePlatformChargeFee
- */
- public void setUpdatePlatformChargeFee(String updatePlatformChargeFee) {
- UpdatePlatformChargeFee = updatePlatformChargeFee;
- }
- /**
- * 取得PlatformChargeFee 特約合作平台商手續費,若[UpdatePlatformChargeFee]設定為Y時,請帶此參數。
- * 例如:若因為全額退款給買方,如果此筆訂單的「特約合作平台商手續費」不收的話,請帶0。
- * 注意事項:
- * ※有效範圍為0∼訂單產生時的特約合作平台商手續費。
- * ※此參數為專案合作的平台商使用,一般會員介接請放空值。
- * @return PlatformChargeFee
- */
- public String getPlatformChargeFee() {
- return PlatformChargeFee;
- }
- /**
- * 設定PlatformChargeFee 特約合作平台商手續費,若[UpdatePlatformChargeFee]設定為Y時,請帶此參數。
- * 例如:若因為全額退款給買方,如果此筆訂單的「特約合作平台商手續費」不收的話,請帶0。
- * 注意事項:
- * ※有效範圍為0∼訂單產生時的特約合作平台商手續費。
- * ※此參數為專案合作的平台商使用,一般會員介接請放空值。
- * @param platformChargeFee
- */
- public void setPlatformChargeFee(String platformChargeFee) {
- PlatformChargeFee = platformChargeFee;
- }
- /**
- * 取得Remark 備註
- * @return Remark
- */
- public String getRemark() {
- return Remark;
- }
- /**
- * 設定Remark 備註
- * @param remark
- */
- public void setRemark(String remark) {
- Remark = remark;
- }
- @Override
- public String toString() {
- return "CaptureObj [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", CaptureAMT="
- + CaptureAMT + ", UserRefundAMT=" + UserRefundAMT + ", PlatformID=" + PlatformID
- + ", UpdatePlatformChargeFee=" + UpdatePlatformChargeFee + ", PlatformChargeFee=" + PlatformChargeFee
- + ", Remark=" + Remark + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/DoActionObj.java b/Payment/allPay/payment/integration/domain/DoActionObj.java
deleted file mode 100644
index a8e1fdd..0000000
--- a/Payment/allPay/payment/integration/domain/DoActionObj.java
+++ /dev/null
@@ -1,146 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 信用卡關帳/退刷/取消/放棄物件
- * @author mark.chiu
- *
- */
-public class DoActionObj {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * 會員交易編號
- */
- private String MerchantTradeNo = "";
-
- /**
- * TradeNo
- * allPay的交易編號
- */
- private String TradeNo = "";
-
- /**
- * Action
- * 執行動作
- */
- private String Action = "";
-
- /**
- * TotalAmount
- * 金額
- */
- private String TotalAmount = "";
-
- /**
- * PlatformID
- * 特約合作平台商代號(由allPay提供)
- */
- private String PlatformID = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,訂單產生時傳送給O’Pay的會員交易編號。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,訂單產生時傳送給O’Pay的會員交易編號。
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得TradeNo O’Pay的交易編號
- * @return TradeNo
- */
- public String getTradeNo() {
- return TradeNo;
- }
- /**
- * 設定TradeNo O’Pay的交易編號
- * @param tradeNo
- */
- public void setTradeNo(String tradeNo) {
- TradeNo = tradeNo;
- }
- /**
- * 取得Action 執行動作,針對訂單做處理的動作,例如要對訂單做關帳時,請帶C。
- * 1.若要執行關帳時,參數請帶:C
- * 2.若要執行退刷時,參數請帶:R
- * 3.若要執行取消時,參數請帶:E
- * 4.若要執行放棄時,參數請帶:N
- * @return Action
- */
- public String getAction() {
- return Action;
- }
- /**
- * 設定Action 執行動作,針對訂單做處理的動作,例如要對訂單做關帳時,請帶C。
- * 1.若要執行關帳時,參數請帶:C
- * 2.若要執行退刷時,參數請帶:R
- * 3.若要執行取消時,參數請帶:E
- * 4.若要執行放棄時,參數請帶:N
- * @param action
- */
- public void setAction(String action) {
- Action = action;
- }
- /**
- * 取得TotalAmount 金額
- * @return TotalAmount
- */
- public String getTotalAmount() {
- return TotalAmount;
- }
- /**
- * 設定TotalAmount 金額
- * @param totalAmount
- */
- public void setTotalAmount(String totalAmount) {
- TotalAmount = totalAmount;
- }
- /**
- * 取得PlatformID 特約合作平台商代號(由O’Pay提供)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 設定PlatformID 特約合作平台商代號(由O’Pay提供)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- @Override
- public String toString() {
- return "DoActionObj [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", TradeNo=" + TradeNo
- + ", Action=" + Action + ", TotalAmount=" + TotalAmount + ", PlatformID=" + PlatformID + "]";
- }
-
-}
diff --git a/Payment/allPay/payment/integration/domain/FundingReconDetailObj.java b/Payment/allPay/payment/integration/domain/FundingReconDetailObj.java
deleted file mode 100644
index 18d0043..0000000
--- a/Payment/allPay/payment/integration/domain/FundingReconDetailObj.java
+++ /dev/null
@@ -1,103 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 下載信用卡撥款對帳資料檔物件
- * @author mark.chiu
- *
- */
-public class FundingReconDetailObj {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * PayDateType
- * 查詢日期類別
- */
- private String PayDateType = "";
-
- /**
- * StartDate
- * 查詢開始日期
- */
- private String StartDate = "";
-
- /**
- * EndDate
- * 查詢結束日期
- */
- private String EndDate = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O’Pay提供)
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O’Pay提供)
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得PayDateType 查詢日期類別,要查詢的日期類別
- * 若為查詢撥款日期時,則參數請帶fund
- * 若為查詢關帳日期時,則參數請帶close
- * 若為查詢入帳日期時,則參數請帶enter
- * @return PayDateType
- */
- public String getPayDateType() {
- return PayDateType;
- }
- /**
- * 設定PayDateType 查詢日期類別,要查詢的日期類別
- * 若為查詢撥款日期時,則參數請帶fund
- * 若為查詢關帳日期時,則參數請帶close
- * 若為查詢入帳日期時,則參數請帶enter
- * @param payDateType
- */
- public void setPayDateType(String payDateType) {
- PayDateType = payDateType;
- }
- /**
- * 取得StartDate 查詢開始日期,日期格式為「yyyy-MM-dd」
- * @return StartDate
- */
- public String getStartDate() {
- return StartDate;
- }
- /**
- * 設定StartDate 查詢開始日期,日期格式為「yyyy-MM-dd」
- * @param startDate
- */
- public void setStartDate(String startDate) {
- StartDate = startDate;
- }
- /**
- * 取得EndDate 查詢結束日期,日期格式為「yyyy-MM-dd」
- * @return EndDate
- */
- public String getEndDate() {
- return EndDate;
- }
- /**
- * 設定EndDate 查詢結束日期,日期格式為「yyyy-MM-dd」
- * @param endDate
- */
- public void setEndDate(String endDate) {
- EndDate = endDate;
- }
- @Override
- public String toString() {
- return "FundingReconDetailObj [MerchantID=" + MerchantID + ", PayDateType=" + PayDateType + ", StartDate="
- + StartDate + ", EndDate=" + EndDate + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/InvoiceObj.java b/Payment/allPay/payment/integration/domain/InvoiceObj.java
deleted file mode 100644
index c240821..0000000
--- a/Payment/allPay/payment/integration/domain/InvoiceObj.java
+++ /dev/null
@@ -1,463 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 開立發票物件
- * @author mark.chiu
- *
- */
-public class InvoiceObj {
-
- /**
- * RelateNumber
- * 合作特店自訂編號
- */
- private String RelateNumber = "";
-
- /**
- * CustomerID
- * 客戶代號
- */
- private String CustomerID = "";
-
- /**
- * CustomerIdentifier
- * 統一編號
- */
- private String CustomerIdentifier = "";
-
- /**
- * CustomerName
- * 客戶名稱
- */
- private String CustomerName = "";
-
- /**
- * CustomerAddr
- * 客戶地址
- */
- private String CustomerAddr = "";
-
- /**
- * CustomerPhone
- * 客戶手機號碼
- */
- private String CustomerPhone = "";
-
- /**
- * CustomerEmail
- * 客戶電子信箱
- */
- private String CustomerEmail = "";
-
- /**
- * ClearanceMark
- * 通關方式
- */
- private String ClearanceMark = "";
-
- /**
- * TaxType
- * 課稅類別
- */
- private String TaxType = "";
-
- /**
- * CarruerType
- * 載具類別
- */
- private String CarruerType = "";
-
- /**
- * CarruerNum
- * 載具編號
- */
- private String CarruerNum = "";
-
- /**
- * Donation
- * 捐贈註記
- */
- private String Donation = "";
-
- /**
- * LoveCode
- * 愛心碼
- */
- private String LoveCode = "";
-
- /**
- * Print
- * 列印註記
- */
- private String Print = "";
-
- /**
- * InvoiceItemName
- * 商品名稱
- */
- private String InvoiceItemName = "";
-
- /**
- * InvoiceItemCount
- * 商品數量
- */
- private String InvoiceItemCount = "";
-
- /**
- * InvoiceItemWord
- * 商品單位
- */
- private String InvoiceItemWord = "";
-
- /**
- * InvoiceItemPrice
- * 商品價格
- */
- private String InvoiceItemPrice = "";
-
- /**
- * InvoiceItemTaxType
- * 商品課稅別
- */
- private String InvoiceItemTaxType = "";
-
- /**
- * InvoiceRemark
- * 備註
- */
- private String InvoiceRemark = "";
-
- /**
- * DelayDay
- * 延遲天數
- */
- private String DelayDay = "";
-
- /**
- * InvType
- * 字軌類別
- */
- private String InvType = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得RelateNumber 合作特店自訂編號
- * @return RelateNumber
- */
- public String getRelateNumber() {
- return RelateNumber;
- }
- /**
- * 設定RelateNumber 合作特店自訂編號
- * @param relateNumber
- */
- public void setRelateNumber(String relateNumber) {
- RelateNumber = relateNumber;
- }
- /**
- * 取得CustomerID 客戶代號
- * @return CustomerID
- */
- public String getCustomerID() {
- return CustomerID;
- }
- /**
- * 設定CustomerID 客戶代號
- * @param customerID
- */
- public void setCustomerID(String customerID) {
- CustomerID = customerID;
- }
- /**
- * 取得CustomerIdentifier 統一編號
- * @return CustomerIdentifier
- */
- public String getCustomerIdentifier() {
- return CustomerIdentifier;
- }
- /**
- * 設定CustomerIdentifier 統一編號
- * @param customerIdentifier
- */
- public void setCustomerIdentifier(String customerIdentifier) {
- CustomerIdentifier = customerIdentifier;
- }
- /**
- * 取得CustomerName 客戶名稱
- * @return CustomerName
- */
- public String getCustomerName() {
- return CustomerName;
- }
- /**
- * 設定CustomerName 客戶名稱
- * @param customerName
- */
- public void setCustomerName(String customerName) {
- CustomerName = customerName;
- }
- /**
- * 取得CustomerAddr 客戶地址
- * @return CustomerAddr
- */
- public String getCustomerAddr() {
- return CustomerAddr;
- }
- /**
- * 設定CustomerAddr 客戶地址
- * @param customerAddr
- */
- public void setCustomerAddr(String customerAddr) {
- CustomerAddr = customerAddr;
- }
- /**
- * 取得CustomerPhone 客戶手機號碼
- * @return CustomerPhone
- */
- public String getCustomerPhone() {
- return CustomerPhone;
- }
- /**
- * 設定CustomerPhone 客戶手機號碼
- * @param customerPhone
- */
- public void setCustomerPhone(String customerPhone) {
- CustomerPhone = customerPhone;
- }
- /**
- * 取得CustomerEmail 客戶電子信箱
- * @return CustomerEmail
- */
- public String getCustomerEmail() {
- return CustomerEmail;
- }
- /**
- * 設定CustomerEmail 客戶電子信箱
- * @param customerEmail
- */
- public void setCustomerEmail(String customerEmail) {
- CustomerEmail = customerEmail;
- }
- /**
- * 取得ClearanceMark 通關方式
- * @return ClearanceMark
- */
- public String getClearanceMark() {
- return ClearanceMark;
- }
- /**
- * 設定ClearanceMark 通關方式
- * @param clearanceMark
- */
- public void setClearanceMark(String clearanceMark) {
- ClearanceMark = clearanceMark;
- }
- /**
- * 取得TaxType 課稅類別
- * @return TaxType
- */
- public String getTaxType() {
- return TaxType;
- }
- /**
- * 設定TaxType 課稅類別
- * @param taxType
- */
- public void setTaxType(String taxType) {
- TaxType = taxType;
- }
- /**
- * 取得CarruerType 載具類別
- * @return CarruerType
- */
- public String getCarruerType() {
- return CarruerType;
- }
- /**
- * 設定CarruerType 載具類別
- * @param carruerType
- */
- public void setCarruerType(String carruerType) {
- CarruerType = carruerType;
- }
- /**
- * 取得CarruerNum 載具編號
- * @return CarruerNum
- */
- public String getCarruerNum() {
- return CarruerNum;
- }
- /**
- * 設定CarruerNum 載具編號
- * @param carruerNum
- */
- public void setCarruerNum(String carruerNum) {
- CarruerNum = carruerNum;
- }
- /**
- * 取得Donation 捐贈註記
- * @return Donation
- */
- public String getDonation() {
- return Donation;
- }
- /**
- * 設定Donation 捐贈註記
- * @param donation
- */
- public void setDonation(String donation) {
- Donation = donation;
- }
- /**
- * 取得LoveCode 愛心碼
- * @return LoveCode
- */
- public String getLoveCode() {
- return LoveCode;
- }
- /**
- * 設定LoveCode 愛心碼
- * @param loveCode
- */
- public void setLoveCode(String loveCode) {
- LoveCode = loveCode;
- }
- /**
- * 取得Print 列印註記
- * @return Print
- */
- public String getPrint() {
- return Print;
- }
- /**
- * 設定Print 列印註記
- * @param print
- */
- public void setPrint(String print) {
- Print = print;
- }
- /**
- * 取得InvoiceItemName 商品名稱
- * @return InvoiceItemName
- */
- public String getInvoiceItemName() {
- return InvoiceItemName;
- }
- /**
- * 設定InvoiceItemName 商品名稱
- * @param invoiceItemName
- */
- public void setInvoiceItemName(String invoiceItemName) {
- InvoiceItemName = invoiceItemName;
- }
- /**
- * 取得InvoiceItemCount 商品數量
- * @return InvoiceItemCount
- */
- public String getInvoiceItemCount() {
- return InvoiceItemCount;
- }
- /**
- * 設定InvoiceItemCount 商品數量
- * @param invoiceItemCount
- */
- public void setInvoiceItemCount(String invoiceItemCount) {
- InvoiceItemCount = invoiceItemCount;
- }
- /**
- * 取得InvoiceItemWord 商品單位
- * @return InvoiceItemWord
- */
- public String getInvoiceItemWord() {
- return InvoiceItemWord;
- }
- /**
- * 設定InvoiceItemWord 商品單位
- * @param invoiceItemWord
- */
- public void setInvoiceItemWord(String invoiceItemWord) {
- InvoiceItemWord = invoiceItemWord;
- }
- /**
- * 取得InvoiceItemPrice 商品價格
- * @return InvoiceItemPrice
- */
- public String getInvoiceItemPrice() {
- return InvoiceItemPrice;
- }
- /**
- * 設定InvoiceItemPrice 商品價格
- * @param invoiceItemPrice
- */
- public void setInvoiceItemPrice(String invoiceItemPrice) {
- InvoiceItemPrice = invoiceItemPrice;
- }
- /**
- * 取得InvoiceItemTaxType 商品課稅別
- * @return InvoiceItemTaxType
- */
- public String getInvoiceItemTaxType() {
- return InvoiceItemTaxType;
- }
- /**
- * 設定InvoiceItemTaxType 商品課稅別
- * @param invoiceItemTaxType
- */
- public void setInvoiceItemTaxType(String invoiceItemTaxType) {
- InvoiceItemTaxType = invoiceItemTaxType;
- }
- /**
- * 取得InvoiceRemark 備註
- * @return InvoiceRemark
- */
- public String getInvoiceRemark() {
- return InvoiceRemark;
- }
- /**
- * 設定InvoiceRemark 備註
- * @param invoiceRemark
- */
- public void setInvoiceRemark(String invoiceRemark) {
- InvoiceRemark = invoiceRemark;
- }
- /**
- * 取得DelayDay 延遲天數
- * @return DelayDay
- */
- public String getDelayDay() {
- return DelayDay;
- }
- /**
- * 設定DelayDay 延遲天數
- * @param delayDay
- */
- public void setDelayDay(String delayDay) {
- DelayDay = delayDay;
- }
- /**
- * 取得InvType 字軌類別
- * @return InvType
- */
- public String getInvType() {
- return InvType;
- }
- /**
- * 設定InvType 字軌類別
- * @param invType
- */
- public void setInvType(String invType) {
- InvType = invType;
- }
- @Override
- public String toString() {
- return "InvoiceObj [RelateNumber=" + RelateNumber + ", CustomerID=" + CustomerID + ", CustomerIdentifier="
- + CustomerIdentifier + ", CustomerName=" + CustomerName + ", CustomerAddr=" + CustomerAddr
- + ", CustomerPhone=" + CustomerPhone + ", CustomerEmail=" + CustomerEmail + ", ClearanceMark="
- + ClearanceMark + ", TaxType=" + TaxType + ", CarruerType=" + CarruerType + ", CarruerNum=" + CarruerNum
- + ", Donation=" + Donation + ", LoveCode=" + LoveCode + ", Print=" + Print + ", InvoiceItemName="
- + InvoiceItemName + ", InvoiceItemCount=" + InvoiceItemCount + ", InvoiceItemWord=" + InvoiceItemWord
- + ", InvoiceItemPrice=" + InvoiceItemPrice + ", InvoiceItemTaxType=" + InvoiceItemTaxType
- + ", InvoiceRemark=" + InvoiceRemark + ", DelayDay=" + DelayDay + ", InvType=" + InvType + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/QueryCreditCardPeriodInfoObj.java b/Payment/allPay/payment/integration/domain/QueryCreditCardPeriodInfoObj.java
deleted file mode 100644
index 3f8f405..0000000
--- a/Payment/allPay/payment/integration/domain/QueryCreditCardPeriodInfoObj.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 信用卡定期定額訂單查詢物件
- * @author mark.chiu
- *
- */
-public class QueryCreditCardPeriodInfoObj {
-
- /**
- * MerchantID
- * 會員編號
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * 會員交易編號
- */
- private String MerchantTradeNo = "";
-
- /**
- * TimeStamp
- * 驗證時間
- */
- private String TimeStamp = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,訂單產生時傳送給O’Pay的會員交易編號。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,訂單產生時傳送給O’Pay的會員交易編號。
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得TimeStamp 驗證時間
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 驗證時間
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- @Override
- public String toString() {
- return "QueryCreditCardPeriodInfoObj [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo
- + ", TimeStamp=" + TimeStamp + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/QueryTradeInfoObj.java b/Payment/allPay/payment/integration/domain/QueryTradeInfoObj.java
deleted file mode 100644
index 159b8ee..0000000
--- a/Payment/allPay/payment/integration/domain/QueryTradeInfoObj.java
+++ /dev/null
@@ -1,98 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 查詢訂單物件
- * @author mark.chiu
- *
- */
-public class QueryTradeInfoObj {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * MerchantTradeNo
- * 會員交易編號
- */
- private String MerchantTradeNo = "";
-
- /**
- * TimeStamp
- * 驗證時間
- */
- private String TimeStamp = "";
-
- /**
- * PlatformID
- * 特約合作平台商代號(由allPay提供)
- */
- private String PlatformID = "";
-
- /********************* getters and setters *********************/
-
-
- /**
- * 取得MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O'Pay提供),當此平台為特約合作平台欲建立訂單時,該欄位才有效。一般平台商請忽略此欄位
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得MerchantTradeNo 會員交易編號,訂單產生時傳送給O’Pay的會員交易編號。
- * @return MerchantTradeNo
- */
- public String getMerchantTradeNo() {
- return MerchantTradeNo;
- }
- /**
- * 設定MerchantTradeNo 會員交易編號,訂單產生時傳送給O’Pay的會員交易編號。
- * @param merchantTradeNo
- */
- public void setMerchantTradeNo(String merchantTradeNo) {
- MerchantTradeNo = merchantTradeNo;
- }
- /**
- * 取得TimeStamp 驗證時間
- * @return TimeStamp
- */
- public String getTimeStamp() {
- return TimeStamp;
- }
- /**
- * 設定TimeStamp 驗證時間
- * @param timeStamp
- */
- public void setTimeStamp(String timeStamp) {
- TimeStamp = timeStamp;
- }
- /**
- * 取得PlatformID 特約合作平台商代號(由O’Pay提供)
- * @return PlatformID
- */
- public String getPlatformID() {
- return PlatformID;
- }
- /**
- * 設定PlatformID 特約合作平台商代號(由O’Pay提供)
- * @param platformID
- */
- public void setPlatformID(String platformID) {
- PlatformID = platformID;
- }
- @Override
- public String toString() {
- return "QueryTradeInfoObj [MerchantID=" + MerchantID + ", MerchantTradeNo=" + MerchantTradeNo + ", TimeStamp="
- + TimeStamp + ", PlatformID=" + PlatformID + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/QueryTradeObj.java b/Payment/allPay/payment/integration/domain/QueryTradeObj.java
deleted file mode 100644
index 7169db0..0000000
--- a/Payment/allPay/payment/integration/domain/QueryTradeObj.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 查詢信用卡單筆明細記錄
- * @author mark.chiu
- *
- */
-public class QueryTradeObj {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * CreditRefundId
- * 信用卡授權單號
- */
- private String CreditRefundId = "";
-
- /**
- * CreditAmount
- * 金額
- */
- private String CreditAmount = "";
-
- /**
- * CreditCheckCode
- * 商家檢查碼在廠商後台->信用卡收單->信用卡授權資訊中可查到
- */
- private String CreditCheckCode = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O’Pay提供)
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O’Pay提供)
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得CreditRefundId 信用卡授權單號
- * @return CreditRefundId
- */
- public String getCreditRefundId() {
- return CreditRefundId;
- }
- /**
- * 設定CreditRefundId 信用卡授權單號
- * @param creditRefundId
- */
- public void setCreditRefundId(String creditRefundId) {
- CreditRefundId = creditRefundId;
- }
- /**
- * 取得CreditAmount 金額
- * @return CreditAmount
- */
- public String getCreditAmount() {
- return CreditAmount;
- }
- /**
- * 設定CreditAmount 金額
- * @param creditAmount
- */
- public void setCreditAmount(String creditAmount) {
- CreditAmount = creditAmount;
- }
- /**
- * 取得CreditCheckCode 商家檢查碼在廠商後台->信用卡收單->信用卡授權資訊中可查到
- * @return CreditCheckCode
- */
- public String getCreditCheckCode() {
- return CreditCheckCode;
- }
- /**
- * 設定CreditCheckCode 商家檢查碼在廠商後台->信用卡收單->信用卡授權資訊中可查到
- * @param creditCheckCode
- */
- public void setCreditCheckCode(String creditCheckCode) {
- CreditCheckCode = creditCheckCode;
- }
- @Override
- public String toString() {
- return "QueryTradeObj [MerchantID=" + MerchantID + ", CreditRefundId=" + CreditRefundId + ", CreditAmount="
- + CreditAmount + ", CreditCheckCode=" + CreditCheckCode + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/domain/TradeNoAioObj.java b/Payment/allPay/payment/integration/domain/TradeNoAioObj.java
deleted file mode 100644
index 480da5a..0000000
--- a/Payment/allPay/payment/integration/domain/TradeNoAioObj.java
+++ /dev/null
@@ -1,247 +0,0 @@
-package allPay.payment.integration.domain;
-
-/**
- * 下載會員對帳媒體檔物件
- * @author mark.chiu
- *
- */
-public class TradeNoAioObj {
-
- /**
- * MerchantID
- * 會員編號(由allPay提供)
- */
- private String MerchantID = "";
-
- /**
- * DateType
- * 查詢日期類別
- */
- private String DateType = "";
-
- /**
- * BeginDate
- * 查詢開始日期
- */
- private String BeginDate = "";
-
- /**
- * EndDate
- * 查詢結束日期
- */
- private String EndDate = "";
-
- /**
- * PaymentType
- * 付款方式
- */
- private String PaymentType = "";
-
- /**
- * PlatformStatus
- * 訂單類型
- */
- private String PlatformStatus = "";
-
- /**
- * PaymentStatus
- * 付款狀態
- */
- private String PaymentStatus = "";
-
- /**
- * AllocateStatus
- * 撥款狀態
- */
- private String AllocateStatus = "";
-
- /**
- * MediaFormated
- * CSV格式
- */
- private String MediaFormated = "";
-
- /********************* getters and setters *********************/
-
- /**
- * 取得MerchantID 會員編號(由O’Pay提供)
- * @return MerchantID
- */
- public String getMerchantID() {
- return MerchantID;
- }
- /**
- * 設定MerchantID 會員編號(由O’Pay提供)
- * @param merchantID
- */
- public void setMerchantID(String merchantID) {
- MerchantID = merchantID;
- }
- /**
- * 取得DateType 查詢日期類別,要查詢的日期類別
- * 若為查詢付款日期時,則參數請帶2
- * 若為查詢撥款日期時,則參數請帶4
- * 若為查詢退款日期時,則參數請帶5
- * 若為查詢訂單日期時,則參數請帶6
- * @return DateType
- */
- public String getDateType() {
- return DateType;
- }
- /**
- * 設定DateType 查詢日期類別,要查詢的日期類別
- * 若為查詢付款日期時,則參數請帶2
- * 若為查詢撥款日期時,則參數請帶4
- * 若為查詢退款日期時,則參數請帶5
- * 若為查詢訂單日期時,則參數請帶6
- * @param dateType
- */
- public void setDateType(String dateType) {
- DateType = dateType;
- }
- /**
- * 取得BeginDate 查詢開始日期,日期格式為「yyyy-MM-dd」
- * @return BeginDate
- */
- public String getBeginDate() {
- return BeginDate;
- }
- /**
- * 設定BeginDate 查詢開始日期,日期格式為「yyyy-MM-dd」
- * @param beginDate
- */
- public void setBeginDate(String beginDate) {
- BeginDate = beginDate;
- }
- /**
- * 取得EndDate 查詢結束日期,日期格式為「yyyy-MM-dd」
- * @return EndDate
- */
- public String getEndDate() {
- return EndDate;
- }
- /**
- * 設定EndDate 查詢結束日期,日期格式為「yyyy-MM-dd」
- * @param endDate
- */
- public void setEndDate(String endDate) {
- EndDate = endDate;
- }
- /**
- * 取得PaymentType 付款方式,要查詢訂單的付款方式
- * 若為信用卡時,則參數請帶01
- * 若為網路ATM時,則參數請帶02
- * 若為ATM 櫃員機時,則參數請帶03
- * 若為超商代碼時,則參數請帶04
- * 若為財付通時,則參數請帶07
- * 若為信用卡(OTP)時,則參數請帶08
- * 若為歐付寶帳戶時,則參數請帶09
- * 若為全部時,請忽略此一參數
- * @return PaymentType
- */
- public String getPaymentType() {
- return PaymentType;
- }
- /**
- * 設定PaymentType 付款方式,要查詢訂單的付款方式
- * 若為信用卡時,則參數請帶01
- * 若為網路ATM時,則參數請帶02
- * 若為ATM 櫃員機時,則參數請帶03
- * 若為超商代碼時,則參數請帶04
- * 若為財付通時,則參數請帶07
- * 若為信用卡(OTP)時,則參數請帶08
- * 若為歐付寶帳戶時,則參數請帶09
- * 若為全部時,請忽略此一參數
- * @param paymentType
- */
- public void setPaymentType(String paymentType) {
- PaymentType = paymentType;
- }
- /**
- * 取得PlatformStatus 訂單類型,要查詢的訂單類型
- * 若為一般時,則參數請帶1
- * 若為平台時,則參數請帶2
- * 若為全部時,請忽略此一參數
- * @return PlatformStatus
- */
- public String getPlatformStatus() {
- return PlatformStatus;
- }
- /**
- * 設定PlatformStatus 訂單類型,要查詢的訂單類型
- * 若為一般時,則參數請帶1
- * 若為平台時,則參數請帶2
- * 若為全部時,請忽略此一參數
- * @param platformStatus
- */
- public void setPlatformStatus(String platformStatus) {
- PlatformStatus = platformStatus;
- }
- /**
- * 取得PaymentStatus 付款狀態,要查詢的訂單付款狀態
- * 若為未付款時,則參數請帶0
- * 若為已付款時,則參數請帶1
- * 若為訂單失敗時,則參數請帶2
- * 若為全部時,請忽略此一參數
- * @return PaymentStatus
- */
- public String getPaymentStatus() {
- return PaymentStatus;
- }
- /**
- * 設定PaymentStatus 付款狀態,要查詢的訂單付款狀態
- * 若為未付款時,則參數請帶0
- * 若為已付款時,則參數請帶1
- * 若為訂單失敗時,則參數請帶2
- * 若為全部時,請忽略此一參數
- * @param paymentStatus
- */
- public void setPaymentStatus(String paymentStatus) {
- PaymentStatus = paymentStatus;
- }
- /**
- * 取得AllocateStatus 撥款狀態,要查詢的訂單撥款狀態
- * 若為未撥款時,則參數請帶0
- * 若為已撥款時,則參數請帶1
- * 若為全部時,請忽略此一參數
- * @return AllocateStatus
- */
- public String getAllocateStatus() {
- return AllocateStatus;
- }
- /**
- * 設定AllocateStatus 撥款狀態,要查詢的訂單撥款狀態
- * 若為未撥款時,則參數請帶0
- * 若為已撥款時,則參數請帶1
- * 若為全部時,請忽略此一參數
- * @param allocateStatus
- */
- public void setAllocateStatus(String allocateStatus) {
- AllocateStatus = allocateStatus;
- }
- /**
- * 取得MediaFormated CSV格式,要下載的檔案格式
- * 若為舊版格式時,則參數請帶0
- * 若為新版格式時,則參數請帶1
- * @return MediaFormated
- */
- public String getMediaFormated() {
- return MediaFormated;
- }
- /**
- * 設定MediaFormated CSV格式,要下載的檔案格式
- * 若為舊版格式時,則參數請帶0
- * 若為新版格式時,則參數請帶1
- * @param mediaFormated
- */
- public void setMediaFormated(String mediaFormated) {
- MediaFormated = mediaFormated;
- }
- @Override
- public String toString() {
- return "TradeNoAioObj [MerchantID=" + MerchantID + ", DateType=" + DateType + ", BeginDate=" + BeginDate
- + ", EndDate=" + EndDate + ", PaymentType=" + PaymentType + ", PlatformStatus=" + PlatformStatus
- + ", PaymentStatus=" + PaymentStatus + ", AllocateStatus=" + AllocateStatus + ", MediaFormated="
- + MediaFormated + "]";
- }
-}
diff --git a/Payment/allPay/payment/integration/errorMsg/ErrorMessage.java b/Payment/allPay/payment/integration/errorMsg/ErrorMessage.java
deleted file mode 100644
index 1e4fed4..0000000
--- a/Payment/allPay/payment/integration/errorMsg/ErrorMessage.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package allPay.payment.integration.errorMsg;
-
-public class ErrorMessage {
- public final static String CHECK_MAC_VALUE_NOT_EQUALL_ERROR = "檢查碼驗證錯誤!";
-
- public final static String NO_SUCH_METHOD_EXCEPTION = "找不到此方法可呼叫!";
-
- public final static String MInfo_NOT_SETTING = "未設定相應基本資料導致無法取得MerchantID, HashKey, HashIV!";
-
- public final static String MInfo_UNDIFINED_TAG = "payment_conf設定擋MInfo放入未定義的參數";
-
- public final static String OperatingMode_ERROR = "payment_conf設定擋OperatingMode設定錯誤";
-
- public final static String COLUMN_RULE_ERROR = "填入非法值,請參閱文件規範";
-
- public final static String CANNOT_BE_EMPTY = "不能為空";
-
- public final static String HASHTABLE_WITHOUT_CHKMACVALUE = "此Hashtable並沒有CheckMacValue可比較";
-
- public final static String JSON_FORMAT_ERROR = "JSON格式錯誤導致放入JSONObject錯誤";
-
- public final static String GEN_CHECK_MAC_VALUE_FAIL = "產生檢查碼失敗";
-
- public final static String OBJ_MISSING_FIELD = "物件缺少屬性";
-
- public final static String CONF_FILE_ERROR = "設定檔格式錯誤或是設定擋放置路徑錯誤!";
-
- public final static String POST_ERROR = "POST失敗";
-
- public final static String UNDIFINED_OBJECT = "傳入非定義的物件導致錯誤!";
-
- public final static String CVS_TOTALAMT_ERROR = "金額必須介於27至2000之間";
-}
diff --git a/Payment/allPay/payment/integration/exception/AllPayException.java b/Payment/allPay/payment/integration/exception/AllPayException.java
deleted file mode 100644
index c1064c7..0000000
--- a/Payment/allPay/payment/integration/exception/AllPayException.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package allPay.payment.integration.exception;
-
-public class AllPayException extends Error{
- private static final long serialVersionUID = 1L;
- String NewExceptionMessage;
- public AllPayException(String s){
- this.NewExceptionMessage = s;
- }
- public String getNewExceptionMessage() {
- return NewExceptionMessage;
- }
- public void setNewExceptionMessage(String newExceptionMessage) {
- NewExceptionMessage = newExceptionMessage;
- }
- public void ShowExceptionMessage(){
-
- System.out.println("發生錯誤: " + getNewExceptionMessage());
- }
-
-}
diff --git a/Payment/allPay/payment/integration/verification/VerifyAioChargeback.java b/Payment/allPay/payment/integration/verification/VerifyAioChargeback.java
deleted file mode 100644
index b99a6c9..0000000
--- a/Payment/allPay/payment/integration/verification/VerifyAioChargeback.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package allPay.payment.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allPay.payment.integration.allPayOperator.PaymentVerifyBase;
-import allPay.payment.integration.domain.AioChargebackObj;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-public class VerifyAioChargeback extends PaymentVerifyBase{
- public VerifyAioChargeback(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("AioChargeback").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url == ""){
- throw new AllPayException(ErrorMessage.OperatingMode_ERROR);
- }
- return url;
- }
-
- public void verifyParams(AioChargebackObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("AioChargeback").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try {
- method = cls.getMethod("get"+tmpEle.getAttribute("name").substring(0, 1).toUpperCase()+tmpEle.getAttribute("name").substring(1), null);
- objValue = method.invoke(obj, null).toString();
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Payment/allPay/payment/integration/verification/VerifyAioCheckOut.java b/Payment/allPay/payment/integration/verification/VerifyAioCheckOut.java
deleted file mode 100644
index 9102adc..0000000
--- a/Payment/allPay/payment/integration/verification/VerifyAioCheckOut.java
+++ /dev/null
@@ -1,206 +0,0 @@
-package allPay.payment.integration.verification;
-
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allPay.payment.integration.allPayOperator.PaymentVerifyBase;
-import allPay.payment.integration.domain.InvoiceObj;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-public class VerifyAioCheckOut extends PaymentVerifyBase {
-
- public VerifyAioCheckOut(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("AioCheckOut").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url == ""){
- throw new AllPayException(ErrorMessage.OperatingMode_ERROR);
- }
- return url;
- }
-
- public void verifyParams(Object obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- List fieldNames = new ArrayList();
- for(Field field : cls.getDeclaredFields()){
- fieldNames.add(field.getName());
- }
- Element ele = (Element)doc.getElementsByTagName("AioCheckOut").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
- if(fieldNames.contains(tmpEle.getAttribute("name"))){
- try {
- method = cls.getMethod("get"+tmpEle.getAttribute("name").substring(0, 1).toUpperCase()+tmpEle.getAttribute("name").substring(1), null);
- objValue = method.invoke(obj, null).toString();
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- if(!(obj instanceof InvoiceObj))
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- } else{
- continue;
- }
- }
- }
-
- public void verifyInvoice(InvoiceObj obj){
- // 1. 比對特殊欄位值相依需求
- // a. [CarruerType]為 1 => CustomerID 不能為空
- if(obj.getCarruerType().equals("1")){
- if(obj.getCustomerID().isEmpty())
- throw new AllPayException("CustomerID cannot be empty when CarruerType is 1.");
- } else if(!obj.getCustomerID().isEmpty()){ // [CustomerID]不為空 => CarruerType 不能為空
- if(obj.getCarruerType().isEmpty())
- throw new AllPayException("CarruerType cannot be empty when CustomerID is not empty.");
- }
- // b. 列印註記[Print]為1 => CustomerName, CustomerAddr
- if(obj.getPrint().equals("1")){
- if(obj.getCustomerName().isEmpty() || obj.getCustomerAddr().isEmpty())
- throw new AllPayException("CustomerName and CustomerAddr cannot be empty when Print is 1.");
- if(!obj.getCustomerID().isEmpty())
- throw new AllPayException("Print cannot be 1 when CustomerID is not empty.");
- }
- // c. CustomerPhone和CustomerEmail至少一個有值
- if(obj.getCustomerPhone().isEmpty() && obj.getCustomerEmail().isEmpty())
- throw new AllPayException("CustomerPhone and CustomerEmail cannot both be empty.");
- // d. [TaxType]為 2 => ClearanceMark = 1 or 2
- if(obj.getTaxType().equals("2"))
- if(!obj.getClearanceMark().equals("1") && !obj.getClearanceMark().equals("2"))
- throw new AllPayException("ClearanceMark has to be 1 or 2 when TaxType is 2.");
- // e. 統一編號[CustomerIdentifier]有值時 => CarruerType != 1 or 2, *Donation = 2, print = 1
- if(!obj.getCustomerIdentifier().isEmpty()){
- if(obj.getCarruerType().equals("1") || obj.getCarruerType().equals("2"))
- throw new AllPayException("CarruerType cannot be 1 or 2 when CustomerIdentifier is given");
- if(!obj.getDonation().equals("2") || !obj.getPrint().equals("1"))
- throw new AllPayException("Print must be 1 and Donation must be 2 when CustomerIdentifier is given.");
- }
- // f. CarruerType有值時=> Print = 0
- if(!obj.getCarruerType().isEmpty())
- if(obj.getPrint().equals("1"))
- throw new AllPayException("Print must be 0 when CarruerType is given.");
- // [CarruerType]為'' or 1 時 => CarruerNum = '', [CarruerType]為 2, CarruerNum = 固定長度為 16 且格式為 2 碼大小寫字母加上 14 碼數字。 [CarruerType]為 3 ,帶固定長度為 8 且格式為 1 碼斜線「/」加上由 7 碼數字及大小寫字母組成
- if(obj.getCarruerType().isEmpty() || obj.getCarruerType().equals("1")){
- if(!obj.getCarruerNum().isEmpty())
- throw new AllPayException("CarruerNum must be empty when CarruerType is empty or 1.");
- } else if(obj.getCarruerType().equals("2")){
- Pattern r = Pattern.compile("[A-Za-z]{2}[0-9]{14}");
- Matcher m = r.matcher(obj.getCarruerNum());
- if(!m.find())
- throw new AllPayException("CarruerNum must be 2 alphabets and 14 numbers when CarruerType is 2.");
- } else if(obj.getCarruerType().equals("3")){
- Pattern r = Pattern.compile("^\\/[A-Za-z0-9\\s+-]{7}$");
- Matcher m = r.matcher(obj.getCarruerNum());
- if(!m.find())
- throw new AllPayException("CarruerNum must start with / followed by 7 alphabet and number characters when CarruerType is 3.");
- } else
- throw new AllPayException("Unexpected Value in CarruerType");
- // Donation = 1 => LoveCode不能為空, print = 0
- if(obj.getDonation().equals("1")){
- if(obj.getLoveCode().isEmpty())
- throw new AllPayException("LoveCode cannot be empty when Donation is 1.");
- if(!obj.getPrint().equals("0"))
- throw new AllPayException("Print must be 0 when Donation is 1.");
- }
- // 2. 比對商品名稱,數量,單位,價格,tax項目數量是否一致
- if(obj.getInvoiceItemName().isEmpty())
- throw new AllPayException("InvoiceItemName cannot be empty.");
- else if(obj.getInvoiceItemCount().isEmpty())
- throw new AllPayException("InvoiceItemCount cannot be empty.");
- else if(obj.getInvoiceItemWord().isEmpty())
- throw new AllPayException("InvoiceItemWord cannot be empty.");
- else if(obj.getInvoiceItemPrice().isEmpty())
- throw new AllPayException("InvoiceItemPrice cannot be empty.");
- else if(obj.getInvoiceItemTaxType().isEmpty())
- throw new AllPayException("InvoiceItemTaxType cannot be empty.");
- // 商品名稱含有管線 => 認為是多樣商品 *InvoiceItemName, *InvoiceItemCount ,*InvoiceItemWord, *InvoiceItemPrice InvoiceItemTaxType逐一用管線分割,計算數量後與第一個比對
- if(obj.getInvoiceItemName().contains("|")){
- int itemCount = obj.getInvoiceItemName().split("|").length;
- int paramCount = 0;
- Pattern r = Pattern.compile("(\\|\\||^\\||\\|$)");
- Matcher invCount = r.matcher(obj.getInvoiceItemCount());
- Matcher invWord = r.matcher(obj.getInvoiceItemWord());
- Matcher invPrice = r.matcher(obj.getInvoiceItemPrice());
- Matcher invType = r.matcher(obj.getInvoiceItemTaxType());
- if(invCount.find()){
- throw new AllPayException("InvoiceItemCount contains empty value.");
- } else{
- paramCount = obj.getInvoiceItemCount().split("\\|").length;
- if(itemCount != paramCount)
- throw new AllPayException("Count of item info InvoiceItemCount(" + paramCount + ") not match item count from InvoiceItemName(" + itemCount + ")");
- }
- if(invWord.find()){
- throw new AllPayException("InvoiceItemWord contains empty value.");
- } else{
- paramCount = obj.getInvoiceItemWord().split("\\|").length;
- if(itemCount != paramCount)
- throw new AllPayException("Count of item info InvoiceItemWord(" + paramCount + ") not match item count from InvoiceItemName(" + itemCount + ")");
- }
- if(invPrice.find()){
- throw new AllPayException("InvoiceItemPrice contains empty value.");
- } else{
- paramCount = obj.getInvoiceItemPrice().split("\\|").length;
- if(itemCount != paramCount)
- throw new AllPayException("Count of item info InvoiceItemPrice(" + paramCount + ") not match item count from InvoiceItemName(" + itemCount + ")");
- }
- if(invType.find()){
- throw new AllPayException("InvoiceItemTaxType contains empty value.");
- } else{
- paramCount = obj.getInvoiceItemTaxType().split("\\|").length;
- if(itemCount != paramCount)
- throw new AllPayException("Count of item info InvoiceItemTaxType(" + paramCount + ") not match item count from InvoiceItemName(" + itemCount + ")");
- }
- // 課稅類別[TaxType] = 9 時 => InvoiceItemTaxType 能含有1,2 3(and at least contains one 1 and other)
- String[] itemTax = obj.getInvoiceItemTaxType().split("\\|");
- for(String tax : itemTax){
- if(tax.equals("1") || tax.equals("2") || tax.equals("3"))
- continue;
- else
- throw new AllPayException("Ilegal InvoiceItemTaxType: " + tax);
- }
- if(obj.getTaxType().equals("9")){
- if(!itemTax.toString().contains("1"))
- throw new AllPayException("InvoiceItemTaxType must contain at least one 1.");
- else
- if(!itemTax.toString().contains("2") && !itemTax.toString().contains("3"))
- throw new AllPayException("InvoiceItemTaxType cannot be all 1 when TaxType is 9.");
- if(itemTax.toString().contains("2") && itemTax.toString().contains("3"))
- throw new AllPayException("InvoiceItemTaxType cannot contain 2 and 3 at the same time.");
- }
- } else{
- // 沒有管線 => 逐一檢查後4項有無管線
- if(obj.getInvoiceItemCount().contains("|"))
- throw new AllPayException("Item info InvoiceItemCount contains pipeline delimiter but there's only one item in param InvoiceItemName.");
- else if(obj.getInvoiceItemWord().contains("|"))
- throw new AllPayException("Item info InvoiceItemWord contains pipeline delimiter but there's only one item in param InvoiceItemName.");
- else if(obj.getInvoiceItemPrice().contains("|"))
- throw new AllPayException("Item info InvoiceItemPrice contains pipeline delimiter but there's only one item in param InvoiceItemName.");
- else if(obj.getInvoiceItemTaxType().contains("|"))
- throw new AllPayException("Item info InvoiceItemTaxType contains pipeline delimiter but there's only one item in param InvoiceItemName.");
- }
- // 4 比對所有欄位Pattern
- verifyParams(obj);
- }
-}
diff --git a/Payment/allPay/payment/integration/verification/VerifyCapture.java b/Payment/allPay/payment/integration/verification/VerifyCapture.java
deleted file mode 100644
index e9e66a9..0000000
--- a/Payment/allPay/payment/integration/verification/VerifyCapture.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package allPay.payment.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allPay.payment.integration.allPayOperator.PaymentVerifyBase;
-import allPay.payment.integration.domain.CaptureObj;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-public class VerifyCapture extends PaymentVerifyBase{
- public VerifyCapture(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("Capture").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url.isEmpty()){
- throw new AllPayException(ErrorMessage.OperatingMode_ERROR);
- }
- return url;
- }
-
- public void verifyParams(CaptureObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("Capture").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try {
- method = cls.getMethod("get"+tmpEle.getAttribute("name").substring(0, 1).toUpperCase()+tmpEle.getAttribute("name").substring(1), null);
- objValue = method.invoke(obj, null).toString();
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Payment/allPay/payment/integration/verification/VerifyDoAction.java b/Payment/allPay/payment/integration/verification/VerifyDoAction.java
deleted file mode 100644
index ca9ac3b..0000000
--- a/Payment/allPay/payment/integration/verification/VerifyDoAction.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package allPay.payment.integration.verification;
-
-import java.lang.reflect.Method;
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allPay.payment.integration.allPayOperator.PaymentVerifyBase;
-import allPay.payment.integration.domain.DoActionObj;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-public class VerifyDoAction extends PaymentVerifyBase {
-
- public VerifyDoAction(){
- super();
-
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("DoAction").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url == ""){
- throw new AllPayException(ErrorMessage.OperatingMode_ERROR);
- }
- return url;
- }
-
- public void verifyParams(DoActionObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("DoAction").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try {
- method = cls.getMethod("get"+tmpEle.getAttribute("name").substring(0, 1).toUpperCase()+tmpEle.getAttribute("name").substring(1), null);
- objValue = method.invoke(obj, null).toString();
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Payment/allPay/payment/integration/verification/VerifyFundingReconDetail.java b/Payment/allPay/payment/integration/verification/VerifyFundingReconDetail.java
deleted file mode 100644
index 9eac031..0000000
--- a/Payment/allPay/payment/integration/verification/VerifyFundingReconDetail.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package allPay.payment.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allPay.payment.integration.allPayOperator.PaymentVerifyBase;
-import allPay.payment.integration.domain.FundingReconDetailObj;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-public class VerifyFundingReconDetail extends PaymentVerifyBase{
- public VerifyFundingReconDetail(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("FundingReconDetail").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url == ""){
- throw new AllPayException(ErrorMessage.OperatingMode_ERROR);
- }
- return url;
- }
-
- public void verifyParams(FundingReconDetailObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("FundingReconDetail").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
-
- try {
- method = cls.getMethod("get"+tmpEle.getAttribute("name").substring(0, 1).toUpperCase()+tmpEle.getAttribute("name").substring(1), null);
- objValue = method.invoke(obj, null).toString();
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Payment/allPay/payment/integration/verification/VerifyQueryCreditTrade.java b/Payment/allPay/payment/integration/verification/VerifyQueryCreditTrade.java
deleted file mode 100644
index 489065d..0000000
--- a/Payment/allPay/payment/integration/verification/VerifyQueryCreditTrade.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package allPay.payment.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allPay.payment.integration.allPayOperator.PaymentVerifyBase;
-import allPay.payment.integration.domain.QueryCreditCardPeriodInfoObj;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-public class VerifyQueryCreditTrade extends PaymentVerifyBase {
-
- public VerifyQueryCreditTrade(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("QueryCreditCardPeriodInfo").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url == ""){
- throw new AllPayException(ErrorMessage.OperatingMode_ERROR);
- }
- return url;
- }
-
- public void verifyParams(QueryCreditCardPeriodInfoObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("QueryCreditCardPeriodInfo").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
- try {
- method = cls.getMethod("get"+tmpEle.getAttribute("name").substring(0, 1).toUpperCase()+tmpEle.getAttribute("name").substring(1), null);
- objValue = method.invoke(obj, null).toString();
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
-
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Payment/allPay/payment/integration/verification/VerifyQueryTrade.java b/Payment/allPay/payment/integration/verification/VerifyQueryTrade.java
deleted file mode 100644
index 31fbc51..0000000
--- a/Payment/allPay/payment/integration/verification/VerifyQueryTrade.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package allPay.payment.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allPay.payment.integration.allPayOperator.PaymentVerifyBase;
-import allPay.payment.integration.domain.QueryTradeObj;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-public class VerifyQueryTrade extends PaymentVerifyBase{
- public VerifyQueryTrade(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("QueryTradeV2").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url == ""){
- throw new AllPayException(ErrorMessage.OperatingMode_ERROR);
- }
- return url;
- }
-
- public void verifyParams(QueryTradeObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("QueryTradeV2").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
- try {
- method = cls.getMethod("get"+tmpEle.getAttribute("name").substring(0, 1).toUpperCase()+tmpEle.getAttribute("name").substring(1), null);
- objValue = method.invoke(obj, null).toString();
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Payment/allPay/payment/integration/verification/VerifyQueryTradeInfo.java b/Payment/allPay/payment/integration/verification/VerifyQueryTradeInfo.java
deleted file mode 100644
index 3b8be56..0000000
--- a/Payment/allPay/payment/integration/verification/VerifyQueryTradeInfo.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package allPay.payment.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allPay.payment.integration.allPayOperator.PaymentVerifyBase;
-import allPay.payment.integration.domain.QueryTradeInfoObj;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-public class VerifyQueryTradeInfo extends PaymentVerifyBase {
-
- public VerifyQueryTradeInfo(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("QueryTradeInfo").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url == ""){
- throw new AllPayException(ErrorMessage.OperatingMode_ERROR);
- }
- return url;
- }
-
- public void verifyParams(QueryTradeInfoObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("QueryTradeInfo").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
- try {
- method = cls.getMethod("get"+tmpEle.getAttribute("name").substring(0, 1).toUpperCase()+tmpEle.getAttribute("name").substring(1), null);
- objValue = method.invoke(obj, null).toString();
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Payment/allPay/payment/integration/verification/VerifyTradeNoAio.java b/Payment/allPay/payment/integration/verification/VerifyTradeNoAio.java
deleted file mode 100644
index 7577adc..0000000
--- a/Payment/allPay/payment/integration/verification/VerifyTradeNoAio.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package allPay.payment.integration.verification;
-
-import java.lang.reflect.Method;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-import allPay.payment.integration.allPayOperator.PaymentVerifyBase;
-import allPay.payment.integration.domain.TradeNoAioObj;
-import allPay.payment.integration.errorMsg.ErrorMessage;
-import allPay.payment.integration.exception.AllPayException;
-
-public class VerifyTradeNoAio extends PaymentVerifyBase{
- public VerifyTradeNoAio(){
- super();
- }
-
- public String getAPIUrl(String mode){
- Element ele = (Element)doc.getElementsByTagName("TradeNoAio").item(0);
- String url = "";
- NodeList nodeList = ele.getElementsByTagName("url");
- for(int i = 0; i < nodeList.getLength(); i++){
- ele = (Element)nodeList.item(i);
- if(ele.getAttribute("type").equalsIgnoreCase(mode)){
- url = ele.getTextContent();
- break;
- }
- }
- if(url == ""){
- throw new AllPayException(ErrorMessage.OperatingMode_ERROR);
- }
- return url;
- }
-
- public void verifyParams(TradeNoAioObj obj){
- Class> cls = obj.getClass();
- Method method;
- String objValue;
- Element ele = (Element)doc.getElementsByTagName("TradeNoAio").item(0);
- NodeList nodeList = ele.getElementsByTagName("param");
- for(int i = 0; i < nodeList.getLength(); i++){
- Element tmpEle = (Element)nodeList.item(i);
- try {
- method = cls.getMethod("get"+tmpEle.getAttribute("name"), null);
- objValue = method.invoke(obj, null).toString();
- } catch (Exception e) {
- throw new AllPayException(ErrorMessage.OBJ_MISSING_FIELD);
- }
- requireCheck(tmpEle.getAttribute("name"), objValue, tmpEle.getAttribute("require").toString());
- valueCheck(tmpEle.getAttribute("type"), objValue, tmpEle);
- }
- }
-}
diff --git a/Payment/example/ExampleAllInOne.java b/Payment/example/ExampleAllInOne.java
deleted file mode 100644
index b3b68c3..0000000
--- a/Payment/example/ExampleAllInOne.java
+++ /dev/null
@@ -1,299 +0,0 @@
-package example;
-
-import java.util.Hashtable;
-
-import allPay.payment.integration.AllInOne;
-import allPay.payment.integration.domain.AioChargebackObj;
-import allPay.payment.integration.domain.AioCheckOutALL;
-import allPay.payment.integration.domain.AioCheckOutATM;
-import allPay.payment.integration.domain.AioCheckOutCVS;
-import allPay.payment.integration.domain.AioCheckOutDevide;
-import allPay.payment.integration.domain.AioCheckOutOneTime;
-import allPay.payment.integration.domain.AioCheckOutPeriod;
-import allPay.payment.integration.domain.AioCheckOutTenpay;
-import allPay.payment.integration.domain.AioCheckOutTopUpUsed;
-import allPay.payment.integration.domain.AioCheckOutWebATM;
-import allPay.payment.integration.domain.CaptureObj;
-import allPay.payment.integration.domain.DoActionObj;
-import allPay.payment.integration.domain.FundingReconDetailObj;
-import allPay.payment.integration.domain.InvoiceObj;
-import allPay.payment.integration.domain.QueryCreditCardPeriodInfoObj;
-import allPay.payment.integration.domain.QueryTradeInfoObj;
-import allPay.payment.integration.domain.QueryTradeObj;
-import allPay.payment.integration.domain.TradeNoAioObj;
-import allPay.payment.integration.exception.AllPayException;
-
-public class ExampleAllInOne {
- public static AllInOne all;
- public static void main(String[] args) {
- initial();
- System.out.println("compare CheckMacValue method testing result: " + cmprChkMacValue());
- System.out.println("doAction: " + postDoAction());
- System.out.println("queryTradeInfo: " + postQueryTradeInfo());
- System.out.println("queryCreditCardPeriodInfo: " + postQueryCreditCardPeriodInfo());
- System.out.println("capture: " +postCapture());
- System.out.println("queryTrade: " + postQueryTrade());
- System.out.println("tradeNoAio: " + postTradeNoAio());
- System.out.println("fundingReconDetail: " + postFundingReconDetail());
- System.out.println("aioChargeback: " + postAioChargeback());
- System.out.println("aioCheckOutALL: " + genAioCheckOutALL());
- System.out.println("aioCheckOutATM: " + genAioCheckOutATM());
- System.out.println("aioCheckOutCVS: " + genAioCheckOutCVS());
- System.out.println("aioCheckOutDevide: " + genAioCheckOutDevide());
- System.out.println("aioCheckOutOneTime: " + genAioCheckOutOneTime());
- System.out.println("aioCheckOutPeriod: " + genAioCheckOutPeriod());
- System.out.println("aioCheckOutWebATM: " + genAioCheckOutWebATM());
- System.out.println("aioCheckOutTenpay: " + genAioCheckOutTenpay());
- System.out.println("aioCheckOutTopUpUsed: " + genAioCheckOutTopUpUsed());
- }
- private static void initial(){
- all = new AllInOne("");
- }
-
- public static boolean cmprChkMacValue(){
- Hashtable dict = new Hashtable();
- dict.put("MerchantID", "2000132");
- dict.put("CheckMacValue", "50BE3989953C1734E32DD18EB23698241E035F9CBCAC74371CCCF09E0E15BD61");
- return all.compareCheckMacValue(dict);
- }
-
- public static String postDoAction(){
- DoActionObj obj = new DoActionObj();
- obj.setMerchantTradeNo("b0fac40057364c0894b");
- obj.setTotalAmount("100");
- obj.setTradeNo("16054565489");
- obj.setAction("C");
- String result = "";
- try{
- result = all.doAction(obj);
- } catch(AllPayException e){
- // to do whatever you need
- e.ShowExceptionMessage();
- }
- return result;
- }
-
- public static String postFundingReconDetail(){
- FundingReconDetailObj obj = new FundingReconDetailObj();
- obj.setPayDateType("close");
- obj.setStartDate("2017-03-03");
- obj.setEndDate("2017-03-03");
- return all.fundingReconDetail(obj);
- }
-
- public static String postAioChargeback(){
- AioChargebackObj obj = new AioChargebackObj();
- obj.setMerchantTradeNo("b0fac40057364c0894b");
- obj.setTradeNo("16054565489");
- obj.setChargeBackTotalAmount("100");
- return all.aioChargeback(obj);
- }
-
- public static String postCapture(){
- CaptureObj obj = new CaptureObj();
- obj.setMerchantTradeNo("testCompany0003");
- obj.setCaptureAMT("100");
- obj.setUserRefundAMT("0");
- String result = "";
- try{
- result = all.capture(obj);
- } catch(AllPayException e){
- e.ShowExceptionMessage();
- }
- return result;
- }
-
- public static String postQueryTrade(){
- QueryTradeObj obj = new QueryTradeObj();
- obj.setCreditRefundId("10123456");
- obj.setCreditAmount("100");
- obj.setCreditCheckCode("59997889");
- return all.queryTrade(obj);
- }
-
- public static String postQueryTradeInfo(){
- QueryTradeInfoObj obj = new QueryTradeInfoObj();
- obj.setMerchantTradeNo("fdgfdhdhfghgf");
- return all.queryTradeInfo(obj);
- }
-
- public static String postTradeNoAio(){
- TradeNoAioObj obj = new TradeNoAioObj();
- obj.setDateType("6");
- obj.setBeginDate("2017-03-03");
- obj.setEndDate("2017-03-03");
- obj.setMediaFormated("1");
- return all.tradeNoAio(obj);
- }
-
- public static String postQueryCreditCardPeriodInfo(){
- QueryCreditCardPeriodInfoObj obj = new QueryCreditCardPeriodInfoObj();
- obj.setMerchantTradeNo("5a093fdb504743e2863");
- return all.queryCreditCardPeriodInfo(obj);
- }
-
- public static String genAioCheckOutWebATM(){
- AioCheckOutWebATM obj = new AioCheckOutWebATM();
- obj.setMerchantTradeNo("testCompany0003");
- obj.setMerchantTradeDate("2017/01/01 08:05:08");
- obj.setTotalAmount("100");
- obj.setTradeDesc("test Description");
- obj.setItemName("Test Item");
- obj.setReturnURL("http://211.23.128.214:5000");
- obj.setNeedExtraPaidInfo("N");
- obj.setHoldTradeAMT("0");
- obj.setUseRedeem("N");
- String form = all.aioCheckOut(obj, null);
- return form;
- }
-
- public static String genAioCheckOutALL(){
- AioCheckOutALL obj = new AioCheckOutALL();
- obj.setMerchantTradeNo("testCompany0004");
- obj.setMerchantTradeDate("2017/01/01 08:05:23");
- obj.setTotalAmount("50");
- obj.setTradeDesc("test Description");
- obj.setItemName("TestItem");
- obj.setReturnURL("http://211.23.128.214:5000");
- obj.setNeedExtraPaidInfo("N");
- obj.setHoldTradeAMT("0");
- obj.setUseRedeem("N");
- String form = all.aioCheckOut(obj, null);
- return form;
- }
-
- public static String genAioCheckOutATM(){
- AioCheckOutATM obj = new AioCheckOutATM();
- obj.setMerchantTradeNo("testCompany0005");
- obj.setMerchantTradeDate("2017/01/01 08:05:23");
- obj.setTotalAmount("50");
- obj.setTradeDesc("test Description");
- obj.setItemName("TestItem");
- obj.setReturnURL("http://211.23.128.214:5000");
- obj.setNeedExtraPaidInfo("N");
- obj.setHoldTradeAMT("0");
- obj.setUseRedeem("N");
- obj.setExpireDate("6");
- String form = all.aioCheckOut(obj, null);
- return form;
- }
-
- public static String genAioCheckOutCVS(){
- AioCheckOutCVS obj = new AioCheckOutCVS();
- InvoiceObj invoice = new InvoiceObj();
- obj.setMerchantTradeNo("testCompany0007");
- obj.setMerchantTradeDate("2017/01/01 08:05:23");
- obj.setTotalAmount("50");
- obj.setTradeDesc("test Description");
- obj.setItemName("TestItem");
- obj.setReturnURL("http://211.23.128.214:5000");
- obj.setNeedExtraPaidInfo("N");
- obj.setHoldTradeAMT("0");
- obj.setUseRedeem("N");
- obj.setStoreExpireDate("3");
-
- invoice.setRelateNumber("asdfghhb");
- invoice.setCustomerID("123456");
- invoice.setCarruerType("1");
- invoice.setTaxType("1");
- invoice.setCarruerNum("");
- invoice.setDonation("2");
- invoice.setLoveCode("X123456");
- invoice.setPrint("0");
- invoice.setCustomerName("Mark");
- invoice.setCustomerAddr("台北");
- invoice.setCustomerPhone("0911429215");
- invoice.setDelayDay("1");
- invoice.setInvType("07");
- invoice.setInvoiceItemName("電視");
- invoice.setInvoiceItemCount("1");
- invoice.setInvoiceItemWord("台");
- invoice.setInvoiceItemPrice("50");
- invoice.setInvoiceItemTaxType("1");
- String form = all.aioCheckOut(obj, invoice);
- return form;
- }
-
- public static String genAioCheckOutDevide(){
- AioCheckOutDevide obj = new AioCheckOutDevide();
- obj.setMerchantTradeNo("testCompany0007");
- obj.setMerchantTradeDate("2017/01/01 08:05:23");
- obj.setTotalAmount("50");
- obj.setTradeDesc("test Description");
- obj.setItemName("TestItem");
- obj.setReturnURL("http://211.23.128.214:5000");
- obj.setNeedExtraPaidInfo("N");
- obj.setHoldTradeAMT("0");
- obj.setUseRedeem("N");
- obj.setCreditInstallment("3");
- obj.setInstallmentAmount("10");
- String form = all.aioCheckOut(obj, null);
- return form;
- }
-
- public static String genAioCheckOutOneTime(){
- AioCheckOutOneTime obj = new AioCheckOutOneTime();
- obj.setMerchantTradeNo("testCompany0008");
- obj.setMerchantTradeDate("2017/01/01 08:05:23");
- obj.setTotalAmount("50");
- obj.setTradeDesc("test Description");
- obj.setItemName("TestItem");
- obj.setReturnURL("http://211.23.128.214:5000");
- obj.setNeedExtraPaidInfo("N");
- obj.setHoldTradeAMT("0");
- obj.setUseRedeem("N");
- obj.setRedeem("Y");
- String form = all.aioCheckOut(obj, null);
- return form;
- }
-
- public static String genAioCheckOutPeriod(){
- AioCheckOutPeriod obj = new AioCheckOutPeriod();
- obj.setMerchantTradeNo("testCompany0009");
- obj.setMerchantTradeDate("2017/01/01 08:05:23");
- obj.setTotalAmount("50");
- obj.setTradeDesc("test Description");
- obj.setItemName("TestItem");
- obj.setReturnURL("http://211.23.128.214:5000");
- obj.setNeedExtraPaidInfo("N");
- obj.setHoldTradeAMT("0");
- obj.setUseRedeem("N");
- obj.setPeriodAmount("50");
- obj.setPeriodType("D");
- obj.setFrequency("1");
- obj.setExecTimes("12");
- String form = all.aioCheckOut(obj, null);
- return form;
- }
-
- public static String genAioCheckOutTenpay(){
- AioCheckOutTenpay obj = new AioCheckOutTenpay();
- obj.setMerchantTradeNo("testCompany0010");
- obj.setMerchantTradeDate("2017/01/01 08:05:23");
- obj.setTotalAmount("50");
- obj.setTradeDesc("test Description");
- obj.setItemName("TestItem");
- obj.setReturnURL("http://211.23.128.214:5000");
- obj.setNeedExtraPaidInfo("N");
- obj.setHoldTradeAMT("0");
- obj.setUseRedeem("N");
- obj.setExpireTime("2017/02/20 10:04:04");
- String form = all.aioCheckOut(obj, null);
- return form;
- }
-
- public static String genAioCheckOutTopUpUsed(){
- AioCheckOutTopUpUsed obj = new AioCheckOutTopUpUsed();
- obj.setMerchantTradeNo("sdggrerrr");
- obj.setMerchantTradeDate("2017/01/01 08:04:04");
- obj.setTotalAmount("50");
- obj.setTradeDesc("test");
- obj.setItemName("name");
- obj.setReturnURL("http://211.23.128.214:5000");
- obj.setNeedExtraPaidInfo("N");
- obj.setHoldTradeAMT("0");
- obj.setUseRedeem("N");
- String form = all.aioCheckOut(obj, null);
- return form;
- }
-}
diff --git a/Payment/jars/javax.servlet-3.0.0.v201112011016.jar b/Payment/jars/javax.servlet-3.0.0.v201112011016.jar
deleted file mode 100644
index b135409..0000000
Binary files a/Payment/jars/javax.servlet-3.0.0.v201112011016.jar and /dev/null differ
diff --git a/Payment/jars/log4j.jar b/Payment/jars/log4j.jar
deleted file mode 100644
index 6251307..0000000
Binary files a/Payment/jars/log4j.jar and /dev/null differ
diff --git a/Payment/payment_conf.xml b/Payment/payment_conf.xml
deleted file mode 100644
index 33c2100..0000000
--- a/Payment/payment_conf.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
- Test
- Stage_Account
- N
-
-
-
-
-
-
-
-
- 2000132
- 5294y06JbISpM5x9
- v77hoKGq4kWxNNIS
-
-
-
-
- Credit
- WebATM
- ATM
- CVS
- Tenpay
- TopUpUsed
-
-
-
\ No newline at end of file
diff --git a/Payment/sample/SampleCode.java b/Payment/sample/SampleCode.java
deleted file mode 100644
index 44a6241..0000000
--- a/Payment/sample/SampleCode.java
+++ /dev/null
@@ -1,147 +0,0 @@
-package sample;
-
-import allPay.payment.integration.AllInOne;
-import allPay.payment.integration.domain.AioChargebackObj;
-import allPay.payment.integration.domain.AioCheckOutALL;
-import allPay.payment.integration.domain.AioCheckOutPeriod;
-import allPay.payment.integration.domain.CaptureObj;
-import allPay.payment.integration.domain.DoActionObj;
-import allPay.payment.integration.domain.InvoiceObj;
-import allPay.payment.integration.domain.QueryCreditCardPeriodInfoObj;
-
-/**
- * 此為參考用的範例程式碼,並不完整,請勿直接套用在您的商業環境,以免出錯
- * @author mark.chiu
- *
- */
-public class SampleCode {
- private AllInOne all;
-
- public void initial(){
- //此步驟為透過AllInOne建構子來實體化此類別,順便輸入log4j.properties的位置路徑
- //若不需要產生log檔,可直接在log4j.properties更改設定,或是將此步驟所輸入的字串改為""
- all = new AllInOne("XXX/OOO");
- }
-
- public String sampleAioALL(){
- initial();
- //實體化出所需要的domain物件
- AioCheckOutALL aio = new AioCheckOutALL();
- //商家後台自行產生不重複的流水號,或是UUID隨機產生不重複的廠商交易編號(記得把'-'濾掉,僅接受英文字與數字)
- aio.setMerchantTradeNo("XXX");
- //商家後台填入會員交易時間(不一定是當下,依據需求自行判斷填入)
- aio.setMerchantTradeDate("xxxx/xx/xx xx:xx:xx");
-
- //建議從後端DB撈取資料填入,勿從前端輸入以免遭竄改
- aio.setTotalAmount("xx");
- aio.setTradeDesc("XX");
- aio.setItemName("XX");
-
- //可以從前端使用者填入資料
- aio.setRemark("XX");
- aio.setUseRedeem("XX");
-
- //以上資料不完全,僅供參考如何放入資料
-
-
- //呼叫AllInOne中相應的method,產生html form字串(含JavaScript Submit)之後再放入前端即可
- //此筆交易模擬不開發票,InvoiceObj請帶null
- String html = all.aioCheckOut(aio, null);
- return html;
- }
-
- public String sampleAioPeriod(){
- initial();
- //實體化出所需要的domain物件
- AioCheckOutPeriod aio = new AioCheckOutPeriod();
- //商家後台自行產生不重複的流水號,或是UUID隨機產生不重複的廠商交易編號(記得把'-'濾掉,僅接受英文字與數字)
- aio.setMerchantTradeNo("XXX");
- //商家後台填入會員交易時間(不一定是當下,依據需求自行判斷填入)
- aio.setMerchantTradeDate("xxxx/xx/xx xx:xx:xx");
-
- //建議從後端DB撈取資料填入,勿從前端輸入以免遭竄改
- aio.setTotalAmount("xx");
- aio.setTradeDesc("XX");
- aio.setItemName("XX");
-
- //可以從前端使用者填入資料
- aio.setRemark("XX");
- aio.setUseRedeem("XX");
- //消費者可選擇欲購買的期數(後台可能要驗證前端所帶入的是否與後端的選項相同以防舞弊)
- aio.setExecTimes("XX");
- //後端設定
- aio.setPeriodType("XX");
- aio.setFrequency("XX");
- aio.setPeriodAmount("XX");
-
- //以上資料不完全,僅供參考如何放入資料
-
- //若顧客需要電子發票
- InvoiceObj invoice = new InvoiceObj();
- //使用者填入
- invoice.setCustomerName("XX");
- invoice.setCustomerAddr("XX");
- invoice.setCustomerEmail("XX");
- invoice.setCustomerIdentifier("XX");
-
- //其餘參數都是從後端系統自動幫他設定
- invoice.setRelateNumber("XX");
- //商品資訊請勿從前端頁面取得,請透過商品ID去從後端撈取商品資訊以免遭從前方竄改
- invoice.setInvoiceItemName("XX");
-
- //呼叫AllInOne中相應的method,產生html form字串(含JavaScript Submit)之後再放入前端即可
- //此筆交易模擬開發票,請帶入InvoiceObj
- String html = all.aioCheckOut(aio, invoice);
- return html;
- }
-
- public String sampleQueryCreditCardPeriodInfo(){
- //Query的功能都類似,在此以查詢定期定額訂單來做範例
- QueryCreditCardPeriodInfoObj obj = new QueryCreditCardPeriodInfoObj();
- //只有會員交易編號要填入
- obj.setMerchantTradeNo("XX");
- String result = all.queryCreditCardPeriodInfo(obj);
- return result;
- }
-
- public String sampleCapture(){
- initial();
- //會員申請撥款/退款範例
- CaptureObj obj = new CaptureObj();
- obj.setMerchantTradeNo("XX");
- //撥退款金額要小心保護
- obj.setCaptureAMT("XX");
- obj.setUserRefundAMT("XX");
- //調整平台商手續費的權限需要被保護
- obj.setUpdatePlatformChargeFee("XX");
- obj.setPlatformChargeFee("XX");
- obj.setRemark("XX");
- String result = all.capture(obj);
- return result;
- }
-
- public String sampleDoAction(){
- //信用卡關帳、退刷、取消、放棄、 無法在Stage環境模擬
- initial();
- DoActionObj obj = new DoActionObj();
- obj.setMerchantTradeNo("XX");
- obj.setTradeNo("XX");
- //執行動作需要有權限控管
- obj.setAction("XX");
- obj.setTotalAmount("XX");
- String result = all.doAction(obj);
- return result;
- }
-
- public String sampleChargeback(){
- //會員通知退款 需要設定權限此功能方便商家管理
- initial();
- AioChargebackObj obj = new AioChargebackObj();
- obj.setMerchantTradeNo("XX");
- obj.setTradeNo("XX");
- obj.setChargeBackTotalAmount("XX");
- obj.setRemark("XX");
- String result = all.aioChargeback(obj);
- return result;
- }
-}
diff --git a/Payment/spring demo simple project/allpayAioSpringDemo.war b/Payment/spring demo simple project/allpayAioSpringDemo.war
deleted file mode 100644
index 0cbec7e..0000000
Binary files a/Payment/spring demo simple project/allpayAioSpringDemo.war and /dev/null differ
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..e640c5c
--- /dev/null
+++ b/README.md
@@ -0,0 +1,3 @@
+# Java
+甇隞撖軻llPay 冽嫣(All In One)瘚隞 Java
+ java SDK 撌脫湔啣唳啁蝬脣,隢貧ttps://github.com/O-pay 敺,雓