/*================================================================================ * GET PLUSES *================================================================================*/ public static FullObservableCollection <Pluses> GetPluses() { // Creamos la lista y el comando que extrae las líneas. FullObservableCollection <Pluses> lista = new FullObservableCollection <Pluses>(); using (OleDbConnection conexion = new OleDbConnection(App.Global.CadenaConexion)) { string comandoSQL = "SELECT * FROM Pluses ORDER BY Año;"; OleDbCommand comando = new OleDbCommand(comandoSQL, conexion); OleDbDataReader lector = null; try { conexion.Open(); lector = comando.ExecuteReader(); while (lector.Read()) { Pluses pluses = new Pluses(lector); lista.Add(pluses); pluses.Nuevo = false; pluses.Modificado = false; } } catch (Exception ex) { Utils.VerError("BdPluses.GetPluses", ex); } finally { lector?.Close(); } } return(lista); }
// USO DE LOS PLUSES // ---------------------------------------------------------------------------------------------------- public Pluses GetPluses(int año) { Pluses resultado = ListaPluses.FirstOrDefault(p => p.Año == año); if (resultado == null) { resultado = new Pluses(); } return(resultado); }
/*================================================================================ * GUARDAR PLUSES *================================================================================*/ public static void GuardarPluses(IEnumerable <Pluses> lista) { // Si la lista está vacía, salimos. if (lista == null || lista.Count() == 0) { return; } using (OleDbConnection conexion = new OleDbConnection(App.Global.CadenaConexion)) { string SQLInsertar = "INSERT INTO Pluses (Año, ImporteDietas, ImporteSabados, ImporteFestivos, " + " PlusNocturnidad, DietaMenorDescanso, PlusLimpieza, PlusPaqueteria, PlusNavidad) " + "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?);"; string SQLActualizar = "UPDATE Pluses SET Año=?, ImporteDietas=?, ImporteSabados=?, ImporteFestivos=?, PlusNocturnidad=?, " + " DietaMenorDescanso=?, PlusLimpieza=?, PlusPaqueteria=?, PlusNavidad=? " + "WHERE Id=?;"; try { conexion.Open(); foreach (Pluses pluses in lista) { if (pluses.Nuevo) { OleDbCommand comando = new OleDbCommand(SQLInsertar, conexion); Pluses.ParseToCommand(comando, pluses); comando.ExecuteNonQuery(); pluses.Nuevo = false; pluses.Modificado = false; } else if (pluses.Modificado) { OleDbCommand comando = new OleDbCommand(SQLActualizar, conexion); Pluses.ParseToCommand(comando, pluses); comando.ExecuteNonQuery(); pluses.Modificado = false; } } } catch (Exception ex) { Utils.VerError("BdPluses.GuardarPluses", ex); } } }