public ActionResult Create(BoatRegistrationViewModel boatRegistrationViewModel) //TODO kolla i databas om det sparas { try { BoatDTO boat = new BoatDTO(boatRegistrationViewModel.SailNo, boatRegistrationViewModel.Name, boatRegistrationViewModel.Type, boatRegistrationViewModel.Handicap); var mapperConfig = new MapperConfiguration(cfg => cfg.CreateMap <BoatRegistrationViewModel, BoatDTO>()); var mapper = mapperConfig.CreateMapper(); mapper.Map(boatRegistrationViewModel, boat); UserDTO user; using (var userService = new UserService()) { var loginUser = Session["Login"].ToString(); user = userService.EagerDisconnectedService.FindBy(u => u.Login == loginUser).First(); } using (var boatService = new BoatService()) { boatService.EagerDisconnectedService.Add(user, boat); } return(RedirectToAction("Index")); } catch (Exception e) { TempData["ResultMessage"] = e.Message; return(View("Error")); } }
public HttpResponseMessage AddBoat([FromBody] Boat boat) { //Gets the user from token var token = Request.Headers.Authorization.Parameter; User sender = UserUtility.GetUserByToken(token); CustomResponse response; //Controls whether the user is leader or not if (sender.team == null || sender.team.leaderId != sender.id) { response = ResponseMessageHelper.CreateResponse(HttpStatusCode.Unauthorized, true, HttpStatusCode.Unauthorized, ConstantResponse.TEAM_BOAT_FAILED); return(Request.CreateResponse(HttpStatusCode.Unauthorized, response)); } //Controls whether the users'team has already had a boat or not else if (sender.team.boat != null) { response = ResponseMessageHelper.CreateResponse(HttpStatusCode.BadRequest, true, HttpStatusCode.BadRequest, ConstantResponse.TEAM_BOAT_ALREADY_HAVE_BOAT); return(Request.CreateResponse(HttpStatusCode.BadRequest, response)); } //Adds the boat to the team Boat addedBoat = _repository.AddBoat(sender.id, boat); //Maps the added boat to the its DTO BoatDTO boatDTO = GenericMapper.MapToBoatDTO(addedBoat); response = ResponseMessageHelper.CreateResponse(HttpStatusCode.OK, false, boatDTO, ConstantResponse.TEAM_BOAT_SUCCESS); return(Request.CreateResponse <CustomResponse>(HttpStatusCode.OK, response)); }
public static IBoat MappFrom(BoatDTO boat) { BoatModel boatModel = new BoatModel(); SetCommonDboProperties(boatModel, boat); boatModel.SailNo = boat.SailNo; boatModel.Name = boat.Name; boatModel.Type = boat.Type; boatModel.Handicap = boat.Handicap; return(boatModel); }
public HttpResponseMessage GetBoat() { var token = Request.Headers.Authorization.Parameter; User sender = UserUtility.GetUserByToken(token); CustomResponse response; if (sender.team == null) { response = ResponseMessageHelper.CreateResponse(HttpStatusCode.OK, false, null, ConstantResponse.TEAM_BOAT_GET_NO_TEAM); } else if (sender.team.boat == null) { response = ResponseMessageHelper.CreateResponse(HttpStatusCode.OK, false, null, ConstantResponse.TEAM_BOAT_GET_NO_BOAT); } else { BoatDTO boatDTO = GenericMapper.MapToBoatDTO(sender.team.boat); response = ResponseMessageHelper.CreateResponse(HttpStatusCode.OK, false, boatDTO, ConstantResponse.TEAM_BOAT_GET_SUCCESS); } return(Request.CreateResponse <CustomResponse>(HttpStatusCode.OK, response)); }