public IActionResult Brojilo(int PrikljucakID) { BrojiloVM brojilo = new BrojiloVM(); if (_context.Brojilo.FirstOrDefault(x => x.PrikljucakID == PrikljucakID) != null) { Brojilo b = _context.Brojilo.FirstOrDefault(x => x.PrikljucakID == PrikljucakID); brojilo.StaroStanjeJeftina = b.StaroStanjeJeftina; brojilo.StatoStanjeSkupa = b.StaroStanjeSkupa; brojilo.TrenutnoStanjeJeftina = b.TrenutnoStanjeJeftina;; brojilo.TrenutnoStanjeSkupa = b.TrenutnoStanjeSkupa; brojilo.Datum = DateTime.Now; brojilo.PrikljucakID = PrikljucakID; brojilo.BrojiloID = b.Id; return(PartialView("Brojilo", brojilo)); } else { brojilo.StaroStanjeJeftina = 0; brojilo.StatoStanjeSkupa = 0; brojilo.TrenutnoStanjeJeftina = 0; brojilo.TrenutnoStanjeSkupa = 0; brojilo.PrikljucakID = PrikljucakID; brojilo.Datum = DateTime.Now; brojilo.BrojiloID = 0; return(PartialView("Brojilo", brojilo)); } }
public IActionResult SnimiBrojilo(BrojiloVM brojilo) { if (!ModelState.IsValid) { return(RedirectToAction("Prikazi", new { KlijentID = _context.Prikljucak.FirstOrDefault(x => x.Id == brojilo.PrikljucakID).KlijentID })); } Brojilo b = new Data.Models.Brojilo(); if (_context.Brojilo.FirstOrDefault(x => x.Id == brojilo.BrojiloID) != null) { b = _context.Brojilo.FirstOrDefault(x => x.Id == brojilo.BrojiloID); b.StaroStanjeJeftina = b.TrenutnoStanjeJeftina; b.StaroStanjeSkupa = b.TrenutnoStanjeSkupa; b.TrenutnoStanjeJeftina = brojilo.TrenutnoStanjeJeftina; b.TrenutnoStanjeSkupa = brojilo.TrenutnoStanjeSkupa; _context.Brojilo.Update(b); _context.SaveChanges(); CijenaKwh cijena = _context.Cijena.FirstOrDefault(); Racun racun = new Racun(); racun.Potrosnja_jeftina = brojilo.TrenutnoStanjeJeftina - brojilo.StaroStanjeJeftina; racun.Potrosnja_Skupa = brojilo.TrenutnoStanjeSkupa - brojilo.StatoStanjeSkupa; racun.BrojiloID = brojilo.BrojiloID; racun.Ukupno = racun.Potrosnja_jeftina * cijena.CijenaKwHJeftina + racun.Potrosnja_Skupa * cijena.CijenaKwhSkupa; racun.Mjesec = DateTime.Now.Month.ToString(); racun.CijenaId = cijena.Id; if (_context.Dugovanja.FirstOrDefault(x => x.BrojiloID == brojilo.BrojiloID) != null) { racun.Dug = _context.Dugovanja.FirstOrDefault(x => x.BrojiloID == brojilo.BrojiloID).Ukupno; Dugovanja d = _context.Dugovanja.FirstOrDefault(x => x.BrojiloID == brojilo.BrojiloID); d.RacuniUkupno = d.RacuniUkupno + racun.Ukupno; d.Ukupno = d.RacuniUkupno - d.Uplata; _context.Dugovanja.Update(d); _context.SaveChanges(); } else { Dugovanja dug = new Dugovanja(); dug.BrojiloID = brojilo.BrojiloID; dug.RacuniUkupno = _context.Racun.Where(x => x.BrojiloID == brojilo.BrojiloID).Select(x => x.Ukupno).Sum() + racun.Ukupno; dug.Uplata = 0; dug.Ukupno = dug.RacuniUkupno - dug.Uplata; _context.Dugovanja.Add(dug); _context.SaveChanges(); racun.Dug = _context.Racun.Where(x => x.BrojiloID == brojilo.BrojiloID).Select(x => x.Ukupno).Sum(); } _context.Racun.Add(racun); _context.SaveChanges(); return(RedirectToAction("Prikazi", new { KlijentID = _context.Prikljucak.FirstOrDefault(x => x.Id == brojilo.PrikljucakID).KlijentID })); } else { b.StaroStanjeJeftina = brojilo.TrenutnoStanjeJeftina; b.StaroStanjeSkupa = brojilo.TrenutnoStanjeSkupa; b.TrenutnoStanjeJeftina = brojilo.TrenutnoStanjeJeftina; b.TrenutnoStanjeSkupa = brojilo.TrenutnoStanjeSkupa; b.PrikljucakID = brojilo.PrikljucakID; b.Datum = brojilo.Datum; _context.Brojilo.Add(b); _context.SaveChanges(); Brojilo bro = _context.Brojilo.FirstOrDefault(x => x.PrikljucakID == brojilo.PrikljucakID); CijenaKwh cijena = _context.Cijena.FirstOrDefault(); Racun racun = new Racun(); racun.Potrosnja_jeftina = brojilo.TrenutnoStanjeJeftina - brojilo.StaroStanjeJeftina; racun.Potrosnja_Skupa = brojilo.TrenutnoStanjeSkupa - brojilo.StatoStanjeSkupa; racun.BrojiloID = bro.Id; racun.Ukupno = racun.Potrosnja_jeftina * cijena.CijenaKwHJeftina + racun.Potrosnja_Skupa * cijena.CijenaKwhSkupa; racun.Mjesec = DateTime.Now.Month.ToString(); racun.CijenaId = cijena.Id; racun.Dug = 0; Dugovanja dug = new Dugovanja(); dug.BrojiloID = bro.Id; dug.RacuniUkupno = _context.Racun.Where(x => x.BrojiloID == brojilo.BrojiloID).Select(x => x.Ukupno).Sum() + racun.Ukupno; dug.Uplata = 0; dug.Ukupno = dug.RacuniUkupno - dug.Uplata; _context.Dugovanja.Add(dug); _context.SaveChanges(); _context.Racun.Add(racun); _context.SaveChanges(); return(RedirectToAction("Prikazi", new { KlijentID = _context.Prikljucak.FirstOrDefault(x => x.Id == brojilo.PrikljucakID).KlijentID })); } }