public HttpResponseMessage SearchEmployees(IncomingHotelUserSearch userQuery) { return(ErrorFactory.Handle(() => { var userId = User?.Identity?.GetUserId(); if (userId == null) { throw new Exception("User not found."); } if (userQuery == null) { throw new InvalidModelException("hotelQuery cannot be null"); } using (var unitOfWork = new UnitOfWork()) { var hotels = unitOfWork.Hotels.SearchHotelUsers(userId, userQuery.HotelId, userQuery.Query, userQuery.StartsWith, userQuery.NumberToGet); var outgoingHotels = hotels.ToList().Select(x => OutgoingHotelUser.Parse(x)).ToList(); return JsonFactory.CreateJsonMessage(outgoingHotels, HttpStatusCode.OK, this.Request); } }, this.Request)); }
public HttpResponseMessage GetUserInHotel(int hotelId, string userIdToGet) { return(ErrorFactory.Handle(() => { var userId = User?.Identity?.GetUserId(); if (string.IsNullOrWhiteSpace(userId)) { throw new Exception(); } using (var unitOfWork = new UnitOfWork()) { var user = unitOfWork.Hotels.GetHotelUser(userId, hotelId, userIdToGet); var outgoingUser = OutgoingHotelUser.Parse(user); return JsonFactory.CreateJsonMessage(outgoingUser, HttpStatusCode.OK, this.Request); } }, this.Request)); }
public HttpResponseMessage AddPermissionsForUser(IncomingHotelPermissionsChange userToChange) { return(ErrorFactory.Handle(() => { var userId = User?.Identity?.GetUserId(); if (userId == null) { throw new Exception("User not found."); } using (var unitOfWork = new UnitOfWork()) { var user = unitOfWork.Hotels.AddUserPermissionsInHotel(userId, userToChange.UserIdToChange, userToChange.HotelId, userToChange.PermissionsId); unitOfWork.Complete(); var outgoinguser = OutgoingHotelUser.Parse(user); return JsonFactory.CreateJsonMessage(outgoinguser, HttpStatusCode.OK, this.Request); } }, this.Request)); }