public ActionResult Rod_plat_query(RodoviariaViewModel model, string DataDe, string DataAte, string Codigo, string Qtde1, string Qtde2, string Qtde3) { // FormCollection collection=new FormCollection Tributario_bll tributarioRepository = new Tributario_bll(_connection); Cidadao_bll cidadaoRepository = new Cidadao_bll(_connection); string _name = ""; int _cod = model.Codigo; int _year = model.Ano; var data1 = DataDe; bool t = DateTime.TryParse(data1, out DateTime _data1); t = DateTime.TryParse(DataAte, out DateTime _data2); List <Rodo_uso_plataforma_Struct> Lista = tributarioRepository.Lista_Rodo_uso_plataforma(_cod, _year); List <AnoList> ListaAno = new List <AnoList>(); if (DataDe == null) { _name = cidadaoRepository.Retorna_Nome_Cidadao(_cod); RodoviariaViewModel model2 = new RodoviariaViewModel { Codigo = _cod, Nome = _name, Lista_uso_plataforma = Lista }; for (int i = 2020; i <= DateTime.Now.Year; i++) { AnoList _reg = new AnoList() { Codigo = i, Descricao = i.ToString() }; ListaAno.Add(_reg); } ViewBag.ListaAno = new SelectList(ListaAno, "Codigo", "Descricao", ListaAno[ListaAno.Count - 1].Codigo); return(View(model2)); } var cod = Codigo; int _codigo = Convert.ToInt32(cod); var qtde1 = Qtde1; if (string.IsNullOrEmpty(Qtde1)) { qtde1 = "0"; } int _qtde1 = Convert.ToInt32(qtde1); var qtde2 = Qtde2; if (string.IsNullOrEmpty(Qtde2)) { qtde2 = "0"; } int _qtde2 = Convert.ToInt32(qtde2); var qtde3 = Qtde3; if (string.IsNullOrEmpty(Qtde3)) { qtde3 = "0"; } int _qtde3 = Convert.ToInt32(qtde3); short _ano = (short)_data1.Year; int _userId = Convert.ToInt32(Session["hashid"]); decimal _valorGuia = 0; if (_qtde1 == 0 && _qtde2 == 0 && _qtde3 == 0) { for (int i = 2020; i <= DateTime.Now.Year; i++) { AnoList _reg = new AnoList() { Codigo = i, Descricao = i.ToString() }; ListaAno.Add(_reg); } ViewBag.ListaAno = new SelectList(ListaAno, "Codigo", "Descricao", ListaAno[ListaAno.Count - 1].Codigo); if (model.Ano == 0) { model.Ano = DateTime.Now.Year; } Lista = tributarioRepository.Lista_Rodo_uso_plataforma(_codigo, model.Ano); model.Lista_uso_plataforma = Lista; return(View(model)); } decimal _valor1 = tributarioRepository.Retorna_Valor_Tributo(_ano, 154); decimal _valor2 = tributarioRepository.Retorna_Valor_Tributo(_ano, 155); decimal _valor3 = tributarioRepository.Retorna_Valor_Tributo(_ano, 156); short _seq = tributarioRepository.Retorna_Ultima_Seq_Uso_Plataforma(_codigo, _ano); _seq++; DateTime _dataVencto = _data2.AddDays(10); Exception ex2 = null; //grava parcela Debitoparcela regParcela = new Debitoparcela { Codreduzido = _codigo, Anoexercicio = _ano, Codlancamento = 52, Seqlancamento = _seq, Numparcela = 1, Codcomplemento = 0, Statuslanc = 3, Datavencimento = _dataVencto, Datadebase = DateTime.Now, Userid = _userId }; try { ex2 = tributarioRepository.Insert_Debito_Parcela(regParcela); } catch (Exception) { throw; } //grava tributo if (_qtde1 > 0) { decimal _valorTotal1 = _valor1 * _qtde1; Debitotributo regTributo = new Debitotributo { Codreduzido = _codigo, Anoexercicio = _ano, Codlancamento = 52, Seqlancamento = _seq, Numparcela = 1, Codcomplemento = 0, Codtributo = (short)154, Valortributo = Math.Round(_valorTotal1, 2) }; ex2 = tributarioRepository.Insert_Debito_Tributo(regTributo); } if (_qtde2 > 0) { decimal _valorTotal2 = _valor2 * _qtde2; Debitotributo regTributo = new Debitotributo { Codreduzido = _codigo, Anoexercicio = _ano, Codlancamento = 52, Seqlancamento = _seq, Numparcela = 1, Codcomplemento = 0, Codtributo = (short)155, Valortributo = Math.Round(_valorTotal2, 2) }; ex2 = tributarioRepository.Insert_Debito_Tributo(regTributo); } if (_qtde3 > 0) { decimal _valorTotal3 = _valor3 * _qtde3; Debitotributo regTributo = new Debitotributo { Codreduzido = _codigo, Anoexercicio = _ano, Codlancamento = 52, Seqlancamento = _seq, Numparcela = 1, Codcomplemento = 0, Codtributo = (short)156, Valortributo = Math.Round(_valorTotal3, 2) }; ex2 = tributarioRepository.Insert_Debito_Tributo(regTributo); } //retorna o valor atualizado do débito (lançamento retroativo) List <SpExtrato> ListaTributo = tributarioRepository.Lista_Extrato_Tributo(_codigo, _ano, _ano, 52, 52, _seq, _seq, 1, 1, 0, 0, 3, 3, DateTime.Now, "Web"); List <SpExtrato> ListaParcela = tributarioRepository.Lista_Extrato_Parcela(ListaTributo); foreach (SpExtrato item in ListaParcela) { _valorGuia += item.Valortotal; } if (_dataVencto < DateTime.Now) { _dataVencto = DateTime.Now.AddDays(10); } //grava o documento Numdocumento regDoc = new Numdocumento { Valorguia = _valorGuia, Emissor = "Gti.Web/UsoPlataforma", Datadocumento = _dataVencto, Registrado = true, Percisencao = 0 }; regDoc.Percisencao = 0; int _novo_documento = tributarioRepository.Insert_Documento(regDoc); //grava o documento na parcela Parceladocumento regParc = new Parceladocumento { Codreduzido = _codigo, Anoexercicio = _ano, Codlancamento = 52, Seqlancamento = _seq, Numparcela = 1, Codcomplemento = 0, Numdocumento = _novo_documento, Valorjuros = 0, Valormulta = 0, Valorcorrecao = 0, Plano = 0 }; tributarioRepository.Insert_Parcela_Documento(regParc); string sHist = "REFERENTE A " + (_qtde1 + _qtde2 + _qtde3).ToString() + " TAXAS DE EMBARQUE DO TERMINAL RODOVIÁRIO DO PERÍODO DE " + _data1.ToString("dd/MM/yyyy") + " À " + _data2.ToString("dd/MM/yyyy") + "."; //Incluir a observação da parcela Obsparcela ObsReg = new Obsparcela() { Codreduzido = _codigo, Anoexercicio = _ano, Codlancamento = 52, Seqlancamento = _seq, Numparcela = 1, Codcomplemento = 0, Obs = sHist, Userid = _userId, Data = DateTime.Now }; ex2 = tributarioRepository.Insert_Observacao_Parcela(ObsReg); //Anexo string fileName = ""; foreach (var file in model.Files) { if (file != null) { if (file.ContentLength > 0) { string _guid = Guid.NewGuid().ToString("N"); string _path = "~/Files/Plataforma/" + _ano + "/"; fileName = _guid + ".pdf"; var path = Path.Combine(System.Web.HttpContext.Current.Server.MapPath(_path), fileName); file.SaveAs(path); } } } //Incluir rodo_uso_plataforma short _seq2 = tributarioRepository.Retorna_Ultima_Seq_Uso_Plataforma(_codigo, _data1, _data2); // _seq2++; Rodo_uso_plataforma regR = new Rodo_uso_plataforma { Codigo = _codigo, Datade = _data1, Dataate = _data2, Seq = (byte)_seq2, SeqDebito = (byte)_seq, Qtde1 = _qtde1, Qtde2 = _qtde2, Qtde3 = _qtde3, Numero_Guia = _novo_documento, Valor_Guia = _valorGuia, Situacao = 7, //não pago Anexo = fileName }; ex2 = tributarioRepository.Insert_Rodo_Uso_Plataforma(regR); //Enviar para registrar CidadaoStruct _cidadao = cidadaoRepository.Dados_Cidadao(_codigo); string _bairro = "", _endereco = "", _compl = "", _cidade = "JABOTICABAL"; string _cpf_cnpj = string.IsNullOrWhiteSpace(_cidadao.Cnpj) ? _cidadao.Cpf : _cidadao.Cnpj; int _cep = 14870000; bool _r = _cidadao.EtiquetaC != "S"; string _nome = _cidadao.Nome; _endereco = _r ? _cidadao.EnderecoR : _cidadao.EnderecoC; _bairro = _r ? _cidadao.NomeBairroR : _cidadao.NomeBairroC; int _numero = _r ? (int)_cidadao.NumeroR : (int)_cidadao.NumeroC; _compl = _r ? _cidadao.ComplementoR : _cidadao.ComplementoC; _cidade = _r ? _cidadao.NomeCidadeR : _cidadao.NomeCidadeC; string _uf = _r ? _cidadao.UfR : _cidadao.UfC; _cep = _r ? (int)_cidadao.CepR : (int)_cidadao.CepC; Ficha_compensacao_documento ficha = new Ficha_compensacao_documento { Nome = _nome, Endereco = _endereco.Length > 40 ? _endereco.Substring(0, 40) : _endereco, Bairro = _bairro.Length > 15 ? _bairro.Substring(0, 15) : _bairro, Cidade = _cidade.Length > 30 ? _cidade.Substring(0, 30) : _cidade, Cep = Functions.RetornaNumero(_cep.ToString()) ?? "14870000", Cpf = Functions.RetornaNumero(_cpf_cnpj), Numero_documento = _novo_documento, Data_vencimento = _dataVencto, Valor_documento = Convert.ToDecimal(_valorGuia), Uf = _uf }; ex2 = tributarioRepository.Insert_Ficha_Compensacao_Documento(ficha); ex2 = tributarioRepository.Marcar_Documento_Registrado(_novo_documento); for (int i = 2020; i <= DateTime.Now.Year; i++) { AnoList _reg = new AnoList() { Codigo = i, Descricao = i.ToString() }; ListaAno.Add(_reg); } ViewBag.ListaAno = new SelectList(ListaAno, "Codigo", "Descricao", ListaAno[ListaAno.Count - 1].Codigo); if (model.Ano == 0) { model.Ano = DateTime.Now.Year; } Lista = tributarioRepository.Lista_Rodo_uso_plataforma(_codigo, _ano); model.Lista_uso_plataforma = Lista; model.Qtde1 = 0; model.Qtde2 = 0; model.Qtde3 = 0; return(View(model)); //return Json(new { success = true,responseText = "Dados enviados com sucesso!" },JsonRequestBehavior.AllowGet); }