internal void Editar(SecagemMecanicaGraos caracterizacao, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Secagem Mecanica de Graos bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@"update crt_sec_mec_graos c set c.empreendimento = :empreendimento, c.atividade = :atividade, c.numero_secadores = :numero_secadores, c.geometria_coord_atv_x = :geometria_coord_atv_x, c.geometria_coord_atv_y = :geometria_coord_atv_y, c.geometria_id = :geometria_id, c.geometria_tipo = :geometria_tipo, c.tid = :tid where c.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroEntrada("empreendimento", caracterizacao.EmpreendimentoId, DbType.Int32); comando.AdicionarParametroEntrada("atividade", caracterizacao.Atividade, DbType.Int32); comando.AdicionarParametroEntrada("numero_secadores", caracterizacao.NumeroSecadores, DbType.Int32); comando.AdicionarParametroEntrada("geometria_id", caracterizacao.CoordenadaAtividade.Id, DbType.Int32); comando.AdicionarParametroEntrada("geometria_tipo", caracterizacao.CoordenadaAtividade.Tipo, DbType.Int32); comando.AdicionarParametroEntrada("geometria_coord_atv_x", caracterizacao.CoordenadaAtividade.CoordX, DbType.Decimal); comando.AdicionarParametroEntrada("geometria_coord_atv_y", caracterizacao.CoordenadaAtividade.CoordY, DbType.Decimal); comando.AdicionarParametroEntrada("id", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Limpar os dados do banco //Secadores comando = bancoDeDados.CriarComando(@"delete from {0}crt_sec_mec_graos_cap_sec c where c.caracterizacao = :caracterizacao", EsquemaBanco); comando.DbCommand.CommandText += String.Format(" {0}", comando.AdicionarNotIn("and", "c.id", DbType.Int32, caracterizacao.Secadores.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); //Materias-Prima Florestal Consumida comando = bancoDeDados.CriarComando(@"delete from {0}crt_sec_mec_graos_mat_fl_c c where c.caracterizacao = :caracterizacao", EsquemaBanco); comando.DbCommand.CommandText += String.Format(" {0}", comando.AdicionarNotIn("and", "c.id", DbType.Int32, caracterizacao.MateriasPrimasFlorestais.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Secadores if (caracterizacao.Secadores != null && caracterizacao.Secadores.Count > 0) { foreach (Secador item in caracterizacao.Secadores) { if (item.Id > 0) { comando = bancoDeDados.CriarComando(@"update {0}crt_sec_mec_graos_cap_sec c set c.caracterizacao = :caracterizacao, c.identificador = :identificador, c.capacidade = :capacidade, c.tid = :tid where c.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"insert into {0}crt_sec_mec_graos_cap_sec c (id, caracterizacao, identificador, capacidade, tid) values (seq_crt_sec_mec_graos_cap_sec.nextval, :caracterizacao, :identificador, :capacidade, :tid ) returning c.id into :id" , EsquemaBanco); comando.AdicionarParametroSaida("id", DbType.Int32); } comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("identificador", item.Identificador, DbType.Int32); comando.AdicionarParametroEntrada("capacidade", item.Capacidade, DbType.Decimal); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); if (item.Id <= 0) { item.Id = Convert.ToInt32(comando.ObterValorParametro("id")); } } } #endregion #region Materias-Prima Florestal Consumida if (caracterizacao.MateriasPrimasFlorestais != null && caracterizacao.MateriasPrimasFlorestais.Count > 0) { foreach (MateriaPrima item in caracterizacao.MateriasPrimasFlorestais) { if (item.Id > 0) { comando = bancoDeDados.CriarComando(@"update {0}crt_sec_mec_graos_mat_fl_c c set c.caracterizacao = :caracterizacao, c.materia_prima_tipo = :materia_prima_tipo, c.unidade = :unidade, c.quantidade = :quantidade, c.tid = :tid where c.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}crt_sec_mec_graos_mat_fl_c c (id, caracterizacao, materia_prima_tipo, unidade, quantidade, tid) values (seq_crt_sec_mec_graos_mat_fl_c.nextval, :caracterizacao, :materia_prima_tipo, :unidade, :quantidade, :tid ) returning c.id into :id" , EsquemaBanco); comando.AdicionarParametroSaida("id", DbType.Int32); } comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("materia_prima_tipo", item.MateriaPrimaConsumida, DbType.Int32); comando.AdicionarParametroEntrada("unidade", item.Unidade, DbType.Int32); comando.AdicionarParametroEntrada("quantidade", item.Quantidade, DbType.Decimal); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); if (item.Id <= 0) { item.Id = Convert.ToInt32(comando.ObterValorParametro("id")); } } } #endregion #region Histórico Historico.Gerar(caracterizacao.Id, eHistoricoArtefatoCaracterizacao.secagemmecanicagraos, eHistoricoAcao.atualizar, bancoDeDados, null); #endregion bancoDeDados.Commit(); } }
internal void Editar(PTVOutro PTV, BancoDeDados banco) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); Comando comando = null; #region Update comando = bancoDeDados.CriarComando(@" update tab_ptv_outrouf set tid=:tid, numero=:numero, data_emissao=:data_emissao, data_ativacao=:data_ativacao, data_cancelamento=:data_cancelamento, situacao=:situacao, interessado=:interessado, interessado_cnpj_cpf=:interessado_cnpj_cpf, interessado_endereco=:interessado_endereco, interessado_estado=:interessado_estado, interessado_municipio=:interessado_municipio, destinatario=:destinatario, valido_ate=:valido_ate, resp_tecnico=:resp_tecnico, resp_tecnico_num_hab=:resp_tecnico_num_hab, estado=:estado, municipio=:municipio, credenciado=:credenciado, declaracao_adicional=:declaracao_adicional, declaracao_adicional_formatado=:declaracao_adicional_formatado where id=:id" , Esquema); comando.AdicionarParametroEntrada("id", PTV.Id, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroEntrada("numero", PTV.Numero > 0 ? PTV.Numero : (object)DBNull.Value, DbType.Int64); comando.AdicionarParametroEntrada("data_emissao", PTV.DataEmissao.Data, DbType.DateTime); comando.AdicionarParametroEntrada("data_ativacao", PTV.DataAtivacao.Data, DbType.DateTime); comando.AdicionarParametroEntrada("data_cancelamento", PTV.DataCancelamento.Data, DbType.DateTime); comando.AdicionarParametroEntrada("situacao", PTV.Situacao, DbType.Int32); comando.AdicionarParametroEntrada("interessado", DbType.String, 120, PTV.Interessado); comando.AdicionarParametroEntrada("interessado_cnpj_cpf", DbType.String, 20, PTV.InteressadoCnpjCpf); comando.AdicionarParametroEntrada("interessado_endereco", DbType.String, 200, PTV.InteressadoEndereco); comando.AdicionarParametroEntrada("interessado_estado", PTV.InteressadoEstadoId, DbType.Int32); comando.AdicionarParametroEntrada("interessado_municipio", PTV.InteressadoMunicipioId, DbType.Int32); comando.AdicionarParametroEntrada("destinatario", PTV.DestinatarioID, DbType.Int32); comando.AdicionarParametroEntrada("valido_ate", PTV.ValidoAte.Data, DbType.DateTime); comando.AdicionarParametroEntrada("resp_tecnico", DbType.String, 120, PTV.RespTecnico); comando.AdicionarParametroEntrada("resp_tecnico_num_hab", DbType.String, 8, PTV.RespTecnicoNumHab); comando.AdicionarParametroEntrada("estado", PTV.Estado, DbType.Int32); comando.AdicionarParametroEntrada("municipio", PTV.Municipio, DbType.Int32); comando.AdicionarParametroEntrada("credenciado", PTV.CredenciadoId, DbType.Int32); comando.AdicionarParametroEntrada("declaracao_adicional", PTV.DeclaracaoAdicional, DbType.String); comando.AdicionarParametroEntrada("declaracao_adicional_formatado", PTV.DeclaracaoAdicional, DbType.String); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Limpar Dados comando = bancoDeDados.CriarComando(@"delete from tab_ptv_outrouf_produto ", UsuarioCredenciado); comando.DbCommand.CommandText += String.Format("where ptv = :ptv {0}", comando.AdicionarNotIn("and", "id", DbType.Int32, PTV.Produtos.Select(p => p.Id).ToList())); comando.AdicionarParametroEntrada("ptv", PTV.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); comando = bancoDeDados.CriarComando(@"delete from tab_ptv_outro_arquivo ", UsuarioCredenciado); comando.DbCommand.CommandText += String.Format("where ptv = :ptv {0}", comando.AdicionarNotIn("and", "id", DbType.Int32, PTV.Anexos.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("ptv", PTV.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); comando = bancoDeDados.CriarComando(@"delete from tab_ptv_outrouf_declaracao ", UsuarioCredenciado); comando.DbCommand.CommandText += "where ptv = :ptv"; comando.AdicionarParametroEntrada("ptv", PTV.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Produto PTV // // PTV.Produtos.ForEach(item => { if (item.Id > 0) { comando = bancoDeDados.CriarComando(@" update tab_ptv_outrouf_produto set tid = :tid, ptv = :ptv, origem_tipo = :origem_tipo, numero_origem = :numero_origem, cultura = :cultura,cultivar = :cultivar, quantidade = :quantidade, unidade_medida = :unidade_medida where id = :id" , UsuarioCredenciado); comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32); comando.AdicionarParametroEntrada("ptv", item.PTV, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into tab_ptv_outrouf_produto(id, tid, ptv, origem_tipo, numero_origem, cultura, cultivar, quantidade, unidade_medida) values(seq_tab_ptv_outrouf_prod.nextval,:tid,:ptv,:origem_tipo,:numero_origem,:cultura,:cultivar,:quantidade,:unidade_medida)" , UsuarioCredenciado); comando.AdicionarParametroEntrada("ptv", PTV.Id, DbType.Int32); } comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroEntrada("origem_tipo", item.OrigemTipo, DbType.Int32); comando.AdicionarParametroEntrada("numero_origem", item.OrigemNumero, DbType.Int64); comando.AdicionarParametroEntrada("cultura", item.Cultura, DbType.Int32); comando.AdicionarParametroEntrada("cultivar", item.Cultivar, DbType.Int32); comando.AdicionarParametroEntrada("quantidade", item.Quantidade, DbType.Decimal); comando.AdicionarParametroEntrada("unidade_medida", item.UnidadeMedida, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); }); #endregion #region Declaracao PTV comando = bancoDeDados.CriarComando(@" insert into tab_ptv_outrouf_declaracao (id, tid, ptv, declaracao_adicional, cultivar, praga) values (seq_tab_ptv_outrouf_declaracao.nextval, :tid, :ptv, :declaracao, :cultivar, :praga)" , Esquema); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroEntrada("ptv", PTV.Id, DbType.Int32); comando.AdicionarParametroEntrada("declaracao", DbType.Int32); comando.AdicionarParametroEntrada("cultivar", DbType.Int32); comando.AdicionarParametroEntrada("praga", DbType.Int32); PTV.Declaracoes.ForEach(item => { comando.SetarValorParametro("declaracao", item.IdDeclaracao); comando.SetarValorParametro("cultivar", item.IdCultivar); comando.SetarValorParametro("praga", item.IdPraga); bancoDeDados.ExecutarNonQuery(comando); }); #endregion #region Arquivos if (PTV.Anexos != null && PTV.Anexos.Count > 0) { foreach (Anexo item in PTV.Anexos) { if (item.Id > 0) { comando = bancoDeDados.CriarComando(@"update tab_ptv_outro_arquivo a set a.ptv = :ptv, a.arquivo = :arquivo, a.ordem = :ordem, a.descricao = :descricao, a.tid = :tid where a.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"insert into tab_ptv_outro_arquivo a (id, ptv, arquivo, ordem, descricao, tid) values ({0}seq_ptv_arquivo.nextval, :ptv, :arquivo, :ordem, :descricao, :tid)" , EsquemaBanco); } comando.AdicionarParametroEntrada("ptv", PTV.Id, DbType.Int32); comando.AdicionarParametroEntrada("arquivo", item.Arquivo.Id, DbType.Int32); comando.AdicionarParametroEntrada("ordem", item.Ordem, DbType.Int32); comando.AdicionarParametroEntrada("descricao", DbType.String, 100, item.Descricao); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } } #endregion Historico.Gerar(PTV.Id, eHistoricoArtefato.emitirptvoutro, eHistoricoAcao.atualizar, bancoDeDados); bancoDeDados.Commit(); } }
private void Editar(UnidadeConsolidacao unidadeConsolidacao, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco, EsquemaCredenciadoBanco)) { bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@"update {0}crt_unidade_consolidacao set codigo_uc = :codigo_uc, local_livro_disponivel = :local_livro_disponivel, tipo_apresentacao_produto = :tipo_apresentacao_produto, tid = :tid where id = :id" , EsquemaCredenciadoBanco); comando.AdicionarParametroEntrada("id", unidadeConsolidacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("codigo_uc", unidadeConsolidacao.CodigoUC, DbType.Int64); comando.AdicionarParametroEntrada("local_livro_disponivel", DbType.String, 100, unidadeConsolidacao.LocalLivroDisponivel); comando.AdicionarParametroEntrada("tipo_apresentacao_produto", DbType.String, 250, unidadeConsolidacao.TipoApresentacaoProducaoFormaIdentificacao); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); #region Apagando dados //Responsáveis técnicos comando = bancoDeDados.CriarComando(@"delete from crt_unida_conso_resp_tec ", EsquemaCredenciadoBanco); comando.DbCommand.CommandText += String.Format("where unidade_consolidacao = :unidade_consolidacao {0}", comando.AdicionarNotIn("and", "id", DbType.Int32, unidadeConsolidacao.ResponsaveisTecnicos.Select(x => x.IdRelacionamento).ToList())); comando.AdicionarParametroEntrada("unidade_consolidacao", unidadeConsolidacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); //Cultivares comando = bancoDeDados.CriarComando(@"delete from crt_unidade_cons_cultivar c", EsquemaCredenciadoBanco); comando.DbCommand.CommandText += String.Format(" where c.unidade_consolidacao = :unidade_consolidacao {0}", comando.AdicionarNotIn("and", "c.id", DbType.Int32, unidadeConsolidacao.Cultivares.Select(x => x.IdRelacionamento).ToList())); comando.AdicionarParametroEntrada("unidade_consolidacao", unidadeConsolidacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Cultivares unidadeConsolidacao.Cultivares.ForEach(x => { if (x.IdRelacionamento > 0) { comando = bancoDeDados.CriarComando(@" update crt_unidade_cons_cultivar set cultivar = :cultivar, capacidade_mes = :capacidade_mes, cultura =:cultura, unidade_medida = :unidade_medida, tid = :tid where id = :id_rel" , EsquemaCredenciadoBanco); comando.AdicionarParametroEntrada("id_rel", x.IdRelacionamento, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into crt_unidade_cons_cultivar (id, unidade_consolidacao, cultivar, capacidade_mes, unidade_medida, tid, cultura) values (seq_crt_unidade_cons_cultivar.nextval, :unidade_consolidacao, :cultivar, :capacidade_mes, :unidade_medida, :tid, :cultura)" , EsquemaCredenciadoBanco); comando.AdicionarParametroEntrada("unidade_consolidacao", unidadeConsolidacao.Id, DbType.Int32); } comando.AdicionarParametroEntrada("cultivar", x.Id < 1 ? (object)DBNull.Value : x.Id, DbType.Int32); comando.AdicionarParametroEntrada("capacidade_mes", x.CapacidadeMes, DbType.Decimal); comando.AdicionarParametroEntrada("unidade_medida", x.UnidadeMedida, DbType.Int32); comando.AdicionarParametroEntrada("cultura", x.CulturaId, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); }); #endregion #region Responsáveis Técnicos unidadeConsolidacao.ResponsaveisTecnicos.ForEach(x => { if (x.IdRelacionamento > 0) { comando = bancoDeDados.CriarComando(@" update crt_unida_conso_resp_tec set responsavel_tecnico =:responsavel_tecnico, numero_hab_cfo_cfoc =:numero_hab_cfo_cfoc, numero_art = :numero_art, art_cargo_funcao = :art_cargo_funcao, data_validade_art = :data_validade_art, tid = :tid where id = :id_rel" , EsquemaCredenciadoBanco); comando.AdicionarParametroEntrada("id_rel", x.IdRelacionamento, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into crt_unida_conso_resp_tec (id, unidade_consolidacao, responsavel_tecnico, numero_hab_cfo_cfoc, numero_art, art_cargo_funcao, data_validade_art, tid) values (seq_crt_unida_conso_resp_tec.nextval, :unidade_consolidacao, :responsavel_tecnico, :numero_hab_cfo_cfoc, :numero_art, :art_cargo_funcao, :data_validade_art, :tid)" , EsquemaCredenciadoBanco); comando.AdicionarParametroEntrada("unidade_consolidacao", unidadeConsolidacao.Id, DbType.Int32); } comando.AdicionarParametroEntrada("responsavel_tecnico", x.Id, DbType.Int32); comando.AdicionarParametroEntrada("numero_hab_cfo_cfoc", x.CFONumero, DbType.String); comando.AdicionarParametroEntrada("numero_art", x.NumeroArt, DbType.String); comando.AdicionarParametroEntrada("art_cargo_funcao", x.ArtCargoFuncao, DbType.Int32); comando.AdicionarParametroEntrada("data_validade_art", x.DataValidadeART, DbType.String); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); }); #endregion Historico.Gerar(unidadeConsolidacao.Id, eHistoricoArtefatoCaracterizacao.unidadeconsolidacao, eHistoricoAcao.atualizar, bancoDeDados, null); bancoDeDados.Commit(); } }
internal void Editar(AnaliseItem analise, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Análise de itens de processo/documento bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@"update {0}tab_analise a set a.protocolo = :protocolo, a.checagem = :checagem, a.situacao = :situacao, a.atualizado = :atualizado, a.tid = :tid where a.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", analise.Id, DbType.Int32); comando.AdicionarParametroEntrada("protocolo", analise.Protocolo.Id, DbType.Int32); comando.AdicionarParametroEntrada("checagem", analise.Checagem.Id, DbType.Int32); comando.AdicionarParametroEntrada("situacao", analise.Situacao, DbType.Int32); comando.AdicionarParametroEntrada("atualizado", analise.Atualizado ? 1 : 0, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Limpar os dados do banco //Itens da analise comando = bancoDeDados.CriarComando("delete from {0}tab_analise_itens c ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where c.analise = :analise{0}", comando.AdicionarNotIn("and", "c.id", DbType.Int32, analise.Itens.Select(x => x.IdRelacionamento).ToList()), EsquemaBanco); comando.AdicionarParametroEntrada("analise", analise.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Roteiros if (analise.Roteiros != null && analise.Roteiros.Count > 0) { foreach (Roteiro roteiro in analise.Roteiros) { if (roteiro.IdRelacionamento > 0) { comando = bancoDeDados.CriarComando(@"update {0}tab_analise_roteiro c set c.analise = :analise, c.roteiro = :roteiro, c.roteiro_tid = :roteiro_tid, c.tid = :tid where c.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", roteiro.IdRelacionamento, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"insert into {0}tab_analise_roteiro(id, analise, roteiro, roteiro_tid, tid) values (seq_analise_roteiro.nextval, :analise, :roteiro, :roteiro_tid, :tid)" , EsquemaBanco); } comando.AdicionarParametroEntrada("analise", analise.Id, DbType.Int32); comando.AdicionarParametroEntrada("roteiro", roteiro.Id, DbType.Int32); comando.AdicionarParametroEntrada("roteiro_tid", DbType.String, 36, roteiro.Tid); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } } #endregion #region Itens if (analise.Itens != null && analise.Itens.Count > 0) { foreach (Item item in analise.Itens) { if (item.IdRelacionamento > 0) { comando = bancoDeDados.CriarComando(@"update {0}tab_analise_itens c set c.analise = :analise, c.checagem = :checagem, c.data_analise = :data_analise, c.item_id = :item_id, c.item_tid = :item_tid, c.descricao = :descricao, c.motivo = :motivo, c.situacao = :situacao, c.setor = :setor, c.avulso = :avulso, c.tid = :tid, c.analista = :analista, c.recebido = :recebido where c.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", item.IdRelacionamento, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"insert into {0}tab_analise_itens c (id, analise, checagem, item_id, item_tid, descricao, motivo, situacao, setor, avulso, tid, data_analise, analista, recebido) values ({0}seq_analise_itens.nextval, :analise, :checagem, :item_id, :item_tid, :descricao, :motivo, :situacao, :setor, :avulso, :tid, :data_analise, :analista, :recebido) returning id into :id" , EsquemaBanco); comando.AdicionarParametroSaida("id", DbType.Int32); } comando.AdicionarParametroEntrada("analise", analise.Id, DbType.Int32); comando.AdicionarParametroEntrada("checagem", analise.Checagem.Id, DbType.Int32); comando.AdicionarParametroEntrada("item_id", item.Id, DbType.Int32); comando.AdicionarParametroEntrada("item_tid", DbType.String, 36, item.Tid); if (String.IsNullOrEmpty(item.DataAnalise)) { comando.AdicionarParametroEntrada("data_analise", DBNull.Value, DbType.DateTime); } else { comando.AdicionarParametroEntrada("data_analise", Convert.ToDateTime(item.DataAnalise), DbType.DateTime); } comando.AdicionarParametroEntrada("descricao", DbType.String, 500, item.Descricao); comando.AdicionarParametroEntClob("motivo", item.Motivo); comando.AdicionarParametroEntrada("situacao", item.Situacao, DbType.Int32); comando.AdicionarParametroEntrada("setor", item.SetorId, DbType.Int32); comando.AdicionarParametroEntrada("avulso", item.Avulso ? 1 : 0, DbType.Int32); comando.AdicionarParametroEntrada("analista", item.Analista, DbType.String); comando.AdicionarParametroEntrada("recebido", item.Recebido, DbType.Boolean); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); if (item.IdRelacionamento <= 0) { item.IdRelacionamento = Convert.ToInt32(comando.ObterValorParametro("id")); } } } #endregion #region Histórico Historico.Gerar(analise.Id, eHistoricoArtefato.analiseitens, eHistoricoAcao.analisar, bancoDeDados); #endregion bancoDeDados.Commit(); } }
private void Editar(HabilitacaoEmissaoPTV habilitacao, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { Comando comando = bancoDeDados.CriarComando(@" update tab_hab_emi_ptv set tid = :tid, situacao = :situacao, funcionario = :funcionario, arquivo = :arquivo, numero_habilitacao = :numero_habilitacao, rg = :rg, numero_matricula = :numero_matricula, profissao = :profissao, orgao_classe = :orgao_classe, registro_orgao_classe = :registro_orgao_classe, uf_habilitacao = :uf_habilitacao, numero_visto_crea = :numero_visto_crea, numero_crea = :numero_crea, telefone_comercial = :telefone_comercial, telefone_residencial = :telefone_residencial, telefone_celular = :telefone_celular, cep = :cep, logradouro = :logradouro, bairro_gleba = :bairro_gleba, estado = :estado, municipio = :municipio, numero = :numero, distrito_localidade = :distrito_localidade, complemento = :complemento where id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroEntrada("situacao", habilitacao.SituacaoId, DbType.Int32); comando.AdicionarParametroEntrada("funcionario", habilitacao.Funcionario.Id > 0 ? habilitacao.Funcionario.Id : (object)DBNull.Value, DbType.Int32); comando.AdicionarParametroEntrada("arquivo", habilitacao.Arquivo.Id > 0 ? habilitacao.Arquivo.Id : (object)DBNull.Value, DbType.Int32); comando.AdicionarParametroEntrada("numero_habilitacao", habilitacao.NumeroHabilitacao, DbType.String); comando.AdicionarParametroEntrada("rg", habilitacao.RG, DbType.String); comando.AdicionarParametroEntrada("numero_matricula", habilitacao.NumeroMatricula, DbType.String); comando.AdicionarParametroEntrada("profissao", habilitacao.Profissao.Id > 0 ? habilitacao.Profissao.Id : (object)DBNull.Value, DbType.Int32); comando.AdicionarParametroEntrada("orgao_classe", habilitacao.Profissao.OrgaoClasseId > 0 ? habilitacao.Profissao.OrgaoClasseId : (object)DBNull.Value, DbType.Int32); comando.AdicionarParametroEntrada("registro_orgao_classe", habilitacao.Profissao.Registro, DbType.String); comando.AdicionarParametroEntrada("uf_habilitacao", habilitacao.EstadoRegistro > 0 ? habilitacao.EstadoRegistro : (object)DBNull.Value, DbType.Int32); comando.AdicionarParametroEntrada("numero_visto_crea", DbType.String, 12, habilitacao.NumeroVistoCREA); comando.AdicionarParametroEntrada("numero_crea", DbType.String, 12, habilitacao.NumeroCREA); comando.AdicionarParametroEntrada("telefone_comercial", habilitacao.TelefoneComercial, DbType.String); comando.AdicionarParametroEntrada("telefone_residencial", habilitacao.TelefoneResidencial, DbType.String); comando.AdicionarParametroEntrada("telefone_celular", habilitacao.TelefoneCelular, DbType.String); comando.AdicionarParametroEntrada("cep", habilitacao.Endereco.Cep, DbType.String); comando.AdicionarParametroEntrada("logradouro", habilitacao.Endereco.Logradouro, DbType.String); comando.AdicionarParametroEntrada("bairro_gleba", habilitacao.Endereco.Bairro, DbType.String); comando.AdicionarParametroEntrada("estado", habilitacao.Endereco.EstadoId > 0 ? habilitacao.Endereco.EstadoId : (object)DBNull.Value, DbType.Int32); comando.AdicionarParametroEntrada("municipio", habilitacao.Endereco.MunicipioId > 0 ? habilitacao.Endereco.MunicipioId : (object)DBNull.Value, DbType.Int32); comando.AdicionarParametroEntrada("numero", habilitacao.Endereco.Numero, DbType.String); comando.AdicionarParametroEntrada("distrito_localidade", habilitacao.Endereco.DistritoLocalizacao, DbType.String); comando.AdicionarParametroEntrada("complemento", habilitacao.Endereco.Complemento, DbType.String); comando.AdicionarParametroEntrada("id", habilitacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); comando = bancoDeDados.CriarComando(@"delete from tab_hab_emi_ptv_operador ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where habilitacao = :habilitacao {0}", comando.AdicionarNotIn("and", "id", DbType.Int32, habilitacao.Operadores.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("habilitacao", habilitacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); habilitacao.Operadores.ForEach(operador => { if (operador.Id <= 0) { comando = bancoDeDados.CriarComando(@"insert into tab_hab_emi_ptv_operador (id, tid, habilitacao, funcionario) values (seq_tab_hab_emi_ptv_operador.nextval, :tid, :habilitacao, :funcionario)" , EsquemaBanco); comando.AdicionarParametroEntrada("habilitacao", habilitacao.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"update tab_hab_emi_ptv_operador set funcionario =:funcionario, tid =:tid where id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("id", operador.Id, DbType.Int32); } comando.AdicionarParametroEntrada("funcionario", operador.FuncionarioId > 0 ? operador.FuncionarioId : (object)DBNull.Value, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); }); Historico.Gerar(habilitacao.Id, eHistoricoArtefato.habilitacaoemissaoptv, eHistoricoAcao.atualizar, bancoDeDados); bancoDeDados.Commit(); } }
internal void Salvar(TermoCPFARLCR especificidade, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); #region Cadastro da Especificidade eHistoricoAcao acao; object id; // Verifica a existencia da especificidade Comando comando = bancoDeDados.CriarComando(@"select e.id from {0}esp_termo_cpfarlcr e where e.titulo = :titulo", EsquemaBanco); comando.AdicionarParametroEntrada("titulo", especificidade.Titulo.Id, DbType.Int32); id = bancoDeDados.ExecutarScalar(comando); if (id != null && !Convert.IsDBNull(id)) { comando = bancoDeDados.CriarComando(@" update {0}esp_termo_cpfarlcr e set e.tid = :tid, e.protocolo = :protocolo, e.dominio_cedente = :dominio_cedente, e.emp_receptor = :emp_receptor, e.dominio_receptor = :dominio_receptor, e.numero_averbacao = :numero_averbacao, e.data_emissao = :data_emissao, e.dominialidade = :dominialidade, e.dominialidade_tid = (select d.tid from crt_dominialidade d where d.id = :dominialidade) where e.titulo = :titulo" , EsquemaBanco); acao = eHistoricoAcao.atualizar; especificidade.ID = Convert.ToInt32(id); } else { comando = bancoDeDados.CriarComando(@" insert into esp_termo_cpfarlcr (id, tid, titulo, protocolo, dominio_cedente, emp_receptor, dominio_receptor, numero_averbacao, data_emissao, dominialidade, dominialidade_tid) values ({0}seq_esp_termo_cpfarlcr.nextval, :tid, :titulo, :protocolo, :dominio_cedente, :emp_receptor, :dominio_receptor, :numero_averbacao, :data_emissao, :dominialidade, (select d.tid from crt_dominialidade d where d.id = :dominialidade)) returning id into :id" , EsquemaBanco); acao = eHistoricoAcao.criar; comando.AdicionarParametroSaida("id", DbType.Int32); } comando.AdicionarParametroEntrada("titulo", especificidade.Titulo.Id, DbType.Int32); comando.AdicionarParametroEntrada("protocolo", especificidade.Titulo.Protocolo.Id, DbType.Int32); comando.AdicionarParametroEntrada("dominio_cedente", especificidade.CedenteDominioID, DbType.Int32); comando.AdicionarParametroEntrada("emp_receptor", especificidade.ReceptorEmpreendimentoID, DbType.Int32); comando.AdicionarParametroEntrada("dominio_receptor", especificidade.ReceptorDominioID, DbType.Int32); comando.AdicionarParametroEntrada("numero_averbacao", DbType.String, 20, especificidade.NumeroAverbacao); comando.AdicionarParametroEntrada("data_emissao", especificidade.DataEmissao.Data, DbType.DateTime); comando.AdicionarParametroEntrada("dominialidade", especificidade.DominialidadeID, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); if (id == null || Convert.IsDBNull(id)) { especificidade.ID = Convert.ToInt32(comando.ObterValorParametro("id")); } #endregion #region Reservas Cedente comando = bancoDeDados.CriarComando("delete from {0}esp_tcpfarlcr_ced_rese t ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where t.especificidade = :especificidade {0}", comando.AdicionarNotIn("and", "t.id", DbType.Int32, especificidade.CedenteARLCompensacao.Select(x => x.IDRelacionamento).ToList())); comando.AdicionarParametroEntrada("especificidade", especificidade.ID, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); foreach (var item in especificidade.CedenteARLCompensacao) { if (item.IDRelacionamento > 0) { comando = bancoDeDados.CriarComando(@"update {0}esp_tcpfarlcr_ced_rese t set t.reserva = :reserva, t.tid = :tid where t.id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("id", item.IDRelacionamento, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}esp_tcpfarlcr_ced_rese (id, especificidade, reserva, tid) values ({0}seq_esp_tcpfarlcr_ced_rese.nextval, :especificidade, :reserva, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("especificidade", especificidade.ID, DbType.Int32); } comando.AdicionarParametroEntrada("reserva", item.Id, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } #endregion #region Responsáveis do empreendimento cendente comando = bancoDeDados.CriarComando("delete from {0}esp_tcpfarlcr_ced_resp t ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where t.especificidade = :especificidade {0}", comando.AdicionarNotIn("and", "t.id", DbType.Int32, especificidade.CedenteResponsaveisEmpreendimento.Select(x => x.IdRelacionamento).ToList())); comando.AdicionarParametroEntrada("especificidade", especificidade.ID, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); foreach (var item in especificidade.CedenteResponsaveisEmpreendimento) { if (item.IdRelacionamento > 0) { comando = bancoDeDados.CriarComando(@"update {0}esp_tcpfarlcr_ced_resp t set t.responsavel = :responsavel, t.tid = :tid where t.id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("id", item.IdRelacionamento, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}esp_tcpfarlcr_ced_resp (id, especificidade, responsavel, tid) values ({0}seq_esp_tcpfarlcr_ced_resp.nextval, :especificidade, :responsavel, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("especificidade", especificidade.ID, DbType.Int32); } comando.AdicionarParametroEntrada("responsavel", item.Id, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } #endregion #region Responsáveis do empreendimento receptor comando = bancoDeDados.CriarComando("delete from {0}esp_tcpfarlcr_rec_resp t ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where t.especificidade = :especificidade {0}", comando.AdicionarNotIn("and", "t.id", DbType.Int32, especificidade.ReceptorResponsaveisEmpreendimento.Select(x => x.IdRelacionamento).ToList())); comando.AdicionarParametroEntrada("especificidade", especificidade.ID, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); foreach (var item in especificidade.ReceptorResponsaveisEmpreendimento) { if (item.IdRelacionamento > 0) { comando = bancoDeDados.CriarComando(@"update {0}esp_tcpfarlcr_rec_resp t set t.responsavel = :responsavel, t.tid = :tid where t.id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("id", item.IdRelacionamento, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}esp_tcpfarlcr_rec_resp (id, especificidade, responsavel, tid) values ({0}seq_esp_tcpfarlcr_rec_resp.nextval, :especificidade, :responsavel, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("especificidade", especificidade.ID, DbType.Int32); } comando.AdicionarParametroEntrada("responsavel", item.Id, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } #endregion Historico.Gerar(especificidade.Titulo.Id, eHistoricoArtefatoEspecificidade.termocpfarlcr, acao, bancoDeDados); bancoDeDados.Commit(); } }
private void Editar(Administrador obj, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@"update {0}tab_funcionario set nome = :nome, cpf = :cpf, situacao = :situacao, email = :email, tid= :tid where id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("nome", DbType.String, 80, obj.Nome); comando.AdicionarParametroEntrada("cpf", DbType.String, 14, obj.Cpf); comando.AdicionarParametroEntrada("situacao", obj.Situacao, DbType.Int32); comando.AdicionarParametroEntrada("email", DbType.String, 250, obj.Email); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroEntrada("id", obj.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #region Papel //Limpar Papel comando = bancoDeDados.CriarComando(String.Empty); comando.DbCommand.CommandText = String.Format("delete from {1}tab_funcionario_papel c where c.funcionario = :funcionario{0}", comando.AdicionarNotIn("and", "c.id", DbType.Int32, obj.Papeis.Select(x => x.IdRelacao).ToList()), EsquemaBanco); comando.AdicionarParametroEntrada("funcionario", obj.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); foreach (Papel item in obj.Papeis) { if (item.IdRelacao > 0) { comando = bancoDeDados.CriarComando(@"update {0}tab_funcionario_papel set tid = :tid where id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("id", item.IdRelacao, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"insert into {0}tab_funcionario_papel (id, funcionario, papel, tid) values ({0}seq_funcionario_papel.nextval, :funcionario, :papel, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("funcionario", obj.Id, DbType.Int32); comando.AdicionarParametroEntrada("papel", item.Id, DbType.Int32); } comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } #endregion #region Permissao //Limpar Permissao comando = bancoDeDados.CriarComando(String.Empty); comando.DbCommand.CommandText = String.Format("delete from {1}tab_funcionario_permissao c where c.funcionario = :funcionario{0}", comando.AdicionarNotIn("and", "c.id", DbType.Int32, obj.Permissoes.Select(x => x.IdRelacao).ToList()), EsquemaBanco); comando.AdicionarParametroEntrada("funcionario", obj.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); foreach (Permissao item in obj.Permissoes) { if (item.IdRelacao > 0) { comando = bancoDeDados.CriarComando(@"update {0}tab_funcionario_permissao set tid = :tid where id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("id", item.IdRelacao, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"insert into {0}tab_funcionario_Permissao (id, funcionario, permissao, tid) values (seq_funcionario_Permissao.nextval, :funcionario, :permissao, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("funcionario", obj.Id, DbType.Int32); comando.AdicionarParametroEntrada("permissao", item.Id, DbType.Int32); } comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } #endregion Historico.Gerar(obj.Id, eHistoricoArtefato.funcionario, eHistoricoAcao.atualizar, bancoDeDados); bancoDeDados.Commit(); } }
public MaterialApreendido Editar(MaterialApreendido materialApreendido, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); #region Apreensão Comando comando = bancoDeDados.CriarComando(@" update tab_fisc_apreensao set fiscalizacao = :fiscalizacao, iuf_digital = :eh_digital, iuf_numero = :iuf_numero, iuf_data = :iuf_data, numero_lacres = :numero_lacres, arquivo = :arquivo, serie = :serie, descricao = :descricao, valor_produtos = :valor_produtos, valor_produtos_reais = :valor_produtos_reais, depositario = :depositario, endereco_logradouro = :endereco_logradouro, endereco_bairro = :endereco_bairro, endereco_distrito = :endereco_distrito, endereco_estado = :endereco_estado, endereco_municipio = :endereco_municipio, opiniao = :opiniao, tid = :tid where id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("fiscalizacao", materialApreendido.FiscalizacaoId, DbType.Int32); comando.AdicionarParametroEntrada("eh_digital", materialApreendido.IsDigital, DbType.Boolean); comando.AdicionarParametroEntrada("iuf_numero", materialApreendido.NumeroIUF, DbType.String); comando.AdicionarParametroEntrada("numero_lacres", materialApreendido.NumeroLacre, DbType.String); comando.AdicionarParametroEntrada("serie", materialApreendido.SerieId, DbType.Int32); materialApreendido.Depositario.Id = materialApreendido.Depositario.Id == 0 ? null : materialApreendido.Depositario.Id; comando.AdicionarParametroEntrada("depositario", materialApreendido.Depositario.Id, DbType.Int32); materialApreendido.Depositario.Estado = materialApreendido.Depositario.Estado == 0 ? null : materialApreendido.Depositario.Estado; comando.AdicionarParametroEntrada("endereco_estado", materialApreendido.Depositario.Estado, DbType.Int32); materialApreendido.Depositario.Municipio = materialApreendido.Depositario.Municipio == 0 ? null : materialApreendido.Depositario.Municipio; comando.AdicionarParametroEntrada("endereco_municipio", materialApreendido.Depositario.Municipio, DbType.Int32); comando.AdicionarParametroEntrada("valor_produtos", materialApreendido.ValorProdutosExtenso, DbType.String); comando.AdicionarParametroEntrada("valor_produtos_reais", materialApreendido.ValorProdutosReais, DbType.Decimal); comando.AdicionarParametroEntClob("opiniao", materialApreendido.Opiniao); comando.AdicionarParametroEntrada("descricao", materialApreendido.Descricao, DbType.String); comando.AdicionarParametroEntrada("endereco_logradouro", materialApreendido.Depositario.Logradouro, DbType.String); comando.AdicionarParametroEntrada("endereco_bairro", materialApreendido.Depositario.Bairro, DbType.String); comando.AdicionarParametroEntrada("endereco_distrito", materialApreendido.Depositario.Distrito, DbType.String); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroEntrada("id", materialApreendido.Id, DbType.Int32); if (materialApreendido.Arquivo == null) { comando.AdicionarParametroEntrada("arquivo", DBNull.Value, DbType.Int32); } else { comando.AdicionarParametroEntrada("arquivo", materialApreendido.Arquivo.Id, DbType.Int32); } if (materialApreendido.DataLavratura.IsEmpty) { comando.AdicionarParametroEntrada("iuf_data", DBNull.Value, DbType.Date); } else { comando.AdicionarParametroEntrada("iuf_data", materialApreendido.DataLavratura.Data.Value, DbType.Date); } bancoDeDados.ExecutarNonQuery(comando); #endregion #region Produtos comando = bancoDeDados.CriarComando(@" delete from {0}tab_fisc_apreensao_produto c where c.apreensao = :apreensao", EsquemaBanco); comando.DbCommand.CommandText += String.Format(" {0}", comando.AdicionarNotIn("and", "c.id", DbType.Int32, materialApreendido.ProdutosApreendidos.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("apreensao", materialApreendido.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); foreach (ApreensaoProdutoApreendido produto in materialApreendido.ProdutosApreendidos) { if (produto.Id == 0) { comando = bancoDeDados.CriarComando(@" insert into tab_fisc_apreensao_produto (id, apreensao, produto, quantidade, destinacao, tid) values (seq_tab_fisc_apreensao_produto.nextval, :apreensao, :produto, :quantidade, :destinacao, :tid) returning id into :id ", EsquemaBanco); comando.AdicionarParametroSaida("id", DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" update tab_fisc_apreensao_produto set apreensao = :apreensao, produto = :produto, quantidade = :quantidade, destinacao = :destinacao, tid = :tid where id = :id " , EsquemaBanco); comando.AdicionarParametroEntrada("id", produto.Id, DbType.Int32); } comando.AdicionarParametroEntrada("apreensao", materialApreendido.Id, DbType.Int32); comando.AdicionarParametroEntrada("produto", produto.ProdutoId, DbType.Int32); comando.AdicionarParametroEntrada("quantidade", produto.Quantidade, DbType.Decimal); comando.AdicionarParametroEntrada("destinacao", produto.DestinoId, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); if (produto.Id == 0) { produto.Id = Convert.ToInt32(comando.ObterValorParametro("id")); } } #endregion Historico.Gerar(materialApreendido.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, eHistoricoAcao.atualizar, bancoDeDados); Consulta.Gerar(materialApreendido.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, bancoDeDados); bancoDeDados.Commit(); } return(materialApreendido); }
internal void Editar(SilviculturaPPFF caracterizacao, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Silvicultura bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@"update {0}crt_silvicultura_ppff c set c.empreendimento = :empreendimento, c.atividade = :atividade, c.fomento_tipo = :fomento_tipo, c.area_total = :area_total, c.tid = :tid where c.id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroEntrada("empreendimento", caracterizacao.EmpreendimentoId, DbType.Int32); comando.AdicionarParametroEntrada("atividade", caracterizacao.Atividade, DbType.Int32); comando.AdicionarParametroEntrada("fomento_tipo", caracterizacao.FomentoTipo, DbType.Int32); comando.AdicionarParametroEntrada("area_total", caracterizacao.AreaTotal, DbType.Decimal); comando.AdicionarParametroEntrada("id", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Limpar os dados do banco comando = bancoDeDados.CriarComando(@"delete from {0}crt_sil_ppf_municipio c where c.caracterizacao = :caracterizacao", EsquemaBanco); comando.DbCommand.CommandText += String.Format(" {0}", comando.AdicionarNotIn("and", "c.id", DbType.Int32, caracterizacao.Itens.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Municípios if (caracterizacao.Itens != null && caracterizacao.Itens.Count > 0) { foreach (SilviculturaPPFFItem item in caracterizacao.Itens) { if (item.Id <= 0) { comando = bancoDeDados.CriarComando(@" insert into {0}crt_sil_ppf_municipio c(id, caracterizacao, municipio, tid) values(seq_crt_sil_ppf_municipio.nextval, :caracterizacao, :municipio, :tid) returning c.id into :id ", EsquemaBanco); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("municipio", item.Municipio.Id, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroSaida("id", DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); item.Id = Convert.ToInt32(comando.ObterValorParametro("id")); } } } #endregion #region Histórico Historico.Gerar(caracterizacao.Id, eHistoricoArtefatoCaracterizacao.silviculturappff, eHistoricoAcao.atualizar, bancoDeDados, null); #endregion bancoDeDados.Commit(); } }
public Notificacao Editar(Notificacao notificacao, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@" update {0}tab_fisc_notificacao t set t.fiscalizacao = :fiscalizacao, t.forma_iuf = :forma_iuf, t.forma_jiapi = :forma_jiapi, t.forma_core = :forma_core, t.forma_iuf_data = :forma_iuf_data, t.forma_jiapi_data = :forma_jiapi_data, t.forma_core_data = :forma_core_data, t.tid = :tid where t.id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("id", notificacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("fiscalizacao", notificacao.FiscalizacaoId, DbType.Int32); comando.AdicionarParametroEntrada("forma_iuf", notificacao.FormaIUF, DbType.Int32); comando.AdicionarParametroEntrada("forma_jiapi", notificacao.FormaJIAPI, DbType.Int32); comando.AdicionarParametroEntrada("forma_core", notificacao.FormaCORE, DbType.Int32); comando.AdicionarParametroEntrada("forma_iuf_data", notificacao.DataIUF.Data, DbType.Date); comando.AdicionarParametroEntrada("forma_jiapi_data", notificacao.DataJIAPI.Data, DbType.Date); comando.AdicionarParametroEntrada("forma_core_data", notificacao.DataCORE.Data, DbType.Date); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); #region Anexos comando = bancoDeDados.CriarComando("delete from {0}tab_fisc_notificacao_arq ra ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where ra.notificacao = :notificacao{0}", comando.AdicionarNotIn("and", "ra.id", DbType.Int32, notificacao.Anexos?.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("notificacao", notificacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); foreach (var item in (notificacao.Anexos ?? new List <Anexo>())) { if (item.Id > 0) { comando = bancoDeDados.CriarComando(@" update {0}tab_fisc_notificacao_arq t set t.arquivo = :arquivo, t.ordem = :ordem, t.descricao = :descricao, t.tid = :tid where t.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}tab_fisc_notificacao_arq a (id, notificacao, arquivo, ordem, descricao, tid) values ({0}seq_tab_fisc_notificacao_arq.nextval, :notificacao, :arquivo, :ordem, :descricao, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("notificacao", notificacao.Id, DbType.Int32); } comando.AdicionarParametroEntrada("arquivo", item.Arquivo.Id, DbType.Int32); comando.AdicionarParametroEntrada("ordem", item.Ordem, DbType.Int32); comando.AdicionarParametroEntrada("descricao", DbType.String, 100, item.Descricao); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } #endregion Historico.Gerar(notificacao.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, eHistoricoAcao.atualizar, bancoDeDados); Consulta.Gerar(notificacao.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, bancoDeDados); bancoDeDados.Commit(); } return(notificacao); }
internal void AtribuirExecutor(Relatorio relatorio, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco, EsquemaBanco)) { bancoDeDados.IniciarTransacao(); #region Relatório Personalizado Comando comando = bancoDeDados.CriarComando(@"update {0}tab_relatorio_personalizado r set r.tid = :tid where r.id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("id", relatorio.Id, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); #region Limpar os dados do banco //Usuarios comando = bancoDeDados.CriarComando("delete from {0}tab_relatorio_per_usuarios c ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where c.relatorio = :relatorio{0}", comando.AdicionarNotIn("and", "c.usuario", DbType.Int32, relatorio.UsuariosPermitidos.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("relatorio", relatorio.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Usuários if (relatorio.UsuariosPermitidos != null && relatorio.UsuariosPermitidos.Count > 0) { comando = bancoDeDados.CriarComando(@"insert into {0}tab_relatorio_per_usuarios (id, relatorio, usuario, tipo, tid) (select {0}seq_relatorio_per_usuario.nextval, :relatorio, :usuario, :tipo, :tid from dual where not exists (select id from {0}tab_relatorio_per_usuarios r where r.usuario = :usuario and r.relatorio = :relatorio))" , EsquemaBanco); comando.AdicionarParametroEntrada("relatorio", relatorio.Id, DbType.Int32); comando.AdicionarParametroEntrada("usuario", DbType.Int32); comando.AdicionarParametroEntrada("tipo", DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); foreach (var item in relatorio.UsuariosPermitidos) { comando.SetarValorParametro("usuario", item.Id); comando.SetarValorParametro("tipo", item.Tipo); bancoDeDados.ExecutarNonQuery(comando); } } else { comando = bancoDeDados.CriarComando(@"delete {0}tab_relatorio_per_usuarios p where p.relatorio = :relatorio", EsquemaBanco); comando.AdicionarParametroEntrada("relatorio", relatorio.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); } #endregion #endregion #region Histórico Historico.Gerar(relatorio.Id, eHistoricoArtefato.relatorio, eHistoricoAcao.atribuirusuario, bancoDeDados); #endregion bancoDeDados.Commit(); } }
internal void Salvar(LaudoVistoriaFundiaria laudo, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); #region Cadastro do Titulo eHistoricoAcao acao; object id; //Verifica a existencia da especificidade Comando comando = bancoDeDados.CriarComando(@"select e.id from {0}esp_laudo_vistoria_fundiaria e where e.titulo = :titulo", EsquemaBanco); comando.AdicionarParametroEntrada("titulo", laudo.Titulo.Id, DbType.Int32); id = bancoDeDados.ExecutarScalar(comando); if (id != null && !Convert.IsDBNull(id)) { comando = bancoDeDados.CriarComando(@"update {0}esp_laudo_vistoria_fundiaria e set e.titulo = :titulo, e.protocolo = :protocolo, e.destinatario = :destinatario, e.data_vistoria = :data_vistoria, e.regularizacao_fundiaria = :regularizacao_fundiaria, e.tid = :tid where e.titulo = :titulo" , EsquemaBanco); acao = eHistoricoAcao.atualizar; laudo.Id = Convert.ToInt32(id); } else { comando = bancoDeDados.CriarComando(@"insert into {0}esp_laudo_vistoria_fundiaria(id, titulo, protocolo, destinatario, data_vistoria, regularizacao_fundiaria, tid) values ({0}seq_esp_laudo_visto_florestal.nextval, :titulo, :protocolo, :destinatario, :data_vistoria, :regularizacao_fundiaria, :tid) returning id into :id" , EsquemaBanco); acao = eHistoricoAcao.criar; comando.AdicionarParametroSaida("id", DbType.Int32); } comando.AdicionarParametroEntrada("titulo", laudo.Titulo.Id, DbType.Int32); comando.AdicionarParametroEntrada("protocolo", laudo.ProtocoloReq.Id, DbType.Int32); comando.AdicionarParametroEntrada("destinatario", laudo.Destinatario, DbType.Int32); comando.AdicionarParametroEntrada("data_vistoria", laudo.DataVistoria.Data, DbType.DateTime); comando.AdicionarParametroEntrada("regularizacao_fundiaria", laudo.RegularizacaoId, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); if (id == null || Convert.IsDBNull(id)) { laudo = laudo ?? new LaudoVistoriaFundiaria(); laudo.Id = Convert.ToInt32(comando.ObterValorParametro("id")); } //Regularizacao Dominios comando = bancoDeDados.CriarComando("delete from {0}esp_laudo_vist_fund_domin d ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where d.especificidade = :especificidade{0}", comando.AdicionarNotIn("and", "d.id", DbType.Int32, laudo.RegularizacaoDominios.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("especificidade", laudo.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #region Regularizacao Dominios if (laudo.RegularizacaoDominios != null && laudo.RegularizacaoDominios.Count > 0) { foreach (var item in laudo.RegularizacaoDominios) { object regularizacaoDominioTid; comando = bancoDeDados.CriarComando(@"select (case when t.situacao in (1, 2, 4) then (select c.tid from crt_regularizacao_dominio c where c.id = :regularizacao_dominio) else (select dominio_tid from esp_laudo_vist_fund_domin where especificidade = (select e.id from esp_laudo_vistoria_fundiaria e where e.titulo = :titulo) and dominio = :regularizacao_dominio) end) tid from tab_titulo t where t.id = :titulo" , EsquemaBanco); comando.AdicionarParametroEntrada("titulo", laudo.Titulo.Id, DbType.Int32); comando.AdicionarParametroEntrada("regularizacao_dominio", item.DominioId, DbType.Int32); regularizacaoDominioTid = bancoDeDados.ExecutarScalar(comando); if (item.Id > 0) { comando = bancoDeDados.CriarComando(@"update esp_laudo_vist_fund_domin d set d.especificidade = :especificidade, d.dominio = :dominio, d.dominio_tid = :dominio_tid, d.tid = :tid where d.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"insert into esp_laudo_vist_fund_domin (id, especificidade, dominio, dominio_tid, tid) values(seq_esp_laudo_vist_fund_domin.nextval, :especificidade, :dominio, :dominio_tid, :tid) returning id into :id" , EsquemaBanco); comando.AdicionarParametroSaida("id", DbType.Int32); } comando.AdicionarParametroEntrada("especificidade", laudo.Id, DbType.Int32); comando.AdicionarParametroEntrada("dominio", item.DominioId, DbType.Int32); comando.AdicionarParametroEntrada("dominio_tid", regularizacaoDominioTid, DbType.String); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); if (item.Id <= 0) { item.Id = Convert.ToInt32(comando.ObterValorParametro("id")); } } } #endregion #endregion Historico.Gerar(Convert.ToInt32(laudo.Titulo.Id), eHistoricoArtefatoEspecificidade.laudovistoriafundiaria, acao, bancoDeDados); bancoDeDados.Commit(); } }
internal void Editar(HabilitarEmissaoCFOCFOC habilitar, BancoDeDados banco = null, Executor executor = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); #region HabilitarEmissaoCFOCFOC bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@" update tab_hab_emi_cfo_cfoc p set p.responsavel_arquivo = :responsavel_arquivo, p.numero_habilitacao = :numero_habilitacao, p.validade_registro = :validade_registro, p.motivo = :motivo, p.observacao = :observacao, p.numero_dua = :numero_dua, p.extensao_habilitacao = :extensao_habilitacao, p.numero_habilitacao_ori = :numero_habilitacao_ori, p.registro_crea = :registro_crea, p.uf = :uf, p.numero_visto_crea = :numero_visto_crea, p.tid = :tid where p.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", habilitar.Id, DbType.Int32); comando.AdicionarParametroEntrada("responsavel_arquivo", (habilitar.Arquivo != null && habilitar.Arquivo.Id > 0) ? habilitar.Arquivo.Id : null, DbType.Int32); comando.AdicionarParametroEntrada("numero_habilitacao", DbType.String, 30, habilitar.NumeroHabilitacao); comando.AdicionarParametroEntrada("validade_registro", habilitar.ValidadeRegistro, DbType.DateTime); comando.AdicionarParametroEntrada("motivo", (habilitar.Motivo.HasValue) ? habilitar.Motivo : null, DbType.Int32); comando.AdicionarParametroEntrada("observacao", DbType.String, 250, habilitar.Observacao); comando.AdicionarParametroEntrada("numero_dua", DbType.String, 30, habilitar.NumeroDua); comando.AdicionarParametroEntrada("extensao_habilitacao", habilitar.ExtensaoHabilitacao, DbType.Int32); comando.AdicionarParametroEntrada("numero_habilitacao_ori", DbType.String, 30, (habilitar.ExtensaoHabilitacao == 1) ? habilitar.NumeroHabilitacaoOrigem : null); comando.AdicionarParametroEntrada("registro_crea", DbType.String, 30, habilitar.RegistroCrea); comando.AdicionarParametroEntrada("uf", habilitar.UF, DbType.Int32); comando.AdicionarParametroEntrada("numero_visto_crea", DbType.String, 30, (habilitar.UF != 8) ? habilitar.NumeroVistoCrea : null); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Limpar os dados do banco //Pragas comando = bancoDeDados.CriarComando(@"delete {0}tab_hab_emi_cfo_cfoc_praga ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where habilitar_emi_id = :id {0}", comando.AdicionarNotIn("and", "id", DbType.Int32, habilitar.Pragas.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("id", habilitar.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Pragas if (habilitar.Pragas.Count > 0) { habilitar.Pragas.ForEach(item => { if (item.Id > 0) { comando = bancoDeDados.CriarComando(@" update {0}tab_hab_emi_cfo_cfoc_praga a set tid = :tid, a.data_habilitacao_inicial = :data_habilitacao_inicial, a.data_habilitacao_final = :data_habilitacao_final where id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}tab_hab_emi_cfo_cfoc_praga a (id, tid, habilitar_emi_id, praga, data_habilitacao_inicial, data_habilitacao_final) values ({0}seq_hab_emi_cfo_cfoc_praga.nextval, :tid, :habilitar, :praga, :data_habilitacao_inicial, :data_habilitacao_final)" , EsquemaBanco); comando.AdicionarParametroEntrada("habilitar", habilitar.Id, DbType.Int32); comando.AdicionarParametroEntrada("praga", item.Praga.Id, DbType.Int32); } comando.AdicionarParametroEntrada("data_habilitacao_inicial", item.DataInicialHabilitacao, DbType.DateTime); comando.AdicionarParametroEntrada("data_habilitacao_final", item.DataFinalHabilitacao, DbType.DateTime); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); }); } #endregion Historico.Gerar(habilitar.Id, eHistoricoArtefato.habilitaremissaocfocfoc, eHistoricoAcao.atualizar, bancoDeDados, executor); bancoDeDados.Commit(); } }
internal void Editar(RegistroAtividadeFlorestal caracterizacao, BancoDeDados banco = null) { int numero = 0; bool gerarNumero = !caracterizacao.PossuiNumero.Value && !int.TryParse(caracterizacao.NumeroRegistro, out numero); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Registro Atividade Florestal bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@" update {0}crt_reg_atividade_florestal t set t.empreendimento = :empreendimento, t.numero_registro = " + (gerarNumero ? @"{0}reg_atv_florestal_numero.nextval," : @":numero_registro,") + @" t.tid = :tid, t.possui_numero = :possui_numero where t.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroEntrada("empreendimento", caracterizacao.EmpreendimentoId, DbType.Int32); comando.AdicionarParametroEntrada("possui_numero", caracterizacao.PossuiNumero, DbType.Int32); if (!gerarNumero) { comando.AdicionarParametroEntrada("numero_registro", caracterizacao.NumeroRegistro, DbType.String); } comando.AdicionarParametroEntrada("id", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Limpar os dados do banco comando = bancoDeDados.CriarComando(@"delete from {0}crt_reg_ati_flo_fonte t where t.caracterizacao = :caracterizacao ", EsquemaBanco); comando.DbCommand.CommandText += comando.AdicionarNotIn("and", "t.id", DbType.Int32, caracterizacao.Consumos.SelectMany(x => x.FontesEnergia).Select(y => y.Id).ToList()); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); comando = bancoDeDados.CriarComando(@"delete from {0}crt_reg_ati_flo_con_tit t where t.caracterizacao = :caracterizacao ", EsquemaBanco); comando.DbCommand.CommandText += comando.AdicionarNotIn("and", "t.id", DbType.Int32, caracterizacao.Consumos.Select(x => (x.Licenca ?? new FinalidadeCaracterizacao()).Id).ToList()); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); comando = bancoDeDados.CriarComando("delete from {0}crt_reg_ati_flo_consumo t where t.caracterizacao = :caracterizacao ", EsquemaBanco); comando.DbCommand.CommandText += String.Format(" {0}", comando.AdicionarNotIn("and", "t.id", DbType.Int32, caracterizacao.Consumos.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Consumos if (caracterizacao.Consumos != null && caracterizacao.Consumos.Count > 0) { foreach (Consumo consumo in caracterizacao.Consumos) { if (consumo.Id > 0) { comando = bancoDeDados.CriarComando(@"update {0}crt_reg_ati_flo_consumo t set t.caracterizacao = :caracterizacao, t.atividade = :atividade, t.possui_licenca = :possui_licenca, t.dua_numero = :dua_numero, t.dua_valor = :dua_valor, t.dua_data_pagamento = :dua_data_pagamento, t.tid = :tid where t.id = :consumo returning t.id into :id" , EsquemaBanco); comando.AdicionarParametroEntrada("consumo", consumo.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}crt_reg_ati_flo_consumo (id, tid, caracterizacao, atividade, possui_licenca, dua_numero, dua_valor, dua_data_pagamento) values (seq_crt_reg_ati_flo_consumo.nextval, :tid, :caracterizacao, :atividade, :possui_licenca, :dua_numero, :dua_valor, :dua_data_pagamento) returning id into :id " , EsquemaBanco); } comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("atividade", consumo.Atividade, DbType.Int32); comando.AdicionarParametroEntrada("possui_licenca", consumo.PossuiLicencaAmbiental, DbType.Int32); comando.AdicionarParametroEntrada("dua_numero", DbType.String, 40, consumo.DUANumero); comando.AdicionarParametroEntrada("dua_valor", consumo.DUAValor, DbType.Decimal); comando.AdicionarParametroEntrada("dua_data_pagamento", consumo.DUADataPagamento.Data, DbType.DateTime); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroSaida("id", DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); consumo.Id = Convert.ToInt32(comando.ObterValorParametro("id")); #region Título if (consumo.Licenca != null) { if (consumo.Licenca.Id > 0) { comando = bancoDeDados.CriarComando(@"update {0}crt_reg_ati_flo_con_tit t set t.emitido_idaf = :emitido_idaf, t.titulo = :titulo, t.titulo_numero = :titulo_numero, t.titulo_modelo = :titulo_modelo, t.titulo_modelo_texto = :titulo_modelo_texto, t.data_validade = :data_validade, t.protocolo_numero = :protocolo_numero, t.data_renovacao = :data_renovacao, t.protocolo_numero_ren = :protocolo_numero_ren, t.orgao_expedicao = :orgao_expedicao, t.tid = :tid where t.id = :id returning t.id into :idLicenca " , EsquemaBanco); comando.AdicionarParametroEntrada("id", consumo.Licenca.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"insert into {0}crt_reg_ati_flo_con_tit ( id, caracterizacao, consumo, emitido_idaf, titulo, titulo_numero, titulo_modelo, titulo_modelo_texto, data_validade, protocolo_numero, data_renovacao, protocolo_numero_ren, orgao_expedicao, tid) values (seq_crt_reg_ati_flo_con_tit.nextval, :caracterizacao, :consumo, :emitido_idaf, :titulo, :titulo_numero, :titulo_modelo, :titulo_modelo_texto, :data_validade, :protocolo_numero, :data_renovacao, :protocolo_numero_ren, :orgao_expedicao, :tid) returning id into :idLicenca" , EsquemaBanco); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("consumo", consumo.Id, DbType.Int32); } comando.AdicionarParametroEntrada("emitido_idaf", (consumo.Licenca.EmitidoPorInterno.Value ? 1 : 0), DbType.Int32); comando.AdicionarParametroEntrada("titulo", (consumo.Licenca.TituloId.HasValue && consumo.Licenca.TituloId > 0) ? consumo.Licenca.TituloId : null, DbType.Int32); comando.AdicionarParametroEntrada("titulo_numero", DbType.String, 20, consumo.Licenca.TituloNumero); comando.AdicionarParametroEntrada("titulo_modelo", consumo.Licenca.TituloModelo, DbType.Int32); comando.AdicionarParametroEntrada("titulo_modelo_texto", DbType.String, 100, consumo.Licenca.TituloModeloTexto); comando.AdicionarParametroEntrada("data_validade", consumo.Licenca.TituloValidadeData.Data, DbType.DateTime); comando.AdicionarParametroEntrada("protocolo_numero", DbType.String, 20, consumo.Licenca.ProtocoloNumero); comando.AdicionarParametroEntrada("data_renovacao", consumo.Licenca.ProtocoloRenovacaoData.Data, DbType.DateTime); comando.AdicionarParametroEntrada("protocolo_numero_ren", DbType.String, 20, consumo.Licenca.ProtocoloRenovacaoNumero); comando.AdicionarParametroEntrada("orgao_expedicao", DbType.String, 150, consumo.Licenca.OrgaoExpedidor); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroSaida("idLicenca", DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); consumo.Licenca.Id = Convert.ToInt32(comando.ObterValorParametro("idLicenca")); } #endregion #region Fontes Energia if (consumo.FontesEnergia != null && consumo.FontesEnergia.Count > 0) { foreach (FonteEnergia fonteEnergia in consumo.FontesEnergia) { if (fonteEnergia.Id > 0) { comando = bancoDeDados.CriarComando(@"update {0}crt_reg_ati_flo_fonte t set t.caracterizacao = :caracterizacao, t.consumo = :consumo, t.tipo = :tipo, t.unidade = :unidade, t.qde = :qde, t.qde_floresta_plantada = :qde_floresta_plantada, t.qde_floresta_nativa = :qde_floresta_nativa, t.qde_outro_estado = :qde_outro_estado, t.tid = :tid where t.id = :id returning id into :idFonte " , EsquemaBanco); comando.AdicionarParametroEntrada("id", fonteEnergia.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}crt_reg_ati_flo_fonte (id, caracterizacao, consumo, tipo, unidade, qde, qde_floresta_plantada, qde_floresta_nativa, qde_outro_estado, tid) values (seq_crt_reg_ati_flo_fonte.nextval, :caracterizacao, :consumo, :tipo, :unidade, :qde, :qde_floresta_plantada, :qde_floresta_nativa, :qde_outro_estado, :tid) returning id into :idFonte " , EsquemaBanco); } comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("consumo", consumo.Id, DbType.Int32); comando.AdicionarParametroEntrada("tipo", fonteEnergia.TipoId, DbType.Int32); comando.AdicionarParametroEntrada("unidade", fonteEnergia.UnidadeId, DbType.Int32); comando.AdicionarParametroEntrada("qde", fonteEnergia.Qde, DbType.Decimal); comando.AdicionarParametroEntrada("qde_floresta_plantada", fonteEnergia.QdeFlorestaPlantada, DbType.Decimal); comando.AdicionarParametroEntrada("qde_floresta_nativa", fonteEnergia.QdeFlorestaNativa, DbType.Decimal); comando.AdicionarParametroEntrada("qde_outro_estado", fonteEnergia.QdeOutroEstado, DbType.Decimal); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroSaida("idFonte", DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); fonteEnergia.Id = Convert.ToInt32(comando.ObterValorParametro("idFonte")); } } #endregion } } #endregion Historico.Gerar(caracterizacao.Id, eHistoricoArtefatoCaracterizacao.registroatividadeflorestal, eHistoricoAcao.atualizar, bancoDeDados, null); bancoDeDados.Commit(); } }
internal void Dependencias(Caracterizacao caracterizacao, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); #region Dependências da caracterização Comando comando = bancoDeDados.CriarComando("delete from {0}crt_dependencia c ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where c.dependente_tipo = :dependente_tipo and c.dependente_caracterizacao = :dependente_caracterizacao and c.dependente_id = :dependente_id {0}", comando.AdicionarNotIn("and", "c.id", DbType.Int32, caracterizacao.Dependencias.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("dependente_tipo", (int)caracterizacao.DependenteTipo, DbType.Int32); comando.AdicionarParametroEntrada("dependente_caracterizacao", (int)caracterizacao.Tipo, DbType.Int32); comando.AdicionarParametroEntrada("dependente_id", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); if (caracterizacao.Dependencias != null && caracterizacao.Dependencias.Count > 0) { foreach (Dependencia item in caracterizacao.Dependencias) { if (item.Id > 0) { comando = bancoDeDados.CriarComando(@"update {0}crt_dependencia d set d.dependencia_tipo = :dependencia_tipo, d.dependente_caracterizacao = :dependente_caracterizacao, d.dependencia_id = :dependencia_id, d.dependencia_tid = :dependencia_tid, d.tid = :tid where d.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"insert into {0}crt_dependencia d (id, dependente_tipo, dependente_caracterizacao, dependente_id, dependencia_tipo, dependencia_caracterizacao, dependencia_id, dependencia_tid, tid) values ({0}seq_crt_dependencia.nextval, :dependente_tipo, :dependente_caracterizacao, :dependente_id, :dependencia_tipo, :dependencia_caracterizacao, :dependencia_id, :dependencia_tid, :tid) returning id into :id_dep" , EsquemaBanco); comando.AdicionarParametroEntrada("dependente_tipo", (int)caracterizacao.DependenteTipo, DbType.Int32); comando.AdicionarParametroEntrada("dependente_caracterizacao", (int)caracterizacao.Tipo, DbType.Int32); comando.AdicionarParametroEntrada("dependente_id", caracterizacao.Id, DbType.Int32); comando.AdicionarParametroSaida("id_dep", DbType.Int32); } comando.AdicionarParametroEntrada("dependencia_tipo", item.DependenciaTipo, DbType.Int32); comando.AdicionarParametroEntrada("dependencia_caracterizacao", item.DependenciaCaracterizacao, DbType.Int32); comando.AdicionarParametroEntrada("dependencia_id", item.DependenciaId, DbType.Int32); comando.AdicionarParametroEntrada("dependencia_tid", DbType.String, 36, item.DependenciaTid); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); if (item.Id <= 0) { item.Id = Convert.ToInt32(comando.ObterValorParametro("id_dep")); } Historico.Gerar(item.Id, eHistoricoArtefatoCaracterizacao.dependencia, eHistoricoAcao.atualizar, bancoDeDados); } } #endregion bancoDeDados.Commit(); } }
internal void Salvar(AberturaLivroUnidadeProducao termo, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); #region Cadastro da Especificidade eHistoricoAcao acao; object id; // Verifica a existencia da especificidade Comando comando = bancoDeDados.CriarComando(@"select e.id from {0}esp_abertura_livro_up e where e.titulo = :titulo", EsquemaBanco); comando.AdicionarParametroEntrada("titulo", termo.Titulo.Id, DbType.Int32); id = bancoDeDados.ExecutarScalar(comando); if (id != null && !Convert.IsDBNull(id)) { comando = bancoDeDados.CriarComando(@" update {0}esp_abertura_livro_up e set e.tid = :tid, e.protocolo = :protocolo, e.total_paginas_livro = :total_paginas_livro, e.pagina_inicial = :pagina_inicial, e.pagina_final = :pagina_final where e.titulo = :titulo" , EsquemaBanco); acao = eHistoricoAcao.atualizar; termo.Id = Convert.ToInt32(id); } else { comando = bancoDeDados.CriarComando(@" insert into {0}esp_abertura_livro_up (id, tid, titulo, protocolo, total_paginas_livro, pagina_inicial, pagina_final) values ({0}seq_esp_abertura_livro_up.nextval, :tid, :titulo, :protocolo, :total_paginas_livro, :pagina_inicial, :pagina_final) returning id into :id" , EsquemaBanco); acao = eHistoricoAcao.criar; comando.AdicionarParametroSaida("id", DbType.Int32); } comando.AdicionarParametroEntrada("titulo", termo.Titulo.Id, DbType.Int32); comando.AdicionarParametroEntrada("protocolo", termo.Titulo.Protocolo.Id, DbType.Int32); comando.AdicionarParametroEntrada("total_paginas_livro", termo.TotalPaginasLivro, DbType.Int32); comando.AdicionarParametroEntrada("pagina_inicial", termo.PaginaInicial, DbType.Int32); comando.AdicionarParametroEntrada("pagina_final", termo.PaginaFinal, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); if (id == null || Convert.IsDBNull(id)) { termo.Id = Convert.ToInt32(comando.ObterValorParametro("id")); } #endregion #region Unidades comando = bancoDeDados.CriarComando("delete from {0}esp_aber_livro_up_unid t ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where t.especificidade = :especificidade {0}", comando.AdicionarNotIn("and", "t.id", DbType.Int32, termo.Unidades.Select(x => x.IdRelacionamento).ToList())); comando.AdicionarParametroEntrada("especificidade", termo.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); foreach (var item in termo.Unidades) { if (item.IdRelacionamento > 0) { comando = bancoDeDados.CriarComando(@"update {0}esp_aber_livro_up_unid t set t.unidade = :unidade, t.tid = :tid where t.id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("id", item.IdRelacionamento, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"insert into {0}esp_aber_livro_up_unid (id, especificidade, unidade, tid) values ({0}seq_esp_aber_livro_up_unid.nextval, :especificidade, :unidade, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("especificidade", termo.Id, DbType.Int32); } comando.AdicionarParametroEntrada("unidade", item.Id, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } #endregion Historico.Gerar(termo.Titulo.Id, eHistoricoArtefatoEspecificidade.aberturalivrounidadeproducao, acao, bancoDeDados); bancoDeDados.Commit(); } }
internal void Editar(SilviculturaATV caracterizacao, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Silvicultura - Implantação da Atividade de Silvicultura (Fomento) bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@"update {0}crt_silvicultura c set c.tid = :tid where c.id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroEntrada("id", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Limpar os dados do banco comando = bancoDeDados.CriarComando("delete from {0}crt_silvicultura_atv_cult t ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where t.caracterizacao = :caracterizacao{0}", comando.AdicionarNotIn("and", "t.silvicultura_id", DbType.Int32, caracterizacao.Caracteristicas.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); foreach (var item in caracterizacao.Caracteristicas) { comando = bancoDeDados.CriarComando("delete from {0}crt_silvicultura_atv_cult t ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where t.silvicultura_id = :silvicultura_id{0}", comando.AdicionarNotIn("and", "t.id", DbType.Int32, item.Culturas.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("silvicultura_id", item.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); } comando = bancoDeDados.CriarComando("delete from {0}crt_silvicultura_atv_carac t ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where t.caracterizacao = :caracterizacao{0}", comando.AdicionarNotIn("and", "t.id", DbType.Int32, caracterizacao.Caracteristicas.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); comando = bancoDeDados.CriarComando("delete from {0}crt_silvicultura_atv_areas c ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where c.caracterizacao = :caracterizacao{0}", comando.AdicionarNotIn("and", "c.id", DbType.Int32, caracterizacao.Areas.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); #endregion #region Áreas foreach (SilviculturaAreaATV area in caracterizacao.Areas) { if (area.Id > 0) { comando = bancoDeDados.CriarComando(@" update {0}crt_silvicultura_atv_areas c set c.tipo = :tipo, c.valor = :valor, c.tid = :tid where c.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", area.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}crt_silvicultura_atv_areas (id, caracterizacao, tipo, valor, tid) values ({0}seq_crt_silvic_atv_areas.nextval, :caracterizacao, :tipo, :valor, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); } comando.AdicionarParametroEntrada("tipo", area.Tipo, DbType.Int32); comando.AdicionarParametroEntrada("valor", area.Valor, DbType.Decimal); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } #endregion #region Caracteristicas foreach (var item in caracterizacao.Caracteristicas) { if (item.Id > 0) { comando = bancoDeDados.CriarComando(@" update {0}crt_silvicultura_atv_carac c set c.identificacao = :identificacao, c.geometria = :geometria, c.fomento = :fomento, c.declividade = :declividade, c.total_requerida = :total_requerida, c.total_croqui = :total_croqui, c.total_plant_eucalipto = :total_plant_eucalipto, c.tid = :tid where c.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}crt_silvicultura_atv_carac c (id, caracterizacao, identificacao, geometria, fomento, declividade, total_requerida, total_croqui, total_plant_eucalipto, tid) values ({0}seq_crt_silvic_atv_carac.nextval, :caracterizacao, :identificacao, :geometria, :fomento, :declividade, :total_requerida, :total_croqui, :total_plant_eucalipto, :tid) returning c.id into :id" , EsquemaBanco); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); comando.AdicionarParametroSaida("id", DbType.Int32); } comando.AdicionarParametroEntrada("identificacao", item.Identificacao, DbType.String); comando.AdicionarParametroEntrada("geometria", item.GeometriaTipo, DbType.Int32); comando.AdicionarParametroEntrada("fomento", item.Fomento, DbType.Int32); comando.AdicionarParametroEntrada("declividade", item.Declividade, DbType.Decimal); comando.AdicionarParametroEntrada("total_requerida", item.TotalRequerida, DbType.Decimal); comando.AdicionarParametroEntrada("total_croqui", item.TotalCroqui, DbType.Decimal); comando.AdicionarParametroEntrada("total_plant_eucalipto", item.TotalPlantadaComEucalipto, DbType.Decimal); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); item.Id = item.Id > 0 ? item.Id : Convert.ToInt32(comando.ObterValorParametro("id")); #region Culturas Florestais foreach (CulturaFlorestalATV itemAux in item.Culturas) { if (itemAux.Id > 0) { comando = bancoDeDados.CriarComando(@" update {0}crt_silvicultura_atv_cult c set c.caracterizacao = :caracterizacao, c.silvicultura_id = :silvicultura_id, c.cultura = :cultura, c.area = :area, c.especificar = :especificar, c.tid = :tid where c.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", itemAux.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}crt_silvicultura_atv_cult c (id, caracterizacao, silvicultura_id, cultura, area, especificar, tid) values ({0}seq_crt_silvic_atv_cult.nextval, :caracterizacao, :silvicultura_id, :cultura, :area, :especificar, :tid) returning id into :id" , EsquemaBanco); comando.AdicionarParametroSaida("id", DbType.Int32); } comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("silvicultura_id", item.Id, DbType.Int32); comando.AdicionarParametroEntrada("cultura", itemAux.CulturaTipo, DbType.Int32); comando.AdicionarParametroEntrada("area", itemAux.AreaCultura, DbType.Decimal); comando.AdicionarParametroEntrada("especificar", string.Empty, DbType.String); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); itemAux.Id = itemAux.Id > 0 ? itemAux.Id : Convert.ToInt32(comando.ObterValorParametro("id")); } #endregion } #endregion #region Histórico Historico.Gerar(caracterizacao.Id, eHistoricoArtefatoCaracterizacao.silviculturaatv, eHistoricoAcao.atualizar, bancoDeDados); #endregion bancoDeDados.Commit(); } }