public IHttpActionResult PostLogin(UserModel user)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            UserModel userModel = null;

            using (Room_ManagmentEntities db = new Room_ManagmentEntities())
            {
                var validUser = db.Users.Where(i => i.Login == user.Login && i.Password == user.Password).FirstOrDefault();
                if (validUser == null)
                {
                    return(BadRequest("Not a valid request"));
                }
                else
                {
                    userModel = new UserModel
                    {
                        IsAdmin  = validUser.IsAdmin.HasValue ? validUser.IsAdmin.Value : false,
                        Login    = validUser.Login,
                        Password = validUser.Password,
                        UserId   = validUser.UserId,
                        UserName = validUser.UserName
                    };
                }
            }
            return(Ok(userModel));
        }
        /// <summary>
        /// Saves the guest collection into db context.
        /// </summary>
        /// <param name="value">Guest collection from UI</param>
        /// <returns>Action result.</returns>
        public IHttpActionResult PostGuest(IEnumerable <GuestModel> value)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("Not a valid data."));
            }

            using (var dbContenxt = new Room_ManagmentEntities())
            {
                foreach (var item in value)
                {
                    dbContenxt.Guests.Add(new Guest
                    {
                        Age          = item.Age,
                        CheckInDate  = item.CheckInDate,
                        CheckOutDate = item.CheckOutDate,
                        GuestName    = item.GuestName,
                        RoomId       = item.RoomId,
                        Sex          = item.Sex
                    });
                }
                dbContenxt.SaveChanges();
            }
            return(Ok());
        }
        /// <summary>
        /// Gets the collection of guest based on incoming room id.
        /// </summary>
        /// <param name="id">Room Identity</param>
        /// <returns>Collection of guest as action result.</returns>
        public IHttpActionResult GetGuest(int id)
        {
            IEnumerable <GuestModel> guests = null;

            if (id <= 0)
            {
                return(BadRequest("Not a valid room id"));
            }

            using (var dbContext = new Room_ManagmentEntities())
            {
                var guest = dbContext.Guests.Where(i => i.RoomId == id);
                if (guest != null)
                {
                    guests = guest.Where(i => i.CheckOutDate > DateTime.Now).Select(s => new GuestModel
                    {
                        Age          = s.Age.HasValue ? s.Age.Value : 0,
                        GuestId      = s.GuestId,
                        GuestName    = s.GuestName,
                        RoomId       = s.RoomId,
                        Sex          = s.Sex,
                        CheckInDate  = s.CheckInDate,
                        CheckOutDate = s.CheckOutDate
                    }).ToList <GuestModel>();
                }
                else
                {
                    return(NotFound());
                }
            }
            return(Ok(guests));
        }
Пример #4
0
        /// <summary>
        /// Gets the collection of user.
        /// </summary>
        public IHttpActionResult GetUsers()
        {
            IEnumerable <UserModel> users = null;

            using (Room_ManagmentEntities db = new Room_ManagmentEntities())
            {
                users = db.Users.Select(s => new UserModel
                {
                    IsAdmin  = s.IsAdmin.HasValue ? s.IsAdmin.Value : false,
                    Login    = s.Login,
                    Password = s.Password,
                    UserId   = s.UserId,
                    UserName = s.UserName
                }).ToList <UserModel>();
            }
            return(Ok(users));
        }
        /// <summary>
        /// Get room collection based on location.
        /// </summary>
        /// <param name="location">selected location in ui.</param>
        /// <returns>Room collection as Action Result.</returns>
        public IHttpActionResult GetRoom(string location)
        {
            IEnumerable <RoomModel> rooms = null;

            using (var dbContext = new Room_ManagmentEntities())
            {
                rooms = dbContext.Rooms.Where(i => i.Location == location).Select(s => new RoomModel
                {
                    Address  = s.Address,
                    Capacity = s.Capacity.HasValue ? s.Capacity.Value : 0,
                    Location = s.Location,
                    RoomId   = s.RoomId,
                    RoomName = s.RoomName,
                    Status   = dbContext.Guests.Count(j => j.RoomId == s.RoomId && j.CheckOutDate > DateTime.Now) < (s.Capacity.HasValue ? s.Capacity.Value : 0)
                }).ToList <RoomModel>();
            }
            return(Ok(rooms));
        }
        /// <summary>
        /// Gets the collection of guest from database context.
        /// </summary>
        /// <returns>Collection of guest as action result.</returns>
        public IHttpActionResult GetGuest()
        {
            IEnumerable <GuestModel> guests = null;

            using (var dbContext = new Room_ManagmentEntities())
            {
                guests = dbContext.Guests.Select(s => new GuestModel
                {
                    Age          = s.Age.HasValue ? s.Age.Value : 0,
                    GuestId      = s.GuestId,
                    GuestName    = s.GuestName,
                    RoomId       = s.RoomId,
                    Sex          = s.Sex,
                    CheckInDate  = s.CheckInDate,
                    CheckOutDate = s.CheckOutDate
                }).ToList <GuestModel>();
            }
            return(Ok(guests));
        }
 /// <summary>
 /// Updates the incoming guest value based on identity value.
 /// </summary>
 public IHttpActionResult PutGuest(int id, GuestModel value)
 {
     if (id <= 0)
     {
         return(BadRequest("Not a valid room id"));
     }
     using (var dbContext = new Room_ManagmentEntities())
     {
         var room = dbContext.Guests.Where(i => i.RoomId == id).FirstOrDefault();
         if (room != null)
         {
             dbContext.SaveChanges();
         }
         else
         {
             return(NotFound());
         }
     }
     return(Ok());
 }
        /// <summary>
        /// Inserts the room details into the db context.
        /// </summary>
        public IHttpActionResult PostRoom(RoomModel value)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("Not a valid data."));
            }

            using (var dbContext = new Room_ManagmentEntities())
            {
                dbContext.Rooms.Add(new Room
                {
                    Address  = value.Address,
                    Capacity = value.Capacity,
                    Location = value.Location,
                    RoomName = value.RoomName,
                    Status   = true
                });
                dbContext.SaveChanges();
            }
            return(Ok());
        }
        /// <summary>
        /// Deletes the room based on incoming id.
        /// </summary>
        /// <param name="id">Identity value of the room to be deleted in db context.</param>
        /// <returns>Http Action Result</returns>
        public IHttpActionResult DeleteRoom(int id)
        {
            if (id <= 0)
            {
                return(BadRequest("Not a valid room id"));
            }

            using (var dbContext = new Room_ManagmentEntities())
            {
                var room = dbContext.Rooms.Where(i => i.RoomId == id).FirstOrDefault();
                if (room != null)
                {
                    dbContext.Entry(room).State = System.Data.Entity.EntityState.Deleted;
                    dbContext.SaveChanges();
                }
                else
                {
                    return(NotFound());
                }
            }
            return(Ok());
        }
Пример #10
0
        public IHttpActionResult PostUser(UserModel user)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            UserModel userModel = null;

            using (Room_ManagmentEntities db = new Room_ManagmentEntities())
            {
                bool isAdmin = !(db.Users.Count() > 0);
                db.Users.Add(new Models.User
                {
                    IsAdmin     = isAdmin,
                    Login       = user.Login,
                    Password    = user.Password,
                    CreatedDate = DateTime.Now,
                    UserName    = user.UserName
                });
                db.SaveChanges();
            }
            return(Ok(userModel));
        }