예제 #1
0
 public override string ToString()
 {
     Pieniadze suma = new Pieniadze();
     suma.Dodaj(pieniadze);
     suma.Dodaj(debet.Stan);
     return String.Format("rachunek debetowy klienta {0}", klient);
 }
예제 #2
0
        protected override bool CzyDostepnePieniadze(Pieniadze pieniadze)
        {
            if (this.pieniadze.Waluta != pieniadze.Waluta)
                return false;

            return (this.pieniadze.Wartosc + this.debet.Stan.Wartosc >= pieniadze.Wartosc);
        }
예제 #3
0
        public override bool WyplacPieniadze(Pieniadze pieniadze)
        {
            if (!CzyDostepnePieniadze(pieniadze))
                return false;

            // Jezeli mamy dostepne pieniadze to nie ruszamy debetu
            if (this.pieniadze >= pieniadze)
                return base.WyplacPieniadze(pieniadze);

            // Jezeli brakuje nam srodkow to sprawdz czy debet plus dost pieniadze zalatwiaja sprawe
            Pieniadze sumaSrodkow = new Pieniadze(0, pieniadze.Waluta);
            sumaSrodkow.Dodaj(this.pieniadze);
            sumaSrodkow.Dodaj(debet.Stan);

            if (sumaSrodkow.Wartosc >= pieniadze.Wartosc)
            {
                Pieniadze pobrane = new Pieniadze(pieniadze.Wartosc, pieniadze.Waluta);
                pobrane.Odejmij(this.pieniadze);

                this.pieniadze = new Pieniadze(0, pieniadze.Waluta);
                debet.Pobierz(pobrane);
                return true;
            }

            return false;
        }
예제 #4
0
 public RachunekBankowy(Klient klient, Int64 id = 0)
 {
     this.DataUtworzenia = DateTime.Now;
     this.klient = klient;
     if (this.pieniadze == null)
         this.pieniadze = new Pieniadze(0);
     this.Id = id;
 }
예제 #5
0
파일: Przelew.cs 프로젝트: TheKrystek/Bank
        public Przelew(RachunekBankowy rachunekA, RachunekBankowy rachunekB, Pieniadze pieniadze)
        {
            this.rachunekA = rachunekA;
            this.rachunekB = rachunekB;

            operacjaPierwsza = new Wyplata(rachunekA, pieniadze);
            operacjaDruga = new Wplata(rachunekB, pieniadze);
        }
예제 #6
0
파일: Kredyt.cs 프로젝트: TheKrystek/Bank
 public Kredyt(Pieniadze kwota, int rat, DateTime termin, IModelOdsetek modelOdsetek)
 {
     this.splacono = new Pieniadze(0,kwota.Waluta);
     this.kwotaKredytu = kwota;
     this.iloscRat = rat;
     this.splaconychRat = 0;
     this.terminSplaty = termin;
     this.modelOdsetek = modelOdsetek;
 }
예제 #7
0
파일: Bank.cs 프로젝트: TheKrystek/Bank
        public Kredyt DodajKredyt(Klient klient, Pieniadze kwota, double oprocentowanie = 10, int iloscRat = 2)
        {
            if (!klienci.Contains(klient))
                klienci.Add(klient);

            int id = wygenerujNumer();
            Kredyt kredyt = new Kredyt(kwota, new LiniowyModelOdsetek(oprocentowanie), iloscRat);

            produktyBankowe.Add(id, kredyt);
            return kredyt;
        }
예제 #8
0
 public virtual bool WyplacPieniadze(Pieniadze pieniadze)
 {
     try
     {
         this.pieniadze -= pieniadze;
         return true;
     }
     catch (Exception)
     {
         return false;
     }
 }
예제 #9
0
파일: Debet.cs 프로젝트: TheKrystek/Bank
 public bool Pobierz(Pieniadze pieniadze)
 {
     try
     {
         this.stan -= pieniadze;
     }
     catch (Exception)
     {
         return false;
     }
     return true;
 }
예제 #10
0
        public WpisWHistorii(IOperacja operacja, ProduktBankowy produkt, Pieniadze pieniadze = null, Klient klient = null)
        {
            this.operacja = operacja;
            this.klient = klient;

            if (this.klient == null)
                this.klient = produkt.Klient();

            this.pieniadze = pieniadze.Clone() as Pieniadze;
            this.produkt = produkt;
            saldoPrzed = produkt.DostepneSrodki().Clone() as Pieniadze;
        }
예제 #11
0
 public override bool WplacPieniadze(Pieniadze pieniadze)
 {
     try
     {
         Pieniadze reszta = debet.Dodaj(pieniadze);
         this.pieniadze += reszta;
         return true;
     }
     catch (Exception)
     {
         return false;
     }
 }
예제 #12
0
        public PrzelewZewnetrzny(RachunekBankowy rachunek, int rachunekDocelowy, Pieniadze pieniadze, Bank bank)
        {
            this.rachunek = rachunek;
            this.rachunekDocelowy = rachunekDocelowy;
            this.bank = bank;

            p = new PrzelewanePieniadze
            {
                id = rachunekDocelowy,
                pieniadze = pieniadze
            };

            operacja = new Wyplata(rachunek, pieniadze);
        }
예제 #13
0
파일: Debet.cs 프로젝트: TheKrystek/Bank
        /// <summary>
        /// Zwraca resztę, np. jeżeli limit wynosi 1000 a wpłacamy 1500 to 500 za dużo
        /// </summary>
        /// <param name="pieniadze"></param>
        /// <returns></returns>
        public Pieniadze Dodaj(Pieniadze pieniadze)
        {
            if (Pieniadze.RozneWaluty(stan,pieniadze))
                return pieniadze;

            if ((limit-stan) >= pieniadze)
            {
                stan += pieniadze;
                return new Pieniadze(0,pieniadze.Waluta);
            }
            Pieniadze reszta = pieniadze - (limit - stan);
            stan = limit;
            return reszta;
        }
예제 #14
0
파일: Debet.cs 프로젝트: TheKrystek/Bank
 public Debet(int limit)
 {
     this.limit = new Pieniadze(limit);
     this.stan = this.limit;
 }
예제 #15
0
파일: Debet.cs 프로젝트: TheKrystek/Bank
 public Debet(Pieniadze limit)
 {
     this.limit = limit;
     this.stan = limit;
 }
예제 #16
0
 private void Sumuj(Pieniadze pieniadze)
 {
     if (pieniadze.Waluta != waluta)
         return;
     ilosc++;
     suma += pieniadze;
 }
예제 #17
0
 protected virtual bool CzyDostepnePieniadze(Pieniadze pieniadze)
 {
     try
     {
         return (Pieniadze >= pieniadze);
     }
     catch (Exception)
     {
         return false;
     }
 }
예제 #18
0
 public void Zapisz()
 {
     saldoPo = produkt.DostepneSrodki().Clone() as Pieniadze;
 }
예제 #19
0
 // Prosty iloczyn odsetki = kwota * oprocentowanie
 public Pieniadze Oblicz(Pieniadze odsetki)
 {
     double nowaWartosc = odsetki.Wartosc * oprocentowanie / 100;
     odsetki.Wartosc = (int)nowaWartosc;
     return odsetki;
 }
예제 #20
0
 public RaportZPodsumowaniem(Pieniadze.Waluty waluta)
 {
     wpisy = new List<string>();
     sredniaKwota = new SredniaKwota(waluta);
 }
예제 #21
0
 public string Wynik()
 {
     srednia = new Pieniadze(suma.Wartosc / ilosc,suma.Waluta);
     return string.Format("Srednia kwota operacji: {0}", srednia);
 }
예제 #22
0
파일: Kredyt.cs 프로젝트: TheKrystek/Bank
 public Kredyt(Pieniadze kwota, IModelOdsetek modelOdsetek, int rat = 1 )
     : this(kwota,rat,DateTime.Now.AddMonths(1),modelOdsetek)
 {
 }
예제 #23
0
파일: Wyplata.cs 프로젝트: TheKrystek/Bank
 public Wyplata(RachunekBankowy rachunek, Pieniadze pieniadze)
 {
     this.pieniadze = pieniadze;
     this.rachunek = rachunek;
 }
예제 #24
0
파일: Bank.cs 프로젝트: TheKrystek/Bank
        public RachunekDebetowy DodajRachunekDebetowy(Klient klient, Pieniadze debet)
        {
            if (!klienci.Contains(klient))
                klienci.Add(klient);

            int id = wygenerujNumer();
            RachunekDebetowy rachunek = new RachunekDebetowy(klient, new Debet(debet), id);

            produktyBankowe.Add(id,rachunek);
            return rachunek;
        }
예제 #25
0
파일: Kredyt.cs 프로젝트: TheKrystek/Bank
 public Pieniadze ObliczCzescSplaty(int rata)
 {
     Pieniadze kwotaRaty = new Pieniadze(DoSplaty.Wartosc / (1 + iloscRat - rata), kwotaKredytu.Waluta);
     return kwotaRaty;
 }
예제 #26
0
 public SredniaKwota(Pieniadze.Waluty waluta)
 {
     this.waluta = waluta;
     this.suma = new Pieniadze(0, waluta);
     this.srednia = new Pieniadze(0, waluta); ;
 }