コード例 #1
0
        public RachunekBankowy(IWlasciciel wlasciciel)
        {
            Wlasciciel = wlasciciel;
            Saldo      = new Kwota(0);
            Numer      = new NumerProduktu();

            DataZalozenia = DateTime.Now;
            Historia      = new Historia();
            Odsetki       = new Odsetki();
        }
コード例 #2
0
        public bool DodajDebet(Kwota limit)
        {
            var result = false;

            if (Debet == null)
            {
                Debet  = new Debet(limit);
                result = true;
            }

            return(result);
        }
コード例 #3
0
        public bool DodajKredyt(Kwota kwota)
        {
            var result = false;

            if (WplacGotowke(kwota))
            {
                _kredyty.Add(new Kredyt(kwota));
                result = true;
            }

            return(result);
        }
コード例 #4
0
        public bool DodajLokate(Kwota kwota, out Lokata lokata)
        {
            var result = false;

            lokata = null;

            if (Saldo.Wartosc >= kwota.Wartosc && WyplacGotowke(kwota))
            {
                lokata = new Lokata(this, kwota);

                _lokaty.Add(lokata);

                result = true;
            }

            return(result);
        }
コード例 #5
0
        public bool WyplacGotowke(Kwota kwota)
        {
            var result = false;

            if (Saldo.Wartosc >= kwota.Wartosc)
            {
                Saldo.Wartosc -= kwota.Wartosc;
                result         = true;
            }
            else if (Debet != null && Saldo.Wartosc + Debet.DostepnyDebet.Wartosc >= kwota.Wartosc)
            {
                var debet = kwota.Wartosc - Saldo.Wartosc;
                Saldo.Wartosc = 0.0;

                Debet.Kwota.Wartosc += debet;

                result = true;
            }

            return(result);
        }
コード例 #6
0
        public bool WplacGotowke(Kwota kwota)
        {
            if (Debet != null)
            {
                if (Debet.Kwota.Wartosc >= kwota.Wartosc)
                {
                    Debet.Kwota.Wartosc -= kwota.Wartosc;
                }
                else
                {
                    var pozostalaWplata = kwota.Wartosc - Debet.Kwota.Wartosc;
                    Debet.Kwota.Wartosc = 0.0;

                    Saldo.Wartosc += pozostalaWplata;
                }
            }
            else
            {
                Saldo.Wartosc += kwota.Wartosc;
            }

            return(true);
        }