public GodisnjiModel ReadGodisnjiDetalji(int _id) { GodisnjiModel god_detalji = new GodisnjiModel(); god_detalji.GodisnjiDetalji = new List <Godisnji_detalji>(); god_detalji.GodisnjiPlan = new Godisnji_plan(); this.Connect(); using (MySqlCommand command = new MySqlCommand()) { command.Connection = connection; command.CommandText = "SELECT * FROM godisnji_detalji " + "WHERE id_god = @id_god " + "ORDER BY id_god ASC"; command.CommandType = CommandType.Text; command.Parameters.AddWithValue("@id_god", _id); connection.Open(); using (MySqlDataReader sdr = command.ExecuteReader()) { if (sdr.HasRows) { while (sdr.Read()) { Godisnji_detalji detalj = new Godisnji_detalji() { Id = Convert.ToInt32(sdr["id"]), Id_god = Convert.ToInt32(sdr["id_god"]), Mjesec = Convert.ToInt32(sdr["mjesec"]), Naziv_mjeseca = sdr["naziv_mjeseca"].ToString(), Ukupno_dana = Convert.ToInt32(sdr["ukupno_dana"]), Radnih_dana = Convert.ToInt32(sdr["radnih_dana"]), Subota_dana = Convert.ToInt32(sdr["subota_dana"]), Nedjelja_dana = Convert.ToInt32(sdr["nedjelja_dana"]), Blagdana_dana = Convert.ToInt32(sdr["blagdana_dana"]), Nastavnih_dana = Convert.ToInt32(sdr["nastavnih_dana"]), Praznika_dana = Convert.ToInt32(sdr["praznika_dana"]), Br_sati = Convert.ToInt32(sdr["br_sati"]), Odmor_dana = Convert.ToInt32(sdr["odmor_dana"]), Odmor_sati = Convert.ToInt32(sdr["odmor_sati"]), Mj_fond_sati = Convert.ToInt32(sdr["mj_fond_sati"]) }; god_detalji.GodisnjiDetalji.Add(detalj); } } } connection.Close(); } god_detalji.GodisnjiPlan = ReadGodisnjiPlan(_id); return(god_detalji); }
public bool UpdateGodisnjiPlan(GodisnjiModel model) { int br_radnih_dana = 0; int br_dana_godina_odmor = 0; int ukupni_rad_dana = 0; int god_fond_sati = 0; foreach (Godisnji_detalji detalj in model.GodisnjiDetalji) { br_radnih_dana += detalj.Radnih_dana; br_dana_godina_odmor += detalj.Odmor_dana; } ukupni_rad_dana += br_radnih_dana - br_dana_godina_odmor; god_fond_sati += ukupni_rad_dana * 8; try { this.Connect(); using (MySqlCommand command = new MySqlCommand()) { command.Connection = connection; command.CommandText = "UPDATE godisnji_plan " + "SET " + "ak_godina = @ak_godina, " + "br_radnih_dana = @br_radnih_dana, " + "br_dana_godina_odmor = @br_dana_godina_odmor, " + "ukupni_rad_dana = @ukupni_rad_dana, " + "god_fond_sati = @god_fond_sati " + "WHERE id_god = @id_god " + "AND id_pedagog = @id_pedagog"; command.CommandType = CommandType.Text; command.Parameters.AddWithValue("@id_god", model.GodisnjiPlan.Id_god); command.Parameters.AddWithValue("@id_pedagog", PlaniranjeSession.Trenutni.PedagogId); command.Parameters.AddWithValue("@ak_godina", model.GodisnjiPlan.Ak_godina); command.Parameters.AddWithValue("@br_radnih_dana", br_radnih_dana); command.Parameters.AddWithValue("@br_dana_godina_odmor", br_dana_godina_odmor); command.Parameters.AddWithValue("@ukupni_rad_dana", ukupni_rad_dana); command.Parameters.AddWithValue("@god_fond_sati", god_fond_sati); connection.Open(); command.ExecuteNonQuery(); } } catch { connection.Close(); return(false); } finally { connection.Close(); } foreach (Godisnji_detalji detalj in model.GodisnjiDetalji) { try { this.Connect(); using (MySqlCommand command = new MySqlCommand()) { command.Connection = connection; command.CommandText = "UPDATE godisnji_detalji " + "SET " + "mjesec = @mjesec, " + "naziv_mjeseca = @naziv_mjeseca, " + "radnih_dana = @radnih_dana, " + "subota_dana = @subota_dana, " + "nedjelja_dana = @nedjelja_dana, " + "blagdana_dana = @blagdana_dana, " + "nastavnih_dana = @nastavnih_dana, " + "ukupno_dana = @ukupno_dana, " + "praznika_dana = @praznika_dana, " + "br_sati = @br_sati, " + "odmor_dana = @odmor_dana, " + "odmor_sati = @odmor_sati, " + "mj_fond_sati = @mj_fond_sati " + "WHERE " + "id = @id AND id_god = @id_god"; command.CommandType = CommandType.Text; command.Parameters.AddWithValue("@id", detalj.Id); command.Parameters.AddWithValue("@id_god", detalj.Id_god); command.Parameters.AddWithValue("@mjesec", detalj.Mjesec); command.Parameters.AddWithValue("@naziv_mjeseca", detalj.Naziv_mjeseca); command.Parameters.AddWithValue("@radnih_dana", detalj.Radnih_dana); command.Parameters.AddWithValue("@subota_dana", detalj.Subota_dana); command.Parameters.AddWithValue("@nedjelja_dana", detalj.Nedjelja_dana); command.Parameters.AddWithValue("@blagdana_dana", detalj.Blagdana_dana); command.Parameters.AddWithValue("@nastavnih_dana", detalj.Nastavnih_dana); command.Parameters.AddWithValue("@praznika_dana", detalj.Praznika_dana); command.Parameters.AddWithValue("@ukupno_dana", (detalj.Radnih_dana + detalj.Subota_dana + detalj.Nedjelja_dana + detalj.Blagdana_dana)); command.Parameters.AddWithValue("@br_sati", detalj.Radnih_dana * 8); command.Parameters.AddWithValue("@odmor_dana", detalj.Odmor_dana); command.Parameters.AddWithValue("@odmor_sati", detalj.Odmor_dana * 8); command.Parameters.AddWithValue("@mj_fond_sati", (detalj.Radnih_dana * 8) - (detalj.Odmor_dana * 8)); connection.Open(); command.ExecuteNonQuery(); } } catch { connection.Close(); return(false); } finally { connection.Close(); } } return(true); }
public bool CreateGodisnjiPlan(GodisnjiModel model) { int br_radnih_dana = 0; int br_dana_godina_odmor = 0; int ukupni_rad_dana = 0; int god_fond_sati = 0; foreach (Godisnji_detalji detalj in model.GodisnjiDetalji) { br_radnih_dana += detalj.Radnih_dana; br_dana_godina_odmor += detalj.Odmor_dana; } ukupni_rad_dana += br_radnih_dana - br_dana_godina_odmor; god_fond_sati += ukupni_rad_dana * 8; try { this.Connect(); using (MySqlCommand command = new MySqlCommand()) { command.Connection = connection; command.CommandText = "INSERT INTO godisnji_plan " + "(id_god, id_pedagog, ak_godina, br_radnih_dana, br_dana_godina_odmor, ukupni_rad_dana, god_fond_sati) " + " VALUES (@id_god, @id_pedagog, @ak_godina, @br_radnih_dana, @br_dana_godina_odmor, @ukupni_rad_dana, @god_fond_sati)"; command.CommandType = CommandType.Text; command.Parameters.AddWithValue("@id_god", model.GodisnjiPlan.Id_god); command.Parameters.AddWithValue("@id_pedagog", PlaniranjeSession.Trenutni.PedagogId); command.Parameters.AddWithValue("@ak_godina", model.GodisnjiPlan.Ak_godina); command.Parameters.AddWithValue("@br_radnih_dana", br_radnih_dana); command.Parameters.AddWithValue("@br_dana_godina_odmor", br_dana_godina_odmor); command.Parameters.AddWithValue("@ukupni_rad_dana", ukupni_rad_dana); command.Parameters.AddWithValue("@god_fond_sati", god_fond_sati); connection.Open(); command.ExecuteNonQuery(); } } catch { connection.Close(); return(false); } finally { connection.Close(); } int id = 0; this.Connect(); using (MySqlCommand command = new MySqlCommand()) { command.Connection = connection; command.CommandText = "SELECT id_god FROM godisnji_plan ORDER BY id_god DESC LIMIT 1"; command.CommandType = CommandType.Text; connection.Open(); using (MySqlDataReader sdr = command.ExecuteReader()) { if (sdr.HasRows && sdr.FieldCount == 1) { while (sdr.Read()) { id = Convert.ToInt32(sdr["id_god"]); } } else { return(false); } } connection.Close(); } foreach (Godisnji_detalji detalj in model.GodisnjiDetalji) { try { this.Connect(); using (MySqlCommand command = new MySqlCommand()) { command.Connection = connection; command.CommandText = "INSERT INTO godisnji_detalji " + " (id_god, mjesec, naziv_mjeseca, radnih_dana, subota_dana, nedjelja_dana, blagdana_dana, nastavnih_dana, ukupno_dana, " + "praznika_dana, br_sati, odmor_dana, odmor_sati, mj_fond_sati)" + " VALUES (@id_god, @mjesec, @naziv_mjeseca, @radnih_dana, @subota_dana, @nedjelja_dana, @blagdana_dana, @nastavnih_dana, @ukupno_dana, " + "@praznika_dana, @br_sati, @odmor_dana, @odmor_sati, @mj_fond_sati)"; command.CommandType = CommandType.Text; command.Parameters.AddWithValue("@id_god", id); command.Parameters.AddWithValue("@mjesec", detalj.Mjesec); command.Parameters.AddWithValue("@naziv_mjeseca", detalj.Naziv_mjeseca); command.Parameters.AddWithValue("@radnih_dana", detalj.Radnih_dana); command.Parameters.AddWithValue("@subota_dana", detalj.Subota_dana); command.Parameters.AddWithValue("@nedjelja_dana", detalj.Nedjelja_dana); command.Parameters.AddWithValue("@blagdana_dana", detalj.Blagdana_dana); command.Parameters.AddWithValue("@nastavnih_dana", detalj.Nastavnih_dana); command.Parameters.AddWithValue("@praznika_dana", detalj.Praznika_dana); command.Parameters.AddWithValue("@ukupno_dana", (detalj.Radnih_dana + detalj.Subota_dana + detalj.Nedjelja_dana + detalj.Blagdana_dana)); command.Parameters.AddWithValue("@br_sati", detalj.Radnih_dana * 8); command.Parameters.AddWithValue("@odmor_dana", detalj.Odmor_dana); command.Parameters.AddWithValue("@odmor_sati", detalj.Odmor_dana * 8); command.Parameters.AddWithValue("@mj_fond_sati", (detalj.Radnih_dana * 8) - (detalj.Odmor_dana * 8)); connection.Open(); command.ExecuteNonQuery(); } } catch { connection.Close(); return(false); } finally { connection.Close(); } } return(true); }