public async Task <ActionResult <ToDoTaskResponse> > CreateToDoTask(ToDoTaskRequest toDoTask) { if (!ModelState.IsValid) { return(BadRequest()); } try { var result = await _toDoTaskService.AddToDoTask(HttpContext.User, toDoTask); return(result); } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError, Constants.ErrorRetrieveDatabase)); } }
public async Task <ToDoTaskResponse> AddToDoTask(ClaimsPrincipal user, ToDoTaskRequest toDoTaskRequest) { var currUser = await _userManager.GetUserAsync(user); if (currUser == null) { return(null); } var toDoTask = _mapper.Map <ToDoTask>(toDoTaskRequest, opt => opt.AfterMap((src, dest) => dest.User = currUser)); toDoTask = await _toDoTaskRepository.AddToDoTaskAsync(toDoTask); if (toDoTask == null) { return(null); } var toDoTaskResponse = _mapper.Map <ToDoTaskResponse>(toDoTask); return(toDoTaskResponse); }
public async Task <ActionResult <ToDoTaskResponse> > UpdateToDoTask(int id, ToDoTaskRequest toDoTask) { if (!ModelState.IsValid) { return(BadRequest()); } try { var result = await _toDoTaskService.UpdateToDoTask(HttpContext.User, id, toDoTask); if (result == null) { return(NotFound(string.Format(Constants.TaskNotFound, id))); } return(Ok(result)); } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError, Constants.ErrorUpdateDatabase)); } }
public async Task <ToDoTaskResponse> UpdateToDoTask(ClaimsPrincipal user, int id, ToDoTaskRequest toDoTaskRequest) { var result = await _toDoTaskRepository.GetToDoTaskAsync(id); if (result == null) { return(null); } var currUser = await _userManager.GetUserAsync(user); if (currUser == null || result.User == null || result.User.UserName != currUser.UserName) { return(null); } var toDoTask = _mapper.Map <ToDoTask>(toDoTaskRequest, opt => opt.AfterMap((src, dest) => dest.ID = id)); result = await _toDoTaskRepository.UpdateToDoTaskAsync(toDoTask); if (result == null) { return(null); } var toDoTaskResponse = _mapper.Map <ToDoTaskResponse>(result); return(toDoTaskResponse); }