public IActionResult UpdateUserActivity(int id, [FromBody] UserActivityUpdateDto updateUserActivity) { var userActivityEntity = _transActionRepo.GetUserActivity(id); if (userActivityEntity == null) { return(NotFound()); } if (updateUserActivity == null) { return(NotFound()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _mapper.Map(updateUserActivity, userActivityEntity); if (!_transActionRepo.Save()) { return(StatusCode(500, "A problem happened while handling your request.")); } return(GetUserActivityById(id)); }
public IActionResult UpdateUserActivity(int id, [FromBody] UserActivityUpdateDto updateUserActivity) { if (!ModelState.IsValid) { return(BadRequest(new TransActionResponse(ModelState))); } var userActivityEntity = _unitOfWork.UserActivity.GetUserActivity(id); if (userActivityEntity == null) { return(StatusCode(404, new TransActionResponse("User Activity Not Found"))); } _mapper.Map(updateUserActivity, userActivityEntity); if (!_unitOfWork.Save()) { return(StatusCode(500, new TransActionResponse("A problem happened while handling your request."))); } return(GetUserActivityById(id)); }
public IActionResult UpdateUserActivity(int id, [FromBody] UserActivityUpdateDto updateUserActivity) { //making sure the user enters atleast 15 mins if (updateUserActivity.Minutes < 15) { return(BadRequest(new TransActionResponse("Minutes should be more then 15"))); } var activityType = _unitOfWork.Activity.GetById(updateUserActivity.ActivityId); if (activityType == null) { return(NotFound(new TransActionResponse("Activity type not found"))); } if (activityType.Name != "Other" && string.IsNullOrEmpty(updateUserActivity.Description)) { updateUserActivity.Description = activityType.Description; updateUserActivity.Name = activityType.Description; } ModelState.Clear(); TryValidateModel(updateUserActivity); if (!ModelState.IsValid) { return(BadRequest(new TransActionResponse(ModelState))); } string userGuid = UserHelper.GetUserGuid(_httpContextAccessor); var getUser = _unitOfWork.User.GetByGuid(userGuid); if (getUser.UserId != updateUserActivity.UserId) { return(BadRequest(new TransActionResponse("Not allowed to edit resource."))); } var userActivityEntity = _unitOfWork.UserActivity.GetUserActivity(id); if (userActivityEntity == null) { return(StatusCode(404, new TransActionResponse("User Activity Not Found"))); } var eventEntity = _unitOfWork.Event.GetById(updateUserActivity.EventId); if (eventEntity == null) { return(NotFound(new TransActionResponse("Event not found"))); } if (!eventEntity.IsActive.Value) { return(NotFound(new TransActionResponse("Event not active"))); } if (updateUserActivity.ActivityTimestamp < eventEntity.StartDate || updateUserActivity.ActivityTimestamp > eventEntity.EndDate) { return(BadRequest(new TransActionResponse("Activity time is outside of event start and end date"))); } _mapper.Map(updateUserActivity, userActivityEntity); if (!_unitOfWork.Save()) { return(StatusCode(500, new TransActionResponse("A problem happened while handling your request."))); } return(GetUserActivityById(id)); }