Esempio n. 1
0
        private void simpleButton2_Click(object sender, EventArgs e)
        {
            decimal gonderilecek = decimal.Parse(txtTutarHavale.Text);
            var     musterim     = m.Hesap.Where(x => x.MusteriId == MusteriId && x.Bakiye >= gonderilecek).OrderByDescending(y => y.Bakiye).FirstOrDefault();

            if (musterim != null)
            {
                Havale h = new Havale();
                h.GonderenID = musterim.Id;
                h.IBAN       = txtHavaleAliciHesap.Text;
                h.Tutar      = decimal.Parse(txtTutarHavale.Text);
                h.Aciklama   = txtAciklamaHavale.Text;

                m.Havale.Add(h);

                m.SaveChanges();
                HesapOzeti hesapOzeti = new HesapOzeti();
                hesapOzeti.Ad         = "Farklı Hesaba Para Gönderimi";
                hesapOzeti.IslemId    = 3;
                hesapOzeti.IslemTutar = decimal.Parse(txtTutarHavale.Text);
                hesapOzeti.Tarih      = DateTime.Parse(DateTime.Now.ToShortDateString());
                hesapOzeti.HesapId    = musterim.Id;
                m.HesapOzeti.Add(hesapOzeti);
                m.SaveChanges();
                musterim.Bakiye = musterim.Bakiye - gonderilecek;



                var alici = m.Hesap.Where(x => x.IBAN.Equals(txtHavaleAliciHesap.Text)).FirstOrDefault();
                alici.Bakiye = alici.Bakiye + gonderilecek;
                HesapOzeti hesapOzeti2 = new HesapOzeti();
                hesapOzeti2.Ad         = "Farklı Hesaptan  Para Alımı";
                hesapOzeti2.IslemId    = 3;
                hesapOzeti2.IslemTutar = decimal.Parse(txtTutarHavale.Text);
                hesapOzeti2.Tarih      = DateTime.Parse(DateTime.Now.ToShortDateString());
                hesapOzeti2.HesapId    = alici.Id;
                m.HesapOzeti.Add(hesapOzeti2);

                m.SaveChanges();

                MessageBox.Show("Para Gönderim İşlemi Onaylandı ", "Bilgi");
            }
            else
            {
                MessageBox.Show("Hesabınızda Yeterli Bakiye Yok", "Uyarı");
            }
        }
        public ActionResult Havale(FormCollection frm)
        {
            string   tc      = Session["UserTc"].ToString();
            int      ek      = Convert.ToInt32(Session["eknumara"]);
            string   hsbNo   = frm["yatirHesapNo"];
            int      ekno    = int.Parse(frm["yatirEkNo"]);
            Hesaplar hesap   = db.Hesaplar.Where(x => x.MusteriTc == tc && x.EkNumara == ek).FirstOrDefault();
            var      Yatirhs = db.Hesaplar.Where(x => x.HesapNo == hsbNo && x.EkNumara == ekno).FirstOrDefault();
            decimal  bakiye  = Convert.ToDecimal(frm["bakiye"]);

            Session["HesapNo"] = frm["yatirHesapNo"] + " -" + frm["yatirEkNo"];
            if (Yatirhs != null)
            {
                if (hesap.HesapNo == hsbNo)
                {
                    ViewBag.havale = "Havale işleminde Kendi hesaplarınız arasında para gönderme işlemi yapamazsınız.";
                }
                else if (Yatirhs.HesapDurum == true)
                {
                    if (bakiye > hesap.Bakiye)
                    {
                        ViewBag.havale = "hesabınızda " + hesap.Bakiye + " bakiye bulunurken bu miktardan daha fazla para yatıramazsınız!!";
                        return(View());
                    }
                    else
                    {
                        Yatirhs.Bakiye = Yatirhs.Bakiye + bakiye;
                        hesap.Bakiye   = hesap.Bakiye - bakiye;
                        Havale hvl = new Havale();
                        hvl.GelenHesapNo = Session["Hesap"].ToString();
                        hvl.GidenHesapNo = Session["HesapNo"].ToString();
                        hvl.MusteriId    = tc;
                        hvl.Miktar       = Convert.ToDecimal(frm["bakiye"]);
                        hvl.Tarih        = DateTime.Now;
                        db.Havale.Add(hvl);
                        db.SaveChanges();
                        ViewBag.havale = "işlem başarılı";
                    }
                }
            }
            else
            {
                ViewBag.havale = "yatırmak istediğiniz hesap aktif değil!!";
            }
            return(View());
        }
Esempio n. 3
0
        public IActionResult Havale([FromBody] Havale ha)
        {
            var tc      = User.Claims.FirstOrDefault().Value;
            var musteri = uow.Musteriler.Find(x => x.TcKimlikNo.Equals(tc)).FirstOrDefault();

            ha.GonderenMusteriNo = musteri.MusteriNo;
            var alanHesap     = uow.Hesaplar.Find(x => x.MusteriNo == ha.AliciMusteriNo && x.EkNo == ha.AliciEkNo && x.Aktif == true).FirstOrDefault();
            var gonderenHesap = uow.Hesaplar.Find(x => x.MusteriNo == ha.GonderenMusteriNo && x.EkNo == ha.GonderenEkNo && x.Aktif == true).FirstOrDefault();

            if (alanHesap == null)
            {
                return(NotFound());
            }
            if (gonderenHesap.Bakiye >= ha.Tutar)
            {
                alanHesap.Bakiye     += ha.Tutar;
                gonderenHesap.Bakiye -= ha.Tutar;

                ha.AliciHesapNo    = alanHesap.HesapNo;
                ha.GonderenHesapNo = gonderenHesap.HesapNo;

                uow.Hesaplar.Edit(alanHesap);
                uow.SaveChanges();
                uow.Hesaplar.Edit(gonderenHesap);
                uow.SaveChanges();
                uow.Havaleler.Add(ha);
                uow.SaveChanges();
                return(Ok(new
                {
                    data = "Havale işlemi başarıyla gerçekleşti."
                }));
            }
            else
            {
                return(BadRequest());
            }
        }