|
|
|
|
@ -0,0 +1,572 @@ |
|
|
|
|
using System; |
|
|
|
|
using System.IO; |
|
|
|
|
using System.Text; |
|
|
|
|
using System.Windows; |
|
|
|
|
using System.Windows.Controls; |
|
|
|
|
using System.Threading; |
|
|
|
|
using System.Security.Cryptography; |
|
|
|
|
using System.Windows.Threading; |
|
|
|
|
using n5coredll; |
|
|
|
|
|
|
|
|
|
namespace ECR_N5_DLL_TestUI |
|
|
|
|
{ |
|
|
|
|
public partial class MainWindow : Window |
|
|
|
|
{ |
|
|
|
|
private string portName = "COM5"; |
|
|
|
|
private string baudRate = "9600"; |
|
|
|
|
private string dataBits = "8"; |
|
|
|
|
private string stopBits = "One"; |
|
|
|
|
private string parity = "None"; |
|
|
|
|
private string timeOut = "210000"; |
|
|
|
|
|
|
|
|
|
private string thisEvent; |
|
|
|
|
|
|
|
|
|
public bool addLogFlag = true; |
|
|
|
|
|
|
|
|
|
public string currEventName = null; |
|
|
|
|
public string jsonResultByThead = null; |
|
|
|
|
public string requestStrByThead = null; |
|
|
|
|
public string showResultStr = null; |
|
|
|
|
public string txnAmtTextBoxValue = null; |
|
|
|
|
public string qrValueTextBoxValue = null; |
|
|
|
|
public string ecrTxnIdTextBoxValue = null; |
|
|
|
|
public string paymentTypeTextBoxValue = null; |
|
|
|
|
public string authCodeTextBoxValue = null; |
|
|
|
|
public string batchIdTextBoxValue = null; |
|
|
|
|
public string settleDateTextBoxValue = null; |
|
|
|
|
public string dateRangeTextBoxValue = null; |
|
|
|
|
public string billTypeTextBoxValue = null; |
|
|
|
|
public string logpathTextBoxValue = null; |
|
|
|
|
private n5coredll.N5Core n5Core = null; |
|
|
|
|
private bool n5CoreInitSuccess = false; |
|
|
|
|
|
|
|
|
|
private string txnIdForSale = null; |
|
|
|
|
private string txnIdForRefund = null; |
|
|
|
|
private string txnIdForPreAuth = null; |
|
|
|
|
private string txnIdForOffline = null; |
|
|
|
|
private string txnIdForAdjust = null; |
|
|
|
|
|
|
|
|
|
private string saleRequestMsg = null; |
|
|
|
|
private string preAuthRequestMsg = null; |
|
|
|
|
private string offlineRequestMsg = null; |
|
|
|
|
private string adjustRequestMsg = null; |
|
|
|
|
private string healthCheckRequestMsg = null; |
|
|
|
|
private string createOrderRequestMsg = null; |
|
|
|
|
private string retrievalRequestMsg = null; |
|
|
|
|
private string voidRequestMsg = null; |
|
|
|
|
private string settlementRequestMsg = null; |
|
|
|
|
private string linkTestRequestMsg = null; |
|
|
|
|
private string reprintRequestMsg = null; |
|
|
|
|
private string terminaionRequestMsg = null; |
|
|
|
|
private string scanRequestMsg = null; |
|
|
|
|
private string readCardRequestMsg = null; |
|
|
|
|
private string addPointRequestMsg = null; |
|
|
|
|
private string batchEnquiryRequestMsg = null; |
|
|
|
|
private string settleEnquiryRequestMsg = null; |
|
|
|
|
private string summayEnquiryRequestMsg = null; |
|
|
|
|
private Boolean isRepeatSubmit = false; |
|
|
|
|
public MainWindow() |
|
|
|
|
{ |
|
|
|
|
InitializeComponent(); |
|
|
|
|
} |
|
|
|
|
private void requestSaleThead() |
|
|
|
|
{ |
|
|
|
|
jsonResultByThead = n5Core.requestSale(txnIdForSale, txnAmtTextBoxValue, paymentTypeTextBoxValue, billTypeTextBoxValue); |
|
|
|
|
|
|
|
|
|
this.requestStrByThead = this.saleRequestMsg; |
|
|
|
|
showResult(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void requestCreateOrderThead() |
|
|
|
|
{ |
|
|
|
|
if (paymentTypeTextBoxValue != null && paymentTypeTextBoxValue != "" && billTypeTextBoxValue != null && billTypeTextBoxValue != "") |
|
|
|
|
jsonResultByThead = n5Core.requestCreateOrder(txnIdForSale, txnAmtTextBoxValue, paymentTypeTextBoxValue, billTypeTextBoxValue); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.requestStrByThead = this.createOrderRequestMsg; |
|
|
|
|
showResult(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void requestHealthCheckThead() |
|
|
|
|
{ |
|
|
|
|
jsonResultByThead = n5Core.sendHealthCheckRequest(); |
|
|
|
|
|
|
|
|
|
this.requestStrByThead = this.healthCheckRequestMsg; |
|
|
|
|
showResult(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void requestRetrievalThead() |
|
|
|
|
{ |
|
|
|
|
jsonResultByThead = n5Core.requestRetrieval(ecrTxnIdTextBoxValue); |
|
|
|
|
this.requestStrByThead = this.retrievalRequestMsg; |
|
|
|
|
showResult(); |
|
|
|
|
} |
|
|
|
|
private void requestRepeatRetrievalThead() |
|
|
|
|
{ |
|
|
|
|
while (isRepeatSubmit) |
|
|
|
|
{ |
|
|
|
|
String result = n5Core.requestRetrieval(ecrTxnIdTextBoxValue); |
|
|
|
|
addRepeatLog("=============================count" + repeatCount + "============================="); |
|
|
|
|
addRepeatLog("ecrTxnId = " + ecrTxnIdTextBoxValue); |
|
|
|
|
|
|
|
|
|
RetrievalResult retrievalResult = RetrievalResult.toRetrievalResultFromJsonMsg(result); |
|
|
|
|
if (retrievalResult != null && retrievalResult.Status.Equals("00")) |
|
|
|
|
{ |
|
|
|
|
addRepeatLog("Retrieval Success!"); |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
addRepeatLog("Retrieval Failed!"); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
private void requestSettlementThead() |
|
|
|
|
{ |
|
|
|
|
jsonResultByThead = n5Core.requestSettlement(); |
|
|
|
|
this.requestStrByThead = this.settlementRequestMsg; |
|
|
|
|
showResult(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void requestLinkRequestThead() |
|
|
|
|
{ |
|
|
|
|
jsonResultByThead = n5Core.initN5Core(portName, baudRate, dataBits, stopBits, parity, timeOut, logpathTextBoxValue).ToString(); |
|
|
|
|
|
|
|
|
|
this.requestStrByThead = this.linkTestRequestMsg; |
|
|
|
|
showResult(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void requestReprintThead() |
|
|
|
|
{ |
|
|
|
|
jsonResultByThead = n5Core.requestPrint(ecrTxnIdTextBoxValue); |
|
|
|
|
this.requestStrByThead = this.reprintRequestMsg; |
|
|
|
|
showResult(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void requestTerminaionThead() |
|
|
|
|
{ |
|
|
|
|
jsonResultByThead = n5Core.requestAbort(); |
|
|
|
|
this.requestStrByThead = this.terminaionRequestMsg; |
|
|
|
|
showResult(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void requestSummaryEnquiryThead() |
|
|
|
|
{ |
|
|
|
|
jsonResultByThead = n5Core.requestSummaryEnquiry(dateRangeTextBoxValue); |
|
|
|
|
this.requestStrByThead = this.summayEnquiryRequestMsg; |
|
|
|
|
showResult(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private int repeatCount = 1; |
|
|
|
|
public void sendRepeatSubmit() |
|
|
|
|
{ |
|
|
|
|
if (n5Core == null || !n5CoreInitSuccess) |
|
|
|
|
{ |
|
|
|
|
n5Core = n5coredll.N5Core.getInstance(); |
|
|
|
|
int initResult = n5Core.initN5Core(portName, baudRate, dataBits, stopBits, parity, timeOut, "C:\\Users\\rexli\\log"); |
|
|
|
|
if (initResult == 0) |
|
|
|
|
{ |
|
|
|
|
n5CoreInitSuccess = true; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
/* |
|
|
|
|
if (!n5CoreInitSuccess) |
|
|
|
|
{ |
|
|
|
|
this.requestStrByThead = "n5coredll init fail."; |
|
|
|
|
this.jsonResultByThead = string.Empty; |
|
|
|
|
showResult(); |
|
|
|
|
return; |
|
|
|
|
}*/ |
|
|
|
|
if (this.ecrTxnIdTextBox.Text == null || "".Equals(this.ecrTxnIdTextBox.Text.Trim())) |
|
|
|
|
{ |
|
|
|
|
this.requestStrByThead = "Please input parameter."; |
|
|
|
|
this.jsonResultByThead = "Please input parameter."; |
|
|
|
|
showResult(); |
|
|
|
|
this.ecrTxnIdTextBox.Focus(); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
ecrTxnIdTextBoxValue = ecrTxnIdTextBox.Text; |
|
|
|
|
Thread th = new Thread(requestRepeatRetrievalThead); |
|
|
|
|
th.Start(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void stopRepeatSubmit() |
|
|
|
|
{ |
|
|
|
|
repeatCount = 1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void sendSubmit() |
|
|
|
|
{ |
|
|
|
|
addLogFlag = true; |
|
|
|
|
addLog("====>> sendSubmit start, thisEvent = " + this.thisEvent); |
|
|
|
|
currEventName = this.thisEvent; |
|
|
|
|
if (currEventName == null || "".Equals(currEventName.Trim())) { |
|
|
|
|
MessageBox.Show("Please select test function.", "Message"); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
portName = this.portNameComboBox.Text; |
|
|
|
|
if (n5Core == null) |
|
|
|
|
{ |
|
|
|
|
n5Core = n5coredll.N5Core.getInstance(); |
|
|
|
|
if (n5Core == null) |
|
|
|
|
{ |
|
|
|
|
this.requestStrByThead = "n5coredll init fail."; |
|
|
|
|
this.jsonResultByThead = string.Empty; |
|
|
|
|
showResult(); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
this.requestStrByThead = string.Empty; |
|
|
|
|
this.jsonResultByThead = string.Empty; |
|
|
|
|
int show = showResult(); |
|
|
|
|
if (show != 0) |
|
|
|
|
{ |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ("Sale".Equals(this.thisEvent)) |
|
|
|
|
{ |
|
|
|
|
if (this.txnAmtTextBox.Text == null || "".Equals(this.txnAmtTextBox.Text.Trim())) |
|
|
|
|
{ |
|
|
|
|
this.requestStrByThead = "Please input parameter."; |
|
|
|
|
this.jsonResultByThead = "Please input parameter."; |
|
|
|
|
showResult(); |
|
|
|
|
this.txnAmtTextBox.Focus(); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
txnAmtTextBoxValue = this.txnAmtTextBox.Text; |
|
|
|
|
paymentTypeTextBoxValue = this.paymentTypeTextBox.Text; |
|
|
|
|
billTypeTextBoxValue = this.billTypeTextBox.Text; |
|
|
|
|
if (ecrTxnIdTextBox.Text.Equals(String.Empty)) |
|
|
|
|
txnIdForSale = this.getTxnId(); |
|
|
|
|
else |
|
|
|
|
txnIdForSale = this.ecrTxnIdTextBox.Text; |
|
|
|
|
this.requestStrByThead = "Test Function : " + currEventName + "\n txnId = " + txnIdForSale + "\n txnAmt = " + txnAmtTextBoxValue + "\n paymentType = " + paymentTypeTextBoxValue + "\n billType = " + billTypeTextBoxValue; |
|
|
|
|
showResult(); |
|
|
|
|
addLog("txnId = " + txnIdForSale + ", txnAmt = " + txnAmtTextBoxValue + ", paymentType = " + paymentTypeTextBoxValue + ",billType = " + billTypeTextBoxValue); |
|
|
|
|
//jsonResultByThead = n5Core.requestSale(this.getTxnId(), txnAmtTextBoxValue, "0", paymentAppIdComboBoxValue, qrValueTextBoxValue); |
|
|
|
|
this.saleRequestMsg = this.requestStrByThead; |
|
|
|
|
|
|
|
|
|
Thread th = new Thread(requestSaleThead); |
|
|
|
|
th.Start(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
else if ("CreateOrder".Equals(this.thisEvent)) |
|
|
|
|
{ |
|
|
|
|
if (this.txnAmtTextBox.Text == null || "".Equals(this.txnAmtTextBox.Text.Trim())) |
|
|
|
|
{ |
|
|
|
|
this.requestStrByThead = "Please input parameter."; |
|
|
|
|
this.jsonResultByThead = "Please input parameter."; |
|
|
|
|
showResult(); |
|
|
|
|
this.txnAmtTextBox.Focus(); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
txnAmtTextBoxValue = this.txnAmtTextBox.Text; |
|
|
|
|
paymentTypeTextBoxValue = this.paymentTypeTextBox.Text; |
|
|
|
|
billTypeTextBoxValue = this.billTypeTextBox.Text; |
|
|
|
|
|
|
|
|
|
txnIdForSale = this.getTxnId(); |
|
|
|
|
this.requestStrByThead = "Test Function : " + currEventName + "\n txnId = " + txnIdForSale + "\n txnAmt = " + txnAmtTextBoxValue + "\n paymentType = " + paymentTypeTextBoxValue + "\n billType = " + billTypeTextBoxValue; |
|
|
|
|
showResult(); |
|
|
|
|
addLog("txnId = " + txnIdForSale + ", txnAmt = " + txnAmtTextBoxValue + ", paymentType = " + paymentTypeTextBoxValue + ",billType = " + billTypeTextBoxValue); |
|
|
|
|
//jsonResultByThead = n5Core.requestSale(this.getTxnId(), txnAmtTextBoxValue, "0", paymentAppIdComboBoxValue, qrValueTextBoxValue); |
|
|
|
|
this.createOrderRequestMsg = this.requestStrByThead; |
|
|
|
|
|
|
|
|
|
Thread th = new Thread(requestCreateOrderThead); |
|
|
|
|
th.Start(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
else if ("HealthCheck".Equals(this.thisEvent)) |
|
|
|
|
{ |
|
|
|
|
this.requestStrByThead = "Test Function : " + currEventName; |
|
|
|
|
showResult(); |
|
|
|
|
this.retrievalRequestMsg = this.requestStrByThead; |
|
|
|
|
Thread th = new Thread(requestHealthCheckThead); |
|
|
|
|
th.Start(); |
|
|
|
|
} |
|
|
|
|
else if ("Retrieval".Equals(this.thisEvent)) |
|
|
|
|
{ |
|
|
|
|
if (this.ecrTxnIdTextBox.Text == null || "".Equals(this.ecrTxnIdTextBox.Text.Trim())) |
|
|
|
|
{ |
|
|
|
|
this.requestStrByThead = "Please input parameter."; |
|
|
|
|
this.jsonResultByThead = "Please input parameter."; |
|
|
|
|
showResult(); |
|
|
|
|
this.ecrTxnIdTextBox.Focus(); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
ecrTxnIdTextBoxValue = this.ecrTxnIdTextBox.Text; |
|
|
|
|
this.requestStrByThead = "Test Function : " + currEventName + "\n ecrTxnId = " + ecrTxnIdTextBoxValue; |
|
|
|
|
showResult(); |
|
|
|
|
addLog("ecrTxnId = " + ecrTxnIdTextBoxValue); |
|
|
|
|
|
|
|
|
|
//jsonResultByThead = n5Core.requestRetrieval(ecrTxnIdTextBoxValue, 180000); |
|
|
|
|
this.retrievalRequestMsg = this.requestStrByThead; |
|
|
|
|
Thread th = new Thread(requestRetrievalThead); |
|
|
|
|
th.Start(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
else if ("Settlement".Equals(this.thisEvent)) |
|
|
|
|
{ |
|
|
|
|
this.requestStrByThead = "Test Function : " + currEventName; |
|
|
|
|
showResult(); |
|
|
|
|
|
|
|
|
|
//jsonResultByThead = n5Core.sendSettlementtRequest(); |
|
|
|
|
this.settlementRequestMsg = this.requestStrByThead; |
|
|
|
|
Thread th = new Thread(requestSettlementThead); |
|
|
|
|
th.Start(); |
|
|
|
|
} |
|
|
|
|
else if ("Initilization".Equals(this.thisEvent)) |
|
|
|
|
{ |
|
|
|
|
logpathTextBoxValue = logFilePathtTextBox.Text; |
|
|
|
|
this.requestStrByThead = "Test Function : " + currEventName; |
|
|
|
|
showResult(); |
|
|
|
|
//jsonResultByThead = n5Core.sendLinkTestRequest(); |
|
|
|
|
timeOut = timeOutTextBox.Text.ToString(); |
|
|
|
|
this.linkTestRequestMsg = this.requestStrByThead; |
|
|
|
|
Thread th = new Thread(requestLinkRequestThead); |
|
|
|
|
th.Start(); |
|
|
|
|
} |
|
|
|
|
else if ("Reprint".Equals(this.thisEvent)) |
|
|
|
|
{ |
|
|
|
|
if (this.ecrTxnIdTextBox.Text == null || "".Equals(this.ecrTxnIdTextBox.Text.Trim())) |
|
|
|
|
{ |
|
|
|
|
this.requestStrByThead = "Please input parameter."; |
|
|
|
|
this.jsonResultByThead = "Please input parameter."; |
|
|
|
|
showResult(); |
|
|
|
|
this.ecrTxnIdTextBox.Focus(); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
ecrTxnIdTextBoxValue = this.ecrTxnIdTextBox.Text; |
|
|
|
|
|
|
|
|
|
addLog("ecrTxnId = " + ecrTxnIdTextBoxValue); |
|
|
|
|
|
|
|
|
|
this.requestStrByThead = "Test Function : " + currEventName; |
|
|
|
|
showResult(); |
|
|
|
|
//jsonResultByThead = n5Core.sendReprintRequest(); |
|
|
|
|
this.reprintRequestMsg = this.requestStrByThead; |
|
|
|
|
Thread th = new Thread(requestReprintThead); |
|
|
|
|
th.Start(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
else if ("Abort".Equals(this.thisEvent)) |
|
|
|
|
{ |
|
|
|
|
this.requestStrByThead = "Test Function : " + currEventName; |
|
|
|
|
showResult(); |
|
|
|
|
//jsonResultByThead = n5Core.sendAbortRequest(); |
|
|
|
|
this.terminaionRequestMsg = this.requestStrByThead; |
|
|
|
|
Thread th = new Thread(requestTerminaionThead); |
|
|
|
|
th.Start(); |
|
|
|
|
} |
|
|
|
|
else if ("SummaryEnquiry".Equals(this.thisEvent)) |
|
|
|
|
{ |
|
|
|
|
if (this.dateRangeTextBox.Text == null || "".Equals(this.dateRangeTextBox.Text.Trim())) |
|
|
|
|
{ |
|
|
|
|
this.requestStrByThead = "Please input parameter."; |
|
|
|
|
this.jsonResultByThead = "Please input parameter."; |
|
|
|
|
showResult(); |
|
|
|
|
this.dateRangeTextBox.Focus(); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
this.dateRangeTextBoxValue = this.dateRangeTextBox.Text; |
|
|
|
|
this.requestStrByThead = "Test Function : " + currEventName; |
|
|
|
|
showResult(); |
|
|
|
|
this.batchEnquiryRequestMsg = this.requestStrByThead; |
|
|
|
|
Thread th = new Thread(requestSummaryEnquiryThead); |
|
|
|
|
th.Start(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
addLog("thisEvent is error"); |
|
|
|
|
MessageBox.Show("Please select test function.", "Message"); |
|
|
|
|
|
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
addLog("jsonResultByThead = " + jsonResultByThead); |
|
|
|
|
showResult(); |
|
|
|
|
|
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void RadioButton_Checked(object sender, RoutedEventArgs e) |
|
|
|
|
{ |
|
|
|
|
RadioButton thisButton = (RadioButton)sender; |
|
|
|
|
this.thisEvent = thisButton.Content.ToString(); |
|
|
|
|
|
|
|
|
|
this.requestTextBox.Text = string.Empty; |
|
|
|
|
this.result1TextBox.Text = string.Empty; |
|
|
|
|
|
|
|
|
|
if (this.logFilePathtTextBox.Text == null || "".Equals(this.logFilePathtTextBox.Text.Trim())) |
|
|
|
|
{ |
|
|
|
|
this.logFilePathtTextBox.Text = System.IO.Path.GetTempPath(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
this.ecrTxnIdTextBox.Text = ""; |
|
|
|
|
this.txnAmtTextBox.IsEnabled = true; |
|
|
|
|
this.batchIdTextBox.Text = ""; |
|
|
|
|
this.settleDateTextBox.Text = ""; |
|
|
|
|
this.paymentTypeTextBox.IsEnabled = true; |
|
|
|
|
this.billTypeTextBox.IsEnabled = true; |
|
|
|
|
this.ecrTxnIdTextBox.IsEnabled = true; |
|
|
|
|
this.batchIdTextBox.IsEnabled = true; |
|
|
|
|
this.settleDateTextBox.IsEnabled = true; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/* |
|
|
|
|
private void Submit_Repeat_Button_Click(object sender, RoutedEventArgs e) |
|
|
|
|
{ |
|
|
|
|
this.requestTextBox.Text = string.Empty; |
|
|
|
|
this.result1TextBox.Text = string.Empty; |
|
|
|
|
if (!isRepeatSubmit) |
|
|
|
|
{ |
|
|
|
|
this.submit_repeat_Button.Content = "Stop Repeat"; |
|
|
|
|
isRepeatSubmit = true; |
|
|
|
|
addRepeatLog("==========Repeat start========== "); |
|
|
|
|
this.sendRepeatSubmit(); |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
this.submit_repeat_Button.Content = "Start Repeat"; |
|
|
|
|
isRepeatSubmit = false; |
|
|
|
|
this.stopRepeatSubmit(); |
|
|
|
|
addRepeatLog("==========Repeat end========== "); |
|
|
|
|
} |
|
|
|
|
}*/ |
|
|
|
|
|
|
|
|
|
private void Submit_1_Button_Click(object sender, RoutedEventArgs e) |
|
|
|
|
{ |
|
|
|
|
this.requestTextBox.Text = string.Empty; |
|
|
|
|
this.result1TextBox.Text = string.Empty; |
|
|
|
|
this.submit_1_Button.IsEnabled = false; |
|
|
|
|
addLog("==========Submit start========== "); |
|
|
|
|
this.sendSubmit(); |
|
|
|
|
addLog("==========Submit end========== "); |
|
|
|
|
this.submit_1_Button.IsEnabled = true; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void Reset_Button_Click(object sender, RoutedEventArgs e) |
|
|
|
|
{ |
|
|
|
|
this.requestTextBox.Text = string.Empty; |
|
|
|
|
this.result1TextBox.Text = string.Empty; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void addLog(string logInfo) |
|
|
|
|
{ |
|
|
|
|
try |
|
|
|
|
{ |
|
|
|
|
if (addLogFlag) |
|
|
|
|
{ |
|
|
|
|
StreamWriter sw = File.AppendText(System.IO.Path.GetTempPath() + "\\myN5TestWin.log"); |
|
|
|
|
sw.WriteLine(DateTime.Now.ToString() + " [LOGGER] " + logInfo + Environment.NewLine); |
|
|
|
|
sw.Flush(); |
|
|
|
|
sw.Close(); |
|
|
|
|
// Console.WriteLine(logInfo); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
catch (Exception err) |
|
|
|
|
{ |
|
|
|
|
Console.WriteLine("Exception = " + err); |
|
|
|
|
addLogFlag = false; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void addRepeatLog(string logInfo) |
|
|
|
|
{ |
|
|
|
|
try |
|
|
|
|
{ |
|
|
|
|
StreamWriter sw = File.AppendText(System.IO.Path.GetTempPath() + "\\myN5TestWin_repeat.log"); |
|
|
|
|
sw.WriteLine(DateTime.Now.ToString() + " [LOGGER] " + logInfo + Environment.NewLine); |
|
|
|
|
sw.Flush(); |
|
|
|
|
sw.Close(); |
|
|
|
|
// Console.WriteLine(logInfo); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
catch (Exception err) |
|
|
|
|
{ |
|
|
|
|
Console.WriteLine("Exception = " + err); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public string getTxnId() |
|
|
|
|
{ |
|
|
|
|
StringBuilder txnIdSb = new StringBuilder(); |
|
|
|
|
DateTime dt = DateTime.Now; |
|
|
|
|
txnIdSb.Append(dt.ToString("yyyyMMddHHmmssf")); |
|
|
|
|
string txnIdResult = txnIdSb.ToString(); |
|
|
|
|
addLog("txnIdResult = " + txnIdResult); |
|
|
|
|
return txnIdResult; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// public delegate void UpdateTextCallback(string message); |
|
|
|
|
|
|
|
|
|
// private void UpdateTextThread() |
|
|
|
|
// { |
|
|
|
|
|
|
|
|
|
// this.requestTextBox.Dispatcher.Invoke( |
|
|
|
|
// new UpdateTextCallback(this.UpdateRequestText), |
|
|
|
|
// new object[] { "" }); |
|
|
|
|
// |
|
|
|
|
// this.result1TextBox.Dispatcher.Invoke( |
|
|
|
|
// new UpdateTextCallback(this.UpdateRequestText), |
|
|
|
|
// new object[] { "" }); |
|
|
|
|
// |
|
|
|
|
// } |
|
|
|
|
// private int UpdateRequestText() |
|
|
|
|
// { |
|
|
|
|
// this.requestTextBox.Text = this.requestStrByThead; |
|
|
|
|
// this.result1TextBox.Text = this.jsonResultByThead; |
|
|
|
|
// if (this.logPathTextBox.Text == null || "".Equals(this.logPathTextBox.Text.Trim())) |
|
|
|
|
// { |
|
|
|
|
// this.logPathTextBox.Text = "Log Path : " + System.IO.Path.GetTempPath() + "\\myN5TestWin.log"; |
|
|
|
|
// } |
|
|
|
|
// return 0; |
|
|
|
|
// } |
|
|
|
|
|
|
|
|
|
private int showResult() |
|
|
|
|
{ |
|
|
|
|
//this.requestTextBox.Text = this.requestStrByThead; |
|
|
|
|
requestTextBox.Dispatcher.Invoke( |
|
|
|
|
DispatcherPriority.Normal, TimeSpan.FromSeconds(1), new Action(showRequestTxtBox)); |
|
|
|
|
if (jsonResultByThead!=null) |
|
|
|
|
showResultStr = this.jsonResultByThead.Replace("{", "").Replace("}", "").Replace(",", "\n"); |
|
|
|
|
//this.result1TextBox.Text = showResultStr; |
|
|
|
|
|
|
|
|
|
result1TextBox.Dispatcher.Invoke( |
|
|
|
|
DispatcherPriority.Normal, TimeSpan.FromSeconds(1), new Action(showResultTxtBox)); |
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void showRequestTxtBox() |
|
|
|
|
{ |
|
|
|
|
this.requestTextBox.Text = requestStrByThead; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void showResultTxtBox() |
|
|
|
|
{ |
|
|
|
|
this.result1TextBox.Text = showResultStr; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void PortNameComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e) |
|
|
|
|
{ |
|
|
|
|
this.n5CoreInitSuccess = false; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |