Example #1
0
        private ExtreRepo Extre(int kart_id)
        {
            // kart ödemesini yapsak bile ödeme iptalini nasıl yapacaz. kasa vb işlemler zaten otomatik yapılıyor ancak
            // kart hesaplarındaki ptalleri düzeltmek gerek.
            //odeme olarak kaydetcez bununiçin sahte bir müşteri oluşturalım ve -1 idsi olsun
            ExtreRepo repo = new ExtreRepo();

            List <kart_hesaps> hesaplar = (from h in dc.kart_hesaps
                                           where h.iptal == false && h.kart_id == kart_id && h.cekildi == false && h.extre_tarih <= h.kart_tanims.extre_tarih
                                           select h).ToList();
            //devreden bakiye var mı bakalım
            kart_tanims tanim = dc.kart_tanims.Find(kart_id);

            decimal tutar = hesaplar.Sum(x => x.tutar) + tanim.devreden_bakiye;

            repo.hesaplar    = hesaplar;
            repo.extre_tarih = hesaplar.Select(x => x.extre_tarih).FirstOrDefault();
            repo.tutar       = tutar;
            return(repo);
        }
Example #2
0
        // extre_tarihi güncellemesini kontrol et. her seferinde bir ay eklemesi doğru değil. iki aydır kullanılmıyorsa ne olacak.
        public void ExtreOde(int kart_id, string tur, int?taksit_sayi, int?yeni_kart_id, int?banka_id, string kullanici)
        {
            ExtreRepo repo = Extre(kart_id);

            if (repo.hesaplar.Count > 0)
            {
                //kart devreden bakiye varsa sıfırlayalım //triggerda yapıyoruz
                foreach (kart_hesaps hesap in repo.hesaplar)
                {
                    hesap.cekildi = true;
                }
                Odeme o = new Odeme(dc);
                o.OdemeMiktar = repo.tutar;
                o.OdemeTarih  = DateTime.Now;
                o.Musteri_ID  = -1;
                o.KullaniciID = "-";
                o.kullanici   = "-";
                o.Aciklama    = "Kart extre ödemesi";
                o.extre_tarih = (DateTime)repo.extre_tarih;

                if (tur.Equals("Nakit"))
                {
                    o.Nakit(kullanici);
                    KaydetmeIslemleri.kaydetR(dc);
                }
                else if (tur.Equals("Banka"))
                {
                    int id = (int)banka_id;
                    o.Banka(id, kullanici);
                    KaydetmeIslemleri.kaydetR(dc);
                }
                else if (tur.Equals("Kart"))
                {
                    int id     = (int)yeni_kart_id;
                    int taksit = (int)taksit_sayi;
                    o.Kart(taksit, id, false, kullanici);
                    KaydetmeIslemleri.kaydetR(dc);
                }
            }
        }