public List <ConciliacaoTransacaoRede> TransacaoRedeListar(int?filtro_rede, int?filtro_tp_cartao, int?filtro_tp_data, DateTime datainicio, DateTime datafinal, string resumo, string bandeira, string banco = "0")
        {
            var request = new RestRequest("api/relatorios/TransacaoRedeListar/{idconta}/{tpcartao}/{tpdata}/{datainicio}/{datafinal}/{resumo}/{bandeira}/{banco}", Method.GET)
            {
                RequestFormat = DataFormat.Json
            };
            var obj = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            // request.AddParameter("idrede",  0, ParameterType.UrlSegment);
            // request.AddParameter("tpsituacao", filtro_situacao ?? 3, ParameterType.UrlSegment);
            request.AddParameter("tpcartao", filtro_tp_cartao ?? 3, ParameterType.UrlSegment);  // 0 - credito 1 -  debit0
            request.AddParameter("tpdata", filtro_tp_data, ParameterType.UrlSegment);
            request.AddParameter("datainicio", datainicio.Ticks, ParameterType.UrlSegment);
            request.AddParameter("datafinal", datafinal.Ticks, ParameterType.UrlSegment);
            request.AddParameter("resumo", string.IsNullOrEmpty(resumo) ? "0" : resumo.Trim(), ParameterType.UrlSegment);
            request.AddParameter("bandeira", string.IsNullOrEmpty(bandeira) ? "0" : bandeira, ParameterType.UrlSegment);
            request.AddParameter("banco", string.IsNullOrEmpty(banco) ? "0" : banco, ParameterType.UrlSegment);

            var a = _client.Execute <List <ConciliacaoTransacaoRede> >(request);

            if (a.StatusCode != HttpStatusCode.OK)
            {
                a.Data = new List <ConciliacaoTransacaoRede>();
            }
            return(a.Data);
        }
Example #2
0
        public ActionResult RelatorioFinanceiroCreditosPreview(FormCollection frm)
        {
            DateTime datainicio = DateTime.ParseExact(frm["DataInicio"].ToString(), "dd/MM/yyyy", CultureInfo.InvariantCulture);
            DateTime datafinal  = DateTime.ParseExact(frm["DataFinal"].ToString(), "dd/MM/yyyy", CultureInfo.InvariantCulture);

            var model = new TransacaoCreditosViewModel();

            model.ListCreditos = _restRelatorio.RelatorioFinanceiroCreditosListar(UsuarioLogado.ContaChave, frm["datainicio"].Replace("/", ""), frm["datafinal"].Replace("/", ""), frm["tp_administradora"].Trim(), frm["filtro_resumo"], frm["filtro_banco"]).OrderBy(s => s.data_lancamento).ToList();
            // model.ListDebitos = _restRelatorio.TransacaoRedeListar(0, 1, 1, datainicio, datafinal, frm["filtro_resumo"], frm["tp_administradora"].Trim(), frm["filtro_banco"]) ?? new List<ConciliacaoTransacaoRede>();

            ViewBag.DataInicio = frm["datainicio"];
            ViewBag.DataFinal  = frm["datafinal"];

            ViewBag.QtdRegistros = model.ListCreditos.Count();
            var TotalLiqCreditos = model.ListCreditos.Sum(x => x.valor_lancamento);

            ViewBag.TotalLiqCreditos = TotalLiqCreditos.ToString("#,##0.00");

            var conta = new BaseID();

            ViewBag.tp_administradora = Models.AdministradoraTypes.getAdministradoras(frm["tp_administradora"].Trim()).Where(x => x.Selected == true).First().Text;
            ViewBag.filtro_resumo     = frm["filtro_resumo"];

            if (frm["filtro_banco"] != "")
            {
                model.filtro_banco    = Convert.ToInt32(frm["filtro_banco"]);
                model.filtro_nm_banco = frm["filtro_nm_banco"];
            }

            return(View(model));
        }
        public List <TransacaoTEFListar> TransacaoTEFListar(string filtro_rede, int?filtro_situacao, int?filtro_tp_data, DateTime datainicio, DateTime datafinal, decimal valor, string nm_estabelecimento, string nm_administrador, string resumo = "", string nm_loja = "", string tp_transacao = "", string tp_operacao = "")
        {
            var request = new RestRequest("api/tef/TransacaoTEFListar/{idconta}/{rede}/{tpsituacao}/{tpdata}/{datainicio}/{datafinal}/{valor}/{estabelecimento}/{administrador}/{resumo}/{loja}/{tp_transacao}/{tp_operacao}", Method.GET)
            {
                RequestFormat = DataFormat.Json
            };
            var obj = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            request.AddParameter("rede", (filtro_rede ?? "000").PadLeft(10, ' '), ParameterType.UrlSegment);
            request.AddParameter("tpsituacao", filtro_situacao ?? 3, ParameterType.UrlSegment);
            request.AddParameter("tpdata", filtro_tp_data ?? 3, ParameterType.UrlSegment);  // 1 - Emissão / 2 - Vencimento / 3 - Pagamento
            request.AddParameter("datainicio", datainicio.Ticks, ParameterType.UrlSegment);
            request.AddParameter("datafinal", datafinal.Ticks, ParameterType.UrlSegment);
            request.AddParameter("valor", valor, ParameterType.UrlSegment);
            request.AddParameter("estabelecimento", nm_estabelecimento ?? "-111", ParameterType.UrlSegment);
            request.AddParameter("administrador", nm_administrador ?? "-111", ParameterType.UrlSegment);
            request.AddParameter("resumo", resumo ?? "0", ParameterType.UrlSegment);
            request.AddParameter("loja", nm_loja ?? "0", ParameterType.UrlSegment);
            request.AddParameter("tp_transacao", tp_transacao ?? "0", ParameterType.UrlSegment);
            request.AddParameter("tp_operacao", tp_operacao ?? "0", ParameterType.UrlSegment);

            request.Timeout = 600000;
            var a = _client.Execute <List <TransacaoTEFListar> >(request);

            if (a.StatusCode != HttpStatusCode.OK)
            {
                a.Data = new List <TransacaoTEFListar>();
            }
            return(a.Data);
        }
Example #4
0
        public ActionResult BuscaTEF(TransacaoRedeViewModel model)
        {
            if (model.filtro_rede.GetValueOrDefault(0) == 0)
            {
                model.filtro_nm_rede = "";
            }

            ViewBag.tp_data   = Models.DataTypes.getDataTypes();
            ViewBag.tp_cartao = Models.CartaoTypes.getCartaoTypes();

            var listar = new TransacaoRedeViewModel
            {
                filtro_rede       = model.filtro_rede,
                filtro_nm_rede    = model.filtro_nm_rede,
                tp_situacao       = model.tp_situacao,
                TransacaoArquivos = _restRelatorio.TransacaoRedeListar(0, model.tp_cartao, 0, model.DataInicio ?? DateTime.MinValue, model.DataFinal ?? DateTime.MaxValue, model.resumo, "0") ?? new List <ConciliacaoTransacaoRede>(),
                DataInicio        = model.DataInicio ?? DateTime.MinValue,
                DataFinal         = model.DataFinal ?? DateTime.MaxValue,
                tp_data           = model.tp_data,
                tp_cartao         = model.tp_cartao
            };

            var conta = new BaseID();

            foreach (var item in listar.TransacaoArquivos)
            {
                var status =
                    TEFDAL.GetStatusTEF(conta.IdConta, item.is_numero_cv);
                item.is_codigo_tef = status.CodigoTEF;
                item.is_nsu_tef    = status.NSUTEF;
                item.is_nsu_rede   = status.NSUREDE;
            }

            return(View("RelatoriosTransacoesRede", listar));
        }
Example #5
0
        public ActionResult RelatoriosTransacoesTEFTXT(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 model = new ArquivoDeCartoesTEF
            {
                DataInicio     = datainicio,
                DataFinal      = datafinal,
                tp_arquivo     = null,
                arquivo        = null,
                ds_arquivo     = null,
                tp_data        = 0, /// emissao
                ArquivosTEf    = _restTEF.TransacaoTEFListar(frm["filtro_nm_rede"], Convert.ToInt32(frm["tp_situacao"]), 0, datainicio, datafinal, 0, frm["filtro_nm_estabelecimento"], frm["tp_administradora"], frm["filtro_resumo"]) ?? new List <TransacaoTEFListar>(),
                filtro_nm_rede = frm["filtro_nm_rede"],
                filtro_rede    = Convert.ToInt32(frm["filtro_rede"]),
                filtro_valor   = Convert.ToDecimal(frm["filtro_valor"]),
                filtro_resumo  = frm["filtro_resumo"]
            };

            var conta = new BaseID();

            string fileName = DateTime.Now.ToString() + ".txt";


            foreach (var item in model.ArquivosTEf)
            {
                var sql = string.Format(@"select distinct encontrou
                                           from(select 1 as encontrou
                                                from
                                                    conciliador_userede_eevd_comprovantevenda b
                                                where
                                                    (b.numero_cv = cast('{0}' as DECIMAL)) and (b.id_conta = {1} )
                                                union all
                                                select
                                                    1
                                                from
                                                    conciliador_userede_eevc_comprovantevenda c
                                                where
                                                    (c.numero_cv = cast('{0}' as DECIMAL)) and (c.id_conta = {1} )  ) as x  ",
                                        item.nsu_rede, conta.IdConta);
                item.conciliado = (int)DAL.GetInt(sql, 0);

                string textToAdd = "";
                using (StreamWriter writer = new StreamWriter(fileName, true))
                {
                    writer.Write(textToAdd);
                }
            }

            ViewBag.tp_data = Models.DataTypes.getDataTypes();

            ViewBag.tp_administradora = Models.AdministradoraTypes.getAdministradoras("");

            return(View(model));
        }
        public virtual ActionResult ConsultarUsuario()
        {
            if (!UsuarioLogado.Perfil.Equals("Administrador"))
            {
                return(View("_SemPermissao"));
            }
            var model = new BaseID();
            var lista = DAL.ListarObjetos <Usuario>(String.Format("id_conta={0}", model.IdConta), "ds_login");

            return(View("~/views/usuario/listar.cshtml", lista));
        }
Example #7
0
        public ActionResult RelatorioFinanceiroExtratoBancario(string data, string historico, decimal valor)
        {
            DateTime datainicio = DateTime.ParseExact(data, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture);
            DateTime datafinal  = DateTime.ParseExact(data, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture);



            BancoExpressao bancoexpressao = DAL.GetObjeto <BancoExpressao>(string.Format("REPLACE(REPLACE(REPLACE(trim(nm_expressao), ' ', ''), '\t', ''), '\n', '')=trim('{0}')", TrimAllWithSplitAndJoin(historico))) ?? new BancoExpressao();

            var model = new TransacaoCreditosViewModel();

            if (bancoexpressao.tp_credito_debito.ToUpper() == "C")
            {
                model.ListCreditos = _restRelatorio.RelatorioFinanceiroCreditosListar(UsuarioLogado.ContaChave, data.Replace("/", ""), data.Replace("/", ""), bancoexpressao.bandeira, "", "");
            }
            else
            {
                model.ListDebitos = _restRelatorio.TransacaoRedeListar(0, 1, 1, datainicio, datafinal, "", bancoexpressao.bandeira, "") ?? new List <ConciliacaoTransacaoRede>();

                //model.ListDebitos = model.ListDebitos.Where(x => x.is_valor_liquido >= valor-(decimal)0.01 && x.is_valor_liquido <= valor+(decimal)0.01).ToList();
            }

            ViewBag.Credito = bancoexpressao.tp_credito_debito.ToUpper() == "C" ? "active" : "";
            ViewBag.Debito  = bancoexpressao.tp_credito_debito.ToUpper() == "D" ? "active" : "";


            ViewBag.DataInicio = data;
            ViewBag.DataFinal  = data;

            ViewBag.QtdRegistros        = model.ListCreditos.Count();
            ViewBag.QtdRegistrosDebitos = model.ListDebitos.Count(x => x.is_tipo_registro.Equals("COMPROVANTE"));

            var TotalLiqDebitos  = model.ListDebitos.Where(x => x.is_tipo_registro.Equals("COMPROVANTE")).Sum(x => x.is_valor_liquido);
            var TotalLiqCreditos = model.ListCreditos.Sum(x => x.valor_lancamento);

            ViewBag.TotalLiqCreditos = TotalLiqCreditos.ToString("#,##0.00");
            ViewBag.TotalLiqDebitos  = TotalLiqDebitos.ToString("#,##0.00");
            ViewBag.TotalGeralLiq    = (TotalLiqDebitos + TotalLiqCreditos).ToString("#,##0.00");

            var conta = new BaseID();


            ViewBag.tp_administradora = Models.AdministradoraTypes.getAdministradoras(bancoexpressao.bandeira);
            ViewBag.filtro_resumo     = "";

            /* if (frm["filtro_banco"] != "")
             * {
             *   model.filtro_banco = Convert.ToInt32(frm["filtro_banco"]);
             *   model.filtro_nm_banco = frm["filtro_nm_banco"];
             * } */

            return(View("RelatorioFinanceiroCredito", model));
        }
Example #8
0
        public Respostas DelRedePorId(long id)
        {
            var request = new RestRequest("api/rede/DelRedePorId/{idconta}/{idrede}", Method.POST);
            var obj     = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            request.AddParameter("idrede", id, ParameterType.UrlSegment);
            var response = _client.Execute <Respostas>(request);

            if (response.Data == null)
            {
                throw new Exception(response.ErrorMessage);
            }
            return(response.Data);
        }
        public List <TotaisDashboardProduto> GetTotalizadorPorProduto(int dias)
        {
            var request = new RestRequest("api/dashboard/gettotalizadorproduto/{idconta}/{dias}", Method.GET);
            var obj     = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            request.AddParameter("dias", dias, ParameterType.UrlSegment);
            var a = _client.Execute <List <TotaisDashboardProduto> >(request);

            if (a.StatusCode != HttpStatusCode.OK)
            {
                a.Data = new List <TotaisDashboardProduto>();
            }
            return(a.Data);
        }
        public decimal GetSessaoFaltantePorIdCliente(int id)
        {
            var request = new RestRequest("api/agenda/GetSessaoFaltantePorIdCliente/{idconta}/{idcliente}", Method.GET);
            var obj     = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            request.AddParameter("idcliente", id, ParameterType.UrlSegment);
            var a = _client.Execute <Decimal>(request);

            if (a.StatusCode != HttpStatusCode.OK)
            {
                a.Data = new Decimal();
            }
            return(a.Data);
        }
        public List <TotaisDashboardPorData> GetTotalizadorDiaDes(DateTime dataInicial, DateTime dataFinal)
        {
            var request = new RestRequest("api/dashboard/gettotalizadordiadesagendamentos/{idconta}/{dt_ini}/{dt_fim}", Method.GET);
            var obj     = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            request.AddParameter("dt_ini", dataInicial.Ticks, ParameterType.UrlSegment);
            request.AddParameter("dt_fim", dataFinal.Ticks, ParameterType.UrlSegment);
            var a = _client.Execute <List <TotaisDashboardPorData> >(request);

            if (a.StatusCode != HttpStatusCode.OK)
            {
                a.Data = new List <TotaisDashboardPorData>();
            }
            return(a.Data);
        }
        public List <TransacaoTEFLojas> TransacaoTEFLojas()
        {
            var request = new RestRequest("api/tef/GetLojas/{idconta}", Method.GET)
            {
                RequestFormat = DataFormat.Json
            };
            var obj = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            request.Timeout = 600000;
            var a = _client.Execute <List <TransacaoTEFLojas> >(request);

            if (a.StatusCode != HttpStatusCode.OK)
            {
                a.Data = new List <TransacaoTEFLojas>();
            }
            return(a.Data);
        }
        public IEnumerable <Lista> GetAgenciasAll()
        {
            var request = new RestRequest("api/Bancos/GetAgenciasAll/{idconta}", Method.GET)
            {
                RequestFormat = DataFormat.Json
            };
            var obj = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            //            request.AddParameter("termo", term ?? "", ParameterType.UrlSegment);
            var a = _client.Execute <List <Lista> >(request);

            if (a.StatusCode != HttpStatusCode.OK)
            {
                a.Data = new List <Lista>();
            }
            return(a.Data);
        }
        public IEnumerable <BancoTEFListar> GetBancoTEFAll(string term)
        {
            var request = new RestRequest("api/BancoTEF/GetBancoTEFAll/{idconta}/{termo}", Method.GET)
            {
                RequestFormat = DataFormat.Json
            };
            var obj = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            request.AddParameter("termo", term, ParameterType.UrlSegment);
            var a = _client.Execute <List <BancoTEFListar> >(request);

            if (a.StatusCode != HttpStatusCode.OK)
            {
                a.Data = new List <BancoTEFListar>();
            }
            return(a.Data);
        }
        public List <TransacaoRedeVsExtratoBancarioListar> TransacaoRedeVsExtratoBancarioListar(int?filtro_rede, int?filtro_situacao, int?filtro_tp_data, DateTime datainicio, DateTime datafinal)
        {
            var request = new RestRequest("api/relatorios/TransacaoRedeVsExtratoBancarioListar/{idconta}/{tpsituacao}/{tpdata}/{datainicio}/{datafinal}", Method.GET)
            {
                RequestFormat = DataFormat.Json
            };
            var obj = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            // request.AddParameter("idrede", filtro_rede ?? 0, ParameterType.UrlSegment);
            request.AddParameter("tpsituacao", filtro_situacao ?? 3, ParameterType.UrlSegment);
            request.AddParameter("tpdata", filtro_tp_data ?? 3, ParameterType.UrlSegment);  // 1 - Emissão / 2 - Vencimento / 3 - Pagamento
            request.AddParameter("datainicio", datainicio.Ticks, ParameterType.UrlSegment);
            request.AddParameter("datafinal", datafinal.Ticks, ParameterType.UrlSegment);
            var a = _client.Execute <List <TransacaoRedeVsExtratoBancarioListar> >(request);

            if (a.StatusCode != HttpStatusCode.OK)
            {
                a.Data = new List <TransacaoRedeVsExtratoBancarioListar>();
            }
            return(a.Data);
        }
        public List <ConciliacaoTransacaoRede> TransacaoRedeListar(int?filtro_rede, int?filtro_tp_cartao, DateTime datainicio, DateTime datafinal)
        {
            var request = new RestRequest("api/relatorios/TransacaoRedeListar/{idconta}/{tpcartao}/{datainicio}/{datafinal}", Method.GET)
            {
                RequestFormat = DataFormat.Json
            };
            var obj = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            // request.AddParameter("idrede",  0, ParameterType.UrlSegment);
            // request.AddParameter("tpsituacao", filtro_situacao ?? 3, ParameterType.UrlSegment);
            request.AddParameter("tpcartao", filtro_tp_cartao ?? 3, ParameterType.UrlSegment);  // 0 - credito 1 -  debit0
            request.AddParameter("datainicio", datainicio.Ticks, ParameterType.UrlSegment);
            request.AddParameter("datafinal", datafinal.Ticks, ParameterType.UrlSegment);
            var a = _client.Execute <List <ConciliacaoTransacaoRede> >(request);

            if (a.StatusCode != HttpStatusCode.OK)
            {
                a.Data = new List <ConciliacaoTransacaoRede>();
            }
            return(a.Data);
        }
        public Respostas DelAgendaClientePorId(long idcliente)
        {
            var request = new RestRequest("api/Agenda/DelAgendaClientePorId/{idconta}/{idcliente}", Method.POST)
            {
                RequestFormat = DataFormat.Json
            };
            var obj = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            request.AddParameter("idcliente", idcliente, ParameterType.UrlSegment);
            var a = _client.Execute <Respostas>(request);

            if (a.StatusCode == HttpStatusCode.InternalServerError)
            {
                throw new Exception(a.Content);
            }
            if (a.StatusCode == HttpStatusCode.NotFound)
            {
                throw new Exception(a.Content);
            }

            return(a.Data);
        }
        public BancoTEF GetBancoTEFPorId(long id)
        {
            var request = new RestRequest("api/BancoTEF/GetBancoTEFPorId/{idconta}/{id}", Method.GET)
            {
                RequestFormat = DataFormat.Json
            };
            var obj = new BaseID();

            request.AddParameter("idconta", obj.IdConta, ParameterType.UrlSegment);
            request.AddParameter("id", id, ParameterType.UrlSegment);
            var a = _client.Execute <BancoTEF>(request);

            if (a.StatusCode == HttpStatusCode.InternalServerError)
            {
                throw new Exception(a.Content);
            }
            if (a.StatusCode == HttpStatusCode.NotFound)
            {
                throw new Exception(a.Content);
            }

            return(a.Data);
        }
Example #19
0
        public ActionResult RelatorioFinanceiroCredito()
        {
            var model = new TransacaoCreditosViewModel();

            ViewBag.DataInicio = DateTime.Now.ToString("dd/MM/yyyy");
            ViewBag.DataFinal  = DateTime.Now.ToString("dd/MM/yyyy");

            ViewBag.QtdRegistros        = "0";
            ViewBag.QtdRegistrosDebitos = "0";
            ViewBag.TotalLiqCreditos    = "0,00";
            ViewBag.TotalLiqDebitos     = "0,00";
            ViewBag.TotalGeralLiq       = "0,00";
            ViewBag.tp_administradora   = Models.AdministradoraTypes.getAdministradoras("");
            ViewBag.filtro_resumo       = "";

            var conta = new BaseID();


            ViewBag.Credito = "active";
            ViewBag.Debito  = "";

            return(View(model));
        }
        public void ActivateAcademy([FromBody] BaseID message)
        {
            var boxes  = MongoRepository.GetCollection <Academy>();
            var filter = Builders <Academy> .Filter.Eq("_id", new ObjectId(message.id));

            var academy = boxes.Find <Academy>(filter).Project <Academy>("{ State : 1,  EmailManager: 1}").SingleOrDefaultAsync().Result;

            if (academy.State == AcademyState.Draft)
            {
                var builder = Builders <Academy> .Update;
                var update  = new List <UpdateDefinition <Academy> >();

                update.Add(builder.Set("State", AcademyState.Active));
                update.Add(builder.Push("Users", new AcademyUser()
                {
                    Email = academy.EmailManager, Role = Role.BoxAdmin
                }));

                var r = boxes.UpdateOneAsync(filter, builder.Combine(update)).Result;

                var user = UserManager.FindByEmailAsync(academy.EmailManager).Result;

                if (user == null)
                {
                    var appUser = new ApplicationUser {
                        UserName = academy.EmailManager, Email = academy.EmailManager
                    };
                    appUser.AddRole(EnumsUtils.GetName(Role.BoxAdmin));
                    var result = UserManager.CreateAsync(appUser, "Revolute2015!").Result;
                }
            }
            else
            {
                throw new APIException("You can only activate a Draft academy");
            }
        }
        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);
        }
Example #22
0
        public ActionResult Processar(ArquivoDeCartoes model)
        {
            try
            {
                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>();
                int i = 0;

                if (Request.Files.Count > 0)
                {
                    foreach (string fileName in Request.Files)
                    {
                        HttpPostedFileBase file = Request.Files[i];
                        i = i + 1;


                        if (file != null && file.ContentLength > 0)
                        {
                            model.ds_arquivo = file.FileName;

                            var arquivo = new ConciliacaoArquivoManipular(new StreamReader(file.InputStream));

                            String first_line = arquivo.LerLinha(true);


                            if (first_line.ToUpper().Contains("GETNET")) //&& (arquivo.ProcessarArquivobanese(first_line))) //Opção de extrato - saldo em aberto
                            {
                                bool   md5_encontrado = false;
                                string lsArquivomd5   = "";
                                string is_linha_atual = "";
                                while ((is_linha_atual = arquivo.LerLinha()) != null)
                                {
                                    lsArquivomd5 = lsArquivomd5 + is_linha_atual;
                                }

                                arquivo.Seek(0);
                                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();

                                var getnet = new ConciliacaoGetNetDesmontar(arquivo, first_line);

                                if (md5.arquivo_md5.Equals(""))
                                {
                                    md5.arquivo_md5 = lsretornomd5;
                                }
                                else
                                {
                                    md5_encontrado = true;
                                }

                                model.ArquivoResumo     = getnet.ROGet();
                                model.ArquivoTransacao  = getnet.CVArrayGet();
                                model.ArquivoDetalhado  = getnet.DetalhadoGet();
                                model.ArquivoCompleto   = getnet.CompletoGet();
                                model.ArquivoAntecipado = getnet.ARGet();
                                if (!md5_encontrado)
                                {
                                    DAL.GravarList(getnet.GetCreditos());

                                    DAL.GravarList(getnet.GetResumoEEVDOperacao());
                                    DAL.GravarList(getnet.GetComprovanteEEVDVenda());

                                    DAL.GravarList(getnet.GetResumoEEVCArquivo());

                                    DAL.GravarList(getnet.GetComprovanteEEVCCVenda());
                                    DAL.GravarList(getnet.GetParcelas());

                                    DAL.GravarList(getnet.TotalizadorProdutoGet());
                                    DAL.GravarList(getnet.TotalizadorBancoGet());
                                    DAL.GravarList(getnet.TotalizadorEstabelecimentoGet());

                                    DAL.Gravar(md5);
                                }
                                ViewBag.BotaoProcessar = "Buscar";
                            }
                        }
                    }
                }
            }
            catch (Exception e)
            {
                throw e;
            }

            return(View(model));
        }
Example #23
0
        public JsonResult ProcessarArquivo()
        {
            var httpRequest = System.Web.HttpContext.Current.Request;
            HttpFileCollection uploadFiles = httpRequest.Files;
            var docfiles = new List <string>();


            var model = new ArquivoDeCartoesUserRede();

            if (httpRequest.Files.Count > 0)
            {
                foreach (string fileName in httpRequest.Files)
                {
                    HttpPostedFileBase file = Request.Files[fileName];

                    if (file != null && file.ContentLength > 0)
                    {
                        try
                        {
                            model.ds_arquivo = file.FileName;

                            var    arquivo        = new ConciliacaoArquivoManipular(new StreamReader(file.InputStream));
                            String first_line     = arquivo.LerLinha(true);
                            bool   md5_encontrado = false;


                            string lsArquivomd5   = "";
                            string is_linha_atual = "";
                            while ((is_linha_atual = arquivo.LerLinha()) != null)
                            {
                                lsArquivomd5 = lsArquivomd5 + is_linha_atual;
                            }

                            arquivo.Seek(0);


                            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 (md5.arquivo_md5.Equals(""))
                            {
                                md5.arquivo_md5 = lsretornomd5;
                            }
                            else
                            {
                                md5_encontrado = true;
                            }

                            if (first_line.ToUpper().Contains("EEVD"))
                            {
                                var userrede = new ConciliacaoUseRedeEEVDDesmontar(arquivo, first_line);
                                model.ArquivosDeCartoesEEVDUserRede = userrede.GetResumoOperacao();


                                if (!md5_encontrado)
                                {
                                    DAL.GravarList(model.ArquivosDeCartoesEEVDUserRede);
                                    DAL.GravarList(userrede.GetComprovanteVenda());
                                    DAL.GravarList(userrede.GetPontoVenda());
                                    DAL.GravarList(userrede.GetTotalArquivo());
                                    DAL.GravarList(userrede.GetTotalMatriz());

                                    DAL.GravarList(userrede.TotalizadorBancoGet());
                                    DAL.GravarList(userrede.TotalizadorProdutoGet());
                                    DAL.GravarList(userrede.TotalizadorEstabelecimentoGet());

                                    DAL.Gravar(md5);
                                }
                            }
                            else if (first_line.ToUpper().Contains("EEVC"))
                            {
                                var userrede = new ConciliacaoUseRedeEEVCDesmontar(arquivo, first_line);
                                model.ArquivosDeCartoesEEVCUserRede = userrede.GetResumoArquivo();
                                if (!md5_encontrado)
                                {
                                    DAL.GravarList(userrede.TotalizadorBancoGet());
                                    DAL.GravarList(userrede.TotalizadorProdutoGet());
                                    DAL.GravarList(userrede.TotalizadorEstabelecimentoGet());


                                    DAL.GravarList(userrede.GetComprovanteVenda());
                                    DAL.GravarList(model.ArquivosDeCartoesEEVCUserRede);
                                    DAL.GravarList(userrede.GetParcelas());

                                    DAL.Gravar(md5);
                                }
                            }
                            else if (first_line.ToUpper().Contains("EEFI"))
                            {
                                var userrede = new ConciliacaoUseRedeEEFIDesmontar(arquivo, first_line);
                                model.ArquivosDeCartoesEEFIUserRede = userrede.GetResumoArquivo();
                                if (!md5_encontrado)
                                {
                                    DAL.GravarList(userrede.GetCreditos());
                                    DAL.GravarList(userrede.GetAjustesAntecipacao());
                                    DAL.GravarList(userrede.GetAjustesDesagendamento());
                                    DAL.GravarList(userrede.GetDesagendamentoParcelas());
                                    DAL.GravarList(userrede.GetTotalMatriz());
                                    DAL.GravarList(userrede.GetTotalCredito());

                                    DAL.Gravar(md5);
                                }
                            }


                            //  DAL.GravarList(model.ArquivosDeCartoesUserRede);

                            ViewBag.BotaoProcessar = "Gravar";
                        }
                        catch (Exception ex)
                        {
                            this.AddNotification(ex.Message + " " + ex.StackTrace, NotificationType.Erro);
                        }
                    }
                }
            }
            var result = Json(model, JsonRequestBehavior.AllowGet);

            result.MaxJsonLength = int.MaxValue;
            return(result);
        }
Example #24
0
        public ActionResult RelatoriosTransacoesTEF(ArquivoDeCartoesTEF obj)
        {
            var arquivostef = _restTEF.TransacaoTEFListar(obj.filtro_rede == null ? null : obj.filtro_nm_rede, obj.tp_situacao, 0, obj.DataInicio ?? DateTime.MinValue, obj.DataFinal ?? DateTime.MaxValue, obj.filtro_valor, obj.filtro_nm_estabelecimento, obj.tp_administradora, obj.filtro_resumo, obj.filtro_nm_loja, obj.filtro_tp_transacao, obj.filtro_tp_operacao) ?? new List <TransacaoTEFListar>();

            var model = new ArquivoDeCartoesTEF
            {
                DataInicio  = obj.DataInicio,
                DataFinal   = obj.DataFinal,
                tp_arquivo  = null,
                arquivo     = null,
                ds_arquivo  = null,
                tp_data     = 0, /// emissao
                ArquivosTEf = arquivostef,

                filtro_tp_transacao = obj.filtro_tp_transacao == null ? null : obj.filtro_tp_transacao,
                filtro_tp_operacao  = obj.filtro_tp_operacao == null ? null : obj.filtro_tp_operacao,

                filtro_nm_loja            = obj.filtro_nm_loja == null ? null : obj.filtro_nm_loja,
                filtro_nm_rede            = obj.filtro_rede == null ? null : obj.filtro_nm_rede,
                filtro_rede               = obj.filtro_rede,
                filtro_valor              = obj.filtro_valor,
                filtro_resumo             = obj.filtro_resumo,
                filtro_estabelecimento    = obj.filtro_estabelecimento,
                filtro_nm_estabelecimento = obj.filtro_estabelecimento == null ? null : obj.filtro_nm_estabelecimento
            };

            var conta = new BaseID();

            foreach (var item in model.ArquivosTEf)
            {
                var sql = string.Format(@"select distinct encontrou
                                           from(select 1 as encontrou
                                                from
                                                    conciliador_userede_eevd_comprovantevenda b
                                                where
                                                    ((b.numero_cv = cast('{0}' as DECIMAL)) or (b.numero_cv = cast('{2}' as DECIMAL))) and (b.id_conta = {1} )
                                                union all
                                                select
                                                    1
                                                from
                                                    conciliador_userede_eevc_comprovantevenda c
                                                where
                                                    ((c.numero_cv = cast('{0}' as DECIMAL)) or (c.numero_cv = cast('{2}' as DECIMAL))) and (c.id_conta = {1} )  ) as x  ",
                                        item.nsu_rede, conta.IdConta, item.nsu_tef);
                item.conciliado = (int)DAL.GetInt(sql, 0);
            }

            if (obj.tp_situacao == 0)
            {
                model.ArquivosTEf = model.ArquivosTEf.Where(x => x.conciliado == 1).ToList();
            }
            if (obj.tp_situacao == 1)
            {
                model.ArquivosTEf = model.ArquivosTEf.Where(x => x.conciliado == 0).ToList();
            }

            ViewBag.filtro_nm_loja = _restTEF.TransacaoTEFLojas().Select(i => new SelectListItem {
                Text = i.loja, Value = i.loja.ToUpper()
            }).ToList();

            ViewBag.tp_data = Models.DataTypes.getDataTypes();

            ViewBag.tp_administradora = Models.AdministradoraTypes.getAdministradoras("");

            ViewBag.filtro_tp_operacao = Models.AdministradoraTypes.getTpOperacoes("");

            ViewBag.filtro_tp_transacao = _restTEF.TransacaoTipoTransacoes().Select(i => new SelectListItem {
                Text = i.tp_transacao, Value = i.tp_transacao.ToUpper()
            }).ToList();

            return(View(model));
        }
Example #25
0
        public FileResult BuscaTEFXML(FormCollection frm)
        {
            var stream = new MemoryStream();

            try
            {
                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 listar = new TransacaoRedeViewModel
                {
                    TransacaoArquivos = _restRelatorio.TransacaoRedeListar(0, Convert.ToInt32(frm["tp_cartao"]), 0, datainicio, datafinal, frm["resumo"], "0") ?? new List <ConciliacaoTransacaoRede>(),
                    DataInicio        = datainicio,
                    DataFinal         = datafinal,
                    tp_data           = Convert.ToInt32(frm["tp_data"]),
                    tp_cartao         = Convert.ToInt32(frm["tp_cartao"]),
                    resumo            = frm["resumo"]
                };

                var conta = new BaseID();
                foreach (var item in listar.TransacaoArquivos)
                {
                    var status =
                        TEFDAL.GetStatusTEF(conta.IdConta, item.is_numero_cv);
                    item.is_codigo_tef = status.CodigoTEF;
                    item.is_nsu_tef    = status.NSUTEF;
                    item.is_nsu_rede   = status.NSUREDE;
                }


                var objs       = new List <ConciliacaoTransacaoRede>();
                var doc        = new XmlDocument();
                var serializer = new XmlSerializer(objs.GetType());

                serializer.Serialize(stream, listar.TransacaoArquivos);
                stream.Position = 0;
                doc.Load(stream);

                string FileBankPhysicalFolder = Server.MapPath("~/XMLS/");
                string Name         = ("RelatorioTrancacoes_" + DateTime.Now.Date.ToString().Substring(0, 10).Replace("/", "") + "_" + DateTime.Now.ToString().Substring(11, 8).Replace(":", "") + ".xml").Replace(" ", "_");
                string FileBankPath = FileBankPhysicalFolder + Name;
                if (!System.IO.File.Exists(FileBankPath))
                {
                    System.IO.File.Create(FileBankPath).Close();
                }
                string Content = doc.InnerXml;
                System.IO.File.WriteAllText(FileBankPath, Content);

                FileInfo file = new FileInfo(FileBankPath); //path: directory of file; fich: name of file with spaces
                Response.Clear();
                Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}", file.Name));
                Response.ContentType = "application/octet-stream";
                Response.AddHeader("Content-Length", file.Length.ToString());
                Response.Flush();
                Response.WriteFile(FileBankPath);
                Response.End();

                return(File(FileBankPath, System.Net.Mime.MediaTypeNames.Application.Octet, Path.GetFileName(FileBankPath)));
            }

            catch (Exception e)
            {
                DALErro.Gravar(e.Message + " / " + e.StackTrace);

                throw e;
            }
            finally
            {
                stream.Close();
                stream.Dispose();
            }
        }
        public ActionResult Processar(ArquivoDeCartoes model)
        {
            try
            {
                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>();
                int i = 0;

                if (Request.Files.Count > 0)
                {
                    foreach (string fileName in Request.Files)
                    {
                        HttpPostedFileBase file = Request.Files[i];
                        i = i + 1;


                        if (file != null && file.ContentLength > 0)
                        {
                            model.ds_arquivo = file.FileName;

                            var arquivo = new ConciliacaoArquivoManipular(new StreamReader(file.InputStream));

                            String first_line = arquivo.LerLinha(true);


                            if ((first_line.ToUpper().Contains("FINANCEIRA")) && (first_line.ToUpper().Contains("FD DO BRASIL PROCESSAMENTO DE DADOS LTDA."))) //&& (arquivo.ProcessarArquivobanese(first_line))) //Opção de extrato - saldo em aberto
                            {
                                bool   md5_encontrado = false;
                                string lsArquivomd5   = "";
                                string is_linha_atual = "";
                                while ((is_linha_atual = arquivo.LerLinha()) != null)
                                {
                                    lsArquivomd5 = lsArquivomd5 + is_linha_atual;
                                }

                                arquivo.Seek(0);
                                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();

                                var bin = new ConciliacaoBinDesmontar(arquivo, first_line);

                                if (md5.arquivo_md5.Equals(""))
                                {
                                    md5.arquivo_md5 = lsretornomd5;
                                }
                                else
                                {
                                    md5_encontrado = true;
                                }

                                model.ArquivoResumo     = bin.ROGet();
                                model.ArquivoTransacao  = bin.CVArrayGet();
                                model.ArquivoDetalhado  = bin.DetalhadoGet();
                                model.ArquivoCompleto   = bin.CompletoGet();
                                model.ArquivoAntecipado = bin.ARGet();
                                if (!md5_encontrado)
                                {
                                    DAL.GravarList(bin.GetCreditos());

                                    // DAL.GravarList(banese.GetResumoArquivo());
                                    // DAL.GravarList(banese.GetAjustesAntecipacao());
                                    // DAL.GravarList(banese.GetAjustesDesagendamento());
                                    // DAL.GravarList(banese.GetDesagendamentoParcelas());

                                    DAL.GravarList(bin.GetResumoEEVDOperacao());
                                    DAL.GravarList(bin.GetComprovanteEEVDVenda());

                                    DAL.GravarList(bin.GetResumoEEVCArquivo());

                                    DAL.GravarList(bin.GetComprovanteEEVCCVenda());
                                    DAL.GravarList(bin.GetParcelas());

                                    DAL.GravarList(bin.TotalizadorProdutoGet());
                                    DAL.GravarList(bin.TotalizadorBancoGet());
                                    DAL.GravarList(bin.TotalizadorEstabelecimentoGet());

                                    //  DAL.GravarList(banese.RedeGet());

                                    DAL.Gravar(md5);
                                }
                                ViewBag.BotaoProcessar = "Buscar";
                            }
                            else if ((first_line.ToUpper().Contains("VENDAS")) && (first_line.ToUpper().Contains("FD DO BRASIL PROCESSAMENTO DE DADOS LTDA.")))
                            {
                                bool   md5_encontrado = false;
                                string lsArquivomd5   = "";
                                string is_linha_atual = "";
                                while ((is_linha_atual = arquivo.LerLinha()) != null)
                                {
                                    lsArquivomd5 = lsArquivomd5 + is_linha_atual;
                                }

                                arquivo.Seek(0);
                                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();

                                var bin = new ConciliacaoBinDesmontar(arquivo, first_line);

                                if (md5.arquivo_md5.Equals(""))
                                {
                                    md5.arquivo_md5 = lsretornomd5;
                                }
                                else
                                {
                                    md5_encontrado = true;
                                }

                                model.ArquivoResumo     = bin.ROGet();
                                model.ArquivoTransacao  = bin.CVArrayGet();
                                model.ArquivoDetalhado  = bin.DetalhadoGet();
                                model.ArquivoCompleto   = bin.CompletoGet();
                                model.ArquivoAntecipado = bin.ARGet();
                                if (!md5_encontrado)
                                {
                                    DAL.GravarList(bin.GetCreditos());

                                    // DAL.GravarList(banese.GetResumoArquivo());
                                    // DAL.GravarList(banese.GetAjustesAntecipacao());
                                    // DAL.GravarList(banese.GetAjustesDesagendamento());
                                    // DAL.GravarList(banese.GetDesagendamentoParcelas());

                                    DAL.GravarList(bin.GetResumoEEVDOperacao());
                                    DAL.GravarList(bin.GetComprovanteEEVDVenda());

                                    DAL.GravarList(bin.GetResumoEEVCArquivo());

                                    DAL.GravarList(bin.GetComprovanteEEVCCVenda());
                                    DAL.GravarList(bin.GetParcelas());

                                    DAL.GravarList(bin.TotalizadorProdutoGet());
                                    DAL.GravarList(bin.TotalizadorBancoGet());
                                    DAL.GravarList(bin.TotalizadorEstabelecimentoGet());

                                    //  DAL.GravarList(banese.RedeGet());

                                    DAL.Gravar(md5);
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception e)
            {
                this.AddNotification(e.Message, "Alerta");
                // ModelState.AddModelError(e.Message, e.Message);
                return(View(model));
            }

            return(View(model));
        }
        public string Processar(Stream file)
        {
            string resposta = "processado";

            if (file != null && file.Length > 0)
            {
                var arquivo = new ConciliacaoArquivoManipular(new StreamReader(file));

                String first_line = arquivo.LerLinha(true);

                try
                {
                    if ((first_line.ToUpper().Contains("CIELO")) && (arquivo.ProcessarArquivoCielo(first_line))) //Opção de extrato - saldo em aberto
                    {
                        bool md5_encontrado = false;

                        string lsArquivomd5   = "";
                        string is_linha_atual = "";
                        while ((is_linha_atual = arquivo.LerLinha()) != null)
                        {
                            lsArquivomd5 = lsArquivomd5 + is_linha_atual;
                        }

                        arquivo.Seek(0);
                        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 (md5.arquivo_md5.Equals(""))
                        {
                            md5.arquivo_md5 = lsretornomd5;
                        }
                        else
                        {
                            // md5_encontrado = true;
                        }

                        var cielo = new ConciliacaoCieloDesmontar(arquivo, first_line);

                        if (!md5_encontrado)
                        {
                            DAL.GravarList(cielo.GetCreditos());
                            DAL.GravarList(cielo.GetResumoEEVDOperacao());
                            DAL.GravarList(cielo.GetComprovanteEEVDVenda());

                            DAL.GravarList(cielo.GetResumoEEVCArquivo());

                            DAL.GravarList(cielo.GetComprovanteEEVCCVenda());
                            DAL.GravarList(cielo.GetParcelas());

                            DAL.GravarList(cielo.TotalizadorProdutoGet());
                            DAL.GravarList(cielo.TotalizadorBancoGet());
                            DAL.GravarList(cielo.TotalizadorEstabelecimentoGet());
                            if (md5.arquivo_md5.Equals(""))
                            {
                                DAL.Gravar(md5);
                            }

                            // DAL.GravarList(cielo.RedeGet());
                        }
                    }
                    else
                    {
                        resposta = "problemas";
                    }
                }
                catch (Exception ex)
                {
                    resposta = "problemas";
                }
            }
            else
            {
                resposta = "semregistro";
            }

            return(resposta);
        }
        public JsonResult ProcessarArquivo()
        {
            var model = new ArquivosEstabelecimentos();

            if (Request.Files.Count > 0)
            {
                var file = Request.Files[0];


                if (file != null && file.ContentLength > 0)
                {
                    try
                    {
                        model.ds_arquivo = file.FileName;

                        var    arquivo    = new ConciliacaoArquivoManipular(new StreamReader(file.InputStream));
                        String first_line = arquivo.LerLinha(true);



                        bool   md5_encontrado = false;
                        string lsArquivomd5   = "";
                        string is_linha_atual = "";
                        var    i = 0;
                        while ((is_linha_atual = arquivo.LerLinha()) != null)
                        {
                            i++;
                            if (i > 500)
                            {
                                break;
                            }
                            lsArquivomd5 = lsArquivomd5 + is_linha_atual;
                        }

                        arquivo.Seek(0);
                        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 (md5.arquivo_md5.Equals(""))
                        {
                            md5.arquivo_md5 = lsretornomd5;
                        }
                        else
                        {
                            md5_encontrado = true;
                        }

                        var bancario = new ConciliacaoEstabelecimentoDesmontar(arquivo, first_line);

                        model.ArquivoEstabelecimento = bancario.GetListTransacaoEstabelecimento();
                        if (!md5_encontrado)
                        {
                            DAL.GravarList(model.ArquivoEstabelecimento);
                            EstabelecimentoDAL.ExcluirDuplicados(Convert.ToInt32(UsuarioLogado.IdConta));
                            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);
        }