Example #1
0
        public ActionResult <RoomResponse> CreateRoom([FromBody] RoomCreateInput roomInput)
        {
            if (roomInput == null)
            {
                return(BadRequest("Wrong input parameters"));
            }
            if (roomInput.Number == default)
            {
                return(BadRequest("Room Number required"));
            }
            if (roomInput.RoomType == default)
            {
                return(BadRequest("Room Type required"));
            }
            if (roomInput.Capacity == default)
            {
                return(BadRequest("Room Capacity required"));
            }

            var roomResponse = new CreateRoomCommand(roomInput)
                               .InTransactionScope()
                               .Execute(_roomRepository);

            var selfLink = GetRoomSelfLinkById(roomResponse.Id.Value);

            return(Created(selfLink.Rel, roomResponse.WithLinks(selfLink)));
        }
Example #2
0
		public CreateRoomCommand(RoomCreateInput roomInput)
		{
			Guard.IsNotNull(roomInput, nameof(roomInput));
			_roomInput = roomInput;
		}