public ActionResult RelatoriosExtratoBancarios() { var list = new ArquivosBancarios(); list.datainicio = DateTime.Now; list.datafinal = DateTime.Now; list.ArquivoBancario = DAL.ListarObjetos <TransacaoBancaria>(string.Format("id_conta={0} and dt_mvto between '{1}' and '{2}' ", UsuarioLogado.IdConta, list.datainicio.ToString("yyyy-MM-dd"), list.datafinal.ToString("yyyy-MM-dd"))); ViewBag.QtdRegistros = list.ArquivoBancario.Count(); ViewBag.TotalBruto = list.ArquivoBancario.Sum(x => x.vl_mvto); return(View(list)); }
// GET: ExtratoBancario public ActionResult Index() { var model = new ArquivosBancarios { arquivo = null, ds_arquivo = null }; /*model.ArquivoResumo = new List<ArquivoResumo>(); * model.ArquivoCompleto = new List<ArquivoCompleto>(); * model.ArquivoDetalhado = new List<ArquivoDetalhado>(); * model.ArquivoTransacao = new List<ArquivoTransacao>(); * model.ArquivoAntecipado = new List<ArquivoAntecipado>();*/ ViewBag.BotaoProcessar = "Buscar"; return(View(model)); }
public ActionResult RelatoriosExtratoBancarios(FormCollection frm) { DateTime datainicio = DateTime.ParseExact(frm["datainicio"].ToString(), "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture); DateTime datafinal = DateTime.ParseExact(frm["datafinal"].ToString(), "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture); var list = new ArquivosBancarios(); list.datainicio = datainicio; list.datafinal = datafinal; list.ArquivoBancario = DAL.ListarObjetos <TransacaoBancaria>(string.Format("id_conta={0} and dt_mvto between '{1}' and '{2}' ", UsuarioLogado.IdConta, list.datainicio.ToString("yyyy-MM-dd"), list.datafinal.ToString("yyyy-MM-dd")), "", "1,2,3,4,5,6,7"); ViewBag.QtdRegistros = list.ArquivoBancario.Count(); ViewBag.TotalBruto = list.ArquivoBancario.Sum(x => x.vl_mvto); return(View(list)); }
public JsonResult ProcessarArquivo() { var model = new ArquivosBancarios(); if (Request.Files.Count > 0) { var file = Request.Files[0]; if (file != null && file.ContentLength > 0) { try { model.ds_arquivo = file.FileName; string lsArquivomd5 = file.FileName; string lsretornomd5 = CriarMD5.RetornarMD5(lsArquivomd5); var conta = new BaseID(); ArquivoMD5 md5 = DAL.GetObjeto <ArquivoMD5>(string.Format("arquivo_md5='{0}' and id_conta={1}", lsretornomd5, conta.IdConta)) ?? new ArquivoMD5(); if (Path.GetExtension(file.FileName).ToLower().Equals(".ofx")) { var parser = new OFXDocumentParser(); var ofxDocument = parser.Import(file.InputStream); var list = ofxDocument.Transactions.Select(item => new TransacaoBancaria { conta = ofxDocument.Account.AccountID, ds_historico = item.Memo, nr_doc = item.TransactionID, vl_mvto = item.Amount, tp_mvto = item.TransType.ToString(), dt_mvto = item.Date } ).Where(c => (c.tp_mvto.Substring(0, 1) == "C") || // CREDITO (c.tp_mvto.Substring(0, 1) == "O" && // OU OTHER E CONTEM A PALAVRA CARTAO c.ds_historico.Contains("CARTAO")) ).ToList(); model.ArquivoBancario = list; model.datainicio = ofxDocument.StatementStart; model.datafinal = ofxDocument.StatementEnd; } else { var arquivo = new ConciliacaoArquivoManipular(new StreamReader(file.InputStream)); String first_line = arquivo.LerLinha(true); var bancario = new ConciliacaoBancariaDesmontar(arquivo, first_line); model.ArquivoBancario = bancario.GetListTransacaoBancaria(); } if (md5.arquivo_md5.Equals("")) { md5.arquivo_md5 = lsretornomd5; DAL.GravarList(model.ArquivoBancario); DAL.Gravar(md5); } ViewBag.BotaoProcessar = "Gravar"; } catch (Exception ex) { this.AddNotification(ex.Message, NotificationType.Erro); } } } var result = Json(model, JsonRequestBehavior.AllowGet); result.MaxJsonLength = int.MaxValue; return(result); }