protected void btn_2dpos_Click(object sender, EventArgs e) { POS = SHOPClass.Odemeler.Pos.POSBilgisi(Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri.POSID); #region Puanı Çek if (Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri.PuanKullan) { #region Puan Kullan POSD = SHOPClass.Odemeler.PosIslem(SHOPClass.Fonksiyonlar.IslemID("TEST", 24), SHOPClass.Sabitler.PosIslemTipleri.PuanKullan, POS, Sistem.Odeme.OdemeSekilleri.KrediKarti.KartBilgileri, Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri); #endregion if (POSD.Message.Type != Class.Sabitler.MessageTypes.OK) { //tutardan puanı çıkar Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri.Tutar = (Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri.Tutar - Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri.Puan); } else { //hata ver ekrana puan kullanılamadı normal çekiyoruz de. } } #endregion ParaCek(); }
protected void ParaCek() { #region Parayı Çek if (POS.OnOtorizasyon) { #region Ön Otorizasyon POSD = SHOPClass.Odemeler.PosIslem(SHOPClass.Fonksiyonlar.IslemID("TEST", 24), SHOPClass.Sabitler.PosIslemTipleri.Otorizasyon, POS, Sistem.Odeme.OdemeSekilleri.KrediKarti.KartBilgileri, Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri); #endregion } else { #region Satış POSD = SHOPClass.Odemeler.PosIslem(SHOPClass.Fonksiyonlar.IslemID("TEST", 24), SHOPClass.Sabitler.PosIslemTipleri.Satis, POS, Sistem.Odeme.OdemeSekilleri.KrediKarti.KartBilgileri, Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri); #endregion } #endregion if (POSD.Message.Type != Class.Sabitler.MessageTypes.OK) { //db ye yaz sayfa çıkart. KKOdemeYap(); } else { //hata ver } //POS İşlemi Sonucu Dönen Değer Yazılıyor Sistem.Odeme.OdemeSekilleri.KrediKarti.PosIslem = POSD.POSIslem; }
public void Gonder() { try { ObjeSetle(); Sistem.Sepet.SiparisDurumID = 2; //- İşlem -> Bin Kontrolü Evet -> Puan Sorgula Evet -> Ön Otorizasyon Yada da Satış //- İşlem -> Bin Kontrolü Evet -> Puan Sorgula Hayır -> Vade Farkı Sorgulama Evet -> Ön Otorizasyon Yada da Satış //- İşlem -> Bin Kontrolü Hayır -> Vade Farkı Sorgulama Evet -> Ön Otorizasyon Yada da Satış #region POS Bilgileri Alınıyor ve Objeye Setleniyor //POS ID Al int POSID = SHOPClass.Odemeler.Pos.POSID(Sistem.Odeme.OdemeSekilleri.KrediKarti.KartBilgileri.BankaID); //Taksit posu alınamazsa peşin posunu çağır if (POSID == 0) { POSID = SHOPClass.Odemeler.Pos.PesinPOSU(); } //POS Bilgisi Al ve Objeye Setle if (POSID != 0) { POS = SHOPClass.Odemeler.Pos.POSBilgisi(POSID); } else { //Hata Ver } #endregion Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri.POSID = POSID; //test için yazıldı Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri.Puan = 20; #region Bin Kontrolünden Geçerse if (SHOPClass.Odemeler.Pos.BinNoKontrol(Sistem.Odeme.OdemeSekilleri.KrediKarti.KartBilgileri.BankaID, Sistem.Odeme.OdemeSekilleri.KrediKarti.KartBilgileri.KartNo.Substring(0, 6))) { if (POS.PuanKullanim) { #region Puan Sorgula POSD = SHOPClass.Odemeler.PosIslem(SHOPClass.Fonksiyonlar.IslemID("TEST", 24), SHOPClass.Sabitler.PosIslemTipleri.PuanSorgula, POS, Sistem.Odeme.OdemeSekilleri.KrediKarti.KartBilgileri, Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri); #endregion if (POSD.Message.Type != Class.Sabitler.MessageTypes.OK) { Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri.Puan = double.Parse(POSD.POSIslem.KullanilabilirToplamPuanTutari); Response.Redirect("/payment-pos.aspx", false); Context.ApplicationInstance.CompleteRequest(); } } else { #region Vade Kontrolü (Kart Doğrulama) if (POS.VadeKontrol) { #region Vade Farkı Sorgula (Bu işleme kart doğrulama da denilebilir) POSD = SHOPClass.Odemeler.PosIslem(SHOPClass.Fonksiyonlar.IslemID("TEST", 24), SHOPClass.Sabitler.PosIslemTipleri.Vade, POS, Sistem.Odeme.OdemeSekilleri.KrediKarti.KartBilgileri, Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri); #endregion if (POSD.Message.Type != Class.Sabitler.MessageTypes.OK) { Response.Redirect("/payment-pos.aspx", false); Context.ApplicationInstance.CompleteRequest(); } else { //HATA } } else { //vade kontrol yok! } #endregion } } #endregion #region Bin Kontrolünden Geçemezse else { #region Vade Kontrolü (Kart Doğrulama) if (POS.VadeKontrol) { #region Vade Farkı Sorgula (Bu işleme kart doğrulama da denilebilir) POSD = SHOPClass.Odemeler.PosIslem(SHOPClass.Fonksiyonlar.IslemID("TEST", 24), SHOPClass.Sabitler.PosIslemTipleri.Vade, POS, Sistem.Odeme.OdemeSekilleri.KrediKarti.KartBilgileri, Sistem.Odeme.OdemeSekilleri.KrediKarti.OdemeBilgileri); #endregion if (POSD.Message.Type != Class.Sabitler.MessageTypes.OK) { Response.Redirect("/payment-pos.aspx", false); Context.ApplicationInstance.CompleteRequest(); } else { //HATA } } else { //vade kontrol yok! } #endregion } #endregion //POS İşlemi Sonucu Dönen Değer Yazılıyor Sistem.Odeme.OdemeSekilleri.KrediKarti.PosIslem = POSD.POSIslem; } catch (Exception ex) { Elmah.ErrorSignal.FromCurrentContext().Raise(ex); } }
protected void DropDownIslemler_SelectedIndexChanged(object sender, EventArgs e) { if (DropDownIslemler.SelectedValue.ToString() != "-1") { #region Kredi Kartı Objesi SHOPObjeler.Tanimlar.KrediKart KK = (from p in TestKartlari where p.KartNo == DropDownKartlar.SelectedValue.ToString() select p).ToList()[0]; #endregion #region Enum Atama SHOPClass.Sabitler.PosIslemTipleri PT = (SHOPClass.Sabitler.PosIslemTipleri)Enum.Parse(typeof(SHOPClass.Sabitler.PosIslemTipleri), DropDownIslemler.SelectedValue.ToString()); #endregion //- İşlem -> Bin Kontrolü Evet -> Puan Sorgula Evet -> Ön Otorizasyon Yada da Satış //- İşlem -> Bin Kontrolü Evet -> Puan Sorgula Hayır -> Vade Farkı Sorgulama Evet -> Ön Otorizasyon Yada da Satış //- İşlem -> Bin Kontrolü Hayır -> Vade Farkı Sorgulama Evet -> Ön Otorizasyon Yada da Satış SHOPClass.Odemeler.POSDurum POSD = new SHOPClass.Odemeler.POSDurum(); if (BinKontrol(POS, KK)) { #region Puan Sorgula POSD = PosIslem(SHOPClass.Sabitler.PosIslemTipleri.Puan, POS, KK, OB); #endregion if (POSD.Message.Type == Class.Sabitler.MessageTypes.OK) { #region Ön Otorizasyon veya Satış if (POS.OnOtorizasyon) { POSD = PosIslem(SHOPClass.Sabitler.PosIslemTipleri.Otorizasyon, POS, KK, OB); } else { POSD = PosIslem(SHOPClass.Sabitler.PosIslemTipleri.Satis, POS, KK, OB); } #endregion } else { //HATA } } else { #region Vade Farkı Sorgula POSD = PosIslem(SHOPClass.Sabitler.PosIslemTipleri.Vade, POS, KK, OB); #endregion if (POSD.Message.Type == Class.Sabitler.MessageTypes.OK) { #region Ön Otorizasyon veya Satış if (POS.OnOtorizasyon) { POSD = PosIslem(SHOPClass.Sabitler.PosIslemTipleri.Otorizasyon, POS, KK, OB); } else { POSD = PosIslem(SHOPClass.Sabitler.PosIslemTipleri.Satis, POS, KK, OB); } #endregion } else { // } } MesajlariYaz(); } }