public IActionResult Certidao_Valor_Venal(CertidaoViewModel model) { int _codigo; int _numero = tributarioRepository.Retorna_Codigo_Certidao(Functions.TipoCertidao.ValorVenal); bool _existeCod = false; CertidaoViewModel certidaoViewModel = new CertidaoViewModel(); ViewBag.Result = ""; _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 <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() + "-VV" }; SpCalculo RegCalculo = _imovelRepository.Calculo_IPTU(_dados.Codigo, DateTime.Now.Year); if (RegCalculo == null) { ViewBag.Result = "Erro ao processar a certidão."; return(View(certidaoViewModel)); } else { reg.Area = RegCalculo.Areaterreno; reg.VVT = RegCalculo.Vvt; reg.VVP = RegCalculo.Vvp; reg.VVI = RegCalculo.Vvi; reg.Numero_Ano = reg.Numero.ToString("00000") + "/" + reg.Ano; } Models.Certidao_valor_venal regCert = new Certidao_valor_venal() { 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, Areaterreno = RegCalculo.Areaterreno, Vvt = RegCalculo.Vvt, Vvp = RegCalculo.Vvp, Vvi = RegCalculo.Vvi }; Exception ex = tributarioRepository.Insert_Certidao_Valor_Venal(regCert); if (ex != null) { ViewBag.Result = "Ocorreu um erro no processamento das informações."; return(View(certidaoViewModel)); } List <Certidao> certidao = new List <Certidao> { reg }; ReportDocument rd = new ReportDocument(); rd.Load(hostingEnvironment.ContentRootPath + "\\Reports\\Certidao_Valor_Venal.rpt"); try { rd.SetDataSource(certidao); Stream stream = rd.ExportToStream(ExportFormatType.PortableDocFormat); return(File(stream, "application/pdf", "Certidao_VVenal.pdf")); } catch { throw; } }