Zbiór zmian 917 dla trunk/eCard/eCardMVC/Platnosci
- Data:
- 2009-12-01 12:40:01 (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
r896 r917 29 29 public const string KOD_POLSKA = "616"; //kod kraju Akceptanta - Polska 30 30 public const string KODOWANIE = "ISO-8859-2"; 31 p rivate int ORDERNUMBER = 122;31 public const string HASH_ERROR_INFO = "payment not exist"; 32 32 private string merchantId; 33 33 … … 35 35 private readonly IRepository<PlatnosciEcard> _repPayment; 36 36 private FunkcjePlatnosci _func; 37 private ITranslate _t; 37 38 38 39 public MerchantController() … … 41 42 _repPayment = new Repository<PlatnosciEcard>(new DataContext1()); 42 43 _func = new FunkcjePlatnosci(); 44 _t = new Translate(); 43 45 } 44 46 public ActionResult Merchant(Payer payer, string language) … … 52 54 if (platnosc == null) 53 55 { 54 ErrorViewData errorViewData = _func.InitErrorViewData( HttpContext.GetGlobalResourceObject("tlumaczenia", "brakdanych").ToString());56 ErrorViewData errorViewData = _func.InitErrorViewData(_t.TranslateStr("tlumaczenia", "brakdanych")); 55 57 return View("Error1", errorViewData); 56 58 } 57 59 else if (!_func.UserIdentity(platnosc, ControllerContext.HttpContext.User.Identity.Name)) 58 60 { 59 ErrorViewData errorViewData = _func.InitErrorViewData( HttpContext.GetGlobalResourceObject("tlumaczenia", "weryfikacja").ToString());61 ErrorViewData errorViewData = _func.InitErrorViewData(_t.TranslateStr("tlumaczenia", "weryfikacja")); 60 62 return View("Error1", errorViewData); 61 63 } … … 67 69 68 70 bool createPayment = AddNewPayment(newPayment); 69 if (createPayment == false) return View("Error"); 71 if (createPayment == false) 72 { 73 ErrorViewData errorViewData = _func.InitErrorViewData(_t.TranslateStr("tlumaczenia", "error_hash")); 74 errorViewData.idfaktury = payer.Id_faktury; 75 return View("Error1", errorViewData); 76 } 70 77 71 78 string hash = GetHash(newPayment, systemKs); 72 79 hash = hash.Replace("\n",""); 73 if (hash == BAD_HASH || hash == "" ) return View("Error"); 80 if (hash == BAD_HASH || hash == "" || hash == HASH_ERROR_INFO) 81 { 82 ErrorViewData errorViewData = _func.InitErrorViewData(_t.TranslateStr("tlumaczenia", "error_hash")); 83 errorViewData.idfaktury = payer.Id_faktury; 84 return View("Error1", errorViewData); 85 } 74 86 75 87 if (systemKs == "1") merchantId = "170906000"; … … 82 94 string LinkOk = ConfigurationManager.AppSettings["Strona"]; 83 95 LinkOk += "/" + language + ConfigurationManager.AppSettings["LinkOk"]; 84 LinkOk += "/" + newPayment.IDFaktury; ;96 LinkOk += "/" + newPayment.IDFaktury; 85 97 86 var merchantViewData = InitMerchantViewData(newPayment, hash, merchantId, LinkFail, LinkOk); 87 wyslij(merchantViewData, hash, merchantId); 88 return View(merchantViewData); 98 wyslij(newPayment, hash, merchantId, LinkFail, LinkOk); 99 return new EmptyResult(); 89 100 } 90 101 private PlatnosciEcard InitNewPayment(int id, vPlatnosciEcard platnosc, Waluta waluta, Payer payer) … … 115 126 if (platnosc != null) 116 127 { 117 //_repPayment.Insert(platnosc);128 _repPayment.Insert(platnosc); 118 129 return true; 119 130 } 120 131 return false; 121 132 } 122 private MerchantViewData InitMerchantViewData(PlatnosciEcard newPayment, string hash, string Id, string LinkFail, string LinkOk)123 {124 MerchantViewData merchantViewData = new MerchantViewData();125 merchantViewData.nowaPlatnosc = newPayment;126 merchantViewData.Hash = hash;127 merchantViewData.merchantId = Id;128 merchantViewData.LinkFail = LinkFail;129 merchantViewData.LinkOk = LinkOk;130 131 //wartosci testowe132 merchantViewData.nowaPlatnosc.ORDERNUMBER = ORDERNUMBER;133 merchantViewData.nowaPlatnosc.ORDERDESCRIPTION = "222";134 merchantViewData.nowaPlatnosc.AMOUNT = 300;135 merchantViewData.nowaPlatnosc.CURRENCY = "985";136 merchantViewData.nowaPlatnosc.SESSIONID = "ff";137 merchantViewData.merchantId = "171485000";138 merchantViewData.LinkFail = "";139 merchantViewData.LinkOk = "";140 return merchantViewData;141 }142 133 private string GetHash(PlatnosciEcard p, string ks) 143 134 { 144 135 string strResponse; 145 /*PlatnosciEcard platnosc = _rep.FindOne(i => i.ORDERDESCRIPTION == p.ORDERDESCRIPTION && i.IDFaktury == p.IDFaktury && i.Data == p.Data); 146 string adres = "https://pay.ecard.pl/servlet/HS?orderNumber="+p.ORDERNUMBER; 136 PlatnosciEcard platnosc = _repPayment.Find(i => i.ORDERDESCRIPTION == p.ORDERDESCRIPTION && i.IDFaktury == p.IDFaktury && i.Data == p.Data).First(); 137 138 if (platnosc == null) return HASH_ERROR_INFO; 139 140 string adres = "https://pay.ecard.pl/servlet/HS?orderNumber=" + platnosc.ORDERNUMBER; 147 141 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(adres); 148 142 string dane = "&orderDescription=&amount=" + platnosc.AMOUNT; 149 143 dane += "¤cy=" + platnosc.CURRENCY; 150 if (ks == "1") dane += "&merchantId=171485000&password=ashSeth2"; 151 else dane += "&merchantId=170906000&password=JaYpqfs0"; */ 144 dane += "&merchantId=171485000&password=ashSeth2"; 152 145 153 //dane testowe 154 string adres = "https://pay.ecard.pl/servlet/HS?orderNumber="+ORDERNUMBER; 155 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(adres); 156 string dane = "&orderDescription=&amount=300¤cy=985&merchantId=171485000&password=ashSeth2"; 157 146 // if (ks == "1") dane += "&merchantId=171485000&password=ashSeth2"; 147 // else dane += "&merchantId=170906000&password=JaYpqfs0"; 148 158 149 byte[] bdata = System.Text.ASCIIEncoding.ASCII.GetBytes(dane); 159 150 req.Method = "POST"; … … 171 162 return strResponse; 172 163 } 173 private void wyslij( MerchantViewData m, string hash, string id)164 private void wyslij(PlatnosciEcard m, string hash, string id, string linkok, string linkfail) 174 165 { 175 string adres = "https://pay.ecard.pl/servlet/PSTEST?ORDERDESCRIPTION=" +m.nowaPlatnosc.ORDERDESCRIPTION;166 string adres = "https://pay.ecard.pl/servlet/PSTEST?ORDERDESCRIPTION=" + m.ORDERDESCRIPTION; 176 167 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(adres); 177 string dane = "&AMOUNT=300&CURRENCY=985&ORDERNUMBER="+ORDERNUMBER+"&NAME="+m.nowaPlatnosc.NAME+"&SURNAME="+m.nowaPlatnosc.SURNAME+"&LANGUAGE=PL&CHARSET=ISO-8859-2"; 178 dane += "&COUNTRY=616&PAYMENTTYPE=CARDS&JS=1&HASH=" + hash + "&MERCHANTID=171485000&AUTODEPOSIT=" + m.nowaPlatnosc.AUTODEPOSIT + "&LINKFAIL="; 179 dane += "&LINKOK=&SESSIONID="; 168 string dane = "&AMOUNT=" + m.AMOUNT + "&CURRENCY=" + m.CURRENCY + "&ORDERNUMBER=" + m.ORDERNUMBER; 169 dane += "&NAME=" + m.NAME + "&SURNAME=" + m.SURNAME + "&LANGUAGE=" + m.LANGUAGE + "&CHARSET=ISO-8859-2"; 170 dane += "&COUNTRY=616&PAYMENTTYPE=CARDS&JS=1&HASH=" + hash + "&MERCHANTID=171485000&AUTODEPOSIT=" + m.AUTODEPOSIT; 171 dane += "&LINKFAIL=" + linkfail + "&LINKOK=" + linkok + "&SESSIONID=" + m.SESSIONID; 180 172 Response.Redirect(adres + dane); 181 173 }
