Пример #1
0
        public IActionResult Dodaj()
        {
            KorisnickiNalog korisnik = HttpContext.GetLogiraniKorisnik();
            Zaposlenik      z        = _context.Zaposlenici.Where(x => x.KorisnickiNalogId == korisnik.Id).FirstOrDefault();

            if (korisnik == null || z == null || z._VrstaZaposlenikaId != 2)
            {
                TempData["error_poruka"] = "Nemate pravo pristupa!";
                return(Redirect("/Autentifikacija/Index"));
            }
            UplateDodajVM model = new UplateDodajVM();

            model.Studenti = _context.Studenti.Select(a => new SelectListItem
            {
                Text  = a.Ime + " " + a.Prezime,
                Value = a.Id.ToString()
            }).ToList();
            model.Zaposlenici = _context.Zaposlenici.Select(a => new SelectListItem
            {
                Text  = a.Ime + " " + a.Prezime,
                Value = a.Id.ToString()
            }).ToList();
            model.TipoviUplata = _context.TipoviUplata.Select(a => new SelectListItem
            {
                Text  = a.Naziv,
                Value = a.Id.ToString()
            }).ToList();
            model.Datum = DateTime.Now;

            return(View(model));
        }
Пример #2
0
        public IActionResult Snimi(UplateDodajVM input)
        {
            if (!ModelState.IsValid)
            {
                GenerisiCmb(input);
                return(View("Dodaj", input));
            }

            Uplata uNova = new Uplata
            {
                Datum           = input.DatumUplate,
                FakturaID       = input.FakturaId,
                Iznos           = input.Iznos,
                KlijentID       = input.KlijentId,
                NacinPlacanjaID = input.NacinPlacanjaId
            };

            _context.Uplata.Add(uNova);
            _context.SaveChanges();

            Faktura fNadji = _context.Faktura.Find(input.FakturaId);

            fNadji.StatusFaktureID = 1; //Plaćena - Faktura je plaćena
            _context.SaveChanges();

            return(Redirect("/Prodaja/Fakture/Detalji?id=" + input.FakturaId));
        }
Пример #3
0
 private void GenerisiCmb(UplateDodajVM model)
 {
     model.NaciniPlacanja = _context.NacinPlacanja.Select(s => new SelectListItem
     {
         Value = s.NacinPlacanjaID.ToString(),
         Text  = s.Naziv
     }).ToList();
 }
Пример #4
0
        //public IActionResult Pretraga(string srchTxt)
        //{
        //    if (srchTxt == null)
        //        return RedirectToAction(nameof(Index));


        //    UplateIndexVM model = new UplateIndexVM();
        //    model.Uplate = db.Uplate.Include(x => x.Kupac).Where(y => y.Kupac.NazivKupca.StartsWith(srchTxt) || y.BrojIzvoda.StartsWith(srchTxt)).ToList();
        //    model.srchTxt = srchTxt;

        //    return View("Index", model);
        //}

        public IActionResult Dodaj(int KupacID)
        {
            UplateDodajVM model = new UplateDodajVM();

            model.KupacID = KupacID;

            model.NazivKupca = db.Kupci.Where(x => x.KupacID == KupacID).FirstOrDefault().NazivKupca;

            model.IznosUplate = 0;

            model.Dodaj = true;

            model.BrojIzvoda = "";

            return(View(model));
        }
Пример #5
0
        public IActionResult Dodaj(int FakturaId)
        {
            Faktura fDodaj = _context.Faktura.Find(FakturaId);

            Narudzba n = _context.Narudzba.Where(w => w.FakturaID == fDodaj.FakturaID).Include(i => i.Klijent).FirstOrDefault();

            UplateDodajVM model = new UplateDodajVM
            {
                FakturaId         = fDodaj.FakturaID,
                DatumUplate       = DateTime.Now,
                Datum             = DateTime.Now.ToString("dd/MM/yyyy"),
                Iznos             = UkupnaCijena(FakturaId) * 1.17,
                KlijentId         = n.KlijentID,
                KlijentImePrezime = n.Klijent.Ime + " " + n.Klijent.Prezime
            };

            model.IznosSaPDV = model.Iznos.ToString("F2");

            GenerisiCmb(model);

            return(PartialView(model));
        }
Пример #6
0
        public IActionResult Snimi(UplateDodajVM model)
        {
            KorisnickiNalog korisnik = HttpContext.GetLogiraniKorisnik();
            Zaposlenik      z        = _context.Zaposlenici.Where(x => x.KorisnickiNalogId == korisnik.Id).FirstOrDefault();

            if (korisnik == null || z == null || z._VrstaZaposlenikaId != 2)
            {
                TempData["error_poruka"] = "Nemate pravo pristupa!";
                return(Redirect("/Autentifikacija/Index"));
            }
            Uplata novaUplata = new Uplata
            {
                Datum         = model.Datum,
                Iznos         = model.Iznos,
                _StudentId    = model.StudentId,
                _TipUplateId  = model.TipoviUplataId,
                _ZaposlenikId = model.ZaposleniciId
            };

            _context.Uplate.Add(novaUplata);
            _context.SaveChanges();

            return(Redirect("/ManagerModul/Uplate/Index"));
        }
Пример #7
0
        public IActionResult Snimi(UplateDodajVM model)
        {
            if (model.Dodaj == true)
            {
                Uplata nova = new Uplata();

                nova.Iznos      = model.IznosUplate;
                nova.KupacID    = model.KupacID;
                nova.Datum      = model.Datum;
                nova.BrojIzvoda = model.BrojIzvoda;

                db.Uplate.Add(nova);
                db.SaveChanges();


                // regulisanje prema racunima

                double NoviIznos = Math.Round(model.IznosUplate, 2);

                List <Racun> racuni = db.Racuni.Where(x => x.Placeno == false && x.KupacID == nova.KupacID).ToList();

                foreach (var x in racuni)
                {
                    double DosadPlaceno = x.DosadPlaceno;
                    double IznosRacuna  = x.UkupnoBezPDV + (x.UkupnoBezPDV * x.PDV); // ukupno za naplatu

                    double potrebno = Math.Round(IznosRacuna - DosadPlaceno, 4);

                    if (NoviIznos >= potrebno)
                    {
                        NoviIznos     -= potrebno;
                        x.DosadPlaceno = Math.Round(x.DosadPlaceno, 4) + potrebno;
                        x.Placeno      = true;
                    }
                    else
                    {
                        x.DosadPlaceno = Math.Round(x.DosadPlaceno, 2) + NoviIznos;
                        NoviIznos      = 0;
                    }

                    if (Math.Round(x.DosadPlaceno, 4) == Math.Round(IznosRacuna, 4))
                    {
                        x.Placeno = true;
                    }

                    if (NoviIznos == 0)
                    {
                        db.Racuni.Update(x);
                        db.SaveChanges();

                        break;
                    }

                    db.Racuni.Update(x);
                    db.SaveChanges();
                }

                if (NoviIznos > 0)
                {
                    Kupac kupac = db.Kupci.Where(x => x.KupacID == model.KupacID).FirstOrDefault();
                    kupac.Kredit += Math.Round(NoviIznos, 4);

                    db.Kupci.Update(kupac);
                    db.SaveChanges();
                }
            }

            return(RedirectToAction(nameof(Index)));
        }