Exemple #1
0
        /// <summary>
        /// Metoda koja dodaje novi bankovni račun
        /// </summary>
        private void dodajNoviRacun(string iban, string nazivRacuna, decimal stanjeRacuna, Korisnik korisnik, Vrsta_racuna odabranaVrstaRacuna)
        {
            if (ProvjeraJedinstvenostiIbana(iban))
            {
                MessageBox.Show("Uneseni IBAN već postoji u bazi podataka.");
            }
            else
            {
                using (var db = new WalletEntities())
                {
                    db.Korisnik.Attach(korisnik);
                    db.Vrsta_racuna.Attach(odabranaVrstaRacuna);

                    Bankovni_racun noviBankovniRacun = new Bankovni_racun
                    {
                        iban          = iban,
                        naziv_racuna  = nazivRacuna,
                        stanje_racuna = stanjeRacuna,
                        Korisnik      = korisnik,
                        Vrsta_racuna  = odabranaVrstaRacuna
                    };
                    db.Bankovni_racun.Add(noviBankovniRacun);
                    db.SaveChanges();
                    db.Entry(korisnik).State            = System.Data.Entity.EntityState.Detached;
                    db.Entry(odabranaVrstaRacuna).State = System.Data.Entity.EntityState.Detached;
                }
                this.Close();
            }
        }
        //Klik gumba btnObrisi koji provodi brisanje računa, provodi se i brisanje transakcija vezane na račun, te brisanje kategorija vezane na iste transakcije.
        private void btnObrisi_Click(object sender, EventArgs e)
        {
            Bankovni_racun odabraniRacun = bankovniracunBindingSource.Current as Bankovni_racun;

            radnjaNadBankovnimRacunom.ObrisiRacun(odabraniRacun);
            bankovniracunBindingSource.DataSource = radnjaNadBankovnimRacunom.PrikaziBankovneRacunePremaKorisniku(trenutniKorisnik);
        }
Exemple #3
0
        //konstruktor za uređivanje postojećeg bankovnog računa koji također mijenja izgled forme namjenjen za uređivanje bankovnog računa
        public FrmBankovniRacunDodaj(Korisnik korisnik, Bankovni_racun racun)
        {
            odabraniRacun = racun;

            InitializeComponent();
            //mijenjanje izgleda i unaprijed unesenih stvari u formu jer se radi nad postojećim računom
            this.Text = "Uređivanje računa";
            lblMojiBankovniRacuni.Text     = "Uređivanje bankovnog računa";
            lblMojiBankovniRacuni.Location = new Point(this.Width / 2 - lblMojiBankovniRacuni.Width / 2, lblMojiBankovniRacuni.Location.Y);

            btnDodajNoviRacun.Text  = "Promijeni";
            txtIban.Enabled         = false;
            txtStanjeRacuna.Enabled = false;
            cboVrstaRacuna.Enabled  = false;

            txtNazivRacuna.Text  = odabraniRacun.naziv_racuna;
            txtIban.Text         = odabraniRacun.iban;
            txtStanjeRacuna.Text = odabraniRacun.stanje_racuna.ToString();

            using (var db = new WalletEntities())
            {
                Vrsta_racuna vrsta = (from t in db.Vrsta_racuna
                                      where t.id_vrsta_racuna == odabraniRacun.id_vrsta_racuna
                                      select t).First <Vrsta_racuna>();
                cboVrstaRacuna.Text = vrsta.naziv_vrste_racuna;
            }
        }
        /// <summary>
        /// Ova metoda služi kako bi korisnik mogao kupiti investiciju
        /// </summary>
        private void KupiInvesticiju()
        {
            Bankovni_racun bankovni_Racun = null;

            bankovni_Racun = bankovniracunBindingSource.Current as Bankovni_racun;
            Investicija investicija = null;

            investicija = investicijaBindingSource.Current as Investicija;

            using (var db = new WalletEntities())
            {
                db.Korisnik.Attach(trenutniKorisnik);
                db.Investicija.Attach(investicija);
                db.Bankovni_racun.Attach(bankovni_Racun);
                int idPort       = 0;
                int idVrsteTrans = 0;
                //dobavlja vanjski kljuc id_portfolia
                foreach (var item in db.Investicijski_portfolio)
                {
                    Investicijski_portfolio investicijski = (from t in db.Investicijski_portfolio
                                                             where t.id_korisnik == trenutniKorisnik.id_korisnik
                                                             select t).First();
                    idPort = investicijski.id_portfolia;
                }
                //dobavlja vanjski kljuc  za kupi transakciju, vrstu transakcije
                if (rBtnKupi.Checked == true)
                {
                    foreach (var item in db.Vrsta_transakcije)
                    {
                        Vrsta_transakcije vrsta = (from t in db.Vrsta_transakcije
                                                   where t.id_vrsta_transakcije == 2
                                                   select t).First();
                        idVrsteTrans = 2;
                    }
                }
                lblKriviTipPodatakaIznos.Hide();
                lblKriviTipPodatakaKolicina.Hide();

                Transakcija_investicije transakcija_Investicije = new Transakcija_investicije
                {
                    Investicija = investicija,
                    vrijeme_transakcije_investicije = dtpDatum.Value,
                    kolicina_investicije            = decimal.Parse(txtKolicina.Text),
                    iznos_transakcije_investicije   = decimal.Parse(txtIznosTransInv.Text),
                    Bankovni_racun       = bankovni_Racun,
                    id_portfolia         = idPort,
                    id_vrsta_transakcije = idVrsteTrans,
                };

                //lblKriviTipPodatakaKolicina.Visible = false;
                decimal ukupniIznos = decimal.Parse(txtKolicina.Text) * decimal.Parse(txtIznosTransInv.Text);
                bankovni_Racun.stanje_racuna = bankovni_Racun.stanje_racuna - ukupniIznos;
                db.Transakcija_investicije.Add(transakcija_Investicije);
                db.SaveChanges();
                txtKolicina.Clear();
                txtIznosTransInv.Clear();
            }
        }
Exemple #5
0
 /// <summary>
 /// Metoda koja uređuje odabrani bankovni račun
 /// </summary>
 private void urediRacun(Bankovni_racun bankovniRacun, string nazivRacuna, Vrsta_racuna odabranaVrstaRacuna)
 {
     using (var db = new WalletEntities())
     {
         db.Bankovni_racun.Attach(bankovniRacun);
         odabraniRacun.naziv_racuna = nazivRacuna;
         db.SaveChanges();
     }
     this.Close();
 }
        //Klik gumba btnUredi koji otvara formu FrmBankovniRacunDodaj u kojoj se može izmjeniti odabrani račun.
        private void btnUredi_Click(object sender, EventArgs e)
        {
            Bankovni_racun odabraniRacun = bankovniracunBindingSource.Current as Bankovni_racun;

            if (odabraniRacun != null)
            {
                MDI_Forme.FrmBankovniRacunDodaj formaDodavanjaRacuna = new FrmBankovniRacunDodaj(trenutniKorisnik, odabraniRacun);
                formaDodavanjaRacuna.ShowDialog();
                bankovniracunBindingSource.DataSource = radnjaNadBankovnimRacunom.PrikaziBankovneRacunePremaKorisniku(trenutniKorisnik);
            }
        }
        /// <summary>
        /// Dohvati listu s podacima o danom bankovnom računu.
        /// </summary>
        /// <param name="racun"></param>
        /// <returns></returns>
        private List <string> PodaciRacuna(Bankovni_racun racun)
        {
            List <string> detaljiRacuna = new List <string>();

            using (WalletEntities db = new WalletEntities())
            {
                db.Bankovni_racun.Attach(racun);
                detaljiRacuna.Add(racun.naziv_racuna);
                detaljiRacuna.Add(racun.stanje_racuna.ToString());

                db.Vrsta_racuna.Attach(racun.Vrsta_racuna);
                detaljiRacuna.Add(racun.Vrsta_racuna.naziv_vrste_racuna);
            }

            return(detaljiRacuna);
        }
        //Prilikom promjene binding sourcea trenutno selektiranog računa u combo boxu (cboRacun) dohvaćaju se informacije
        //o tom odabranom računu (na formi se prikazuju IBAN, vrsta računa i stanje računa)
        private void bankovniracunBindingSource_CurrentChanged(object sender, EventArgs e)
        {
            Bankovni_racun odabraniBankovniRacun = bankovniracunBindingSource.Current as Bankovni_racun;

            if (odabraniBankovniRacun != null)
            {
                lblIbanOdabranogRacuna.Text = odabraniBankovniRacun.iban;
                //dohvaćamo naziv vrste računa preko vanjskog ključa
                using (var db = new WalletEntities())
                {
                    Vrsta_racuna vrsta = (from t in db.Vrsta_racuna
                                          where t.id_vrsta_racuna == odabraniBankovniRacun.id_vrsta_racuna
                                          select t).First <Vrsta_racuna>();
                    lblVrstaOdabranogRacuna.Text = vrsta.naziv_vrste_racuna;
                }
                lblStanjeOdabranogRacuna.Text = odabraniBankovniRacun.stanje_racuna.ToString();
            }
            else
            {
                lblIbanOdabranogRacuna.Text   = "N/A";
                lblVrstaOdabranogRacuna.Text  = "N/A";
                lblStanjeOdabranogRacuna.Text = "N/A";
            }
        }