/// <summary> /// Metodo que é acionado no login da webApi pela uri/token /// </summary> /// <param name="context"></param> /// <returns></returns> public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context) { var identity = new ClaimsIdentity(context.Options.AuthenticationType); Usuario user = new Usuario { CdPassword = context.Password, DsEmail = context.UserName }; user = new UsuarioBo().Login(user); if (user != null) { List <Perfil> perfilList = new PerfilDao().GetPerfisByEmail(new Usuario { DsEmail = user.DsEmail }); foreach (Perfil perfil in perfilList) { identity.AddClaim(new Claim(ClaimTypes.Role, perfil.DsPerfil)); } identity.AddClaim(new Claim("credencial", new JavaScriptSerializer().Serialize(user))); identity.AddClaim(new Claim(ClaimTypes.Name, user.NmUsuario)); await Task.FromResult(context.Validated(identity)); } else { context.SetError("Credenciais invalidas", "Combinação de Usuário e senha incorreta."); return; } }
private void simpleButtonIngresar_Click(object sender, EventArgs e) { try { this.Cursor = Cursors.WaitCursor; string usuario = textEditUsuario.Text; string password = textEditPassword.Text; UsuarioBo usuarioBo = new UsuarioBo(); bool valido = usuarioBo.Login(usuario, password); if (valido) { var entity = usuarioBo.Get(usuario); Usuario = entity; DialogResult = DialogResult.OK; } else { XtraMessageBox.Show(ErrorLogin, Properties.Resources.MessaBoxTittle, MessageBoxButtons.OK); textEditUsuario.Focus(); } }catch (Exception ex) { XtraMessageBox.Show(ex.Message, Properties.Resources.MessaBoxTittle, MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { this.Cursor = Cursors.Default; } }
public ActionResult Login(Usuario usuario) { var usuarioLogado = new UsuarioBo().Login(usuario); if (usuarioLogado == null) { ModelState.AddModelError(string.Empty, "Usuário e/ou senha incorreto(s)."); return(View(usuario)); } List <Perfil> perfilList = new PerfilDao().GetPerfisByEmail(new Usuario { DsEmail = usuario.DsEmail }); string[] perfis = perfilList.Select(x => x.DsPerfil).ToArray(); var principle = new GenericPrincipal(new GenericIdentity($"{usuario.NmUsuario} {usuario.NmUsuario}"), perfis); var ticket = new FormsAuthenticationTicket(1, principle.Identity.Name, DateTime.Now, DateTime.Now.AddMonths(30), true, string.Join(",", perfis)); var encryptedTicket = FormsAuthentication.Encrypt(ticket); var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket); Response.SetCookie(cookie); Session["Nome"] = usuarioLogado.NmUsuario; Session["IdEmpresa"] = usuarioLogado.IdEmpresa; Session["IdUsuario"] = usuarioLogado.IdUsuario; Session["Role"] = "authorize"; TempData["message"] = "Logado com sucesso!"; if (usuarioLogado.Perfis.Select(x => x.DsPerfil).Contains("master")) { Session["Role"] = "master"; return(RedirectToAction("Index", "Empresa")); } if (usuarioLogado.Perfis.Select(x => x.DsPerfil).Contains("admin")) { Session["Role"] = "admin"; return(RedirectToAction("Index", "Usuario")); } if (usuarioLogado.Perfis.Select(x => x.DsPerfil).Contains("funcionario")) { Session["Role"] = "funcionario"; return(RedirectToAction("EspelhoPonto", "Usuario")); } return(RedirectToAction("Index", "Home")); }
public ActionResult Index() { List <Usuario> usuarioList = new UsuarioBo().Read(new Usuario { IdEmpresa = int.Parse(Session["IdEmpresa"].ToString()) }); var results = from usuario in usuarioList where usuario.CdIsAdmin == false select usuario; return(View(results.ToList())); }
private void InitConnect() { try { UsuarioBo usuarioBo = new UsuarioBo(); var entity = usuarioBo.Get("username"); } catch (Exception ex) { XtraMessageBox.Show("Ocurrió el siguiente error al conectar con la base de datos: \n" + ex.Message, Properties.Resources.MessaBoxTittle, MessageBoxButtons.OK, MessageBoxIcon.Error); Application.Exit(); } }
public ActionResult Edit(int?idUsuario) { Usuario usuario = new Usuario { IdEmpresa = int.Parse(Session["IdEmpresa"].ToString()), IdUsuario = (int)idUsuario }; usuario = new UsuarioBo().Get(usuario); if (usuario != null) { return(View(usuario)); } return(new HttpNotFoundResult("Usuario não encontrado")); }
public ActionResult Relatorios(int?idUsuario) { Usuario usuario = new Usuario { IdEmpresa = int.Parse(Session["IdEmpresa"].ToString()), IdUsuario = (int)idUsuario }; usuario = new UsuarioBo().Get(usuario); if (usuario == null) { return(new HttpNotFoundResult("Usuario não encontrado")); } RelatorioPontoViewModel rel = new RelatorioPontoViewModel(); rel.Usuario = usuario; return(View(rel)); }
public FileStreamResult Pdf(List <Ponto> pontos) { MemoryStream workStream = new MemoryStream(); Document document = new Document(); PdfWriter.GetInstance(document, workStream).CloseStream = false; PdfPCell c = new PdfPCell(); PdfPTable t = new PdfPTable(2); document.Open(); //imagem var logoPontoMap = Server.MapPath("~/Content/Img/") + "pontomap.png"; var imgInstancia = Image.GetInstance(logoPontoMap); imgInstancia.Alignment = iTextSharp.text.Image.UNDERLYING; imgInstancia.ScaleAbsolute(100.0F, 70.0F); document.Add(imgInstancia); document.Add(new Paragraph(" ", FontFactory.GetFont("Arial", 14, iTextSharp.text.Font.BOLD, BaseColor.BLACK))); if (pontos.Count == 0) { Paragraph msgNaoHaRegistros = new Paragraph(" Não há registros para o intervalo de data selecionado.", FontFactory.GetFont("Arial", 14, iTextSharp.text.Font.BOLD, BaseColor.BLACK)); msgNaoHaRegistros.SpacingBefore = 100f; document.Add(msgNaoHaRegistros); } else { Usuario user = new UsuarioBo().Get(new Usuario { IdUsuario = pontos[0].IdUsuario, IdEmpresa = int.Parse(Session["IdEmpresa"].ToString()) }); t.TotalWidth = 144f; t.SpacingBefore = 100f; c = new PdfPCell(); c.AddElement(new Chunk("FUNCIONÁRIO: " + user.NmUsuario)); c.Colspan = 2; t.AddCell(c); } foreach (Ponto p in pontos) { c = new PdfPCell(); c.AddElement(new Chunk("Data do registro")); t.AddCell(c); c = new PdfPCell(); c.AddElement(new Chunk(p.DtRegistroString)); t.AddCell(c); } document.Add(t); document.Close(); byte[] byteInfo = workStream.ToArray(); workStream.Write(byteInfo, 0, byteInfo.Length); workStream.Position = 0; return(new FileStreamResult(workStream, "application/pdf")); }