Beispiel #1
0
        public Fiscalizacao ObterComAcompanhamento(int id, int acompanhamentoId, bool simplificado = false, BancoDeDados banco = null)
        {
            Fiscalizacao entidade = null;

            try
            {
                using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
                {
                    entidade = _da.Obter(id, bancoDeDados);

                    if (simplificado)
                    {
                        return(entidade);
                    }

                    entidade.LocalInfracao       = _daLocalInfracao.Obter(id, bancoDeDados);
                    entidade.ComplementacaoDados = _daComplementacaoDados.Obter(id, bancoDeDados);
                    entidade.Enquadramento       = _daEnquadramento.Obter(id, bancoDeDados);
                    entidade.Infracao            = _daInfracao.ObterHistoricoPorFiscalizacao(id, bancoDeDados);
                    entidade.ObjetoInfracao      = _daObjetoInfracao.Obter(id, bancoDeDados);
                    entidade.MaterialApreendido  = _daMaterialApreendido.Obter(id, bancoDeDados);
                    entidade.ConsideracaoFinal   = _daConsideracaoFinal.Obter(id, bancoDeDados);
                    entidade.ProjetoGeo          = _daPrjGeo.ObterProjetoGeograficoPorFiscalizacao(id, bancoDeDados);

                    entidade.AutuadoPessoa         = entidade.LocalInfracao.PessoaId.GetValueOrDefault() > 0 ? new PessoaBus().Obter(entidade.LocalInfracao.PessoaId.Value) : new Pessoa();
                    entidade.AutuadoEmpreendimento = entidade.LocalInfracao.EmpreendimentoId.GetValueOrDefault() > 0 ? new EmpreendimentoBus().Obter(entidade.LocalInfracao.EmpreendimentoId.Value) : new Empreendimento();

                    Acompanhamento acomp = _daAcompanhamento.Obter(acompanhamentoId);

                    entidade.ComplementacaoDados.AreaTotalInformada           = acomp.AreaTotal;
                    entidade.ComplementacaoDados.AreaCoberturaFlorestalNativa = acomp.AreaFlorestalNativa;
                    entidade.ComplementacaoDados.ReservalegalTipo             = acomp.ReservalegalTipo;
                    entidade.ObjetoInfracao.OpniaoAreaDanificada = acomp.OpniaoAreaEmbargo;
                    entidade.ObjetoInfracao.ExisteAtvAreaDegrad  = acomp.AtividadeAreaEmbargada;
                    entidade.ObjetoInfracao.ExisteAtvAreaDegradEspecificarTexto = acomp.AtividadeAreaEmbargadaEspecificarTexto;
                    entidade.ObjetoInfracao.UsoSoloAreaDanificada            = acomp.UsoAreaSoloDescricao;
                    entidade.ObjetoInfracao.CaracteristicaSoloAreaDanificada = acomp.CaracteristicaSoloAreaDanificada;
                    entidade.ObjetoInfracao.AreaDeclividadeMedia             = acomp.AreaDeclividadeMedia;
                    entidade.ObjetoInfracao.InfracaoResultouErosaoTipo       = acomp.InfracaoResultouErosao;
                    entidade.ObjetoInfracao.InfracaoResultouErosaoTipoTexto  = acomp.InfracaoResultouErosaoEspecificar;
                    entidade.MaterialApreendido.Opiniao   = acomp.OpniaoDestMaterialApreend;
                    entidade.ConsideracaoFinal.Assinantes = acomp.Assinantes;
                    entidade.ConsideracaoFinal.Anexos     = acomp.Anexos;
                }
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(entidade);
        }
Beispiel #2
0
        public Acompanhamento Obter(int id, bool simplificado = false, BancoDeDados banco = null)
        {
            try
            {
                return(_da.Obter(id, simplificado, banco));
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(null);
        }
        internal bool AlterarSituacao(Acompanhamento entidade)
        {
            if (!_protocoloDa.EmPosse(_fiscalizacaoBus.Obter(entidade.FiscalizacaoId).ProtocoloId))
            {
                Validacao.Add(Mensagem.Acompanhamento.PosseProcessoAlterarSituacao);
                return(false);
            }

            if (entidade.SituacaoId <= 0)
            {
                Validacao.Add(Mensagem.Acompanhamento.SituacaoNovaObrigatorio);
            }

            ValidacoesGenericasBus.DataMensagem(entidade.DataSituacao, "DataSituacaoNova", "Data da nova situação");

            if (entidade.SituacaoId == (int)eAcompanhamentoSituacao.Cancelado)
            {
                if (string.IsNullOrWhiteSpace(entidade.Motivo))
                {
                    Validacao.Add(Mensagem.Acompanhamento.SituacaoMotivoObrigatorio);
                }
            }
            else
            {
                entidade.Motivo = string.Empty;
            }

            Acompanhamento auxilio = _da.Obter(entidade.Id, true);

            if (entidade.DataSituacao.Data < auxilio.DataSituacao.Data)
            {
                Validacao.Add(Mensagem.Acompanhamento.SituacaoDataAntigaMaiorNova);
            }

            entidade.PdfLaudo = auxilio.PdfLaudo;

            return(Validacao.EhValido);
        }
Beispiel #4
0
        public MemoryStream GerarLaudoAcompanhamentoFiscalizacao(int id, bool gerarTarja = true, BancoDeDados banco = null)
        {
            ArquivoDocCaminho = @"~/Content/_pdfAspose/Laudo_de_Fiscalizacao_Acompanhamento.docx";

            AcompanhamentoRelatorio acompanhamento = _daAcompanhamento.Obter(id, banco: banco);
            int historicoId = _da.ObterHistoricoIdConcluido(acompanhamento.FiscalizacaoId, banco);
            FiscalizacaoRelatorio dataSource = _da.ObterHistorico(historicoId, banco);

            dataSource.Acompanhamento = acompanhamento;

            ConfiguracaoDefault.TextoTagAssinante   = "«Assinante.Nome»";
            ConfiguracaoDefault.TextoTagAssinantes1 = "«TableStart:Assinantes1»";
            ConfiguracaoDefault.TextoTagAssinantes2 = "«TableStart:Assinantes2»";

            if (dataSource.Acompanhamento != null &&
                dataSource.Acompanhamento.Assinantes != null &&
                dataSource.Acompanhamento.Assinantes.Count > 0)
            {
                var autor = dataSource.Acompanhamento.Assinantes.First(x => x.Id == dataSource.Acompanhamento.AgenteId);
                if (autor != null)
                {
                    dataSource.Acompanhamento.Assinantes.Remove(autor);
                    dataSource.Acompanhamento.Assinantes.Insert(0, autor);
                }

                ConfiguracaoDefault.Assinantes = dataSource.Acompanhamento.Assinantes.Cast <IAssinante>().ToList();
            }

            ConfigurarCabecarioRodape(dataSource.Acompanhamento.SetorId);

            if (dataSource.Acompanhamento.Anexos != null && dataSource.Acompanhamento.Anexos.Count > 0)
            {
                foreach (ConsideracoesFinaisAnexoRelatorio anexo in dataSource.Acompanhamento.Anexos)
                {
                    anexo.Arquivo.Conteudo = AsposeImage.RedimensionarImagem(File.ReadAllBytes(anexo.Arquivo.Caminho), 11, eAsposeImageDimensao.Ambos);
                }
            }

            ObterArquivoTemplate();

            object objeto = dataSource;

            #region Remover

            this.ConfiguracaoDefault.AddLoadAcao((doc, a) =>
            {
                List <Table> itenRemover           = new List <Table>();
                FiscalizacaoRelatorio fiscalizacao = (FiscalizacaoRelatorio)dataSource;

                fiscalizacao.OrgaoMunicipio = _configSys.Obter <String>(ConfiguracaoSistema.KeyOrgaoMunicipio);
                fiscalizacao.OrgaoUF        = _configSys.Obter <String>(ConfiguracaoSistema.KeyOrgaoUf);

                if (fiscalizacao.Infracao.Campos.Count == 0)
                {
                    doc.Find <Row>("«TableStart:Infracao.Campos»").Remove();
                }

                if (fiscalizacao.Infracao.Perguntas.Count == 0)
                {
                    doc.Find <Row>("«TableStart:Infracao.Perguntas»").Remove();
                }

                if (fiscalizacao.Acompanhamento.Anexos.Count == 0)
                {
                    itenRemover.Add(doc.Last <Table>("«TableStart:Acompanhamento.Anexos»"));
                    doc.RemovePageBreak();
                }

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            #endregion Remover

            ConfiguracaoDefault.ExibirSimplesConferencia = gerarTarja;

            return(GerarPdf(dataSource));
        }