Zbiór zmian 934 dla trunk/eCard/eCardMVC/Platnosci/Controllers/MerchantController.cs
- Data:
- 2009-12-07 13:50:14 (16 years ago)
- Pliki:
-
- 1 zmodyfikowane
-
trunk/eCard/eCardMVC/Platnosci/Controllers/MerchantController.cs (zmodyfikowane) (8 diffs)
Legenda:
- Bez zmian
- Dodane
- Usunięte
-
trunk/eCard/eCardMVC/Platnosci/Controllers/MerchantController.cs
r933 r934 20 20 public const string KODOWANIE = "ISO-8859-2"; 21 21 public const string HASH_ERROR_INFO = "payment not exist"; 22 private string _merchantId;23 private string _merchantPassword;24 22 25 23 private readonly IRepository<vPlatnosciEcard> _repVPayment; … … 44 42 var platnosc = _repVPayment.Find(p => p.ID_faktury == id1).SingleOrDefault(); 45 43 46 if (platnosc == null) 47 { 48 ErrorViewData errorViewData = _funkcjePlatnosci.InitErrorViewData(_translateManager.Translate("tlumaczenia", "brakdanych")); 49 return View("Error1", errorViewData); 50 } 44 if (platnosc == null) 45 return View("Error1", IsError("brakdanych", 0)); 51 46 52 47 if (!_funkcjePlatnosci.UserIdentity(platnosc, ControllerContext.HttpContext.User.Identity.Name)) 53 { 54 ErrorViewData errorViewData = _funkcjePlatnosci.InitErrorViewData(_translateManager.Translate("tlumaczenia", "weryfikacja")); 55 return View("Error1", errorViewData); 56 } 48 return View("Error1", IsError("weryfikacja", 0)); 57 49 58 50 var waluta = _funkcjePlatnosci.setAmount(platnosc); … … 64 56 65 57 if (createPayment == false) 66 { 67 ErrorViewData errorViewData = _funkcjePlatnosci.InitErrorViewData(_translateManager.Translate("tlumaczenia", "error_hash")); 68 errorViewData.InvoiceId = payer.Id_faktury; 69 return View("Error1", errorViewData); 70 } 58 return View("Error1", IsError("error_hash", payer.Id_faktury)); 71 59 72 _merchantId = systemKs == "1" ? "171485000" : "170906000"; 73 _merchantPassword = systemKs == "1" ? "ashSeth2" : "JaYpqfs0"; 60 var merchant = getMerchantInfo(systemKs); 74 61 75 var hash = GetHash(newPayment, _merchantId, _merchantPassword);62 var hash = GetHash(newPayment, merchant); 76 63 hash = hash.Replace("\n",""); 77 64 78 65 if (hash == BAD_HASH || hash == "" || hash == HASH_ERROR_INFO) 79 { 80 ErrorViewData errorViewData = _funkcjePlatnosci.InitErrorViewData(_translateManager.Translate("tlumaczenia", "error_hash")); 81 errorViewData.InvoiceId = payer.Id_faktury; 82 return View("Error1", errorViewData); 83 } 66 return View("Error1", IsError("error_hash", payer.Id_faktury)); 84 67 85 68 //przeslanie w linku ordernumber potrzebnego do wyswietlenia potwierdzenia … … 94 77 linkOk += "/" + newPayment.IDFaktury + "?o=" + orderek; 95 78 96 SendRequest(newPayment, hash, _merchantId, linkFail, linkOk);79 SendRequest(newPayment, hash, merchant, linkFail, linkOk); 97 80 return new EmptyResult(); 98 } 81 } 99 82 private PlatnosciEcard InitNewPayment(int id, vPlatnosciEcard platnosc, Waluta waluta, Payer payer) 100 83 { … … 131 114 } 132 115 133 private string GetHash(PlatnosciEcard p, string merchantId, string merchantPassword)116 private string GetHash(PlatnosciEcard p, Merchant merchant) 134 117 { 135 118 var platnosc = _repPayment.Find(i => i.ORDERDESCRIPTION == p.ORDERDESCRIPTION && i.IDFaktury == p.IDFaktury && i.Data == p.Data).First(); … … 141 124 var dane = "&orderDescription=&amount=" + platnosc.AMOUNT; 142 125 dane += "¤cy=" + platnosc.CURRENCY; 143 dane += string.Format("&merchantId={0}&password={1}", merchant Id,merchantPassword);126 dane += string.Format("&merchantId={0}&password={1}", merchant.merchntId, merchant.merchantPassword); 144 127 145 128 var bdata = System.Text.Encoding.ASCII.GetBytes(dane); … … 159 142 } 160 143 161 private void SendRequest(PlatnosciEcard m, string hash, string merchantid, string linkok, string linkfail)144 private void SendRequest(PlatnosciEcard m, string hash, Merchant merchant, string linkok, string linkfail) 162 145 { 163 146 var adres = ConfigurationManager.AppSettings["eCard.Url"] + "?ORDERDESCRIPTION=" + m.ORDERDESCRIPTION; … … 165 148 var dane = "&AMOUNT=" + m.AMOUNT + "&CURRENCY=" + m.CURRENCY + "&ORDERNUMBER=" + m.ORDERNUMBER; 166 149 dane += "&NAME=" + m.NAME + "&SURNAME=" + m.SURNAME + "&LANGUAGE=" + m.LANGUAGE + "&CHARSET=ISO-8859-2"; 167 dane += "&COUNTRY=616&PAYMENTTYPE=CARDS&JS=1&HASH=" + hash + "&MERCHANTID=" + merchant id + "&AUTODEPOSIT=" + m.AUTODEPOSIT;150 dane += "&COUNTRY=616&PAYMENTTYPE=CARDS&JS=1&HASH=" + hash + "&MERCHANTID=" + merchant.merchntId + "&AUTODEPOSIT=" + m.AUTODEPOSIT; 168 151 dane += "&LINKFAIL=" + linkfail + "&LINKOK=" + linkok + "&SESSIONID=" + m.SESSIONID; 169 152 Response.Redirect(adres + dane); 170 153 } 154 public ErrorViewData IsError(string errortxt, int idFaktury) 155 { 156 if (errortxt == "brakdanych") 157 errortxt = _translateManager.Translate("tlumaczenia", "brakdanych"); 158 else if (errortxt == "weryfikacja") 159 errortxt = _translateManager.Translate("tlumaczenia", "weryfikacja"); 160 else if (errortxt == "error_hash") 161 errortxt = _translateManager.Translate("tlumaczenia", "error_hash"); 162 163 return _funkcjePlatnosci.InitErrorViewData(errortxt, idFaktury); 164 } 165 public Merchant getMerchantInfo( string systemKs) 166 { 167 var merchant = new Merchant(); 168 if (systemKs == "1") 169 { 170 merchant.merchntId = "171485000"; 171 merchant.merchantPassword = "ashSeth2"; 172 } 173 else 174 { 175 merchant.merchntId = "170906000"; 176 merchant.merchantPassword = "JaYpqfs0"; 177 } 178 return merchant; 179 } 171 180 } 172 181 }
