public async Task <IActionResult> Edit(int id) { var nalog = await _db.KorisnickiNalozi.FindAsync(id); var pass = Autentifikacija.GenerateRandomPassword(); var model = new KorisnickiNalogVM() { OsobaId = nalog.KorisnickiNalogId, KorisnickiNalogId = nalog.KorisnickiNalogId, UlogaKorisnika = nalog.UlogaKorisnika, KorisnickoIme = nalog.KorisnickoIme, Aktivan = nalog.Aktivan, Lozinka = pass, SendEmail = true, EmailBody = MyEmailHelper.GetKorisnickiPodatciEditEmailBody() }; return(PartialView("_Edit", model)); }
public async Task <IActionResult> Details(int id) { string randomLozinka = Autentifikacija.GenerateRandomPassword(); var model = await _db.Osobe.Where(w => w.OsobaId == id).Select(s => new OsobaVMs.OsobaDetailsVM() { OsobaQuickDetailsVM = GetOsobaQuickDetailsVMQuery(id).FirstOrDefault(), GrupeKandidataVM = _db.GrupaKandidati.Where(w => w.KandidatId == s.OsobaId).Select(gk => new GrupaVMs.GrupaKandidataVM() { GrupaKandidatiId = gk.GrupaKandidatiId, GrupaId = gk.GrupaId, Naziv = gk.Grupa.Naziv, Pocetak = gk.Grupa.Pocetak.ToString("d/M/yyyy H:mm"), KursKategorijaId = gk.Grupa.Kurs.KursTip.KursKategorijaId, KursKategorijaNaziv = gk.Grupa.Kurs.KursTip.KursKategorija.Naziv, KursTipId = gk.Grupa.Kurs.KursTipId, KursTipNaziv = gk.Grupa.Kurs.KursTip.Naziv, KursId = gk.Grupa.KursId, KursNaziv = gk.Grupa.Kurs.Naziv, ZaposlenikId = gk.Grupa.ZaposlenikId, ZaposlenikNaziv = gk.Grupa.Zaposlenik.Osoba.Ime + " " + gk.Grupa.Zaposlenik.Osoba.Prezime, CentarId = gk.Grupa.CentarId, CentarLokacija = gk.Grupa.Centar.Grad.Naziv, Status = gk.Grupa.Status, Cijena = (gk.Grupa.Cijena ?? gk.Grupa.Kurs.KursTip.Cijena) + "", Uplaceno = _db.UplateKandidata.Where(w => w.GrupaKandidatiId == gk.GrupaKandidatiId).Sum(sum => sum.Kolicina) + "", Odobren = gk.Odobren, Ocjena = _db.Ocjene.FirstOrDefault(w => w.GrupaKandidatiId == gk.GrupaKandidatiId), Polozio = true //TODO: zamjeniti sa stvarom vrijednoscu }).ToList() }) .FirstOrDefaultAsync(); if (model == null) { return(NotFound()); } return(View(model)); }
private IQueryable <OsobaVMs.OsobaQuickDetailsVM> GetOsobaQuickDetailsVMQuery(int id) { string randomLozinka = Autentifikacija.GenerateRandomPassword(); return(_db.Osobe.AsNoTracking().Where(w => w.OsobaId == id).Select(s => new OsobaVMs.OsobaQuickDetailsVM() { OsobaId = s.OsobaId, Ime = s.Ime, Prezime = s.Prezime, DatumRodjenja = s.DatumRodjenja, MjestoRodjenjaId = s.MjestoRodjenjaId, MjestoRodjenjaNaziv = s.MjestoRodjenja.Naziv, Spol = s.Spol, Email = s.Email, MjestoBoravkaId = s.MjestoBoravkaId, MjestoBoravkaNaziv = s.MjestoBoravka.Naziv, Adresa = s.Adresa, BrojMobitela = s.BrojMobitela, BrojTelefona = s.BrojTelefona, KakoSteSaznaliZaNas = s.KakoSteSaznaliZaNas, PodatciOFirmi = s.PodatciOFirmi, NazivFirme = s.NazivFirme, AdresaFirme = s.AdresaFirme, GradFirmeId = s.GradFirmeId, GradFirmeNaziv = s.GradFirma.Naziv, BrojTelefonaFirme = s.BrojTelefonaFirme, EmailFirme = s.EmailFirme, ZaposlenikCreateVM = new ZaposlenikVMs.ZaposlenikCreateVM() { OsobaId = s.OsobaId, OsobaNaziv = s.Ime + " " + s.Prezime, ZaposlenikVM = _db.Zaposlenici.Where(w => w.ZaposlenikId == s.OsobaId).Select(x => new ZaposlenikVMs.ZaposlenikVM() { ZaposlenikId = x.ZaposlenikId, StepenObrazovanja = x.StepenObrazovanja, BrojRacuna = x.BrojRacuna, BrojLicneKarte = x.BrojLicneKarte }).FirstOrDefault() }, KandidatCreateVM = new KandidatVMs.KandidatCreateVM() { OsobaId = s.OsobaId, OsobaNaziv = s.Ime + " " + s.Prezime, KandidatVM = _db.Kandidati.Where(w => w.KandidatId == s.OsobaId).Select(x => new KandidatVMs.KandidatVM() { KandidatId = x.KandidatId, Biljeske = x.Biljeske, DatumUpisa = x.DatumUpisa }).FirstOrDefault() }, KorisnickiNalog = s.KorisnickiNalog != null, KorisnickiNalogVM = s.KorisnickiNalog != null ? new KorisnickiNalogVM() { KorisnickiNalogId = s.KorisnickiNalog.KorisnickiNalogId, KorisnickoIme = s.KorisnickiNalog.KorisnickoIme, UlogaKorisnika = s.KorisnickiNalog.UlogaKorisnika, Aktivan = s.KorisnickiNalog.Aktivan, } : new KorisnickiNalogVM() { OsobaId = s.OsobaId, UlogaKorisnika = s.Zaposlenik != null ? UlogeKorisnika.AdministrativniRadnik : UlogeKorisnika.Kandidat, KorisnickoIme = s.Ime + " " + s.Prezime, Lozinka = randomLozinka, Aktivan = true, SendEmail = true, EmailBody = MyEmailHelper.GetKorisnickiPodatciCreateEmailBody(new Osoba() { Ime = s.Ime, Prezime = s.Prezime, Spol = s.Spol }) } })); }