public async Task <ActionResult> RangListaView(string jmbag) { log.LogWarning("Pregled rang liste pokrenuto"); string URL = "https://www.isvu.hr/apiproba/vu/313/student/jmbag/{0}/sumarno"; StudentInfo studentInfo = null; if (String.IsNullOrEmpty(jmbag)) { return(View("RangListaView", studentInfo)); } string studentId = jmbag; var client = new HttpClient(); var byteArray = Encoding.ASCII.GetBytes("d1.mev:okay965228siqu"); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(byteArray)); try { studentInfo = new StudentInfo(); string test; using (var streamTask = await client.GetStreamAsync(String.Format(URL, studentId))) { StreamReader reader = new StreamReader(streamTask, Encoding.UTF8); test = reader.ReadToEnd(); e_Index.Studomat.RootObject studomat = JsonConvert.DeserializeObject <e_Index.Studomat.RootObject>(test); if (studomat != null) { studentInfo.Naziv = studomat._embedded.student.prezime + " " + studomat._embedded.student.ime; Semestar tempSemestar; Kolegij tempKolegij; int ectsUkupno = 0; int ectsOsvojeno = 0; int kolegijEcts = 0; int kolegijOcjena = 0; float TP = 0; foreach (var studij in studomat._embedded.upisaniElementiStruktureStudija) { ectsUkupno = 0; ectsOsvojeno = 0; Studij studijInfo = new Studij() { Naziv = studij.naziv }; foreach (var kolegij in studij._embedded.polozeniPredmeti) { //Provjera semestra tempSemestar = studijInfo.Semestri.FirstOrDefault(x => x.Oznaka == kolegij._embedded.predmet._embedded.semestar.redniBroj); if (tempSemestar == null) { tempSemestar = new Semestar() { Oznaka = kolegij._embedded.predmet._embedded.semestar.redniBroj }; studijInfo.Semestri.Add(tempSemestar); } //Dodavanje kolegija u semestar tempKolegij = new Kolegij(); tempKolegij.ECTS = (int)kolegij._embedded.predmet.ectsBodovi; kolegijEcts = (int)kolegij._embedded.predmet.ectsBodovi; ectsUkupno += tempKolegij.ECTS; if (kolegij._embedded.ispit != null) { tempKolegij.Ocjena = kolegij._embedded.ispit.ocjena; kolegijOcjena = Int32.Parse(kolegij._embedded.ispit.ocjena); tempKolegij.Profesor = kolegij._embedded.ispit._embedded.ocjenjivac.prezime + " " + kolegij._embedded.ispit._embedded.ocjenjivac.ime; TP = (kolegijOcjena * kolegijEcts) + TP; } tempSemestar.Kolegiji.Add(tempKolegij); if (kolegij._embedded.predmet._embedded.status.sifra == 5) { ectsOsvojeno += tempKolegij.ECTS; tempKolegij.Polozen = true; } } try { foreach (var predmet in studij._embedded.nepolozeniPredmeti) { var www = JObject.FromObject(predmet); string w2 = www.ToString(); e_Index.Studomat.PolozeniPredmeti kolegij = JsonConvert.DeserializeObject <e_Index.Studomat.PolozeniPredmeti>(w2); tempSemestar = studijInfo.Semestri.FirstOrDefault(x => x.Oznaka == kolegij._embedded.predmet._embedded.semestar.redniBroj); if (tempSemestar == null) { tempSemestar = new e_Index.Misc.Semestar() { Oznaka = kolegij._embedded.predmet._embedded.semestar.redniBroj }; studijInfo.Semestri.Add(tempSemestar); } //Dodavanje kolegija u semestar tempKolegij = new Kolegij(); tempKolegij.Naziv = kolegij._embedded.predmet.naziv; tempKolegij.ECTS = (int)kolegij._embedded.predmet.ectsBodovi; ectsUkupno += tempKolegij.ECTS; if (kolegij._embedded.ispit != null) { tempKolegij.Ocjena = kolegij._embedded.ispit.ocjena; tempKolegij.Profesor = kolegij._embedded.ispit._embedded.ocjenjivac.prezime + " " + kolegij._embedded.ispit._embedded.ocjenjivac.ime; ectsOsvojeno += tempKolegij.ECTS; } tempSemestar.Kolegiji.Add(tempKolegij); if (kolegij._embedded.predmet._embedded.status.sifra == 5) { ectsOsvojeno += tempKolegij.ECTS; tempKolegij.Polozen = true; } } } catch (WebException we) { var webResponse = we.Response as HttpWebResponse; if (webResponse != null && webResponse.StatusCode == System.Net.HttpStatusCode.NotFound) { ViewBag.Error = "Nepostojeći JMBAG studenta test!"; } else { ViewBag.Error = we.Message; } } studijInfo.ECTS_Osvojeno = ectsOsvojeno; studijInfo.ECTS_Ukupno = ectsUkupno; studentInfo.ectsUkupno = ectsUkupno; studentInfo.ECTSOsvojeno = ectsOsvojeno; studentInfo.TePr = TP / ectsOsvojeno; //godina studija studentInfo.godina = 1; if (ectsUkupno > 70) { studentInfo.godina = 2; } if (ectsUkupno > 130) { studentInfo.godina = 3; } //upis podataka u tablicu ... log.LogWarning("prije provjere " + checkStudentInfo(studentId)); if (checkStudentInfo(studentId) >= 1) { log.LogWarning("update provjere "); updateStudentInfo(studentInfo, studentId); } else { log.LogWarning("insert provjere "); insertStudentInfo(studentInfo, studentId); } //dohvat svih prijavljenih studenata studentInfo.SviStudenti = selectAllStudentInfo(); List <StudentInfo> stud = selectAllStudentInfo(); log.LogWarning("glavna metoda: " + stud.Count); foreach (var StudentInfo in stud) { log.LogWarning("glavna metoda: " + StudentInfo.Naziv); } } } } } catch (Exception ex) { log.LogWarning("Greška kod čitanja podataka"); ViewBag.Error = ex.Message; studentInfo = null; } return(View("RangListaView", studentInfo)); }
public async Task <ActionResult> Ocjene(string jmbag) // public ActionResult PregledStudomata(string jmbag) { log.LogWarning("PregledStudomata pokrenuto"); string URL = "https://www.isvu.hr/apiproba/vu/313/student/jmbag/{0}/sumarno"; //change StudentInfo studentInfo = null; if (String.IsNullOrEmpty(jmbag)) { return(View("PregledStudomat", studentInfo)); } string studentId = jmbag; var client = new HttpClient(); var byteArray = Encoding.ASCII.GetBytes("d1.mev:okay965228siqu"); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(byteArray)); try { studentInfo = new StudentInfo(); string test; using (var streamTask = await client.GetStreamAsync(String.Format(URL, studentId))) { StreamReader reader = new StreamReader(streamTask, Encoding.UTF8); test = reader.ReadToEnd(); e_Index.Studomat.RootObject studomat = JsonConvert.DeserializeObject <e_Index.Studomat.RootObject>(test); Semestar tempSemestar; Kolegij tempKolegij; if (studomat != null) { studentInfo.Naziv = studomat._embedded.student.prezime + " " + studomat._embedded.student.ime; int ectsUkupno = 0; int ectsOsvojeno = 0; foreach (var studij in studomat._embedded.upisaniElementiStruktureStudija) { ectsUkupno = 0; ectsOsvojeno = 0; Studij studijInfo = new Studij() { Naziv = studij.naziv }; foreach (var kolegij in studij._embedded.polozeniPredmeti) { //Provjera semestra tempSemestar = studijInfo.Semestri.FirstOrDefault(x => x.Oznaka == kolegij._embedded.predmet._embedded.semestar.redniBroj); if (tempSemestar == null) { tempSemestar = new Semestar() { Oznaka = kolegij._embedded.predmet._embedded.semestar.redniBroj }; studijInfo.Semestri.Add(tempSemestar); } //Dodavanje kolegija u semestar tempKolegij = new Kolegij(); tempKolegij.Naziv = kolegij._embedded.predmet.naziv; tempKolegij.ECTS = (int)kolegij._embedded.predmet.ectsBodovi; ectsUkupno += tempKolegij.ECTS; if (kolegij._embedded.ispit != null) { tempKolegij.Ocjena = kolegij._embedded.ispit.ocjena; tempKolegij.Profesor = kolegij._embedded.ispit._embedded.ocjenjivac.prezime + " " + kolegij._embedded.ispit._embedded.ocjenjivac.ime; } tempSemestar.Kolegiji.Add(tempKolegij); if (kolegij._embedded.predmet._embedded.status.sifra == 5) { ectsOsvojeno += tempKolegij.ECTS; tempKolegij.Polozen = true; } } foreach (var predmet in studij._embedded.nepolozeniPredmeti) { try { var www = JObject.FromObject(predmet); string w2 = www.ToString(); e_Index.Studomat.PolozeniPredmeti kolegij = JsonConvert.DeserializeObject <e_Index.Studomat.PolozeniPredmeti>(w2); tempSemestar = studijInfo.Semestri.FirstOrDefault(x => x.Oznaka == kolegij._embedded.predmet._embedded.semestar.redniBroj); if (tempSemestar == null) { tempSemestar = new e_Index.Misc.Semestar() { Oznaka = kolegij._embedded.predmet._embedded.semestar.redniBroj }; studijInfo.Semestri.Add(tempSemestar); } //Dodavanje kolegija u semestar tempKolegij = new Kolegij(); tempKolegij.Naziv = kolegij._embedded.predmet.naziv; tempKolegij.ECTS = (int)kolegij._embedded.predmet.ectsBodovi; ectsUkupno += tempKolegij.ECTS; if (kolegij._embedded.ispit != null) { tempKolegij.Ocjena = kolegij._embedded.ispit.ocjena; tempKolegij.Profesor = kolegij._embedded.ispit._embedded.ocjenjivac.prezime + " " + kolegij._embedded.ispit._embedded.ocjenjivac.ime; ectsOsvojeno += tempKolegij.ECTS; } tempSemestar.Kolegiji.Add(tempKolegij); if (kolegij._embedded.predmet._embedded.status.sifra == 5) { ectsOsvojeno += tempKolegij.ECTS; tempKolegij.Polozen = true; } } catch { } } studijInfo.ECTS_Osvojeno = ectsOsvojeno; studijInfo.ECTS_Ukupno = ectsUkupno; studentInfo.Studiji.Add(studijInfo); } } } } catch (WebException we) { var webResponse = we.Response as HttpWebResponse; if (webResponse != null && webResponse.StatusCode == System.Net.HttpStatusCode.NotFound) { ViewBag.Error = "Nepostojeći JMBAG studenta!"; } else { ViewBag.Error = we.Message; } } catch (Exception ee) { ViewBag.Error = ee.Message; } return(View("PregledStudomat", studentInfo)); }
public async Task <ActionResult> Predmeti(string jmbag) // public ActionResult PregledStudomata(string jmbag) { log.LogWarning("PregledStudomata pokrenuto"); string URL = "https://www.isvu.hr/apiproba/vu/313/student/jmbag/{0}/sumarno"; StudentInfo studentInfo = null; if (String.IsNullOrEmpty(jmbag)) { return(View("PregledStudomat", studentInfo)); } string studentId = jmbag; var client = new HttpClient(); var byteArray = Encoding.ASCII.GetBytes("d1.mev:okay965228siqu"); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(byteArray)); try { studentInfo = new StudentInfo(); string test; using (var streamTask = await client.GetStreamAsync(String.Format(URL, studentId))) { StreamReader reader = new StreamReader(streamTask, Encoding.UTF8); test = reader.ReadToEnd(); e_Index.Studomat.RootObject studomat = JsonConvert.DeserializeObject <e_Index.Studomat.RootObject>(test); Semestar tempSemestar; Kolegij tempKolegij; if (studomat != null) { studentInfo.Naziv = studomat._embedded.student.prezime + " " + studomat._embedded.student.ime; foreach (var studij in studomat._embedded.upisaniElementiStruktureStudija) { Studij studijInfo = new Studij() { Naziv = studij.naziv }; Semestar trenutni = new Semestar(); int semestar = 0; List <Kolegij> listKolegija = new List <Kolegij>(); foreach (var predmet in studij._embedded.nepolozeniPredmeti) { try { var www = JObject.FromObject(predmet); string w2 = www.ToString(); e_Index.Studomat.PolozeniPredmeti kolegij = JsonConvert.DeserializeObject <e_Index.Studomat.PolozeniPredmeti>(w2); if (kolegij._embedded.predmet._embedded.semestar.redniBroj > semestar) { semestar = kolegij._embedded.predmet._embedded.semestar.redniBroj; } tempSemestar = studijInfo.Semestri.FirstOrDefault(x => x.Oznaka == kolegij._embedded.predmet._embedded.semestar.redniBroj); if (tempSemestar == null) { tempSemestar = new e_Index.Misc.Semestar() { Oznaka = kolegij._embedded.predmet._embedded.semestar.redniBroj }; studijInfo.Semestri.Add(tempSemestar); } //Dodavanje kolegija u semestar tempKolegij = new Kolegij(); tempKolegij.Naziv = kolegij._embedded.predmet.naziv; int sifra = kolegij._embedded.predmet.sifra; tempSemestar.Kolegiji.Add(tempKolegij); //spajanje na bazu podataka SqlConnection connection = new SqlConnection(); connection.ConnectionString = "Data Source=dev1.mev.hr;" + "Initial Catalog=piis2018_e7_podaci1;" + "User id=piis2018_e7_user;" + "Password=4A9Nktuc4cVx"; string query = "SELECT * FROM dolasci WHERE idKorisnik=" + jmbag + " AND idPredmet=" + sifra; try { SqlCommand sqlcommand = new SqlCommand(query, connection); connection.Open(); SqlDataReader sqlreader = sqlcommand.ExecuteReader(); //Ako je veæ kolegij upisan u bazu podataka if (sqlreader.HasRows == true) { while (sqlreader.Read()) { ViewData["tjedan1"] = sqlreader["tjedan1"]; ViewData["tjedan2"] = sqlreader["tjedan2"]; ViewData["tjedan3"] = sqlreader["tjedan3"]; ViewData["tjedan4"] = sqlreader["tjedan4"]; ViewData["tjedan5"] = sqlreader["tjedan5"]; ViewData["tjedan6"] = sqlreader["tjedan6"]; ViewData["tjedan7"] = sqlreader["tjedan7"]; ViewData["tjedan8"] = sqlreader["tjedan8"]; ViewData["tjedan9"] = sqlreader["tjedan9"]; ViewData["tjedan10"] = sqlreader["tjedan10"]; ViewData["tjedan11"] = sqlreader["tjedan11"]; ViewData["tjedan12"] = sqlreader["tjedan12"]; ViewData["tjedan13"] = sqlreader["tjedan13"]; ViewData["tjedan14"] = sqlreader["tjedan14"]; ViewData["tjedan15"] = sqlreader["tjedan15"]; ViewData["ttjedan1"] = sqlreader["ttjedan1"]; ViewData["ttjedan2"] = sqlreader["ttjedan2"]; ViewData["ttjedan3"] = sqlreader["ttjedan3"]; ViewData["ttjedan4"] = sqlreader["ttjedan4"]; ViewData["ttjedan5"] = sqlreader["ttjedan5"]; ViewData["ttjedan6"] = sqlreader["ttjedan6"]; ViewData["ttjedan7"] = sqlreader["ttjedan7"]; ViewData["ttjedan8"] = sqlreader["ttjedan8"]; ViewData["ttjedan9"] = sqlreader["ttjedan9"]; ViewData["ttjedan10"] = sqlreader["ttjedan10"]; ViewData["ttjedan11"] = sqlreader["ttjedan11"]; ViewData["ttjedan12"] = sqlreader["ttjedan12"]; ViewData["ttjedan13"] = sqlreader["ttjedan13"]; ViewData["ttjedan14"] = sqlreader["ttjedan14"]; ViewData["ttjedan15"] = sqlreader["ttjedan15"]; } } else //Ako ne postoji zapis u bazi podataka stvori ga { using (SqlConnection openCon = new SqlConnection("Data Source=dev1.mev.hr;" + "Initial Catalog=piis2018_e7_podaci1;" + "User id=piis2018_e7_user;" + "Password=4A9Nktuc4cVx")) { string saveStaff = "INSERT INTO dolasci (idKorisnik, idPredmet, tjedan1, tjedan2, tjedan3, tjedan4, tjedan5, tjedan6, tjedan7, tjedan8, tjedan9, tjedan10, tjedan11, tjedan12, tjedan13, tjedan14, tjedan15, ttjedan1, ttjedan2, ttjedan3, ttjedan4, ttjedan5, ttjedan6, ttjedan7, ttjedan8, ttjedan9, ttjedan10, ttjedan11, ttjedan12, ttjedan13, ttjedan14, ttjedan15, imePrezime, imePredmeta) VALUES (@korisnik, @predmet, '1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1',@imePrezime,@imePredmeta)"; using (SqlCommand querySaveStaff = new SqlCommand(saveStaff)) { querySaveStaff.Connection = openCon; querySaveStaff.Parameters.Add("@korisnik", SqlDbType.VarChar, 50).Value = jmbag; querySaveStaff.Parameters.Add("@predmet", SqlDbType.VarChar, 50).Value = sifra; querySaveStaff.Parameters.Add("@imePrezime", SqlDbType.VarChar, 50).Value = studentInfo.Naziv; querySaveStaff.Parameters.Add("@imePredmeta", SqlDbType.VarChar, 50).Value = tempKolegij.Naziv; openCon.Open(); querySaveStaff.ExecuteNonQuery(); } } } } catch (SqlException e) { log.LogWarning(e.Message); } finally { connection.Close(); } } catch (Exception e) { e.StackTrace.ToString(); } } return(View("Studenti", studijInfo.Semestri.Last(x => x.Oznaka == semestar))); } } } } catch (WebException we) { var webResponse = we.Response as HttpWebResponse; if (webResponse != null && webResponse.StatusCode == System.Net.HttpStatusCode.NotFound) { ViewBag.Error = "Nepostojeæi JMBAG studenta!"; } else { ViewBag.Error = we.Message; } } catch (Exception ee) { ViewBag.Error = ee.Message; } return(View("Studenti")); }