// Cadastrar novo gasto no banco de dados public bool cadastrar(Gasto objGasto) { Banco db; try { db = new Banco(); db.transacao = Banco.conexao.BeginTransaction(); db.comando.CommandText = "INSERT INTO gasto (descricao, tipo, valor, dataGasto, obra_codigo, etapa_codigo) " + "VALUES (@de, @t, @v, @da, @oc, @ec)"; db.comando.Parameters.Add("@de", MySqlDbType.VarChar).Value = objGasto.getDescricao(); db.comando.Parameters.Add("@t", MySqlDbType.VarChar).Value = objGasto.getTipo(); db.comando.Parameters.Add("@v", MySqlDbType.Double).Value = objGasto.getValor(); db.comando.Parameters.Add("@da", MySqlDbType.DateTime).Value = objGasto.getData(); db.comando.Parameters.Add("@oc", MySqlDbType.Int32).Value = objGasto.getObraCodigo(); db.comando.Parameters.Add("@ec", MySqlDbType.Int32).Value = objGasto.getEtapaCodigo(); db.comando.Prepare(); db.comando.ExecuteNonQuery(); db.transacao.Commit(); return(true); } catch (Exception ex) { throw new Exception("Erro ao Cadastrar o Gasto na Base de Dados: " + ex.Message); } }
// Filtrar os gastos da obra de acordo com os filtros escolhidos pelo usuário public DataTable filtrar(Gasto objGasto, DateTime dataInicio, DateTime dataFim) { Banco db; try { db = new Banco(); db.comando.CommandText = "SELECT g.descricao, g.tipo, g.valor, g.dataGasto " + "FROM gasto g INNER JOIN obra o ON g.obra_codigo = o.codigo " + "WHERE g.dataGasto BETWEEN @di AND @df AND g.obra_codigo = @oc"; db.comando.Parameters.Add("@di", MySqlDbType.DateTime).Value = dataInicio; db.comando.Parameters.Add("@df", MySqlDbType.DateTime).Value = dataFim; db.comando.Parameters.Add("@oc", MySqlDbType.Int32).Value = objGasto.getObraCodigo(); db.comando.Prepare(); db.dreader = db.comando.ExecuteReader(); db.tabela = new DataTable(); db.tabela.Load(db.dreader); return(db.tabela); } catch (Exception ex) { throw new Exception("Erro ao Consultar os Gastos na Base de Dados: " + ex.Message); } }
// Alterar gasto no banco de dados public void alterar(Gasto objGasto) { Banco db; try { db = new Banco(); db.comando.CommandText = "UPDATE gasto SET descricao = @de, tipo = @t, valor = @v, dataGasto = @da " + "WHERE codigo = @c AND obra_codigo = @oc AND etapa_codigo = @ec"; db.comando.Parameters.Add("@de", MySqlDbType.VarChar).Value = objGasto.getDescricao(); db.comando.Parameters.Add("t", MySqlDbType.VarChar).Value = objGasto.getTipo(); db.comando.Parameters.Add("@v", MySqlDbType.Double).Value = objGasto.getValor(); db.comando.Parameters.Add("@da", MySqlDbType.DateTime).Value = objGasto.getData(); db.comando.Parameters.Add("@oc", MySqlDbType.Int32).Value = objGasto.getObraCodigo(); db.comando.Parameters.Add("@ec", MySqlDbType.Int32).Value = objGasto.getEtapaCodigo(); db.comando.Parameters.Add("@c", MySqlDbType.Int32).Value = objGasto.getCodigo(); db.comando.Prepare(); db.comando.ExecuteNonQuery(); } catch (Exception ex) { throw new Exception("Erro ao Alterar o Gasto na Base de Dados: " + ex.Message); } }