internal Certidao ObterDadosPDF(int titulo, BancoDeDados banco = null)
        {
            Certidao certidao = new Certidao();

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                #region Dados do Titulo

                DadosPDF dados = DaEsp.ObterDadosTitulo(titulo, bancoDeDados);

                certidao.Titulo = dados.Titulo;
                certidao.Titulo.SetorEndereco = DaEsp.ObterEndSetor(certidao.Titulo.SetorId);
                certidao.Protocolo            = dados.Protocolo;
                certidao.Empreendimento       = dados.Empreendimento;

                #endregion

                #region Dados da Especificidade

                Comando comando = bancoDeDados.CriarComando(@" select e.id, e.descricao, d.matricula, d.cartorio, d.livro, d.folha, d.numero_ccri numero_ccir from {0}esp_certidao_carta_anuencia
					e, {0}crt_dominialidade_dominio d where e.titulo = :id and e.dominio = d.id "                    , EsquemaBanco);

                comando.AdicionarParametroEntrada("id", titulo, DbType.Int32);

                using (IDataReader reader = bancoDeDados.ExecutarReader(comando))
                {
                    if (reader.Read())
                    {
                        certidao.Id         = Convert.ToInt32(reader["id"]);
                        certidao.Matricula  = reader["matricula"].ToString();
                        certidao.Cartorio   = reader["cartorio"].ToString();
                        certidao.Livro      = reader["livro"].ToString();
                        certidao.Folha      = reader["folha"].ToString();
                        certidao.NumeroCCIR = reader["numero_ccir"].ToString();
                        certidao.Descricao  = reader["descricao"].ToString();
                    }

                    reader.Close();
                }

                #endregion

                #region Destinatarios
                comando = bancoDeDados.CriarComando(@"select e.destinatario from {0}esp_certidao_carta_anuen_dest e where e.especificidade = :especificidade", EsquemaBanco);
                comando.AdicionarParametroEntrada("especificidade", certidao.Id, DbType.Int32);
                List <Int32> destinatarios = bancoDeDados.ExecutarList <Int32>(comando);
                certidao.Destinatarios = destinatarios.Select(x => DaEsp.ObterDadosPessoa(x, certidao.Empreendimento.Id, bancoDeDados)).ToList();
                #endregion
            }

            return(certidao);
        }
        internal Certidao ObterDadosPDF(int titulo, BancoDeDados banco = null)
        {
            Certidao certidao = new Certidao();

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                #region Dados do Titulo

                DadosPDF dados = DaEsp.ObterDadosTitulo(titulo, bancoDeDados);
                certidao.Titulo         = dados.Titulo;
                certidao.Protocolo      = dados.Protocolo;
                certidao.Empreendimento = dados.Empreendimento;

                #endregion

                #region Dados da Especificidade

                Comando comando = bancoDeDados.CriarComando(@"select e.id, e.certificacao from {0}esp_certidao_anuencia e where e.titulo = :id", EsquemaBanco);

                comando.AdicionarParametroEntrada("id", titulo, DbType.Int32);

                using (IDataReader reader = bancoDeDados.ExecutarReader(comando))
                {
                    if (reader.Read())
                    {
                        certidao.Id           = reader.GetValue <Int32>("id");
                        certidao.Certificacao = reader.GetValue <string>("certificacao");
                    }

                    reader.Close();
                }

                #endregion

                #region Destinatarios

                comando = bancoDeDados.CriarComando(@"select e.destinatario from {0}esp_certidao_anuencia_dest e where e.especificidade = :especificidade", EsquemaBanco);
                comando.AdicionarParametroEntrada("especificidade", certidao.Id, DbType.Int32);
                List <Int32> destinatarios = bancoDeDados.ExecutarList <Int32>(comando);
                certidao.Destinatarios = destinatarios.Select(x => DaEsp.ObterDadosPessoa(x, certidao.Empreendimento.Id, bancoDeDados)).ToList();

                #endregion
            }

            return(certidao);
        }
        public object ObterDadosPdf(IEspecificidade especificidade, BancoDeDados banco)
        {
            try
            {
                Certidao certidao = _da.ObterDadosPDF(especificidade.Titulo.Id, banco);

                DataEmissaoPorExtenso(certidao.Titulo);

                return(certidao);
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(null);
        }
Пример #4
0
        internal Certidao ObterDadosPDF(int titulo, BancoDeDados banco = null)
        {
            Certidao certidao = new Certidao();

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                #region Dados do Titulo

                DadosPDF dados = DaEsp.ObterDadosTitulo(titulo, bancoDeDados);

                certidao.Titulo = dados.Titulo;
                certidao.Titulo.SetorEndereco = DaEsp.ObterEndSetor(certidao.Titulo.SetorId);
                certidao.Protocolo            = dados.Protocolo;
                certidao.Empreendimento       = dados.Empreendimento;

                #endregion

                #region Dados da Especificidade

                Comando comando = bancoDeDados.CriarComando(@"select e.destinatario, e.protocolo from {0}esp_certidao_debito e where e.titulo = :id", EsquemaBanco);

                comando.AdicionarParametroEntrada("id", titulo, DbType.Int32);

                using (IDataReader reader = bancoDeDados.ExecutarReader(comando))
                {
                    if (reader.Read())
                    {
                        certidao.Destinatario.Id = Convert.ToInt32(reader["destinatario"]);
                        certidao.Protocolo.Id    = Convert.ToInt32(reader["protocolo"]);
                    }

                    reader.Close();
                }

                #endregion

                certidao.Destinatario = DaEsp.ObterDadosPessoa(certidao.Destinatario.Id, certidao.Empreendimento.Id, bancoDeDados);
            }

            return(certidao);
        }
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Certidao certidao        = dataSource as Certidao;
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                if (certidao.Empreendimento.Id <= 0)
                {
                    itenRemover.Add(doc.LastTable("«Empreendimento.EndZona»"));
                    doc.RemovePageBreak();
                }

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
Пример #6
0
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                Certidao certidao = dataSource as Certidao;

                if (certidao.CertidaoDebito.TipoCertidao == eCertidaoTipo.Negativa)
                {
                    itenRemover.Add(doc.LastTable("Certidão POSITIVA de Débito"));
                    itenRemover.Add(doc.LastTable("CERTIDÃO POSITIVA PROCESSO(S) Nº «CertidaoDebito.ProtocoloNumero»"));
                    itenRemover.Add(doc.LastTable("CERTIDÃO POSITIVA COM EFEITO DE NEGATIVA. PROCESSO(S) Nº «CertidaoDebito.ProtocoloNumero»."));
                }
                else
                {
                    itenRemover.Add(doc.LastTable("Certidão NEGATIVA de Débito"));

                    if (certidao.CertidaoDebito.TipoCertidao == eCertidaoTipo.Positiva)
                    {
                        itenRemover.Add(doc.LastTable("CERTIDÃO POSITIVA COM EFEITO DE NEGATIVA. PROCESSO(S) Nº «CertidaoDebito.ProtocoloNumero»."));
                    }

                    if (certidao.CertidaoDebito.TipoCertidao == eCertidaoTipo.PositivaComEfeitoNegativa)
                    {
                        itenRemover.Add(doc.LastTable("CERTIDÃO POSITIVA PROCESSO(S) Nº «CertidaoDebito.ProtocoloNumero»"));
                    }
                }


                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
Пример #7
0
        public IActionResult Certidao_Inscricao(CertidaoViewModel model)
        {
            int  _codigo;
            bool _valida = false;
            int  _numero;

            _numero        = tributarioRepository.Retorna_Codigo_Certidao(Functions.TipoCertidao.Debito);
            ViewBag.Result = "";

            model.OptionList = new List <SelectListItem> {
                new SelectListItem {
                    Text = " CPF", Value = "cpfCheck", Selected = model.SelectedValue == "cpfCheck"
                },
                new SelectListItem {
                    Text = " CNPJ", Value = "cnpjCheck", Selected = model.SelectedValue == "cnpjCheck"
                }
            };

            if (model.CpfValue != null || model.CnpjValue != null)
            {
                List <int> _lista = new List <int>();
                if (model.CpfValue != null)
                {
                    _lista = empresaRepository.Retorna_Codigo_por_CPF(Functions.RetornaNumero(model.CpfValue));
                }
                else
                {
                    if (model.CnpjValue != null)
                    {
                        _lista = empresaRepository.Retorna_Codigo_por_CNPJ(Functions.RetornaNumero(model.CnpjValue));
                    }
                }
                if (_lista.Count > 0)
                {
                    ViewBag.Lista_Codigo = _lista;
                }
            }

            if (!Captcha.ValidateCaptchaCode(model.CaptchaCode, HttpContext))
            {
                ViewBag.Result = "Código de verificação inválido.";
                return(View(model));
            }

            if (model.Inscricao != null)
            {
                _codigo = Convert.ToInt32(model.Inscricao);
            }
            else
            {
                ViewBag.Result = "Erro ao recuperar as informações.";
                return(View(model));
            }

            EmpresaStruct     _dados = empresaRepository.Dados_Empresa(_codigo);
            string            _sufixo = model.Extrato ? _dados.Data_Encerramento == null ? "XA" : "XE" : "IE";
            List <CnaeStruct> ListaCnae = empresaRepository.Lista_Cnae_Empresa(_codigo);
            string            _cnae = "", _cnae2 = "";

            foreach (CnaeStruct cnae in ListaCnae)
            {
                if (cnae.Principal)
                {
                    _cnae = cnae.CNAE + "-" + cnae.Descricao;
                }
                else
                {
                    _cnae2 += cnae.CNAE + "-" + cnae.Descricao + System.Environment.NewLine;
                }
            }

            Comprovante_Inscricao reg = new Comprovante_Inscricao()
            {
                Codigo             = _codigo,
                Data_Emissao       = DateTime.Now,
                Razao_Social       = _dados.Razao_social,
                Nome_Fantasia      = _dados.Nome_fantasia,
                Cep                = _dados.Cep,
                Cidade             = _dados.Cidade_nome + "/" + _dados.UF,
                Email              = _dados.Email_contato,
                Inscricao_Estadual = _dados.Inscricao_estadual,
                Endereco           = _dados.Endereco_nome + ", " + _dados.Numero,
                Complemento        = _dados.Complemento,
                Bairro             = _dados.Bairro_nome ?? "",
                Ano                = DateTime.Now.Year,
                Numero             = _numero,
                Controle           = _numero.ToString("00000") + DateTime.Now.Year.ToString("0000") + "/" + _codigo.ToString() + "-" + _sufixo,
                Atividade          = _cnae,
                Atividade2         = _cnae2,
                Atividade_Extenso  = _dados.Atividade_extenso,
                Cpf_Cnpj           = _dados.Cpf_cnpj,
                Rg                    = _dados.Rg,
                Data_Abertura         = (DateTime)_dados.Data_abertura,
                Processo_Abertura     = _dados.Numprocesso,
                Processo_Encerramento = _dados.Numprocessoencerramento,
                Situacao              = _dados.Situacao,
                Telefone              = _dados.Fone_contato,
                Uf                    = _dados.UF,
                Area                  = (decimal)_dados.Area,
                Mei                   = Convert.ToBoolean(_dados.Mei) ? "SIM" : "NÃO",
                Vigilancia_Sanitaria  = empresaRepository.Empresa_tem_VS(_codigo)?"SIM":"NÃO",
                Taxa_Licenca          = empresaRepository.Empresa_tem_TL(_codigo) ? "SIM" : "NÃO"
            };

            if (_dados.Data_Encerramento != null)
            {
                reg.Data_Encerramento = (DateTime)_dados.Data_Encerramento;
            }

            Certidao_Inscricao reg2 = new Certidao_Inscricao()
            {
                Cadastro          = reg.Codigo,
                Data_emissao      = reg.Data_Emissao,
                Data_encerramento = reg.Data_Encerramento,
                Nome                 = reg.Razao_Social,
                Nome_fantasia        = reg.Nome_Fantasia ?? "",
                Cep                  = reg.Cep ?? "",
                Cidade               = reg.Cidade ?? "",
                Email                = reg.Email ?? "",
                Inscricao_estadual   = reg.Inscricao_Estadual ?? "",
                Endereco             = reg.Endereco + ", " + reg.Numero,
                Complemento          = reg.Complemento ?? "",
                Bairro               = reg.Bairro ?? "",
                Ano                  = DateTime.Now.Year,
                Numero               = _numero,
                Atividade            = _cnae ?? "",
                Atividade_secundaria = _cnae2 ?? "",
                Atividade_Extenso    = reg.Atividade_Extenso,
                Rg                    = reg.Rg ?? "",
                Documento             = reg.Cpf_Cnpj,
                Data_abertura         = (DateTime)reg.Data_Abertura,
                Processo_abertura     = reg.Processo_Abertura ?? "",
                Processo_encerramento = reg.Processo_Encerramento ?? "",
                Situacao              = reg.Situacao,
                Telefone              = reg.Telefone ?? "",
                Area                  = (decimal)reg.Area,
                Mei                   = reg.Mei,
                Vigilancia_sanitaria  = reg.Vigilancia_Sanitaria,
                Taxa_licenca          = reg.Taxa_Licenca
            };

            if (reg.Data_Encerramento != null)
            {
                reg2.Data_encerramento = (DateTime)reg.Data_Encerramento;
            }

            Exception ex = tributarioRepository.Insert_Certidao_Inscricao(reg2);

            if (ex != null)
            {
                throw ex;
            }

            List <Certidao> Lista_Certidao = new List <Certidao>();

            if (model.Extrato)
            {
                List <SpExtrato> ListaTributo = tributarioRepository.Lista_Extrato_Tributo(_codigo, 1980, 2050, 0, 99, 0, 99, 0, 999, 0, 99, 0, 99, DateTime.Now, "Web");
                List <SpExtrato> ListaParcela = tributarioRepository.Lista_Extrato_Parcela(ListaTributo);
                Certidao         regCert      = new Certidao();

                foreach (SpExtrato item in ListaParcela.Where(x => (x.Codlancamento == 2 || x.Codlancamento == 6 || x.Codlancamento == 14) && x.Statuslanc < 3))
                {
                    Certidao_Inscricao_Extrato regExt = new Certidao_Inscricao_Extrato {
                        Id = reg.Controle,
                        Numero_certidao = reg.Numero,
                        Ano_certidao    = (short)reg.Ano,
                        Ano             = item.Anoexercicio,
                        Codigo          = item.Codreduzido,
                        Complemento     = item.Codcomplemento,
                    };
                    if (item.Datapagamento != null)
                    {
                        regExt.Data_Pagamento = Convert.ToDateTime(item.Datapagamento);
                    }
                    regExt.Data_Vencimento      = item.Datavencimento;
                    regExt.Lancamento_Codigo    = item.Codlancamento;
                    regExt.Lancamento_Descricao = item.Desclancamento;
                    regExt.Parcela    = (byte)item.Numparcela;
                    regExt.Sequencia  = (byte)item.Seqlancamento;
                    regExt.Valor_Pago = (decimal)item.Valorpagoreal;
                    ex = tributarioRepository.Insert_Certidao_Inscricao_Extrato(regExt);
                    if (ex != null)
                    {
                        throw ex;
                    }
                    regCert.Controle              = _numero.ToString("00000") + DateTime.Now.Year.ToString("0000") + "/" + _codigo.ToString() + "-" + _sufixo;
                    regCert.Codigo                = _codigo;
                    regCert.Razao_Social          = reg2.Nome;
                    regCert.Nome_Requerente       = reg2.Nome;
                    regCert.Data_Abertura         = reg2.Data_abertura;
                    regCert.Processo_Encerramento = reg2.Processo_encerramento;
                    regCert.Endereco              = reg2.Endereco;
                    regCert.Endereco_Numero       = reg2.Numero;
                    regCert.Endereco_Complemento  = reg2.Complemento;
                    regCert.Bairro                = reg2.Bairro;
                    regCert.Cidade                = reg2.Cidade;
                    regCert.Atividade_Extenso     = reg2.Atividade_Extenso;
                    regCert.Rg                   = reg2.Rg;
                    regCert.Cpf_Cnpj             = reg2.Documento;
                    regCert.Exercicio            = regExt.Ano;
                    regCert.Lancamento_codigo    = (byte)regExt.Lancamento_Codigo;
                    regCert.Lancamento_Nome      = regExt.Lancamento_Descricao;
                    regCert.Sequencia_Lancamento = regExt.Sequencia;
                    regCert.Complemento          = regExt.Complemento;
                    regCert.Data_Vencimento      = regExt.Data_Vencimento;
                    regCert.Data_Pagamento       = regExt.Data_Pagamento;
                    regCert.Valor_Pago           = regExt.Valor_Pago;
                    regCert.Processo_Abertura    = reg2.Processo_abertura;
                    regCert.Numero_Ano           = regExt.Numero_certidao.ToString("00000") + "/" + regExt.Ano_certidao;
                    if (reg2.Data_encerramento != null)
                    {
                        regCert.Data_Encerramento = (DateTime)reg.Data_Encerramento;
                    }

                    Lista_Certidao.Add(regCert);
                }
                if (Lista_Certidao.Count == 0)
                {
                    ViewBag.Result = "Esta empresa não possui débitos pagos de ISS/Taxa.";
                    return(View(model));
                }
            }

            List <Comprovante_Inscricao> certidao = new List <Comprovante_Inscricao> {
                reg
            };

            ReportDocument rd = new ReportDocument();

            if (model.Extrato)
            {
                if (_dados.Data_Encerramento != null)
                {
                    rd.Load(hostingEnvironment.ContentRootPath + "\\Reports\\CertidaoInscricaoExtratoEncerrada.rpt");
                }
                else
                {
                    rd.Load(hostingEnvironment.ContentRootPath + "\\Reports\\CertidaoInscricaoExtratoAtiva.rpt");
                }
            }
            else
            {
                if (_valida)
                {
                    rd.Load(hostingEnvironment.ContentRootPath + "\\Reports\\Comprovante_InscricaoValida.rpt");
                }
                else
                {
                    rd.Load(hostingEnvironment.ContentRootPath + "\\Reports\\Comprovante_Inscricao.rpt");
                }
            }
            try {
                if (model.Extrato)
                {
                    rd.SetDataSource(Lista_Certidao);
                }
                else
                {
                    rd.SetDataSource(certidao);
                }
                Stream stream = rd.ExportToStream(ExportFormatType.PortableDocFormat);
                return(File(stream, "application/pdf", "Certidao_Inscricao.pdf"));
            } catch {
                throw;
            }
        }
Пример #8
0
        public IActionResult Validate_CS(CertidaoViewModel model)
        {
            int    _codigo, _ano, _numero;
            string _chave = model.Chave;

            if (model.Chave != null)
            {
                Certidao        reg          = new Certidao();
                List <Certidao> certidao     = new List <Certidao>();
                chaveStruct     _chaveStruct = tributarioRepository.Valida_Certidao(_chave);
                if (!_chaveStruct.Valido)
                {
                    ViewBag.Result = "Chave de autenticação da certidão inválida.";
                    return(View("Certidao_Isencao", model));
                }
                else
                {
                    _codigo = _chaveStruct.Codigo;
                    _numero = _chaveStruct.Numero;
                    _ano    = _chaveStruct.Ano;

                    Certidao_isencao certidaoGerada = tributarioRepository.Retorna_Certidao_Isencao(_ano, _numero, _codigo);
                    if (certidaoGerada != null)
                    {
                        reg.Codigo               = _codigo;
                        reg.Ano                  = _ano;
                        reg.Numero               = _numero;
                        reg.Endereco             = certidaoGerada.Logradouro;
                        reg.Endereco_Numero      = certidaoGerada.Li_num;
                        reg.Endereco_Complemento = certidaoGerada.Li_compl ?? "";
                        reg.Bairro               = certidaoGerada.Descbairro;
                        reg.Nome_Requerente      = certidaoGerada.Nomecidadao;
                        reg.Data_Geracao         = certidaoGerada.Data;
                        reg.Inscricao            = certidaoGerada.Inscricao;
                        reg.Percentual_Isencao   = (decimal)certidaoGerada.Percisencao;
                        reg.Numero_Processo      = certidaoGerada.Numprocesso ?? "";
                        if (certidaoGerada.Dataprocesso != null)
                        {
                            reg.Data_Processo = (DateTime)certidaoGerada.Dataprocesso;
                        }
                        reg.Area       = (decimal)certidaoGerada.Area;
                        reg.Numero_Ano = reg.Numero.ToString("00000") + "/" + reg.Ano;
                    }
                    else
                    {
                        ViewBag.Result = "Ocorreu um erro ao processar as informações.";
                        return(View("Certidao_Endereco", model));
                    }
                };

                certidao.Add(reg);

                ReportDocument rd = new ReportDocument();
                rd.Load(hostingEnvironment.ContentRootPath + "\\Reports\\Certidao_Isencao_Valida.rpt");

                try {
                    rd.SetDataSource(certidao);
                    Stream stream = rd.ExportToStream(ExportFormatType.PortableDocFormat);
                    return(File(stream, "application/pdf", "Certidao_Isencao.pdf"));
                } catch {
                    throw;
                }
            }
            else
            {
                ViewBag.Result = "Chave de validação inválida.";
                return(View("Certidao_Isencao", model));
            }
        }
Пример #9
0
        public IActionResult Certidao_Endereco(CertidaoViewModel model)
        {
            int  _codigo    = 0;
            int  _numero    = tributarioRepository.Retorna_Codigo_Certidao(Functions.TipoCertidao.Endereco);
            bool _existeCod = false;
            CertidaoViewModel certidaoViewModel = new CertidaoViewModel();

            ViewBag.Result = "";

            if (model.Inscricao != null)
            {
                _codigo = Convert.ToInt32(model.Inscricao);
                if (_codigo < 100000)
                {
                    _existeCod = _imovelRepository.Existe_Imovel(_codigo);
                }
            }

            if (!Captcha.ValidateCaptchaCode(model.CaptchaCode, HttpContext))
            {
                ViewBag.Result = "Código de verificação inválido.";
                return(View(certidaoViewModel));
            }

            if (!_existeCod)
            {
                ViewBag.Result = "Imóvel não cadastrado.";
                return(View(certidaoViewModel));
            }

            List <Certidao>           certidao  = new List <Certidao>();
            List <ProprietarioStruct> listaProp = _imovelRepository.Lista_Proprietario(_codigo, true);
            ImovelStruct _dados = _imovelRepository.Dados_Imovel(_codigo);
            Certidao     reg    = new Certidao()
            {
                Codigo               = _dados.Codigo,
                Inscricao            = _dados.Inscricao,
                Endereco             = _dados.NomeLogradouro,
                Endereco_Numero      = (int)_dados.Numero,
                Endereco_Complemento = _dados.Complemento,
                Bairro               = _dados.NomeBairro ?? "",
                Nome_Requerente      = listaProp[0].Nome,
                Ano             = DateTime.Now.Year,
                Numero          = _numero,
                Quadra_Original = _dados.QuadraOriginal ?? "",
                Lote_Original   = _dados.LoteOriginal ?? "",
                Controle        = _numero.ToString("00000") + DateTime.Now.Year.ToString("0000") + "/" + _codigo.ToString() + "-EA"
            };

            reg.Numero_Ano = reg.Numero.ToString("00000") + "/" + reg.Ano;
            certidao.Add(reg);

            Models.Certidao_endereco regCert = new Certidao_endereco()
            {
                Ano         = reg.Ano,
                Codigo      = reg.Codigo,
                Data        = DateTime.Now,
                descbairro  = reg.Bairro,
                Inscricao   = reg.Inscricao,
                Logradouro  = reg.Endereco,
                Nomecidadao = reg.Nome_Requerente,
                Li_lotes    = reg.Lote_Original,
                Li_compl    = reg.Endereco_Complemento,
                Li_num      = reg.Endereco_Numero,
                Li_quadras  = reg.Quadra_Original,
                Numero      = reg.Numero
            };
            Exception ex = tributarioRepository.Insert_Certidao_Endereco(regCert);

            if (ex != null)
            {
                ViewBag.Result = "Ocorreu um erro no processamento das informações.";
                return(View(certidaoViewModel));
            }

            ReportDocument rd = new ReportDocument();

            rd.Load(hostingEnvironment.ContentRootPath + "\\Reports\\Certidao_Endereco.rpt");

            try {
                rd.SetDataSource(certidao);
                Stream stream = rd.ExportToStream(ExportFormatType.PortableDocFormat);
                return(File(stream, "application/pdf", "Certidao_Endereco.pdf"));
            } catch {
                throw;
            }
        }
Пример #10
0
        public IActionResult Certidao_Isencao(CertidaoViewModel model)
        {
            int               _codigo           = 0;
            int               _numero           = tributarioRepository.Retorna_Codigo_Certidao(Functions.TipoCertidao.Isencao);
            bool              _existeCod        = false;
            string            _numero_processo  = "";
            CertidaoViewModel certidaoViewModel = new CertidaoViewModel();

            ViewBag.Result = "";

            if (model.Inscricao != null)
            {
                _codigo = Convert.ToInt32(model.Inscricao);
                if (_codigo < 100000)
                {
                    _existeCod = _imovelRepository.Existe_Imovel(_codigo);
                }
            }

            if (!Captcha.ValidateCaptchaCode(model.CaptchaCode, HttpContext))
            {
                ViewBag.Result = "Código de verificação inválido.";
                return(View(certidaoViewModel));
            }

            if (!_existeCod)
            {
                ViewBag.Result = "Imóvel não cadastrado.";
                return(View(certidaoViewModel));
            }

            decimal SomaArea = _imovelRepository.Soma_Area(_codigo);

            bool bImune          = _imovelRepository.Verifica_Imunidade(_codigo);
            bool bIsentoProcesso = false;
            List <IsencaoStruct> ListaIsencao = null;

            if (!bImune)
            {
                ListaIsencao = _imovelRepository.Lista_Imovel_Isencao(_codigo, DateTime.Now.Year);
                if (ListaIsencao.Count > 0)
                {
                    bIsentoProcesso  = true;
                    _numero_processo = ListaIsencao[0].Numprocesso ?? "";
                }
            }

            List <ProprietarioStruct> listaProp = _imovelRepository.Lista_Proprietario(_codigo, true);
            ImovelStruct _dados = _imovelRepository.Dados_Imovel(_codigo);
            Certidao     reg    = new Certidao()
            {
                Codigo               = _dados.Codigo,
                Inscricao            = _dados.Inscricao,
                Endereco             = _dados.NomeLogradouro,
                Endereco_Numero      = (int)_dados.Numero,
                Endereco_Complemento = _dados.Complemento,
                Bairro               = _dados.NomeBairro ?? "",
                Nome_Requerente      = listaProp[0].Nome,
                Ano             = DateTime.Now.Year,
                Numero          = _numero,
                Quadra_Original = _dados.QuadraOriginal ?? "",
                Lote_Original   = _dados.LoteOriginal ?? "",
                Controle        = _numero.ToString("00000") + DateTime.Now.Year.ToString("0000") + "/" + _codigo.ToString() + "-CI",
                Numero_Processo = _numero_processo,
                Area            = SomaArea
            };

            if (ListaIsencao.Count > 0)
            {
                reg.Percentual_Isencao = (decimal)ListaIsencao[0].Percisencao;
                reg.Data_Processo      = (DateTime)ListaIsencao[0].dataprocesso;
            }

            decimal nPerc;
            string  reportName;

            if (bImune)
            {
                reportName = "Certidao_Imunidade.rpt";
                nPerc      = 100;
            }
            else
            {
                if (bIsentoProcesso)
                {
                    reportName = "Certidao_Isencao_Processo.rpt";
                    nPerc      = (decimal)ListaIsencao[0].Percisencao;
                }
                else
                {
                    if (SomaArea <= 65)
                    {
                        //Se tiver área < 65m² mas tiver mais de 1 imóvel, perde a isenção.
                        int nQtdeImovel = _imovelRepository.Qtde_Imovel_Cidadao(_codigo);
                        if (nQtdeImovel > 1)
                        {
                            ViewBag.Result = "Este imóvel não esta isento da cobrança de IPTU no ano atual.";
                            return(View(certidaoViewModel));
                        }
                        nPerc      = 100;
                        reportName = "Certidao_Isencao_65metros.rpt";
                    }
                    else
                    {
                        ViewBag.Result = "Este imóvel não esta isento da cobrança de IPTU no ano atual.";
                        return(View(certidaoViewModel));
                    }
                }
            }

            List <Certidao> certidao = new List <Certidao>();

            Models.Certidao_isencao regCert = new Certidao_isencao()
            {
                Ano          = reg.Ano,
                Codigo       = reg.Codigo,
                Data         = DateTime.Now,
                Descbairro   = reg.Bairro,
                Inscricao    = reg.Inscricao,
                Logradouro   = reg.Endereco,
                Nomecidadao  = reg.Nome_Requerente,
                Li_lotes     = reg.Lote_Original,
                Li_compl     = reg.Endereco_Complemento,
                Li_num       = reg.Endereco_Numero,
                Li_quadras   = reg.Quadra_Original,
                Numero       = reg.Numero,
                Area         = SomaArea,
                Numprocesso  = reg.Numero_Processo ?? "",
                Dataprocesso = reg.Data_Processo,
                Percisencao  = nPerc
            };
            reg.Numero_Ano = reg.Numero.ToString("00000") + "/" + reg.Ano;
            certidao.Add(reg);
            Exception ex = tributarioRepository.Insert_Certidao_Isencao(regCert);

            if (ex != null)
            {
                ViewBag.Result = "Ocorreu um erro no processamento das informações.";
                return(View(certidaoViewModel));
            }

            ReportDocument rd = new ReportDocument();

            rd.Load(hostingEnvironment.ContentRootPath + "\\Reports\\" + reportName);

            try {
                rd.SetDataSource(certidao);
                Stream stream = rd.ExportToStream(ExportFormatType.PortableDocFormat);
                return(File(stream, "application/pdf", "Certidao_Isencao.pdf"));
            } catch {
                throw;
            }
        }
Пример #11
0
 //método para gravar
 public void GravarCertidao(Certidao certidao)
 {
     db.Certidao.Add(certidao);
 }
Пример #12
0
        public IActionResult Certidao_Debito_Codigo(CertidaoViewModel model)
        {
            int    _codigo = 0;
            short  _ret = 0;
            int    _numero = tributarioRepository.Retorna_Codigo_Certidao(Functions.TipoCertidao.Debito);
            bool   _existeCod = false;
            string _tipoCertidao = "", _nao = "", _sufixo = "XX", _reportName = "", _numProcesso = "9222-3/2012", _dataProcesso = "18/04/2012", _cpf = "", _cnpj = "";

            Functions.TipoCadastro _tipoCadastro  = new Functions.TipoCadastro();

            CertidaoViewModel certidaoViewModel   = new CertidaoViewModel();

            ViewBag.Result = "";

            if (model.Inscricao != null)
            {
                _codigo = Convert.ToInt32(model.Inscricao);
                if (_codigo < 100000)
                {
                    _existeCod    = imovelRepository.Existe_Imovel(_codigo);
                    _tipoCadastro = Functions.TipoCadastro.Imovel;
                }
                else
                {
                    if (_codigo >= 100000 && _codigo < 500000)
                    {
                        _existeCod    = empresaRepository.Existe_Empresa_Codigo(_codigo);
                        _tipoCadastro = Functions.TipoCadastro.Empresa;
                    }
                    else
                    {
                        _tipoCadastro  = Functions.TipoCadastro.Cidadao;
                        ViewBag.Result = "Inscrição inválida.";
                        return(View(certidaoViewModel));
                    }
                }
            }

            if (!Captcha.ValidateCaptchaCode(model.CaptchaCode, HttpContext))
            {
                ViewBag.Result = "Código de verificação inválido.";
                return(View(certidaoViewModel));
            }

            if (!_existeCod)
            {
                ViewBag.Result = "Inscrição não cadastrada.";
                return(View(certidaoViewModel));
            }


            //***Verifica débito

            Certidao_debito_detalhe dadosCertidao = tributarioRepository.Certidao_Debito(_codigo);
            string _tributo = dadosCertidao.Descricao_Lancamentos;

            if (dadosCertidao.Tipo_Retorno == Functions.RetornoCertidaoDebito.Negativa)
            {
                _tipoCertidao = "NEGATIVA";
                _nao          = "não ";
                _ret          = 3;
                _sufixo       = "CN";
                if (_tipoCadastro == Functions.TipoCadastro.Imovel)
                {
                    _reportName = "Certidao_Debito_Imovel.rpt";
                }
                else
                {
                    _reportName = "Certidao_Debito_Empresa.rpt";
                }
            }
            //else {
            //    if (dadosCertidao.Tipo_Retorno == RetornoCertidaoDebito.Positiva) {
            //        sTipoCertidao = "POSITIVA";
            //        nRet = 4;
            //        sSufixo = "CP";
            //        if (_tipo_cadastro == TipoCadastro.Imovel) {
            //            bool bCertifica = tributario_Class.Parcela_Unica_IPTU_NaoPago(Codigo, DateTime.Now.Year);
            //            if (bCertifica) {
            //                sCertifica = " embora conste parcela(s) não paga(s) do IPTU de " + DateTime.Now.Year.ToString() + ", em razão da possibilidade do pagamento integral deste imposto em data futura";
            //                nRet = 3;
            //                sTipoCertidao = "NEGATIVA";
            //                sSufixo = "CN";
            //                sNao = "não ";
            //            } else
            //                sCertifica = " até a presente data";
            //            crystalReport.Load(Server.MapPath("~/Report/CertidaoDebitoImovel.rpt"));

            //        } else {
            //            if (_tipo_cadastro == TipoCadastro.Empresa)
            //                crystalReport.Load(Server.MapPath("~/Report/CertidaoDebitoEmpresa.rpt"));
            //        }
            //    } else {
            //        if (dadosCertidao.Tipo_Retorno == RetornoCertidaoDebito.NegativaPositiva) {
            //            sTipoCertidao = "POSITIVA COM EFEITO NEGATIVA";
            //            nRet = 5;
            //            sSufixo = "PN";
            //            if (_tipo_cadastro == TipoCadastro.Imovel)
            //                crystalReport.Load(Server.MapPath("~/Report/CertidaoDebitoImovelPN.rpt"));
            //            else {
            //                if (_tipo_cadastro == TipoCadastro.Empresa)
            //                    crystalReport.Load(Server.MapPath("~/Report/CertidaoDebitoEmpresaPN.rpt"));
            //            }
            //        }
            //    }
            //}


            int             _numero_certidao = tributarioRepository.Retorna_Codigo_Certidao(Functions.TipoCertidao.Debito);
            int             _ano_certidao    = DateTime.Now.Year;
            List <Certidao> certidao         = new List <Certidao>();
            Certidao        reg = new Certidao();

            if (_tipoCadastro == Functions.TipoCadastro.Imovel)
            {
                List <ProprietarioStruct> listaProp = imovelRepository.Lista_Proprietario(_codigo, true);
                _cpf  = listaProp[0].CPF;
                _cnpj = listaProp[0].CNPJ;
                ImovelStruct _dados = imovelRepository.Dados_Imovel(_codigo);
                reg.Codigo               = _dados.Codigo;
                reg.Inscricao            = _dados.Inscricao;
                reg.Endereco             = _dados.NomeLogradouro;
                reg.Endereco_Numero      = (int)_dados.Numero;
                reg.Endereco_Complemento = _dados.Complemento;
                reg.Bairro               = _dados.NomeBairro ?? "";
                reg.Cidade               = "JABOTICABAL";
                reg.Uf = "SP";
                reg.Atividade_Extenso = "";
                reg.Nome_Requerente   = listaProp[0].Nome;
                reg.Ano             = DateTime.Now.Year;
                reg.Numero          = _numero;
                reg.Quadra_Original = _dados.QuadraOriginal ?? "";
                reg.Lote_Original   = _dados.LoteOriginal ?? "";
                reg.Controle        = _numero_certidao.ToString("00000") + _ano_certidao.ToString("0000") + "/" + _codigo.ToString() + "-" + _sufixo;
                reg.Tipo_Certidao   = _tipoCertidao;
                reg.Nao             = _nao;
                reg.Tributo         = _tributo;
            }
            else
            {
                EmpresaStruct _dados = empresaRepository.Dados_Empresa(_codigo);
                _cpf                     = _dados.Cpf ?? "";
                _cnpj                    = _dados.Cnpj ?? "";
                reg.Codigo               = _dados.Codigo;
                reg.Cpf_Cnpj             = _dados.Cpf_cnpj;
                reg.Inscricao            = _dados.Inscricao_estadual ?? "";
                reg.Endereco             = _dados.Endereco_nome;
                reg.Endereco_Numero      = (int)_dados.Numero;
                reg.Endereco_Complemento = _dados.Complemento;
                reg.Bairro               = _dados.Bairro_nome ?? "";
                reg.Cidade               = _dados.Cidade_nome;
                reg.Uf                   = _dados.UF;
                reg.Atividade_Extenso    = _dados.Atividade_extenso;
                reg.Nome_Requerente      = _dados.Razao_social;
                reg.Ano                  = DateTime.Now.Year;
                reg.Numero               = _numero;
                reg.Controle             = _numero_certidao.ToString("00000") + _ano_certidao.ToString("0000") + "/" + _codigo.ToString() + "-" + _sufixo;
                reg.Tipo_Certidao        = _tipoCertidao;
                reg.Nao                  = _nao;
                reg.Tributo              = _tributo;
            }
            reg.Numero_Ano = _numero_certidao.ToString("00000") + "/" + _ano_certidao.ToString("0000");
            certidao.Add(reg);

            Certidao_debito cert = new Certidao_debito {
                Codigo       = _codigo,
                Ano          = (short)DateTime.Now.Year,
                Ret          = _ret,
                Numero       = _numero_certidao,
                Datagravada  = DateTime.Now,
                Inscricao    = reg.Inscricao,
                Nome         = reg.Nome_Requerente,
                Logradouro   = reg.Endereco,
                Numimovel    = (short)reg.Endereco_Numero,
                Bairro       = reg.Bairro,
                Cidade       = reg.Cidade,
                UF           = reg.Uf,
                Processo     = _numProcesso,
                Dataprocesso = Convert.ToDateTime(_dataProcesso),
                Atendente    = "GTI.Web",
                Cpf          = _cpf,
                Cnpj         = _cnpj,
                Atividade    = reg.Atividade_Extenso,
                Suspenso     = "",
                Lancamento   = dadosCertidao.Descricao_Lancamentos
            };
            Exception ex = tributarioRepository.Insert_Certidao_Debito(cert);

            if (ex != null)
            {
                ViewBag.Result = "Ocorreu um erro no processamento das informações.";
                return(View("Certidao_Debito_Codigo"));
            }

            ReportDocument rd = new ReportDocument();

            rd.Load(hostingEnvironment.ContentRootPath + "\\Reports\\" + _reportName);

            try {
                rd.SetDataSource(certidao);
                Stream stream = rd.ExportToStream(ExportFormatType.PortableDocFormat);
                return(File(stream, "application/pdf", "Certidao_Debito.pdf"));
            } catch {
                throw;
            }
        }
Пример #13
0
        public ActionResult Checkgticd(CertidaoViewModel model, string c)
        {
            int    _codigo, _ano, _numero;
            string _tipo, _chave = c, _pdfFileName = "";

            if (c != null)
            {
                Tributario_bll  tributarioRepository = new Tributario_bll(_connection);
                Certidao        reg          = new Certidao();
                List <Certidao> certidao     = new List <Certidao>();
                chaveStruct     _chaveStruct = tributarioRepository.Valida_Certidao(_chave);
                _codigo = _chaveStruct.Codigo;
                _numero = _chaveStruct.Numero;
                _ano    = _chaveStruct.Ano;
                _tipo   = _chaveStruct.Tipo;
                if (_numero == 0)
                {
                    return(null);
                }
                ReportDocument rd = new ReportDocument();
                switch (_tipo)
                {
                case "EA": {
                    //####################Certidão endereço####################################
                    Certidao_endereco certidaoGerada = tributarioRepository.Retorna_Certidao_Endereco(_ano, _numero, _codigo);
                    reg.Codigo               = _codigo;
                    reg.Ano                  = _ano;
                    reg.Numero               = _numero;
                    reg.Endereco             = certidaoGerada.Logradouro;
                    reg.Endereco_Numero      = certidaoGerada.Li_num;
                    reg.Endereco_Complemento = certidaoGerada.Li_compl ?? "";
                    reg.Bairro               = certidaoGerada.descbairro;
                    reg.Nome_Requerente      = certidaoGerada.Nomecidadao;
                    reg.Data_Geracao         = certidaoGerada.Data;
                    reg.Inscricao            = certidaoGerada.Inscricao;
                    reg.Numero_Ano           = reg.Numero.ToString("00000") + "/" + reg.Ano;
                    certidao.Add(reg);

                    rd.Load(System.Web.HttpContext.Current.Server.MapPath("~/Reports/Certidao_Endereco_Valida.rpt"));
                    rd.SetDataSource(certidao);
                    _pdfFileName = "Certidao_Endereco.pdf";
                    break;
                }

                //#################################################################################
                case "IN":
                case "IP":
                case "IS":
                case "CN":
                case "CP":
                case "PN": {
                    //##########################Certidão débito####################################
                    Certidao_debito_doc _dados = tributarioRepository.Retorna_Certidao_Debito_Doc(_chave);
                    Certidao            regdeb = new Certidao()
                    {
                        Codigo          = _codigo,
                        Nome_Requerente = _dados.Nome,
                        Ano             = _ano,
                        Numero          = _numero,
                        Numero_Ano      = _dados.Numero.ToString("00000") + "/" + _dados.Ano.ToString(),
                        Controle        = _chave,
                        Tributo         = _dados.Ret == 3?"N/A": _dados.Tributo,
                        Cpf_Cnpj        = _dados.Cpf_cnpj,
                        Data_Geracao    = _dados.Data_emissao,
                        Tipo_Certidao   = _dados.Ret == 3 ? "Negativa" : _dados.Ret == 4 ? "Positiva" : "Positiva com Efeito Negativa"
                    };
                    certidao.Add(regdeb);
                    rd.Load(System.Web.HttpContext.Current.Server.MapPath("~/Reports/CertidaoDebitoDocValida.rpt"));
                    rd.SetDataSource(certidao);
                    _pdfFileName = "Certidao_Debito.pdf";
                    break;
                }

                //#################################################################################
                case "CQ": {
                    List <Imunidade_Issqn> certidaoIM    = new List <Imunidade_Issqn>();
                    Imunidade_Issqn        certidaoImune = tributarioRepository.Retorna_Certidao_Imunidade_Issqn(_chave);
                    Imunidade_Issqn        regIm         = new Imunidade_Issqn()
                    {
                        Codigo       = _codigo,
                        Razao_social = certidaoImune.Razao_social,
                        Ano          = _ano,
                        Numero       = _numero,
                        Controle     = _chave,
                        Endereco     = certidaoImune.Endereco,
                        Documento    = certidaoImune.Documento,
                        Data_Gravada = certidaoImune.Data_Gravada,
                    };
                    certidaoIM.Add(regIm);
                    rd.Load(System.Web.HttpContext.Current.Server.MapPath("~/Reports/Imunidade_issqn_valida.rpt"));
                    rd.SetDataSource(certidaoIM);
                    _pdfFileName = "Certidao_Imunidade_Valida.pdf";
                    break;
                }

                //#################################################################################
                case "AF":
                case "AN": {
                    //#########################Alvará de Funcionamento#############################
                    _codigo = _chaveStruct.Codigo;
                    _numero = _chaveStruct.Numero;
                    _ano    = _chaveStruct.Ano;
                    Empresa_bll          empresaRepository = new Empresa_bll(_connection);
                    Alvara_funcionamento _dadosalvara      = empresaRepository.Alvara_Funcionamento_gravado(_chave);
                    if (_dadosalvara != null)
                    {
                        Certidao regAlvara = new Certidao()
                        {
                            Codigo            = _codigo,
                            Razao_Social      = _dadosalvara.Razao_social,
                            Endereco          = _dadosalvara.Endereco + ", " + _dadosalvara.Numero,
                            Bairro            = _dadosalvara.Bairro ?? "",
                            Ano               = _ano,
                            Numero            = _numero,
                            Controle          = _chave,
                            Atividade_Extenso = _dadosalvara.Atividade,
                            Cpf_Cnpj          = _dadosalvara.Documento,
                            Horario           = _dadosalvara.Horario
                        };
                        certidao.Add(regAlvara);
                    }
                    rd.Load(System.Web.HttpContext.Current.Server.MapPath("~/Reports/Alvara_Funcionamento_Valida.rpt"));
                    rd.SetDataSource(certidao);
                    _pdfFileName = "AlvaraValida.pdf";
                    break;
                }

                //#################################################################################
                case "IE":
                case "XE":
                case "XA":
                    break;

                case "CI":
                    break;

                case "VV": {
                    //#########################Certidão Valor Venal############################
                    Certidao_valor_venal certidaoGerada = tributarioRepository.Retorna_Certidao_ValorVenal(_ano, _numero, _codigo);
                    if (certidaoGerada != null)
                    {
                        reg.Codigo               = _codigo;
                        reg.Ano                  = _ano;
                        reg.Numero               = _numero;
                        reg.Endereco             = certidaoGerada.Logradouro;
                        reg.Endereco_Numero      = certidaoGerada.Li_num;
                        reg.Endereco_Complemento = certidaoGerada.Li_compl ?? "";
                        reg.Bairro               = certidaoGerada.Descbairro;
                        reg.Nome_Requerente      = certidaoGerada.Nomecidadao;
                        reg.Data_Geracao         = certidaoGerada.Data;
                        reg.Inscricao            = certidaoGerada.Inscricao;
                        reg.Area                 = certidaoGerada.Areaterreno;
                        reg.VVT                  = certidaoGerada.Vvt;
                        reg.VVP                  = certidaoGerada.Vvp;
                        reg.VVI                  = certidaoGerada.Vvi;
                        reg.Numero_Ano           = reg.Numero.ToString("00000") + "/" + reg.Ano;
                    }
                    else
                    {
                        ViewBag.Result = "Ocorreu um erro ao processar as informações.";
                        return(View("Certidao_Valor_Venal", model));
                    }

                    certidao.Add(reg);
                    rd.Load(System.Web.HttpContext.Current.Server.MapPath("~/Reports/Certidao_Valor_venal_Valida.rpt"));
                    rd.SetDataSource(certidao);
                    _pdfFileName = "Certidao_ValorVenal.pdf";
                    break;
                }

                //#################################################################################
                default:
                    break;
                }

                try {
                    Stream stream = rd.ExportToStream(ExportFormatType.PortableDocFormat);
                    return(File(stream, "application/pdf", _pdfFileName));
                } catch {
                    throw;
                }
            }

            return(null);
        }