Ejemplo n.º 1
0
        public IActionResult Validate_CI(CertidaoViewModel model)
        {
            int    _codigo, _ano, _numero;
            string _chave = model.Chave;

            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.Chave != null)
            {
                chaveStruct _chaveStruct = tributarioRepository.Valida_Certidao(_chave);
                if (!_chaveStruct.Valido)
                {
                    ViewBag.Result = "Chave de autenticação da certidão inválida.";
                    return(View("Certidao_Inscricao", model));
                }
                else
                {
                    _codigo = _chaveStruct.Codigo;
                    _numero = _chaveStruct.Numero;
                    _ano    = _chaveStruct.Ano;
                    List <Comprovante_Inscricao> certidao = new List <Comprovante_Inscricao>();
                    Certidao_Inscricao           _dados   = tributarioRepository.Retorna_Certidao_Inscricao(_ano, _numero);
                    if (_dados != null)
                    {
                        Comprovante_Inscricao reg = new Comprovante_Inscricao()
                        {
                            Codigo                = _codigo,
                            Razao_Social          = _dados.Nome,
                            Nome_Fantasia         = _dados.Nome_fantasia,
                            Cep                   = _dados.Cep,
                            Cidade                = _dados.Cidade,
                            Email                 = _dados.Email,
                            Inscricao_Estadual    = _dados.Inscricao_estadual,
                            Endereco              = _dados.Endereco + ", " + _dados.Numero,
                            Complemento           = _dados.Complemento,
                            Bairro                = _dados.Bairro ?? "",
                            Ano                   = _ano,
                            Numero                = _numero,
                            Controle              = _chave,
                            Atividade             = _dados.Atividade,
                            Atividade2            = _dados.Atividade_secundaria,
                            Atividade_Extenso     = _dados.Atividade_Extenso,
                            Cpf_Cnpj              = _dados.Documento,
                            Data_Abertura         = (DateTime)_dados.Data_abertura,
                            Processo_Abertura     = _dados.Processo_abertura,
                            Processo_Encerramento = _dados.Processo_encerramento,
                            Situacao              = _dados.Situacao,
                            Telefone              = _dados.Telefone,
                            Area                  = (decimal)_dados.Area,
                            Mei                   = _dados.Mei,
                            Vigilancia_Sanitaria  = _dados.Vigilancia_sanitaria,
                            Taxa_Licenca          = _dados.Taxa_licenca
                        };
                        if (_dados.Data_encerramento != null)
                        {
                            reg.Data_Encerramento = (DateTime)_dados.Data_encerramento;
                        }
                        certidao.Add(reg);
                    }
                    else
                    {
                        ViewBag.Result = "Ocorreu um erro ao processar as informações.";
                        return(View("Certidao_Inscricao", model));
                    }

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

                    try {
                        rd.SetDataSource(certidao);
                        Stream stream = rd.ExportToStream(ExportFormatType.PortableDocFormat);
                        return(File(stream, "application/pdf", "Certidao_Endereco.pdf"));
                    } catch {
                        throw;
                    }
                }
            }
            else
            {
                ViewBag.Result = "Chave de validação inválida.";
                return(View("Certidao_Inscricao", model));
            }
        }