Esempio n. 1
0
        public HttpResponseMessage AddRoom([FromBody] RoomsDetailsView roomsDetails)
        {
            try
            {
                //var jsonString = userNew.Content.ReadAsStringAsync().Result;
                // UserDetailsView user = JsonConvert.DeserializeObject<UserDetailsView>(userNew);
                RoomValidator    validator = new RoomValidator();
                ValidationResult results   = validator.Validate(roomsDetails);
                if (results.IsValid)
                {
                    RoomsServie roomsServie = new RoomsServie();
                    roomsServie.AddRoom(roomsDetails);
                    return(Request.CreateResponse(HttpStatusCode.OK));

                    //  return Ok();
                }
                else
                {
                    //List<string> errorlist = new List<string>();
                    //foreach (var value in results.Errors)
                    //{
                    //    errorlist.Add(value.ErrorMessage);
                    //}
                    return(Request.CreateResponse(HttpStatusCode.BadRequest));
                }
            }
            catch (HttpRequestException ex)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
                // throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.BadRequest,
                //                           badInputValidationException.Result));
                //Request.CreateErrorResponse(HttpStatusCode.NotFound, ex);
            }
        }
Esempio n. 2
0
        public IActionResult CreateRoom([FromBody] RoomDto roomDto)
        {
            var room = _mapper.Map <Room>(roomDto);
            var user = _userService.GetById(Int32.Parse(User.Identity.Name));

            if (user == null)
            {
                return(Unauthorized());
            }

            var validator = new RoomValidator();
            var result    = validator.Validate(roomDto);

            try
            {
                if (!result.IsValid)
                {
                    throw new ApplicationException(string.Join(",", result.Errors));
                }

                var returnedRoom = _roomService.Create(room, roomDto.Password);

                _userRoomService.Create(user, room, true);

                return(StatusCode(201, new
                {
                    returnedRoom.Id,
                    returnedRoom.Title
                }));
            }
            catch (ApplicationException ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Esempio n. 3
0
        public HttpResponseMessage Post([FromBody] RoomModel value)
        {
            ValidationResult roomValidation = roomValidator.Validate(value);

            if (roomValidation.IsValid)
            {
                try
                {
                    RoomDTO newRoom = toDtoMapper.Map <RoomModel, RoomDTO>(value);
                    roomService.Create(newRoom);
                }
                catch (RecordAlreadyExistsException e)
                {
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, e.Message));
                }

                return(Request.CreateResponse(HttpStatusCode.NoContent));
            }

            return(Request.CreateResponse(HttpStatusCode.BadRequest, roomValidation.GetErrorMessage()));
        }
Esempio n. 4
0
        public ActionResult Create(int roomNo, RoomType roomType, int maxNoOfCats, string user)
        {
            Room room = new Room()
            {
                RoomNo            = roomNo,
                RoomType          = roomType,
                MaxNoOfCatsInRoom = maxNoOfCats,
                UserId            = user
            };
            ValidationResult result = validator.Validate(room);

            if (!result.IsValid)
            {
                validator.ValidateAndThrow(room);
            }
            else if (ModelState.IsValid)
            {
                roomManager.Create(room);
                return(Ok(room));
            }//TODO: Exception message
            throw new DataException("error");
        }
Esempio n. 5
0
        public void FourChilderen_OneAdult()
        {
            //arrange
            var roomValidator = new RoomValidator();
            var guest         = new Guest();

            guest = new Guest {
                Adult = 1, Child = 4, Infant = 0
            };

            //Act

            var messages = roomValidator.Validate(guest);

            //assert
            bool result = messages.Any();

            Assert.IsTrue(result);
        }
Esempio n. 6
0
        public void ChildernMoreThanFive()
        {
            //arrange
            var roomValidator = new RoomValidator();
            var guest         = new Guest();

            guest = new Guest {
                Adult = 0, Child = 6, Infant = 0
            };

            //Act

            var messages = roomValidator.Validate(guest);

            //assert
            bool result = messages.Any();

            Assert.IsTrue(result);
        }
Esempio n. 7
0
        public void NoAdultPerBooking()
        {
            //arrange
            var roomValidator = new RoomValidator();
            var guest         = new Guest();

            guest = new Guest {
                Adult = 0, Child = 4, Infant = 2
            };

            //Act

            var messages = roomValidator.Validate(guest);

            //assert
            bool result = messages.Any();

            Assert.IsTrue(result);
        }
        private void SaveRoom()
        {
            RoomValidator validator = new RoomValidator();
            ValidationResult results = validator.Validate(_currentRoom);

            if (!results.IsValid)
            {
                foreach (var failure in results.Errors)
                {
                    Console.WriteLine("Property " + failure.PropertyName + " failed validation. Error was: " + failure.ErrorMessage);
                }
            }
            else
            {
                MessengerInstance.Send(new LoadingMessage("Saving room..."));

                Exception exceptionResult = null;
                BackgroundWorker worker = new BackgroundWorker();
                worker.DoWork += (object sender, DoWorkEventArgs e) =>
                {
                    if (_currentRoom.ID == 0)
                    {
                        _currentRoom.CreatedBy = StateManager.CurrentUser.ID;
                        _currentRoom.ModifiedBy = null;
                    }
                    else
                        _currentRoom.ModifiedBy = StateManager.CurrentUser.ID;

                    _currentRoom = _roomService.Save(_currentRoom);
                };

                worker.RunWorkerCompleted += (object sender, RunWorkerCompletedEventArgs e) =>
                {
                    RaisePropertyChanged("CurrentRoom");

                    MessengerInstance.Send(new NotificationMessage("RoomSaved"));

                    MessengerInstance.Send(new LoadingMessage(false));
                    Cancel();
                };
                worker.RunWorkerAsync();
            }
        }