示例#1
0
    static void Main(string[] args)
    {
        Rachunek r = new Rachunek(123);

        Console.WriteLine(r.Podaj());
        r.Wplac(500);
        Console.WriteLine(r.Podaj());
        r.Wplac(200);
        Console.WriteLine(r.Podaj());
        RachunekOszczednosciowy ro = new RachunekOszczednosciowy(321, 0.1);

        ro.Wplac(100);
        ro.Kapitalizacja();
        Console.WriteLine(ro.Podaj());
        RachunekDebetowy rd = new RachunekDebetowy(567, 200);

        rd.Wplac(300);
        Console.WriteLine(rd.Podaj());
        rd.Wyplac(400);
        Console.WriteLine(rd.Podaj());
        rd.Wyplac(400);
        Console.WriteLine(rd.Podaj());

        Bank b = new Bank();

        b.Dodaj(r);
        b.Dodaj(ro);
        b.Dodaj(rd);
        b.Podaj();
        b.Kapitalizuj();
        b.Podaj();
    }
        public async Task <IActionResult> Edit(int id, [Bind("RachunekId,Data,Paragon")] Rachunek rachunek)
        {
            if (id != rachunek.RachunekId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(rachunek);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!RachunekExists(rachunek.RachunekId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(rachunek));
        }
示例#3
0
        public override double Execute(Rachunek r)
        {
            var saldo = r.Saldo + this.kwota;

            //r.SetHistoria("Wpłata: " + this.kwota + ", saldo: " + saldo);
            return(saldo);
        }
示例#4
0
        // Operacja przelewu z debetem
        public override void Przelew(double kwota, Rachunek docelowy)
        {
            if (component != null)
            {
                Rachunek r = (Rachunek)component;
                WzorceProj.command_operacje.Payment p = new WzorceProj.command_operacje.Payment(kwota);
                double saldo_po_wyplacie = p.Execute(r);

                if (saldo_po_wyplacie < 0 && this.Debt <= this.MaxDebt)
                {
                    this.Debt = Math.Abs(saldo_po_wyplacie);
                    r.Saldo   = 0;
                }
                else
                {
                    if (this.Debt <= this.MaxDebt)
                    {
                        r.SetHistoria("Przekroczono dopuszczalny limit debetu! (" + this.MaxDebt.ToString() + ")");
                    }
                    if (saldo_po_wyplacie >= 0)
                    {
                        r.Przelew(kwota, docelowy);
                    }
                }
            }
        }
示例#5
0
        public void Test_AccountAddInterest_WE_wp100_WY_ods1()
        {
            this.accountAddInterest = new WzorceProj.state_odsetki.AccountAddInterest();
            r = new Rachunek("123", "imie", "nazwisko");
            r.Wplata(100);

            Assert.IsTrue(1 == this.accountAddInterest.RunInterest(r), "Błędne naliczanie odsetek dla progu < 10000");
        }
示例#6
0
 BankingProduct Visitor.Getsaldo(Rachunek r)
 {
     if (r.Saldo > 1000)
     {
         return(r);
     }
     return(null);
 }
示例#7
0
        public void Test_AccountAddInterest_WE_wp94211_WY_ods222633()
        {
            this.accountAddInterest = new WzorceProj.state_odsetki.AccountAddInterest();
            r = new Rachunek("123", "imie", "nazwisko");
            r.Wplata(94211);

            Assert.IsTrue(2226.33 == this.accountAddInterest.RunInterest(r), "Błędne naliczanie odsetek dla progu > 50000");
        }
示例#8
0
        public void Test_AccountAddInterestExtra_WE_wp8000_WY_ods180()
        {
            this.accountAddInterestExtra = new WzorceProj.state_odsetki.AccountAddInterestExtra();
            r = new Rachunek("123", "imie", "nazwisko");
            r.Wplata(8000);

            Assert.IsTrue(180 == this.accountAddInterestExtra.RunInterest(r), "Błędne naliczanie odsetek dla progu > 5000");
        }
示例#9
0
 async private void ListaRachunkow_ItemSelected(object sender, SelectedItemChangedEventArgs e)
 {
     if (e.SelectedItem != null)
     {
         JointTables jt = (JointTables)e.SelectedItem;
         Rachunek    r  = App.DatabaseController.GetRachunek(jt.RachunekID);
         await Navigation.PushModalAsync(new RachunekDetails(jt) { BindingContext = r });
     }
 }
 public Rachunek Post([FromBody] Rachunek value)
 {
     using (var db = new RachunekContext())
     {
         db.Rachunki.Add(value);
         db.SaveChanges();
         return(value);
     }
 }
示例#11
0
 public int SaveRachunek(Rachunek rachunek)
 {
     if (rachunek.RachunekID != 0)
     {
         return(database.Update(rachunek));
     }
     else
     {
         return(database.Insert(rachunek));
     }
 }
示例#12
0
        static void Main(string[] args)
        {
            Rachunek r1 = new Rachunek(1, 10.0M);

            r1.Wyswietl();
            Console.WriteLine(r1.Identyfikator);
            Console.WriteLine(r1.SaldoZVat);
            r1.SaldoZVat = 123;
            r1.Wyswietl();

            Console.ReadKey();
        }
        public void Test_RachunekDebetowy_WE_MaxDebet300_wp100_wyp100_WY_0()
        {
            double MaxDebet = 300;

            r = new Rachunek("123", "imie", "nazwisko");
            d = new RachunekDebetowy(r, MaxDebet);

            d.Wplata(100);
            d.Wyplata(100);

            Assert.IsTrue(0 == d.Debt, "Błędne naliczanie debetu != 0", null);
        }
        public async Task <IActionResult> Create([Bind("RachunekId,Data,Paragon")] Rachunek rachunek)
        {
            if (ModelState.IsValid)
            {
                _context.Add(rachunek);
                await _context.SaveChangesAsync();

                //ViewBag.wykonaneUslugi = _context.WykonaneUslugi.Where(u => u.Zaksiegowano == false).ToList();
                return(RedirectToAction(nameof(Podsumowanie)));
            }
            return(View(rachunek));
        }
 public RachunekController(ApplicationDbContext context)
 {
     _context = context;
     if (Temp.rachunek == null)
     {
         rachunek = new Rachunek {
             Data = DateTime.Now
         };
         Temp.rachunek = rachunek;
     }
     else
     {
         rachunek = Temp.rachunek;
     }
 }
示例#16
0
        // Operacja wpłaty z debetem
        public override void Wplata(double kwota)
        {
            if (component != null)
            {
                Rachunek r = (Rachunek)component;

                if (this.Debt > 0)
                {
                    this.Debt -= kwota;
                }
                else
                {
                    r.Wplata(kwota);
                }
            }
        }
示例#17
0
        public double RunInterest(Rachunek r)
        {
            double odsetki = 0;

            if (r.Saldo < 10000)
            {
                odsetki = 0.01 * r.Saldo;
            }
            else if (r.Saldo < 50000)
            {
                odsetki = 100 + 0.02 * (r.Saldo - 10000);
            }
            else
            {
                odsetki = 100 + 800 + 0.03 * (r.Saldo - 50000);
            }

            r.SetHistoria("Naliczono odsetki w kwocie " + odsetki);
            return(odsetki);
        }
        public void Test_RachunekDebetowy_WE_MaxDebet300_wp100_przelew100_WY_0()
        {
            double MaxDebet = 300;

            r = new Rachunek("123", "imie", "nazwisko");
            d = new RachunekDebetowy(r, MaxDebet);

            r_dest = new Rachunek("456", "imie", "nazwisko");

            d.Wplata(100);
            d.Przelew(100, r_dest);

            d_dest = new RachunekDebetowy(r_dest, MaxDebet);
            d_dest.Przelew(100, r);
            r.Wyplata(100);

            Assert.IsTrue(0 == d.Debt, "Błąd w naliczeniu debetu z rachunku źródłowego!", null);
            Assert.IsTrue(0 == d_dest.Debt, "Błąd w naliczeniu debetu z rachunku docelowego!", null);
            Assert.IsTrue(r.Saldo == 0, "Błąd w naliczaniu salda z rachunku źródłowego!", null);
            Assert.IsTrue(r_dest.Saldo == 0, "Błąd w naliczaniu salda z rachunku docelowego!", null);
        }
示例#19
0
 private void attach_Rachuneks(Rachunek entity)
 {
     this.SendPropertyChanging();
     entity.Uslugi = this;
 }
示例#20
0
 public void Dodaj(Rachunek r)
 {
     rachunki.Add(r);
 }
示例#21
0
 partial void InsertRachunek(Rachunek instance);
示例#22
0
 private void detach_Rachuneks(Rachunek entity)
 {
     this.SendPropertyChanging();
     entity.Uslugi = null;
 }
示例#23
0
 partial void UpdateRachunek(Rachunek instance);
示例#24
0
 partial void DeleteRachunek(Rachunek instance);
示例#25
0
 private void detach_Rachuneks(Rachunek entity)
 {
     this.SendPropertyChanging();
     entity.Rezerwacje = null;
 }
示例#26
0
 public abstract double Execute(Rachunek r); // wykonuje operacje w zależności od typu
示例#27
0
        public static string GenRtf(Osoba osoba, Umowa umowa, Rachunek rachunek)
        {
            AktywneSzablony szablon = new AktywneSzablony();

            string all = "";

            //all = szablon.get_Szablon(umowa.Rodzaj);
            all = RodzajeUmow.get_Szablon(umowa, rachunek);

            string tytul = "Rachunek ";

            switch (rachunek.Rodzaj)
            {
            case TypRachunku.Częściowy:
                tytul = "Rachunek częściowy";
                break;

            case TypRachunku.Ostateczny:
                tytul = "Rachunek ostateczny";
                break;

            default:
                tytul = "Rachunek";
                break;
            }

            switch (umowa.Rodzaj)
            {
            case RodzajUmowy.NaZlecenie:
                tytul += " do umowy zlecenie";
                break;

            case RodzajUmowy.NaZlecenieStudent:
                tytul += " do umowy zlecenie";
                break;

            case RodzajUmowy.ODzielo:
                tytul += " do umowy o dzieło";
                break;

            default:
                break;
            }

            tytul = tytul.ToUpper();

            all = all.Replace("%OSOBA%", "" + osoba.Imie + " " + osoba.Nazwisko);
            all = all.Replace("%DATA_DNIA%", "" + rachunek.DataDnia.ToString("dd.MM.yyyy"));
            all = all.Replace("%TYTUL_RACHUNKU%", "" + tytul);
            all = all.Replace("%NUMER_RACHUNKU%", "" + umowa.Numer);
            all = all.Replace("%WYNAGRODZENIEB%", "" +
                              string.Format("{0:F2}", rachunek.Wynagrodzenie));
            all = all.Replace("%KOSZTYU_P%", "" + szablon.get_Procenty(umowa.Rodzaj).KosztyUzyskania);
            all = all.Replace("%KOSZTYU%", "" +
                              string.Format("{0:F2}", szablon.get_KosztyUzyskania(umowa.Rodzaj, rachunek.Wynagrodzenie)));
            all = all.Replace("%PODSTAWAO%", "" +
                              string.Format("{0:F2}", szablon.get_PodstawaOpodatkowania(umowa.Rodzaj, rachunek.Wynagrodzenie)));
            all = all.Replace("%PODATEKD_P%", "" + szablon.get_Procenty(umowa.Rodzaj).PodatekDochodowy);

            decimal wyplata = szablon.get_DoWyplaty(umowa.Rodzaj, rachunek.Wynagrodzenie);

            all = all.Replace("%DOWYPLATY%", "" +
                              string.Format("{0:F2}", wyplata));

            decimal d      = wyplata;
            long    a      = (long)(d * 100);
            long    zl     = a / 100;
            long    groszy = a - zl * 100;

            string slownie = Slownie.innerTrim(Slownie.doubleSlownie(zl));

            if (groszy > 0)
            {
                slownie += " zł " + Slownie.innerTrim(Slownie.doubleSlownie(groszy)) + " gr";
            }

            all = all.Replace("%SLOWNIE%", "" + slownie);

            if (rachunek.WKasie)
            {
                all = all.Replace("%WKASIE_LUB_NAKONTO%", "Płatne w kasie");
            }
            else
            {
                all = all.Replace("%WKASIE_LUB_NAKONTO%", osoba.Bank + " " + osoba.Konto);
            }

            all = all.Replace("%DATA_WYKONANIA%", "" + rachunek.DataWykonania.ToShortDateString());
            all = all.Replace("%ROBOTA%", rachunek.Robota);

            all = all.Replace("%UBEZPIECZENIEZ_P%", "" +
                              string.Format("{0:F2}", szablon.get_Procenty(umowa.Rodzaj).UbezpieczenieZdrowotne_7));
            all = all.Replace("%UBEZPIECZENIEZ2_P%", "" +
                              string.Format("{0:F0}", szablon.get_Procenty(umowa.Rodzaj).UbezpieczenieZdrowotne_9));
            all = all.Replace("%UBEZPIECZENIEZ%", "" +
                              string.Format("{0:F2}", szablon.get_UbezpieczenieZdrowotne7(umowa.Rodzaj, rachunek.Wynagrodzenie)));
            all = all.Replace("%UBEZPIECZENIEZ2%", "" +
                              string.Format("{0:F2}", szablon.get_UbezpieczenieZdrowotne9(umowa.Rodzaj, rachunek.Wynagrodzenie)));

            all = all.Replace("%PODATEKD%", "" +
                              string.Format("{0:F2}",
                                            szablon.get_PodatekDochodowy(umowa.Rodzaj, rachunek.Wynagrodzenie)));

            return(all);
        }