public async Task <List <ContasBancarias> > GetContasBancariasResultSet(NpgsqlCommand command) { List <ContasBancarias> list = new List <ContasBancarias>(); command.ExecuteNonQuery(); using var reader = await command.ExecuteReaderAsync(); while (await reader.ReadAsync()) { DataTable schemaTable = reader.GetSchemaTable(); JTokenWriter writer = new JTokenWriter(); writer.WriteStartObject(); foreach (DataRow row in schemaTable.Rows) { writer.WritePropertyName(row[0].ToString()); writer.WriteValue(reader[row[0].ToString()]); } writer.WriteEndObject(); JObject o = (JObject)writer.Token; var stringJson = o.ToString(); ContasBancarias p = JsonConvert.DeserializeObject <ContasBancarias>(stringJson); list.Add(p); } return(list); }
public ActionResult DeleteConfirmed(int id) { ContasBancarias contasBancarias = db.ContasBancarias.Find(id); db.ContasBancarias.Remove(contasBancarias); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "ContaBancariaId,NomeBanco,NomeProprietario,NumeroConta,Agencia,SaldoInicial,DataSaldoInicial,SaldoAtual,DataInsercao")] ContasBancarias contasBancarias) { if (ModelState.IsValid) { db.Entry(contasBancarias).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(contasBancarias)); }
// GET: Financeiro/ContasBancarias/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ContasBancarias contasBancarias = db.ContasBancarias.Find(id); if (contasBancarias == null) { return(HttpNotFound()); } return(View(contasBancarias)); }
public async Task <ContasBancarias> InsertContaBancaria(NpgsqlConnection conexao, ContasBancarias contaBancaria, int codigoEmpresa) { bool exists = await CheckExistContasBancarias(conexao, "contasbancarias", "numerobanco", contaBancaria.numeroBanco); if (exists) { contaBancaria.codigoEmpresa = codigoEmpresa; string sql = @"INSERT INTO contasbancarias(instituicao, numerobanco, agencia, conta, saldo, codigoempresa, dtcadastro, dtalteracao, status) VALUES (@instituicao, @numeroBanco, @agencia, @conta, @saldo, @codigoEmpresa, @dtCadastro, @dtAlteracao, @status) returning codigo;"; NpgsqlCommand command = new NpgsqlCommand(sql, conexao); command.Parameters.AddWithValue("@instituicao", contaBancaria.instituicao); command.Parameters.AddWithValue("@numerobanco", contaBancaria.numeroBanco); command.Parameters.AddWithValue("@agencia", contaBancaria.agencia); command.Parameters.AddWithValue("@conta", contaBancaria.conta); command.Parameters.AddWithValue("@saldo", contaBancaria.saldo); command.Parameters.AddWithValue("@codigoempresa", contaBancaria.codigoEmpresa); command.Parameters.AddWithValue("@dtCadastro", contaBancaria.dtCadastro); command.Parameters.AddWithValue("@dtAlteracao", contaBancaria.dtAlteracao); command.Parameters.AddWithValue("@status", contaBancaria.status); Object idInserido = await command.ExecuteScalarAsync(); contaBancaria.codigo = (int)idInserido; } else { throw new Exception("Conta Bancaria onde o número da conta é " + contaBancaria.numeroBanco + " já está cadastrada"); } return(contaBancaria); }
public override async Task <Empresas> Editar(Empresas empresa) { using (var conexao = GetCurrentConnection()) { conexao.Open(); NpgsqlTransaction transaction = conexao.BeginTransaction(); try { bool exists = await CheckExist(conexao, "empresas", "cnpj", empresa.cnpj, empresa.codigo); if (exists) { string sql = @"UPDATE empresas SET razaosocial = @razaoSocial, nomefantasia = @nomeFantasia, cnpj = @cnpj, ie = @ie, telefone = @telefone, email = @email, dtfundacao = @dtFundacao, qtdecotas = @qtdeCotas, codigocidade = @codigoCidade, logradouro = @logradouro, complemento = @complemento, bairro = @bairro, cep = @cep, dtalteracao = @dtAlteracao WHERE codigo = @codigo;"; NpgsqlCommand command = new NpgsqlCommand(sql, conexao); command.Parameters.AddWithValue("@codigo", empresa.codigo); command.Parameters.AddWithValue("@razaoSocial", empresa.razaoSocial); command.Parameters.AddWithValue("@nomeFantasia", empresa.nomeFantasia ?? (object)DBNull.Value); command.Parameters.AddWithValue("@cnpj", empresa.cnpj); command.Parameters.AddWithValue("@ie", empresa.ie ?? (object)DBNull.Value); command.Parameters.AddWithValue("@telefone", empresa.telefone); command.Parameters.AddWithValue("@email", empresa.email); command.Parameters.AddWithValue("@dtFundacao", empresa.dtFundacao); command.Parameters.AddWithValue("@qtdeCotas", empresa.qtdeCotas); command.Parameters.AddWithValue("@codigoCidade", empresa.codigoCidade); command.Parameters.AddWithValue("@logradouro", empresa.logradouro); command.Parameters.AddWithValue("@complemento", empresa.complemento ?? (object)DBNull.Value); command.Parameters.AddWithValue("@bairro", empresa.bairro); command.Parameters.AddWithValue("@cep", empresa.cep); command.Parameters.AddWithValue("@dtAlteracao", empresa.dtAlteracao); await command.ExecuteNonQueryAsync(); int qtdContas = empresa.contasBancarias.Count; if (qtdContas > 0) { for (int i = 0; i < qtdContas; i++) { ContasBancarias contaBancaria = empresa.contasBancarias[i]; contaBancaria.PrepareSave(); if (contaBancaria.codigo == 0) { empresa.contasBancarias[i] = await InsertContaBancaria(conexao, contaBancaria, empresa.codigo); } else if (contaBancaria.codigo > 0 && contaBancaria.status == "Ativo") { empresa.contasBancarias[i] = await UpdateContaBancaria(conexao, contaBancaria); } else { await DeleteContaBancaria(conexao, contaBancaria.codigo); empresa.contasBancarias.RemoveAt(i); } } } transaction.Commit(); return(empresa); } else { throw new Exception("Empresa já cadastrada"); } } catch { transaction.Rollback(); throw; } finally { conexao.Close(); } } }
public override async Task <Empresas> Inserir(Empresas empresa) { using (var conexao = GetCurrentConnection()) { conexao.Open(); NpgsqlTransaction transaction = conexao.BeginTransaction(); try { bool exists = await CheckExist(conexao, "empresas", "cnpj", empresa.cnpj); if (exists) { string sql = @"INSERT INTO empresas(razaosocial, nomefantasia, cnpj, ie, telefone, email, dtfundacao, qtdecotas, codigocidade, logradouro, complemento, bairro, cep, dtcadastro, dtalteracao, status) VALUES (@razaoSocial, @nomeFantasia, @cnpj, @ie, @telefone, @email, @dtFundacao, @qtdeCotas, @codigoCidade, @logradouro, @complemento, @bairro, @cep, @dtCadastro, @dtAlteracao, @status) returning codigo;"; NpgsqlCommand command = new NpgsqlCommand(sql, conexao); command.Parameters.AddWithValue("@razaoSocial", empresa.razaoSocial); command.Parameters.AddWithValue("@nomeFantasia", empresa.nomeFantasia ?? (object)DBNull.Value); command.Parameters.AddWithValue("@cnpj", empresa.cnpj); command.Parameters.AddWithValue("@ie", empresa.ie ?? (object)DBNull.Value); command.Parameters.AddWithValue("@telefone", empresa.telefone); command.Parameters.AddWithValue("@email", empresa.email); command.Parameters.AddWithValue("@dtFundacao", empresa.dtFundacao); command.Parameters.AddWithValue("@qtdeCotas", empresa.qtdeCotas); command.Parameters.AddWithValue("@codigoCidade", empresa.codigoCidade); command.Parameters.AddWithValue("@logradouro", empresa.logradouro); command.Parameters.AddWithValue("@complemento", empresa.complemento ?? (object)DBNull.Value); command.Parameters.AddWithValue("@bairro", empresa.bairro); command.Parameters.AddWithValue("@cep", empresa.cep); command.Parameters.AddWithValue("@dtCadastro", empresa.dtCadastro); command.Parameters.AddWithValue("@dtAlteracao", empresa.dtAlteracao); command.Parameters.AddWithValue("@status", empresa.status); Object idInserido = await command.ExecuteScalarAsync(); empresa.codigo = (int)idInserido; int qtdContas = empresa.contasBancarias.Count; if (qtdContas > 0) { for (int i = 0; i < qtdContas; i++) { ContasBancarias contaBancaria = empresa.contasBancarias[i]; contaBancaria.PrepareSave(); contaBancaria.Ativar(); empresa.contasBancarias[i] = await InsertContaBancaria(conexao, contaBancaria, empresa.codigo); } } transaction.Commit(); return(empresa); } else { throw new Exception("Empresa já cadastrada"); } } catch { transaction.Rollback(); throw; } finally { conexao.Close(); } } }
public async Task <ContasBancarias> UpdateContaBancaria(NpgsqlConnection conexao, ContasBancarias contaBancaria) { bool exists = await CheckExistContasBancarias(conexao, "contasbancarias", "numerobanco", contaBancaria.numeroBanco, contaBancaria.codigo); if (exists) { string sql = @"UPDATE contasbancarias SET instituicao = @instituicao, numerobanco = @numerobanco, agencia = @agencia, conta = @conta, saldo = @saldo, dtalteracao = @dtAlteracao WHERE codigo = @codigo;"; NpgsqlCommand command = new NpgsqlCommand(sql, conexao); command.Parameters.AddWithValue("@instituicao", contaBancaria.instituicao); command.Parameters.AddWithValue("@numerobanco", contaBancaria.numeroBanco); command.Parameters.AddWithValue("@agencia", contaBancaria.agencia); command.Parameters.AddWithValue("@conta", contaBancaria.conta); command.Parameters.AddWithValue("@saldo", contaBancaria.saldo); command.Parameters.AddWithValue("@codigoempresa", contaBancaria.codigoEmpresa); command.Parameters.AddWithValue("@dtAlteracao", contaBancaria.dtAlteracao); command.Parameters.AddWithValue("@codigo", contaBancaria.codigo); await command.ExecuteNonQueryAsync(); } else { throw new Exception("Conta Bancaria onde o número da conta é " + contaBancaria.numeroBanco + " já está cadastrada"); } return(contaBancaria); }