using System; using System.Collections.Generic; using System.Data.SqlClient; using MLL; using Microsoft.Data.SqlClient; namespace DALL { public class DALAgenda { private readonly string connectionString; public DALAgenda(string conn) { connectionString = conn; } // 🔹 LISTAR public List Listar() { var lista = new List(); try { using (SqlConnection conn = new SqlConnection(connectionString)) { conn.Open(); string sql = "SELECT * FROM Agenda"; using (SqlCommand cmd = new SqlCommand(sql, conn)) using (SqlDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { lista.Add(new ModeloAgenda( Convert.ToInt32(dr["ID_AGENDA"]), dr["CODIGO"]?.ToString(), dr["COMPROMISSO"]?.ToString(), dr["dDATA"]?.ToString(), dr["AVISAR"]?.ToString(), dr["FUNC"]?.ToString(), dr["DIA"]?.ToString(), dr["HORA"]?.ToString(), dr["REALIZADO"]?.ToString(), dr["OS_VINC"]?.ToString() )); } } } } catch { return new List(); } return lista; }//Listar agenda // 🔹 INSERIR public bool Inserir(ModeloAgenda obj) { try { using (SqlConnection conn = new SqlConnection(connectionString)) { conn.Open(); string sql = @"INSERT INTO Agenda (COMPROMISSO, dDATA, AVISAR, FUNC, DIA, HORA, REALIZADO, OS_VINC) VALUES (@COMPROMISSO, @dDATA, @AVISAR, @FUNC, @DIA, @HORA, @REALIZADO, @OS_VINC)"; using (SqlCommand cmd = new SqlCommand(sql, conn)) { //cmd.Parameters.AddWithValue("@CODIGO", obj.CODIGO ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@COMPROMISSO", obj.COMPROMISSO ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@dDATA", obj.dDATA ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@AVISAR", obj.AVISAR ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@FUNC", obj.FUNC ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@DIA", obj.DIA ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@HORA", obj.HORA ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@REALIZADO", obj.REALIZADO ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@OS_VINC", obj.OS_VINC ?? (object)DBNull.Value); return cmd.ExecuteNonQuery() > 0; } } } catch { return false; } }//Inserir agenda // 🔹 ALTERAR public bool Alterar(ModeloAgenda obj) { try { using (SqlConnection conn = new SqlConnection(connectionString)) { conn.Open(); string sql = @"UPDATE Agenda SET CODIGO = @CODIGO, COMPROMISSO = @COMPROMISSO, dDATA = @dDATA, AVISAR = @AVISAR, FUNC = @FUNC, DIA = @DIA, HORA = @HORA, REALIZADO = @REALIZADO, OS_VINC = @OS_VINC WHERE ID_AGENDA = @ID"; using (SqlCommand cmd = new SqlCommand(sql, conn)) { cmd.Parameters.AddWithValue("@ID", obj.ID_AGENDA); cmd.Parameters.AddWithValue("@CODIGO", obj.CODIGO ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@COMPROMISSO", obj.COMPROMISSO ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@dDATA", obj.dDATA ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@AVISAR", obj.AVISAR ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@FUNC", obj.FUNC ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@DIA", obj.DIA ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@HORA", obj.HORA ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@REALIZADO", obj.REALIZADO ?? (object)DBNull.Value); cmd.Parameters.AddWithValue("@OS_VINC", obj.OS_VINC ?? (object)DBNull.Value); return cmd.ExecuteNonQuery() > 0; } } } catch { return false; } }//Alterar agenda // 🔹 EXCLUIR public bool Excluir(int id) { try { using (SqlConnection conn = new SqlConnection(connectionString)) { conn.Open(); string sql = "DELETE FROM Agenda WHERE ID_AGENDA = @ID"; using (SqlCommand cmd = new SqlCommand(sql, conn)) { cmd.Parameters.AddWithValue("@ID", id); return cmd.ExecuteNonQuery() > 0; } } } catch { return false; } }//Excluir agenda public ModeloAgenda CarregarModeloAgenda(int cod) { try { using (SqlConnection conn = new SqlConnection(connectionString)) { conn.Open(); string sql = "SELECT * FROM Agenda WHERE ID_AGENDA = @ID"; using (SqlCommand cmd = new SqlCommand(sql, conn)) { cmd.Parameters.AddWithValue("@ID", cod); using (SqlDataReader dr = cmd.ExecuteReader()) { if (dr.Read()) { return new ModeloAgenda( Convert.ToInt32(dr["ID_AGENDA"]), dr["CODIGO"]?.ToString(), dr["COMPROMISSO"]?.ToString(), dr["dDATA"]?.ToString(), dr["AVISAR"]?.ToString(), dr["FUNC"]?.ToString(), dr["DIA"]?.ToString(), dr["HORA"]?.ToString(), dr["REALIZADO"]?.ToString(), dr["OS_VINC"]?.ToString() ); } } } } } catch { throw new Exception("Erro ao carregar compromisso da agenda."); } return null; }//Carregar Modelo Agenda } }