public ActionResult Alterar(Usuario u, int id) { ConexaoDb2 conexao = new ConexaoDb2(); conexao.AlterarUsuario(u, id); return(RedirectToAction("Index", "Consultas", null)); }
public ActionResult Index(Usuario usuario) { if (Request.Form["Senha"] == Request.Form["ConfirmarSenha"]) { ConexaoDb2 conexao = new ConexaoDb2(); conexao.CriarUsuario(usuario); TempData["UsuarioCriado"] = @"O usuário foi criado, porém é necessário ativá-lo para consulta. Você receberá um email com o procedimento para ativar seu usuário."; string mensagem = @"Olá " + char.ToUpper(usuario.Nome[0]) + usuario.Nome.Substring(1) + ", bem vindo ao sistema Alvo. <br>" + "Para ativar seu usuário é necessário entrar em contato com nosso suporte pelo telefone (11) 3266-3124. <br>" + "Mediante a contratação do serviço, seu usuário será habilitado. <br>" + "Aguardamos seu contato.<br> Atenciosamente, Alvo"; Email email = new Email(usuario.Email, mensagem, "Falta pouco para você começar a usar o Alvo"); email.DispararMensagem(); } else { usuario.Senha = String.Empty; ViewBag.MensagemErro = "Senhas não correspondem."; return(View(usuario)); } return(RedirectToAction("Index", "Home", null)); }
public ActionResult AlterarSenha(int id) { //Alterar senha ConexaoDb2 conexao = new ConexaoDb2(); Usuario u = conexao.RecuperarDadosUsuario(id); return(View(u)); }
public ActionResult ListaSolicitacoes() { List <Solicitacao> solicitacoes = new List <Solicitacao>(); ConexaoDb2 db = new ConexaoDb2(); solicitacoes = db.ConsultarSolicitacoes(Convert.ToInt16(Session["idUsuario"])); return(this.Content(new Parser().ToXML(solicitacoes), "text/xml")); }
// // GET: /Consultas/ public ActionResult Index() { List <Solicitacao> solicitacoes = new List <Solicitacao>(); ConexaoDb2 db = new ConexaoDb2(); solicitacoes = db.ConsultarSolicitacoes(Convert.ToInt16(Session["idUsuario"])); return(View(solicitacoes)); }
public FileResult ErrosCsv(int idSolicitacao) { //Grava os erros em um arquivo de saída e retorna para o usuário ConexaoDb2 db = new ConexaoDb2(); Parser parse = new Parser(); string arquivo = String.Empty; arquivo = parse.GerarArquivoErro(db.RecuperarErro(idSolicitacao)); return(File(Parser.ConverterTextoStreamMemoria(arquivo), "csv", "Erros_Consulta_U" + Session["idUsuario"] + "_S" + idSolicitacao.ToString() + ".csv")); }
public ActionResult AlterarSenha(Usuario u, int id) { //Alterar senha if (u.Senha == Request.Form["ConfirmarSenha"]) { ConexaoDb2 conexao = new ConexaoDb2(); conexao.AlterarSenha(u, id); return(RedirectToAction("Index", "Consultas", null)); } else { ViewBag.MensagemErro = "Senhas não correspondem."; u.Senha = String.Empty; return(View(u)); } }
public ActionResult Index(string foo) { ConexaoDb2 conexao = new ConexaoDb2(); int idUsuario = conexao.VerificarAcessoUsuario(Request.Form["Usuario"], Request.Form["Senha"], Request.ServerVariables.Get("REMOTE_ADDR")); Session["idUsuario"] = idUsuario; System.Web.Security.FormsAuthentication.SetAuthCookie(Request.Form["Usuario"], false); string returnUrl = Request.Form["returnUrl"]; if (this.Url.IsLocalUrl(returnUrl)) { return(Redirect(returnUrl)); } else { return(RedirectToAction("Index", "Consultas", null)); } }
public ActionResult ResultadoXML(int idSolicitacao) { //Grava os extratos em um arquivo de saída e retorna para o usuário ConexaoDb2 db = new ConexaoDb2(); Parser parse = new Parser(); string ArquivoTemp = String.Empty; string nomeArquivo = @"e:\home\agilus\Temp\" + "ConsultaXml_U" + Session["idUsuario"] + "_S" + idSolicitacao.ToString() + ".xml"; if (!System.IO.File.Exists(nomeArquivo)) { //Arquivo com Resultados ArquivoTemp = db.RecuperarResultado(idSolicitacao, TipoRetorno.xml); //Renomeando arquivo System.IO.File.Move(ArquivoTemp, nomeArquivo); } return(File(nomeArquivo, "application/xml", "ConsultaXml_U" + Session["idUsuario"] + "_S" + idSolicitacao.ToString() + ".xml")); }
public ActionResult Incluir(ArquivoUpload arquivoUpload, string Descricao) { string nomeArquivo; int idSolicitacaoGerada = -1, idUsuario; idUsuario = (int)Session["idUsuario"]; nomeArquivo = @"e:\home\agilus\Temp\" + Path.GetRandomFileName().Replace(".", ""); arquivoUpload.arquivo.SaveAs(nomeArquivo); ConexaoDb2 db = new ConexaoDb2(); ManipulaCsv arquivoMatriculas = new ManipulaCsv(); //Verificar SALDO, se tiver 2 consultas libera leitura de matrículas e guarda em uma varialvel valor do saldo int saldo = db.VerificarSaldo(idUsuario); if (saldo >= 2) { List <string> matriculas = arquivoMatriculas.LerCsv(nomeArquivo); //Verificar se o número de beneficios é maior que o saldo; if (matriculas.Count <= saldo) { List <string> LoteConsulta = new List <string>(); int cont = 0; int i = 0; //Abriria conexão while (cont < matriculas.Count) { while (i < 1000 && cont < matriculas.Count) { LoteConsulta.Add(matriculas[cont].Trim()); i++; cont++; } // Solicitacao de consulta no servidor e gravação de resultado no banco de dados Parser metodos = new Parser(); Consulta consultaRV, consultaTitular, consultaConbas = new Consulta(); //Lote RV consultaRV = metodos.InterpretarJsonPedidoConsulta(Servidor.RealizarPedido(LoteConsulta, Contexto.rv)); //Lote Titular consultaTitular = metodos.InterpretarJsonPedidoConsulta(Servidor.RealizarPedido(LoteConsulta, Contexto.titular)); //Lote Conbas consultaConbas = metodos.InterpretarJsonPedidoConsulta(Servidor.RealizarPedido(LoteConsulta, Contexto.conbas)); if (idSolicitacaoGerada == -1) { idSolicitacaoGerada = db.InserirSolicitacao(idUsuario, Descricao); //Pego o código da última solicitação inserida por este usuário. } if (!(saldo == 500000)) { db.InserirExtrato(idUsuario, idSolicitacaoGerada, matriculas.Count); } db.InserirConsulta(consultaRV, idSolicitacaoGerada); db.InserirConsulta(consultaTitular, idSolicitacaoGerada); db.InserirConsulta(consultaConbas, idSolicitacaoGerada); //VErificacao i = 0; LoteConsulta.Clear(); } } else { throw new Exception("Você tem " + saldo + " consultas disponíveis. Reduza o número de benefícios para que a consulta seja realizada"); } } else { throw new Exception("Você tem menos de 2 consultas disponíveis. Para realizar as consultas em lote você precisa ter pelo menos 2 consultas."); } System.IO.File.Delete(nomeArquivo); return(RedirectToAction("Index", "Consultas", null)); }
public string Atualizar() { string retorno = "OK"; //Se a solicitação já está com o status Download, significa que os lotes foram coletados, portanto o controller faz apenas 1 refresh. ConexaoDb2 db = new ConexaoDb2(); var solicitacoes = db.ConsultarSolicitacoesPendentes(); foreach (var solicitacao in solicitacoes) { bool haviamlotesPendentes = false; if (!(db.SolicitacaoColetada(solicitacao.Id))) { haviamlotesPendentes = true; Parser parse = new Parser(); //lista que contém as consultas não coletadas. List <Consulta> consultasSolicitadas = db.ListarConsultasSolicitacao(solicitacao.Id); try { foreach (var consulta in consultasSolicitadas) { if (!db.VerificarConsultaProcessada(consulta.Id)) { //Se o lote não foi processado é realizada a consulta no servidor e o status do processo é atualizado no banco de dados db.AtualizarConsulta(parse.InterpretarJsonPedidoConsulta(Servidor.ConsultarStatusPedido(consulta.Chave))); } else { //Se a consulta foi processada é necessário fazer a coleta. db.inserirResultado(parse.InterpretarJsonConsultarBuscaLote(Servidor.buscarPedido(consulta.Chave)), (int)consulta.Id, solicitacao.Id, consulta.Status); } } } finally { db.LiberarAtualizandoStatus(solicitacao.Id); } } if (haviamlotesPendentes) { /*Quando haviam lotes pendentes na solicitação é feita uma verificação para saber se os lotes foram coletados, se foram todos coletados * a soliticação passa para o status download, (após ser coletada, ele não passa mais neste if), e * é disparado um email para o usuário informando que o arquivo já pode ser baixado.*/ //Conectando no banco de dados ConexaoDb2 conexao = new ConexaoDb2(); bool SolicitacaoCompleta = conexao.AtualizarStatusSolicitacao(); //Rotina de disparo de email if (SolicitacaoCompleta) { Usuario u = new Usuario(); //Obtendo usuário da solicitação atual int idUsuario = conexao.IdUsuarioSolicitacao(solicitacao.Id); u = conexao.RecuperarDadosUsuario(idUsuario); //Criando link de download para encaminhar no email string ArquivoDownload = @"http://www.agilus.com.br/Alvo/Consultas/ResultadoCsv?idSolicitacao=" + solicitacao.Id.ToString(); //Gerando arquivo com dados da solicitação Parser.CriarArquivoCSVDisco(solicitacao.Id, "Consulta_U" + idUsuario.ToString() + "_S" + solicitacao.Id.ToString() + ".csv"); //Disparar email string assunto = "Sua consulta foi processada com sucesso"; string mensagem = @"Olá " + char.ToUpper(u.Nome[0]) + u.Nome.Substring(1) + ".<br>" + @"Sua consulta foi finalizada e você pode baixar o arquivo com o resultado no link abaixo.<br> " + ArquivoDownload + "<br> " + @"Para fazer o download do arquivo, será necessário digitar seu login e senha. Após isto o download iniciará automaticamente."; Email email = new Email(u.Email, mensagem, assunto); email.DispararMensagem(); } } } return(retorno); }