public async Task <string> AcceptAsync(string id) { var request = await this.requestRepo.GetAsync(id); var role = (await this.roleRepo.GetAllAsync()).FirstOrDefault(r => r.Name == request.Role); var user = await this.userRepo.GetAsync(request.UserId); var hotelRole = (await this.hotelRoleRepo.GetAllAsync()).FirstOrDefault(hr => hr.HotelId == request.HotelId && hr.Role.Name == request.Role); var userHotelRole = new UserHotelRole() { UserId = request.UserId, HotelRoleId = hotelRole.Id, }; await this.userManager.AddToRoleAsync(user, role.Name); await this.userHotelRoleRepo.AddAsync(userHotelRole); await this.userHotelRoleRepo.SaveChangesAsync(); this.requestRepo.Delete(request); await this.requestRepo.SaveChangesAsync(); return(request.HotelId + " Manager"); }
private async Task AddGuestToRoleAsync(ApplicationUser guest) { var hotelRole = (await this.hotelRoleRepo.GetAllAsync()) .FirstOrDefault(hr => hr.HotelId == this.hotelId && hr.Role.Name == "Guest"); var userHotelRole = new UserHotelRole() { UserId = guest.Id, HotelRoleId = hotelRole.Id, }; await this.userHotelRoleRepo.AddAsync(userHotelRole); await this.userHotelRoleRepo.SaveChangesAsync(); }