public async Task <IActionResult> Post([FromBody] AttractionLike model) { if (!await MatchAppUserWithToken((int)model.AppUserId)) { return(Unauthorized()); } if (!await _repo.RecordExist("AppUser", (int)model.AppUserId)) { return(NotFound()); } var attractionFromRepo = await _repo.GetAttraction((int)model.AttractionId); if (attractionFromRepo == null) { return(NotFound()); } var likeRecord = await _repo.GetAttractionLike((int)model.AppUserId, (int)model.AttractionId); if (await _repo.AttractionLiked((int)model.AppUserId, (int)model.AttractionId)) { return(BadRequest("既にリアクションされています")); } _repo.Add(model); await _appUserRepo.AddLikeCountToUser((int)attractionFromRepo.AppUserId); if (await _repo.SaveAll() > 0) { return(Created("GetAttractionLike", null)); } return(BadRequest("Failed to post attraction like")); }
public async Task <ActionResult> Post([FromBody] AttractionUpdateDto model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (!await this.MatchAppUserWithToken(model.AppUserId)) { return(Unauthorized()); } var newAttraction = this._mapper.Map <Attraction>(model); // List<AttractionCategorization> categorizationList = new List<AttractionCategorization>(); // foreach (var categoryId in model.CategoryIds) // { // categorizationList.Add(new AttractionCategorization() { AttractionCategoryId = categoryId }); // } // newAttraction.Categorizations = categorizationList; _attractionRepo.Add(newAttraction); if (await _attractionRepo.SaveAll() > 0) { return(CreatedAtRoute("GetAttraction", new { id = newAttraction.Id }, _mapper.Map <AttractionForReturnDto>(newAttraction))); } return(BadRequest("Failed to add clanseek")); }
public async Task <ActionResult> Post([FromBody] AttractionReviewUpdateDto model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (!await this.MatchAppUserWithToken((int)model.AppUserId)) { return(Unauthorized()); } if (!await _attractionRepo.AttractionExists(model.AttractionId)) { return(NotFound("Attraction " + model.AttractionId + " is not exist")); } if (await _attractionRepo.AttractionReviewed(model.AppUserId, model.AttractionId)) { return(BadRequest("既にレビューされています")); } var newAttractionReview = this._mapper.Map <AttractionReview>(model); _attractionRepo.Add(newAttractionReview); if (await _attractionRepo.SaveAll() > 0) { return(CreatedAtRoute("GetAttractionReview", new { id = newAttractionReview.Id }, _mapper.Map <AttractionReviewForReturnDto>(newAttractionReview))); } return(BadRequest("Failed to add attraction review")); }
public IActionResult Create(Attraction attraction) { if (ModelState.IsValid) { Attraction newAttraction = _attractionRepository.Add(attraction); return(RedirectToAction("details", new { id = newAttraction.AttractionID })); } return(View()); }
public void AddAtrraction(Attraction Atrraction) { _iRespository.Add(Atrraction); }