public PersonCreationView() { InitializeComponent(); DataContext = new PersonCreationViewModel(); }
// var result = await UserHelper.AddFullUserAsync(vm, "824455", owner, "images", "Employees", userConected); public async Task <PersonCreationViewModel> AddFullUserAsync(UsersViewModel vm, string password, Owner owner, string rootFolder, string folder, ApplicationUser userConected) { var newUser = ApplicationUser.Create(owner, vm.Name, vm.Address, vm.PhoneNumber, vm.Email, vm.Nickname, vm.IsAdmin, vm.IsSupervisor, true, vm.IsSeller); try { var result = await AddUserAsync(newUser, password); if (result != IdentityResult.Success) { return(new PersonCreationViewModel { Success = false }); } await AddClaim(newUser, new Claim("OwnerId", owner.Id.ToString())); // await UserHelper.AddClaim(user, new Claim("ShopId", shop.Id.ToString())); await AddUserToRoleAsync(newUser, "User"); // var path = string.Empty; if (vm.ImageFile != null) { path = FileHelper.UploadFile(vm.ImageFile, path, rootFolder, folder, ref owner); _context.Update(owner); } vm.Imagen = path; if (vm.IsAdmin) { await CheckRoleAsync("Admin"); await AddUserToRoleAsync(newUser, "Admin"); } if (vm.IsSeller) { await CheckRoleAsync("Seller"); await AddUserToRoleAsync(newUser, "Seller"); } if (vm.IsSupervisor) { await CheckRoleAsync("Supervisor"); await AddUserToRoleAsync(newUser, "Supervisor"); } await _context.SaveChangesAsync(); var perView = new PersonCreationViewModel { Success = true }; return(perView); } catch (Exception) { return(new PersonCreationViewModel { Success = false }); } }