public ActionResult Koszonjuk(string trid) { PayPlazaServiceV5SoapClient client = new PayPlazaServiceV5SoapClient(); XmlNode data = client.GetPaymentDetails(trid); string CheckResultCode = data["CheckResultCode"].InnerText; string PaidResultCode = data["PaidResultCode"].InnerText; if (Convert.ToInt32(CheckResultCode) == 0) { switch (Convert.ToInt32(PaidResultCode)) { case 0: ViewBag.Header = "Köszönjük vásárlását"; ViewBag.Content = "Mostantól már elérhető az őn által választott szolgáltatás."; break; case 602: ViewBag.Header = "Lezáratlan tranzakció"; ViewBag.Content = "A banktól adott időpontban nem lehet lekérdezni a fizetés eredményét. A rendszer 24 órán belül rendszeres időközönként újra megpróbál kommunikálni a bankkal. Ha ez sikeressen megtörtént, akkor e-mailben értesítést kap a regisztrációkor megadott e-mail címére, a sikeres tranzakciórol. <br><br>Amíg nem zárul le a tranzakció, kérjük ne indítson új fizetést!"; break; case 900: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A tranzakció nem jött létre."; break; case 1027: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "American Express kártyával történő fizetés visszautasításra került."; break; case 1030: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártya blokkolt."; break; case 1031: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártyaszám érvénytelen."; break; case 1032: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártyaszám érvénytelen."; break; case 1033: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártya lejárt."; break; case 1034: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártya letiltott."; break; case 1035: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártya elveszett kártya."; break; case 1036: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártya nem aktív."; break; case 1037: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártyaadatok hibásak."; break; case 10387: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártyaadatok hibásak, vagy nincs elég fedezet."; break; case 1039: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártya az üzletági követelményeknek nem felel meg."; break; case 1040: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártyaszám ismeretlen."; break; case 1041: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártya terhelése nem lehetséges."; break; case 1042: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A megadott kártya terhelése a megadott összeggel nem lehetséges (jellemzően vásárlási limittúllépés miatt)."; break; case 1043: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "Érvénytelen összegű vásárlás"; break; case 1044: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "Hibás felhasználó azonosító."; break; case 1045: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "Kapcsolat jellegű hiba."; break; case 1046: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A fizetés vissza lett utasítva."; break; case 1047: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "Idő túllépés"; break; case 1048: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A vásárló visszalépett a fizetéstől."; break; case 1049: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "Vevőoldali időtúllépés, amennyiben a fizetés 10 percen bellül nem történt meg."; break; case 1050: ViewBag.Header = "Folyamatba lévő vásárlás"; ViewBag.Content = "A felhasználó még a banki fizetést bonyolítja."; break; case 1051: ViewBag.Header = "Rendszer hiba"; ViewBag.Content = "A felhasználóazonosító nem létezik, nincs ilyen regisztrált felhasználó."; break; case 1052: ViewBag.Header = "Sikertelen vásárlás"; ViewBag.Content = "A kétlépcsős fizetési tranzakció elutasítással zárult."; break; default: ViewBag.Header = "Ismeretlen hiba"; ViewBag.Content = "Ismeretlen hiba következett be a fizetés során."; break; } } return View(); }
public ActionResult Feldolgozas(string trid) { try { PayPlazaServiceV5SoapClient client = new PayPlazaServiceV5SoapClient(); XmlNode d = client.GetPaymentDetails(trid); string CheckResultCode = d["CheckResultCode"].InnerText; string PaidResultCode = d["PaidResultCode"].InnerText; string IsTestPayment = d["IsTestPayment"].InnerText; string Amount = d["Amount"].InnerText; string PaidAmount = d["PaidAmount"].InnerText; string Currency = d["Currency"].InnerText; string PaidWith = d["PaidWith"].InnerText; string InvoiceUrl = d["InvoiceUrl"].InnerText; string StartedOn = d["StartedOn"].InnerText; string PaidOn = d["PaidOn"].InnerText; var update = db.PayLogs.FirstOrDefault(x => x.Trid == trid); update.PaymentDetailsXml = new XElement(d.Name, d.InnerXml); if ((Convert.ToInt32(CheckResultCode) == 0) && (Convert.ToInt32(PaidResultCode) == 0)) { update.Elfogadva = true; MailMessage mail = new MailMessage(); var uid = db.PayLogs.Where(x => x.Trid == trid).Select(x => x.UId).First(); var userManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new ApplicationDbContext())); var user = userManager.FindById(uid.ToString()); string email = user.email; mail.To.Add(email); mail.From = new MailAddress("*****@*****.**"); mail.Subject = "Exclusive Team: Sikeres vásárlás"; string Body = "<h3>Köszönjük a várlást!</h3><p>Számla információk:<br>Fizetés helye: http://exclusiveteam.net<br>Fizetett összeg: " + PaidAmount + " " + Currency + "<br>Fizetett szolgáltatás megnevezése: csomag vásárlás<br>Tranzakció azonosító: " + trid + "<br>Dátum: " + PaidOn + "</p><p>Exclusive Team</p>"; mail.Body = Body; mail.IsBodyHtml = true; SmtpClient smtp = new SmtpClient(); smtp.Host = "relay-hosting.secureserver.net"; smtp.Port = 25; smtp.Credentials = new NetworkCredential("*****@*****.**", "admin666"); smtp.EnableSsl = false; smtp.Send(mail); } db.SaveChanges(); return new HttpStatusCodeResult(HttpStatusCode.OK); } catch (Exception e) { throw; } return new HttpStatusCodeResult(HttpStatusCode.RequestTimeout); }