//[Authorize(Roles = "Admin")] public async Task <bool> AgregarRoleUsuario(UsuarioRole ur) { try { var role = await roleManager.FindByNameAsync(ur.Role); if (role == null) { throw new Exception("El Role no existe"); } var user = await userManager.FindByNameAsync(ur.Username); if (user == null) { throw new Exception("El Usuario no existe"); } var result = await userManager.AddToRoleAsync(user, ur.Role); if (result.Succeeded) { return(true); } return(false); } catch (Exception e) { throw e; } }
public string getNome(string id) { UsuarioRole ur = db.UsuarioRole.SingleOrDefault(x => x.UserId == id); if (ur != null) { switch (ur.RoleId) { case "0": return("Administrador"); case "1": return(db.Clientes.Find(id).nome); case "2": return(db.Cooperativas.Find(id).razaoSocial); case "3": return(db.Empresas.Find(id).razaoSocial); case "4": return(db.Funcionarios.Find(id).nome); default: return("Usuário"); } } return("Usuário"); }
public UsuariosController(ApplicationDbContext context, UserManager <ApplicationUser> userManager, RoleManager <IdentityRole> roleManager) { _context = context; _userManager = userManager; _roleManager = roleManager; _usuarioRole = new UsuarioRole(); usuarioRole = new List <SelectListItem>(); }
private Usuario(string nome, string email, double latitude, double longitude, UsuarioRole role) { Nome = nome; Email = email; Latitude = latitude; Longitude = longitude; Role = role; }
public async Task <IActionResult> Eliminar([FromBody] UsuarioRole itemN) { //buscar la UsuarioRole var itemEncontrado = await this.Repositorio.UsuarioRoles.FindAsync(x => x.UsuarioId == itemN.UsuarioId && x.RoleId == itemN.RoleId); if (itemEncontrado == null) { return(BadRequest(new { ok = false, mensaje = $"No se encontró el UsuarioRole con Id {itemN.RoleId}", erros = "" })); } // borrado fisico this.Repositorio.UsuarioRoles.RemoveRange(itemEncontrado); await this.Repositorio.CompleteAsync(); #region REMUEVE MODULOS DEFAULT //Asignar los modulos default del role var listaModulos = await this.Repositorio.RoleModulosDefault.FindAsync(x => x.RoleId == itemN.RoleId); if (listaModulos.Any()) { var arrayMod = listaModulos.FirstOrDefault().Modulos.Split(','); if (arrayMod.Length > 0) { List <UsuarioModulo> listaUM = new List <UsuarioModulo>(); foreach (var key in arrayMod) { UsuarioModulo itum = new UsuarioModulo() { UsuarioId = itemN.UsuarioId, ModuloId = Int32.Parse(key) }; } if (listaUM.Any()) { this.Repositorio.UsuarioModulos.RemoveRange(listaUM); await this.Repositorio.CompleteAsync(); } } } #endregion var obj = new { ok = true, mensaje = $"Se Borró el UsuarioRole {itemN.RoleId}, correctamente", UsuarioRole = itemEncontrado }; return(Ok(obj)); }
public string getRoles(string id) { UsuarioRole ur = db.UsuarioRole.SingleOrDefault(x => x.UserId == id); return(ur != null && ur.RoleId == "0" ? "Admin" : ur != null && ur.RoleId == "1" ? "Cliente" : ur != null && ur.RoleId == "2" ? "Cooperativa" : ur != null && ur.RoleId == "3" ? "Empresa" : ur != null && ur.RoleId == "4" ? "Funcionario" : " "); }
public async Task <ActionResult> RegisterFuncionario(RegFuncionarioViewModel model) { if (ModelState.IsValid) { var user = new ApplicationUser { UserName = model.email, Email = model.email, ativo = true, dataCadastro = DateTime.Now }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { string idCoop = User.Identity.GetUserId(); Funcionarios f = new Funcionarios() { funcionarioId = user.Id, cooperativaId = idCoop, nome = model.nome, dataNascimento = model.dataNascimento }; Roles r = db.Roles.Find("4"); if (r == null) { r = new Roles(); r.Id = "4"; r.Name = "Funcionario"; db.Roles.Add(r); } UsuarioRole ur = new UsuarioRole(); ur.UserId = user.Id; ur.RoleId = "4"; db.UsuarioRole.Add(ur); db.Funcionarios.Add(f); db.SaveChanges(); return(RedirectToAction("Funcionarios", "Cooperativas")); } else { ViewBag.UsuarioExiste = "E-mail já cadastrado!"; } } return(View(model)); }
public ActionResult DeleteFuncionario(string id) { Funcionarios f = db.Funcionarios.Find(id); Usuarios u = db.Usuarios.Find(id); UsuarioRole ur = db.UsuarioRole.Where(x => x.UserId == id).SingleOrDefault(); db.Funcionarios.Remove(f); db.Usuarios.Remove(u); db.UsuarioRole.Remove(ur); db.SaveChanges(); return(RedirectToAction("Funcionarios", "Cooperativas")); }
public Result <UsuarioRole> InsUsuarioRole(UsuarioRole role) { var result = new Result <UsuarioRole>(); try { using (var connection = _dapperAdapter.Open()) { role.Id = connection.Insert(role); result.Success = true; } } catch (Exception ex) { result.Message = "Error insertando rol a usuario."; result.Exception = ex; } return(result); }
public Result <Nothing> DelUsuarioRole(UsuarioRole role) { var result = new Result <Nothing>(); try { using (var connection = _dapperAdapter.Open()) { connection.Execute("delete from SEG.UsuariosRoles where RoleId = @RoleId and UsuarioId = @UsuarioId", role); } result.Success = true; } catch (Exception ex) { result.Message = "Error borrando rol a usuario."; result.Exception = ex; } return(result); }
public static Usuario Criar(string nome, string email, double latitude, double longitude, UsuarioRole role) { return(new Usuario(nome, email, latitude, longitude, role)); }
public static void Map(this UsuarioRole itemDb, UsuarioRole itemNuevo) { itemDb.UsuarioId = itemNuevo.UsuarioId; itemDb.RoleId = itemNuevo.RoleId; }
public async Task <IActionResult> Crear([FromBody] UsuarioRole item) { try { var r = await this.Repositorio.UsuarioRoles.AddAsync(item); await this.Repositorio.CompleteAsync(); #region ASIGNAR MODULOS DEFAULT //Asignar los modulos default del role var listaModulos = await this.Repositorio.RoleModulosDefault.FindAsync(x => x.RoleId == item.RoleId); if (listaModulos.Any()) { var arrayMod = listaModulos.FirstOrDefault().Modulos.Split(','); if (arrayMod.Length > 0) { List <UsuarioModulo> listaUM = new List <UsuarioModulo>(); foreach (var key in arrayMod) { UsuarioModulo itum = new UsuarioModulo() { UsuarioId = item.UsuarioId, ModuloId = Int32.Parse(key) }; listaUM.Add(itum); } if (listaUM.Any()) { await this.Repositorio.UsuarioModulos.AddRangeAsync(listaUM); await this.Repositorio.CompleteAsync(); } } } #endregion var obj = new { ok = true, UsuarioRole = r }; return(Created("", obj)); } catch (Exception ex) { return(BadRequest(new { ok = false, mensaje = "Se produjo un error al crear la UsuarioRole", errors = new { mensaje = ex.Message } })); } }
public async Task <ActionResult> RegisterCooperativa(RegisterCooperativaViewModel model) { if (ModelState.IsValid) { var user = new ApplicationUser { UserName = model.email, Email = model.email, ativo = true, dataCadastro = DateTime.Now }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { //await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); NetGoogleGeocoding geoCoder = new NetGoogleGeocoding(); string endereco = model.endereco + ", " + model.numero; string enderecoConsulta = endereco + " - " + model.cidade + " - " + model.estado; Cooperativas c = new Cooperativas(); c.cooperativaId = user.Id; c.cnpj = model.cnpj; c.razaoSocial = model.razaoSocial; c.endereco = endereco; c.cidade = model.cidade; c.estado = model.estado; try { var response = geoCoder.GoogleGeocode(enderecoConsulta).GeoCodes[0]; if (response != null) { c.enderecoCoordenada = geoCoder.ConvertLatLonToDbGeometry(response.Longitude, response.Latitude); } else { c.enderecoCoordenada = null; } } catch (Exception) { c.enderecoCoordenada = null; } Roles r = db.Roles.Find("2"); if (r == null) { r = new Roles(); r.Id = "2"; r.Name = "Cooperativa"; db.Roles.Add(r); } UsuarioRole ur = new UsuarioRole(); ur.UserId = user.Id; ur.RoleId = "2"; db.UsuarioRole.Add(ur); db.Cooperativas.Add(c); db.SaveChanges(); LoginViewModel lvm = new LoginViewModel() { Email = model.email, Password = model.Password, RememberMe = false }; return(await Login(lvm, null)); } AddErrors(result); } ViewBag.retorno = @Url.Action("Login", "Account"); return(View(model)); }
public async Task <ActionResult> RegisterCliente(RegisterClienteViewModel model) { if (ModelState.IsValid) { var user = new ApplicationUser { UserName = model.email, Email = model.email, ativo = true, dataCadastro = DateTime.Now }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { //await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); NetGoogleGeocoding geoCoder = new NetGoogleGeocoding(); string endereco = model.endereco + ", " + model.numero; string enderecoConsulta = endereco + " - " + model.cidade + " - " + model.estado; Clientes c = new Clientes(); c.clienteId = user.Id; //c.cpf = model.cpf.Replace(".", "").Replace("-", ""); // Se Habilitar o cadastro com CPF, descomente está linha c.tipo = model.tipo.ToString(); c.nome = model.nome; c.endereco = enderecoConsulta; c.email = model.email; c.sexo = model.sexo.ToString(); c.dataNascimento = model.dataNascimento; if (model.telefone != null) { c.telefone = model.telefone.Replace("(", "").Replace(")", "").Replace("-", "").Replace(" ", ""); // adicionei o Replace (Teste) - Titans } c.celular = model.celular.Replace("(", "").Replace(")", "").Replace("-", "").Replace(" ", ""); // adicionei o Replace (Teste) - Titans c.cooperativaId = model.cooperativaId; try { var response = geoCoder.GoogleGeocode(enderecoConsulta).GeoCodes[0]; if (response != null) { c.enderecoCoordenada = geoCoder.ConvertLatLonToDbGeometry(response.Longitude, response.Latitude); } else { c.enderecoCoordenada = null; } } catch (Exception) { c.enderecoCoordenada = null; } Roles r = db.Roles.Find("1"); if (r == null) { r = new Roles(); r.Id = "1"; r.Name = "Cliente"; db.Roles.Add(r); } UsuarioRole ur = new UsuarioRole(); ur.UserId = user.Id; ur.RoleId = "1"; db.UsuarioRole.Add(ur); db.Clientes.Add(c); db.SaveChanges(); LoginViewModel lvm = new LoginViewModel() { Email = model.email, Password = model.Password, RememberMe = false }; return(await Login(lvm, null)); } AddErrors(result); } #region ValidaçãoFalha var SexoList = new List <dynamic>(); SexoList.Add(new { Id = "M", Text = "Masculino" }); SexoList.Add(new { Id = "F", Text = "Feminino" }); ViewBag.sexo = new SelectList(SexoList, "Id", "Text"); var TipoList = new List <dynamic>(); TipoList.Add(new { Id = "D", Text = "Doador" }); TipoList.Add(new { Id = "V", Text = "Vendedor" }); ViewBag.tipo = new SelectList(TipoList, "Id", "Text"); var EstadoList = new List <dynamic>(); EstadoList.Add(new { Id = "SE", Text = "Sergipe" }); EstadoList.Add(new { Id = "BA", Text = "Bahia" }); ViewBag.estado = new SelectList(EstadoList, "Id", "Text"); ViewBag.cooperativas = new SelectList(db.Cooperativas, "cooperativaId", "cnpj", model.cooperativaId); ViewBag.retorno = @Url.Action("Login", "Account"); #endregion return(View(model)); }