public async Task <IActionResult> PutUser(string id, User user) { if (id != user.SubjectId) { return(BadRequest()); } _context.Entry(user).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!UserExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <IActionResult> Register([FromBody] User credentials) { var user = new IdentityUser { UserName = credentials.Email, Email = credentials.Email }; try { var result = await userManager.CreateAsync(user, credentials.Password); if (!result.Succeeded) { return(BadRequest(result.Errors)); } await signInManager.SignInAsync(user, isPersistent : false); _context.User.Add(credentials); await _context.SaveChangesAsync(); return(Ok(CreateToken(user))); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public async Task ApprovePendingReportingManagerRequests( ApproveReportingManagerPendingRequest request) { var pendingRequest = await _context.ReportingManagerRequests .Where(x => x.RequestStatus == false && x.ReportingManagerRequestId == request.ReportingManagerRequestId) .SingleOrDefaultAsync(); if (null != pendingRequest) { var user = await _userContext.Users.FirstOrDefaultAsync(x => x.Email == request.ReportedUserEmail); if (null != user) { user.ReportingManagerId = request.NewReportingManagerId; pendingRequest.RequestStatus = true; await _userContext.SaveChangesAsync(); await _context.SaveChangesAsync(); } } }
public async Task DeleteDepartment(int departmentId) { var existingDepartment = await _context.Departments.SingleOrDefaultAsync(r => r.Id == departmentId); if (null != existingDepartment) { _context.Remove(existingDepartment); await _context.SaveChangesAsync(); } var departmentUsers = await _userContext.Users.Where(x => x.DepartmentId == departmentId).ToListAsync(); if (departmentUsers.Any()) { foreach (var departmentUser in departmentUsers) { departmentUser.DepartmentId = 0; } await _userContext.SaveChangesAsync(); } }
public async Task DeleteRole(int roleId) { var existingRole = await _context.Roles.SingleOrDefaultAsync(r => r.RoleId == roleId); if (null != existingRole) { _context.Remove(existingRole); await _context.SaveChangesAsync(); } var userBelongingToRole = await _userContext.Users.Where(x => x.RoleId == roleId).ToListAsync(); if (userBelongingToRole.Any()) { foreach (var roleUser in userBelongingToRole) { roleUser.RoleId = 0; } await _userContext.SaveChangesAsync(); } }
public static async Task Initial(IServiceProvider provider) { UserIdentityDbContext context = provider.GetRequiredService <UserIdentityDbContext>(); Encryptor encryptor = new Encryptor(); if (!context.Users.Any()) { for (int i = 0; i < 20; i++) { string salt = SaltGenerator.GenerateSalt(); UserIdentity user = new UserIdentity() { UserName = $"User{i+1}", Password = encryptor.Encrypt($"User{i+1}", salt), Salt = salt, Id = i + 1, Email = $"User{i + 1}@cnblog.com" }; await context.Users.AddAsync(user); await context.SaveChangesAsync(); } } }