//este método es para poder verlo en una página razor por tanto me hace falta trabajar con los model public async Task <List <InputModelRegistrar> > GetUsuariosAsync(String valor) { List <ApplicationUser> Users; Users = _context.Users.ToList(); //lista de la tabla AspNetUsers List <ApplicationUser> ListUsers; //lista de la tabla Usuarios List <Usuarios> ListUsuarios; ListUsuarios = _context.Usuarios.ToList(); if (valor != null) { //Listar los usuarios de la tabla AspNetUsers ListUsers = Users.Where(u => u.Email.StartsWith(valor) || u.UserName.StartsWith(valor) || u.PhoneNumber.StartsWith(valor)).ToList(); //relacionar el email con el Id var user = ListUsers.First(); var usuario = ListUsuarios.Where(u => u.ApplicationUserId == user.Id); //parts.Find(x => x.PartName.Contains("seat"))); //coger el ID del usuario para añadir los datos de ese usuario en donde corresponde } else { ListUsers = _context.Users.ToList(); ListUsuarios = _context.Usuarios.ToList(); } //lista de usuarios además utilizando datos de la otra tabla List <InputModelRegistrar> userList = new List <InputModelRegistrar>(); foreach (var item in ListUsers) { userList.Add(new InputModelRegistrar { Email = item.Email, PhoneNumber = item.PhoneNumber, }); } foreach (var item in ListUsuarios) { _userRoles = await _usersRole.GetRole(_userManager, _roleManager, item.ApplicationUserId); userList.Add(new InputModelRegistrar { Nombre = item.Nombre, Apellido = item.Apellido, DNI = item.DNI, Imagen = item.Imagen }); } return(userList); }
private void DeleteUserMethod() { string login = SelectedUser.login; if (Users.DeleteUser(login)) { var msg = Utils.Utils.createMessageBox("L'utilisateur " + login + " a été supprimé avec succès !"); msg.Show(); ListUsers.Remove(ListUsers.Where(i => i.login == login).Single()); SelectedUser = ListUsers.First(); } else { MaterialMessageBox.ShowError("L'utilisateur " + login + " n'a pas put être supprimé Réessayez plus tard !"); } }
public MainViewModel() { initCharts(); DeleteUserCommand = new RelayCommand(DeleteUserMethod); NewUserCommand = new RelayCommand(NewUserMethod); NewObsCommand = new RelayCommand(NewObsMethod); DeletePatientCommand = new RelayCommand(DeletePatientMethod); NewPatientCommand = new RelayCommand(NewPatientMethod); DisconnectCommand = new RelayCommand(DisconnectMethod); RefreshPatientList = new RelayCommand(RefreshPatientListMethod); RefreshUserList = new RelayCommand(RefreshUserListMethod); _worker.DoWork += new DoWorkEventHandler((s, e) => { ListUsers = Users.GetAllUsers(); CurrUser = Users.GetUser(CurrUserLogin); SelectedUser = ListUsers.First(); FullListUser = new ObservableCollection <User>(ListUsers); setVisibility(CurrUserLogin); }); _worker.RunWorkerAsync(); _workerPatients.RunWorkerCompleted += new RunWorkerCompletedEventHandler((e, s) => { SelectedPatient = PatientList.Count > 0 ? PatientList.Last() : null; } ); _workerPatients.DoWork += new DoWorkEventHandler((s, e) => { PatientList = Patients.GetAllPatients(); FullListPatient = new ObservableCollection <Patient>(PatientList); }); _workerPatients.RunWorkerAsync(); _searchUserWorker.DoWork += new DoWorkEventHandler((e, s) => { DoWorkSearchUser(SearchBoxTextUser); }); _searchPatientWorker.DoWork += new DoWorkEventHandler((e, s) => { DoWorkSearchPatient(SearchBoxTextPatient); }); }
//este método es para poder verlo en una página razor por tanto me hace falta trabajar con los model public async Task <List <InputModelRegistrar> > GetUsuariosAsync(String valor) { int id = 0; List <ApplicationUser> Users; Users = _context.Users.ToList(); string imagen = "default.png"; //lista de la tabla AspNetUsers List <ApplicationUser> ListUsers; IEnumerable <InputModelRegistrar> imageUsers; string rootFolder = Directory.GetCurrentDirectory(); string imageDefault = "default.png"; //lista de la tabla Usuarios //List<Usuarios> ListUsuarios; //ListUsuarios = _context.Usuarios.ToList(); if (valor != null) { //Listar los usuarios de la tabla AspNetUsers ListUsers = Users.Where(u => u.Email.StartsWith(valor) || u.UserName.StartsWith(valor) || u.PhoneNumber.StartsWith(valor)).ToList(); //relacionar el email con el Id var user = ListUsers.First(); //var usuario = ListUsuarios.Where(u => u.ApplicationUserId == user.Id); //parts.Find(x => x.PartName.Contains("seat"))); //coger el ID del usuario para añadir los datos de ese usuario en donde corresponde } else { ListUsers = _context.Users.ToList(); //ListUsuarios = _context.Usuarios.ToList(); } //viendo como lo voy a hacer la programación //lista de usuarios además utilizando datos de la otra tabla //userList es la tabla de usuarios Users List <InputModelRegistrar> userList = new List <InputModelRegistrar>(); //List<InputModelRegistrar> listUser = new List<InputModelRegistrar>(); /* * var users = * from ListUsers0 in ListUsers * join ListUsuarios0 in ListUsuarios on ListUsers0.Id equals ListUsuarios0.ApplicationUserId * select ListUsuarios0;*/ //Usuarios de AspnetUsers /* * var usersA = * from ListUsers0 in ListUsers * join ListUsuarios0 in ListUsuarios on ListUsers0.Id equals ListUsuarios0.ApplicationUserId * select ListUsers0; */ /*var users0 = * //AU es AspnetUsers * from AU in ListUsers * from Usuarios in ListUsuarios * where Usuarios.ApplicationUserId != AU.Id * select AU; */ //Usuarios que no esta relacionado con la tabla Usuarios foreach (var item in ListUsers) { var role = _usersRole.GetRole(_userManager, _roleManager, item.Id); if (item.Imagen != null) { item.Imagen = Path.Combine(rootFolder + "wwwroot\\images\\fotos\\" + item.Imagen); userList.Add(new InputModelRegistrar { Email = item.Email, Imagen = item.Imagen, Role = role.Result[0].Text, }); } else { userList.Add(new InputModelRegistrar { Email = item.Email, Imagen = Path.Combine(rootFolder + "wwwroot\\images\\fotos\\" + imageDefault), Role = role.Result[0].Text, }); } } /* * foreach (var item in users) * { * var role = _usersRole.GetRole(_userManager, _roleManager, item.ID); * var email = ListUsers.Where(u => u.Id == item.ApplicationUserId); * * //IEnumerable<InputModelRegistrar> Users0 = userList.Where(user => user.Id == ApplicationUserId); * //userList.Where(user => user.Id == applicationUserId); * //como relleno los datos de userList * userList.Add(new InputModelRegistrar * { * * Email = email.ElementAt(0).Email, * Imagen = item.Imagen, * Role = item.Role, * }); * } */ /* * foreach (var item in userLista) * { * if (item.Imagen == null) * { * item.Imagen = "default.png"; * } * } */ //aqui es donde vamos a realizar la comprobación por Id de usuario return(userList); }