public Cobranca Obter(int cobrancaId, int fiscalizacaoId, BancoDeDados banco = null) { var cobranca = new Cobranca(); var cobrancaParcelamentoDa = new CobrancaParcelamentoDa(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { Comando comando = bancoDeDados.CriarComando(@" select c.id, c.fiscalizacao, f.id fiscalizacao_id, coalesce(i.pessoa, i.responsavel, c.autuado) autuado, c.codigoreceita, (select lfc.texto from lov_fisc_infracao_codigo_rece lfc where lfc.id = c.codigoreceita) as codigoreceita_texto, c.serie, (select lfs.texto from lov_fiscalizacao_serie lfs where lfs.id = c.serie) serie_texto, coalesce(cast(m.iuf_numero as varchar2(10)), tfi.numero_auto_infracao_bloco, cast(f.autos as varchar2(10)), cast(c.iuf_numero as varchar2(10))) iuf_numero, coalesce(m.iuf_data, tfi.data_lavratura_auto, c.iuf_data) iuf_data, case when p.id > 0 then concat(concat(cast(p.numero as VARCHAR2(30)), '/'), cast(p.ano as VARCHAR2(30))) else cast(c.protoc_num as VARCHAR2(30)) end protoc_num, coalesce(p.numero_autuacao, c.numero_autuacao) numero_autuacao, coalesce(n.forma_iuf_data, c.not_iuf_data) not_iuf_data, coalesce(n.forma_jiapi_data, c.not_jiapi_data) not_jiapi_data, coalesce(n.forma_core_data, c.not_core_data) not_core_data from tab_fisc_cobranca c left join tab_fiscalizacao f on (f.id = c.fiscalizacao) left join tab_protocolo p on (p.fiscalizacao = c.fiscalizacao) left join tab_fisc_notificacao n on (n.fiscalizacao = c.fiscalizacao) left join tab_fisc_multa m on (m.fiscalizacao = c.fiscalizacao) left join tab_fisc_local_infracao i on (i.fiscalizacao = f.id) left join tab_fisc_infracao tfi on (tfi.fiscalizacao = f.id) where " + (cobrancaId > 0 ? "c.id = :cobranca" : "c.fiscalizacao = :fiscalizacao"), EsquemaBanco); if (cobrancaId > 0) { comando.AdicionarParametroEntrada("cobranca", cobrancaId, DbType.Int32); } else { comando.AdicionarParametroEntrada("fiscalizacao", fiscalizacaoId, DbType.Int32); } using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { cobranca = new Cobranca { Id = reader.GetValue <int>("id"), FiscalizacaoId = reader.GetValue <int>("fiscalizacao_id"), NumeroFiscalizacao = reader.GetValue <int>("fiscalizacao"), ProcessoNumero = reader.GetValue <string>("protoc_num"), NumeroAutuacao = reader.GetValue <string>("numero_autuacao"), NumeroIUF = reader.GetValue <string>("iuf_numero"), SerieId = reader.GetValue <int>("serie"), SerieTexto = reader.GetValue <string>("serie_texto"), AutuadoPessoaId = reader.GetValue <int>("autuado"), CodigoReceitaId = reader.GetValue <int>("codigoreceita"), CodigoReceitaTexto = reader.GetValue <string>("codigoreceita_texto") }; cobranca.DataEmissaoIUF.Data = reader.GetValue <DateTime>("iuf_data"); cobranca.DataIUF.Data = reader.GetValue <DateTime>("not_iuf_data"); cobranca.DataJIAPI.Data = reader.GetValue <DateTime>("not_jiapi_data"); cobranca.DataCORE.Data = reader.GetValue <DateTime>("not_core_data"); if (cobranca.DataEmissaoIUF.Data.HasValue && cobranca.DataEmissaoIUF.Data.Value.Year == 1) { cobranca.DataEmissaoIUF = new DateTecno(); } if (cobranca.DataIUF.Data.HasValue && cobranca.DataIUF.Data.Value.Year == 1) { cobranca.DataIUF = new DateTecno(); } if (cobranca.DataJIAPI.Data.HasValue && cobranca.DataJIAPI.Data.Value.Year == 1) { cobranca.DataJIAPI = new DateTecno(); } if (cobranca.DataCORE.Data.HasValue && cobranca.DataCORE.Data.Value.Year == 1) { cobranca.DataCORE = new DateTecno(); } cobranca.AutuadoPessoa = cobranca.AutuadoPessoaId > 0 ? new PessoaBus().Obter(cobranca.AutuadoPessoaId) : new Pessoa(); cobranca.Notificacao = cobranca.NumeroFiscalizacao > 0 ? new NotificacaoBus().Obter(cobranca.NumeroFiscalizacao.GetValueOrDefault(0)) : new Notificacao(); cobranca.Parcelamentos = cobrancaParcelamentoDa.Obter(cobranca.Id); if (cobranca.DataEmissaoIUF.Data.HasValue && cobranca.DataEmissaoIUF.Data.Value.Year == 1) { var _fiscDA = new FiscalizacaoDa(); cobranca.DataEmissaoIUF = _fiscDA.ObterDataConclusao(cobranca.NumeroFiscalizacao.GetValueOrDefault(0)); } } else { cobranca = null; } reader.Close(); } #region Anexos if (cobranca?.Id > 0) { comando = bancoDeDados.CriarComando(@"select a.id Id, a.ordem Ordem, a.descricao Descricao, b.nome, b.extensao, b.id arquivo_id, b.caminho, a.tid Tid from {0}tab_fisc_cobranca_arq a, {0}tab_arquivo b where a.arquivo = b.id and a.cobranca = :cobranca order by a.ordem" , EsquemaBanco); comando.AdicionarParametroEntrada("cobranca", cobranca.Id, DbType.Int32); cobranca.Anexos = bancoDeDados.ObterEntityList <Anexo>(comando, (IDataReader reader, Anexo item) => { item.Arquivo.Id = reader.GetValue <int>("arquivo_id"); item.Arquivo.Caminho = reader.GetValue <string>("caminho"); item.Arquivo.Nome = reader.GetValue <string>("nome"); item.Arquivo.Extensao = reader.GetValue <string>("extensao"); }); } #endregion } return(cobranca); }
internal ObjetoInfracao Obter(int fiscalizacaoId, BancoDeDados banco = null) { ObjetoInfracao objetoInfracao = new ObjetoInfracao(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Objeto de infracao Comando comando = bancoDeDados.CriarComando(@"select i.id, t.situacao situacao_id, i.area_embargada_atv_intermed, i.tei_gerado_pelo_sist, i.tei_gerado_pelo_sist_serie, i.num_tei_bloco, data_lavratura_termo, i.opniao_area_danificada, i.desc_termo_embargo, i.existe_atv_area_degrad, i.existe_atv_area_degrad_especif, i.fundament_infracao, i.uso_solo_area_danif, i.declividade_media_area, i.infracao_result_erosao, i.caract_solo_area_danif, i.arquivo, a.nome arquivo_nome, i.tid, i.infr_result_er_especifique, i.interditado, i.numero_lacre, i.iuf_digital, i.iuf_numero, i.iuf_data, i.serie, lfs.texto serie_texto, t.autos from tab_fisc_obj_infracao i, tab_fiscalizacao t, tab_arquivo a, lov_fiscalizacao_serie lfs where i.fiscalizacao = :fiscalizacao and i.arquivo = a.id(+) and t.id = i.fiscalizacao and (lfs.id = i.serie or i.serie is null)", EsquemaBanco); comando.AdicionarParametroEntrada("fiscalizacao", fiscalizacaoId, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { objetoInfracao.Id = Convert.ToInt32(reader["id"]); objetoInfracao.FiscalizacaoId = fiscalizacaoId; objetoInfracao.FiscalizacaoSituacaoId = Convert.ToInt32(reader["situacao_id"]); objetoInfracao.ExisteAtvAreaDegrad = Convert.ToInt32(reader["existe_atv_area_degrad"]); objetoInfracao.ExisteAtvAreaDegradEspecificarTexto = reader["existe_atv_area_degrad_especif"].ToString(); objetoInfracao.NumeroLacre = reader["numero_lacre"].ToString(); objetoInfracao.IsDigital = reader.GetValue <bool?>("iuf_digital"); objetoInfracao.NumeroIUF = reader.GetValue <string>("iuf_numero"); objetoInfracao.DataLavraturaTermo.Data = reader.GetValue <DateTime>("iuf_data"); objetoInfracao.SerieId = reader.GetValue <int?>("serie"); objetoInfracao.SerieTexto = reader.GetValue <string>("serie_texto"); objetoInfracao.Tid = reader["tid"].ToString(); if (reader["interditado"] != null && !Convert.IsDBNull(reader["interditado"])) { objetoInfracao.Interditado = Convert.ToBoolean(reader["interditado"]); } else { objetoInfracao.Interditado = null; } if (objetoInfracao.IsDigital == true && objetoInfracao.FiscalizacaoSituacaoId == (int)eFiscalizacaoSituacao.EmAndamento) { objetoInfracao.NumeroIUF = null; objetoInfracao.DataLavraturaTermo.Data = DateTime.MinValue; } else { objetoInfracao.DataLavraturaTermo.Data = reader.GetValue <DateTime>("iuf_data"); } if (reader["opniao_area_danificada"] != null && !Convert.IsDBNull(reader["opniao_area_danificada"])) { objetoInfracao.OpniaoAreaDanificada = reader["opniao_area_danificada"].ToString(); } if (reader["desc_termo_embargo"] != null && !Convert.IsDBNull(reader["desc_termo_embargo"])) { objetoInfracao.DescricaoTermoEmbargo = reader["desc_termo_embargo"].ToString(); } if (reader["arquivo"] != null && !Convert.IsDBNull(reader["arquivo"])) { objetoInfracao.Arquivo.Id = Convert.ToInt32(reader["arquivo"]); objetoInfracao.Arquivo.Nome = reader["arquivo_nome"].ToString(); } objetoInfracao.InfracaoResultouErosaoTipoTexto = reader.GetValue <string>("infr_result_er_especifique"); //fiscalizações antigas if (objetoInfracao.FiscalizacaoSituacaoId != 1 && objetoInfracao.IsDigital == null) { objetoInfracao.IsDigital = reader.GetValue <bool?>("tei_gerado_pelo_sist") ?? false; objetoInfracao.SerieId = reader.GetValue <int?>("tei_gerado_pelo_sist_serie"); objetoInfracao.NumeroIUF = objetoInfracao.IsDigital != true?reader.GetValue <string>("num_tei_bloco") : reader.GetValue <string>("autos"); if (reader["data_lavratura_termo"] != null && !Convert.IsDBNull(reader["data_lavratura_termo"])) { objetoInfracao.DataLavraturaTermo.Data = Convert.ToDateTime(reader["data_lavratura_termo"]); } else { if (reader.GetValue <bool?>("tei_gerado_pelo_sist") != null) { FiscalizacaoDa _fiscDA = new FiscalizacaoDa(); objetoInfracao.DataLavraturaTermo = _fiscDA.ObterDataConclusao(objetoInfracao.FiscalizacaoId); } else { objetoInfracao.DataLavraturaTermo.Data = null; } } comando = bancoDeDados.CriarComando(@"select texto from {0}lov_fisc_obj_infra_serie where id = :idserie", EsquemaBanco); comando.AdicionarParametroEntrada("idserie", objetoInfracao.SerieId, DbType.Int32); using (IDataReader readerAux = bancoDeDados.ExecutarReader(comando)) { if (readerAux.Read()) { objetoInfracao.SerieTexto = readerAux.GetValue <string>("texto"); } readerAux.Close(); } } } reader.Close(); } #endregion } return(objetoInfracao); }
public Multa ObterAntigo(int fiscalizacaoId, BancoDeDados banco = null) { Multa multa = new Multa(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { Comando comando = bancoDeDados.CriarComando(@" select f.situacao situacao_id, tfi.valor_multa, tfi.codigo_receita, tfcf.justificar, tfi.arquivo, a.nome arquivo_nome, tfi.gerado_sistema, tfi.serie, lfs.texto serie_texto, tfi.data_lavratura_auto, tfi.numero_auto_infracao_bloco, f.autos from {0}tab_fisc_infracao tfi, {0}tab_fisc_consid_final tfcf, {0}tab_fiscalizacao f, {0}tab_arquivo a, {0}lov_fiscalizacao_serie lfs where tfi.arquivo = a.id(+) and tfi.serie = lfs.id(+) and tfi.fiscalizacao = :fiscalizacao and tfcf.fiscalizacao = :fiscalizacao and f.id = tfi.fiscalizacao", EsquemaBanco); comando.AdicionarParametroEntrada("fiscalizacao", fiscalizacaoId, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { multa = new Multa { ValorMulta = reader.GetValue <decimal>("valor_multa"), CodigoReceitaId = reader.GetValue <int>("codigo_receita"), FiscalizacaoSituacaoId = reader.GetValue <int>("situacao_id"), Justificativa = reader.GetValue <string>("justificar"), Id = 1, IsDigital = reader.GetValue <bool>("gerado_sistema"), SerieId = reader.GetValue <int>("serie"), SerieTexto = reader.GetValue <string>("serie_texto"), FiscalizacaoId = fiscalizacaoId }; multa.NumeroIUF = multa.IsDigital != true?reader.GetValue <string>("numero_auto_infracao_bloco") : reader.GetValue <string>("autos"); if (reader["data_lavratura_auto"] != null && !Convert.IsDBNull(reader["data_lavratura_auto"])) { multa.DataLavratura.Data = Convert.ToDateTime(reader["data_lavratura_auto"]); } else { FiscalizacaoDa _fiscDA = new FiscalizacaoDa(); multa.DataLavratura = _fiscDA.ObterDataConclusao(multa.FiscalizacaoId); } multa.Arquivo = new Arquivo { Id = reader.GetValue <int>("arquivo"), Nome = reader.GetValue <string>("arquivo_nome") }; if (multa.ValorMulta == 0) { multa = new Multa(); } } reader.Close(); } } return(multa); }
public MaterialApreendido ObterAntigo(int fiscalizacaoId, BancoDeDados banco = null) { MaterialApreendido materialApreendido = new MaterialApreendido(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Material Apreendido Comando comando = bancoDeDados.CriarComando(@" select t.id, t.fiscalizacao, f.situacao situacao_id, t.houve_material, t.tad_gerado, t.tad_numero, t.tad_data, t.serie, (select texto from lov_fiscalizacao_serie where id = t.serie) serie_texto, t.descricao, t.valor_produtos, t.depositario, nvl(p.nome, p.razao_social) nome, nvl(p.cpf, p.cnpj) cpf, t.endereco_logradouro, t.endereco_bairro, t.endereco_distrito, t.endereco_estado, t.endereco_municipio, t.opiniao, t.arquivo, a.nome arquivo_nome, t.tid, f.autos from tab_fisc_material_apreendido t, tab_pessoa p, tab_arquivo a, tab_fiscalizacao f where t.depositario = p.id(+) and t.arquivo = a.id(+) and t.fiscalizacao = :fiscalizacao and f.id = t.fiscalizacao" , EsquemaBanco); comando.AdicionarParametroEntrada("fiscalizacao", fiscalizacaoId, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { materialApreendido = new MaterialApreendido { Id = reader.GetValue <int>("id"), FiscalizacaoId = reader.GetValue <int>("fiscalizacao"), SerieId = reader.GetValue <int>("serie"), SerieTexto = reader.GetValue <string>("serie_texto"), ValorProdutosReais = reader.GetValue <decimal?>("valor_produtos"), Descricao = reader.GetValue <string>("descricao"), Opiniao = reader.GetValue <string>("opiniao"), FiscalizacaoSituacaoId = reader.GetValue <int>("situacao_id"), Tid = reader.GetValue <string>("tid"), Depositario = new MaterialApreendidoDepositario { Id = reader.GetValue <int>("depositario"), NomeRazaoSocial = reader.GetValue <string>("nome"), CPFCNPJ = reader.GetValue <string>("cpf"), Logradouro = reader.GetValue <string>("endereco_logradouro"), Bairro = reader.GetValue <string>("endereco_bairro"), Distrito = reader.GetValue <string>("endereco_distrito"), Estado = reader.GetValue <int>("endereco_estado"), Municipio = reader.GetValue <int>("endereco_municipio") }, IsDigital = reader.GetValue <bool>("tad_gerado") }; materialApreendido.NumeroIUF = materialApreendido.IsDigital != true?reader.GetValue <string>("tad_numero") : reader.GetValue <string>("autos"); if (reader["tad_data"] != null && !Convert.IsDBNull(reader["tad_data"])) { materialApreendido.DataLavratura.Data = Convert.ToDateTime(reader["tad_data"]); } else { FiscalizacaoDa _fiscDA = new FiscalizacaoDa(); materialApreendido.DataLavratura = _fiscDA.ObterDataConclusao(materialApreendido.FiscalizacaoId); } materialApreendido.Arquivo = new Arquivo { Id = reader.GetValue <int>("arquivo"), Nome = reader.GetValue <string>("arquivo_nome") }; } reader.Close(); } #endregion #region Materiais // comando = bancoDeDados.CriarComando(@" select tfmam.id, tfmam.material_apreendido, tfmam.tipo, lfmat.texto tipo_texto, tfmam.especificacao, tfmam.tid from tab_fisc_mater_apree_material // tfmam, lov_fisc_mate_apreendido_tipo lfmat where tfmam.tipo = lfmat.id and tfmam.material_apreendido = :material_apreendido ", EsquemaBanco); // comando.AdicionarParametroEntrada("material_apreendido", materialApreendido.Id, DbType.Int32); // using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) // { // materialApreendido.Materiais = new List<MaterialApreendidoMaterial>(); // while (reader.Read()) // { // materialApreendido.Materiais.Add(new MaterialApreendidoMaterial // { // Id = reader.GetValue<int>("id"), // TipoId = reader.GetValue<int>("tipo"), // TipoTexto = reader.GetValue<string>("tipo_texto"), // Especificacao = reader.GetValue<string>("especificacao") // }); // } // reader.Close(); // } #endregion } return(materialApreendido); }