/// <summary> /// Allows add a new "Entrega" to the database /// </summary> /// <param name="pEntrega">Entrega to be added</param> public void Agregar(EntregaInsumos pEntrega) { if (pEntrega == null) { throw new ArgumentNullException(nameof(pEntrega)); } string query = "INSERT INTO \"Entrega\" (\"idUsuario\", \"idPersona\", fecha) VALUES (@usuario, @persona, @fecha)"; try { using NpgsqlCommand comando = this._conexion.CreateCommand(); comando.CommandText = query; comando.Parameters.AddWithValue("@usuario", pEntrega.IdUsuario); comando.Parameters.AddWithValue("@persona", pEntrega.IdPersona); comando.Parameters.AddWithValue("@fecha", pEntrega.Fecha.ToString()); comando.ExecuteNonQuery(); } catch (PostgresException e) { throw new DAOException("Error al agregar entrega: " + e.Message); } catch (NpgsqlException e) { throw new DAOException("Error al agregar entrega: " + e.Message); } }
/// <summary> /// Agrega una entrega /// </summary> /// <param name="nombrePersona">nombre de la persona que retira</param> public static int AgregarEntrega(string nombrePersona) { int idPersona = ControladorPersona.Obtener(nombrePersona).IdPersona; EntregaInsumos entrega = new EntregaInsumos(IDUsuarioLogeado, idPersona, DateTime.Today); return(ControladorEntrega.Agregar(entrega)); }
/// <summary> /// Permite obtener una Entrega /// </summary> /// <param name="idEntrega">ID de la entrega a buscar</param> /// <returns>Entrega encontrada en caso de éxito. Null caso contrario</returns> public static EntregaInsumos Obtener(int idEntrega) { DAOFactory factory = DAOFactory.Instancia(); try { factory.IniciarConexion(); EntregaInsumos entrega = factory.EntregaDAO.Obtener(idEntrega); factory.FinalizarConexion(); return(entrega); } catch (DAOException e) { factory.RollBack(); factory.FinalizarConexion(); throw new LogicaException(e.Message); } }
/// <summary> /// Obtain an "Engtrega" by his ID /// </summary> /// <param name="pIdEntrega">ID to search by</param> public EntregaInsumos Obtener(int pIdEntrega) { string query = "SELECT * FROM \"Entrega\" WHERE \"idEntrega\" = '" + pIdEntrega + "'"; EntregaInsumos entrega = null; try { using NpgsqlCommand comando = this._conexion.CreateCommand(); comando.CommandText = query; using (NpgsqlDataAdapter adaptador = new NpgsqlDataAdapter(comando)) { DataTable tabla = new DataTable(); adaptador.Fill(tabla); foreach (DataRow fila in tabla.Rows) { int _id = Convert.ToInt32(fila["idEntrega"]); int _idUser = Convert.ToInt32(fila["idUsuario"]); int _idPersona = Convert.ToInt32(fila["idPersona"]); DateTime _fecha = Convert.ToDateTime(fila["fecha"]); entrega = new EntregaInsumos(_id, _idUser, _idPersona, _fecha); } tabla.Dispose(); } return(entrega); } catch (PostgresException e) { throw new DAOException("Error al obetener entrega: " + e.Message); } catch (NpgsqlException e) { throw new DAOException("Error al obetener entrega: " + e.Message); } }
/// <summary> /// Permite agregar una Entrega /// </summary> /// <param name="pEntrega">Entrega a agregar</param> /// <returns>-1 si tuvo éxito</returns> public static int Agregar(EntregaInsumos pEntrega) { if (pEntrega == null) { throw new ArgumentNullException(nameof(pEntrega)); } DAOFactory factory = DAOFactory.Instancia(); try { factory.IniciarConexion(); factory.EntregaDAO.Agregar(pEntrega); factory.FinalizarConexion(); return(-1); } catch (DAOException e) { factory.RollBack(); factory.FinalizarConexion(); throw new LogicaException(e.Message); } }