Пример #1
0
 private void sendbtn_Click(object sender, EventArgs e)
 {
     answertxt.Text = string.Empty;
       answertxt.ForeColor = Color.Black;
       ITNWebServiceContract client = new ITNWebServiceContract();
       Transaction trans = GetFormValues(client);
       if(trans != null)
       {
     Confirmation result;
     try
     {
       result = client.transAlerts(trans);
       StringBuilder answerBuilder = new StringBuilder();
       answerBuilder.Append("confirmation: ").AppendLine(result.confirmation.ToString());
       answerBuilder.Append("merchantID: ").AppendLine(result.merchantID.ToString());
       answerBuilder.Append("orderID: ").AppendLine(result.orderID.ToString());
       answerBuilder.Append("docHash: ").AppendLine(result.docHash.ToString());
       answertxt.Text = answerBuilder.ToString();
     }
     catch(Exception ex)
     {
       answertxt.Text = ex.Message;
     }
     finally
     {
       client.Dispose();
     }
       }
       else
       {
     answertxt.Text = "Wystąpił błąd w tworzeniu obiektu transactions";
       }
 }
Пример #2
0
        public Transaction GetFormValues(ITNWebServiceContract client)
        {
            String sharedKey = Sharedkeytxt.Text;
              if(String.IsNullOrEmpty(WebserviceURLtxt.Text))
              {
            answertxt.ForeColor = Color.Red;
            answertxt.Text = "Wprowadź URL usługi";
            return null;
              }
              client.Url = WebserviceURLtxt.Text;

              //Stringi
              String docHash = String.Empty;
              String transID = transIDtxt.Text;
              if(String.IsNullOrEmpty(transID))
              {
            answertxt.ForeColor = Color.Red;
            answertxt.Text = "Wprowadź transID";
            return null;
              }
              String orderID = orderIDtxt.Text;
              if(String.IsNullOrEmpty(orderID))
              {
            answertxt.ForeColor = Color.Red;
            answertxt.Text = "Wprowadź orderID";
            return null;
              }
              String transTitle = transTitletxt.Text;
              //Kwota
              Boolean amountCorrect = false;
              Decimal amountValue;
              amountCorrect = Decimal.TryParse(valuetxt.Text.Replace(".", ","), out amountValue);
              if(!amountCorrect)
              {
            amountCorrect = Decimal.TryParse(valuetxt.Text = valuetxt.Text.Replace(",","."), out amountValue);
              }
              if(!amountCorrect)
              {
            answertxt.ForeColor = Color.Red;
            answertxt.Text = "Zły format kwoty";
            return null;
              }
              Amount amount = new Amount() {
            currency =(AmountCurrency) Enum.Parse(typeof(AmountCurrency), currencytxt.Text, true),
            value = amountValue };
              //Daty
              DateTime transDate;
              try
            {
            transDate = transDatedtp.Value;
            }
            catch (Exception)
            {
            answertxt.ForeColor = Color.Red;
            answertxt.Text = "Zły format transDate";
            return null;
            }
              DateTime statusDate = statusDatedtp.Value;
              try
              {
            statusDate = statusDatedtp.Value;
              }
              catch(Exception)
              {
            answertxt.ForeColor = Color.Red;
            answertxt.Text = "Zły format statusDate";
            return null;
              }
              //inty
              int paywayID = 0;
              try
              {
            paywayID = Convert.ToInt32(paywayIDtxt.Text);
              }
              catch(Exception)
              {
            answertxt.ForeColor = Color.Red;
            answertxt.Text = "Zły format paywayID (musi być int)";
            return null;
              }
              int merchantID = 0;
              try
              {
            merchantID = Convert.ToInt32(merchantIDtxt.Text);
              }
              catch(Exception)
              {
            answertxt.ForeColor = Color.Red;
            answertxt.Text = "Zły format merchantID (musi być int)";
            return null;
              }
              int status = 0;
              try
              {
            status = Convert.ToInt32(statustxt.Text);
              }
              catch(Exception)
              {
            answertxt.ForeColor = Color.Red;
            answertxt.Text = "Zły format statusu (musi być int)";
            return null;
              }
              CustomerData customerData = null;
              if(!(String.IsNullOrEmpty(customerAddresstxt.Text) && String.IsNullOrEmpty(customerNRBtxt.Text)))
              {
            customerData = new CustomerData() { customerAddress = customerAddresstxt.Text, customerNRB = customerNRBtxt.Text };
              }

              Transaction transaction = new Transaction()
              {
            transID = transID,
            amount = new Amount() { currency = (AmountCurrency)Enum.Parse(typeof(AmountCurrency),
              currencytxt.Text, true), value = amountValue },
            docHash = String.Empty,
            orderID = orderID,
            status = status,
            transTitle = transTitle,
            transDate = transDate,
            customerData = customerData,
            merchantID = merchantID,
            statusDate = statusDate,
            paywayID = paywayID
              };
              StringBuilder sb = new StringBuilder();
              sb.Append(transaction.merchantID).Append(transaction.orderID).Append(transaction.transID).
            Append(transaction.transDate.ToString("yyyy-MM-dd HH:mm:ss")).
            Append(transaction.transTitle).
            Append(transaction.amount.value.ToString("0.00").Replace(",", ".")).Append(transaction.amount.currency).
            Append(transaction.paywayID).Append(transaction.statusDate.ToString("yyyy-MM-dd HH:mm:ss")).
            Append(transaction.status).Append(transaction.customerData == null ? String.Empty : transaction.customerData.customerAddress).
            Append(transaction.customerData == null ? String.Empty : transaction.customerData.customerNRB).Append(sharedKey);
              using(MD5 md5Hash = MD5.Create())
              {
            transaction.docHash = GetHash(md5Hash, sb.ToString());
              }
              hashtxt.Text = transaction.docHash;
              return transaction;
        }
Пример #3
0
 private void onlyhashbtn_Click(object sender, EventArgs e)
 {
     answertxt.Text = string.Empty;
       answertxt.ForeColor = Color.Black;
       ITNWebServiceContract client = new ITNWebServiceContract();
       Transaction trans = GetFormValues(client);
       if(trans != null)
       {
     answertxt.Text = trans.docHash;
       }
       else
       {
     answertxt.Text = "Wystąpił błąd w tworzeniu obiektu transactions";
       }
 }