public async Task <ResultModel> DeleteTaskAsync(Guid taskId) { if (taskId == Guid.Empty) { return(ExceptionMessagesEnum.NullParameter.ToErrorModel()); } var dbTaskResult = _context.Tasks.FirstOrDefault(x => x.Id == taskId); if (dbTaskResult == null) { return(ExceptionMessagesEnum.TaskNotFound.ToErrorModel()); } dbTaskResult.IsDeleted = true; _context.Tasks.Update(dbTaskResult); var result = await _context.PushAsync(); if (result.IsSuccess) { await _notify.DeleteTaskNotificationAsync(dbTaskResult); } return(new ResultModel { IsSuccess = result.IsSuccess, Errors = result.Errors }); }
public async Task <ResultModel> DeleteTaskAsync(Guid taskId) { if (taskId == Guid.Empty) { return(ExceptionMessagesEnum.NullParameter.ToErrorModel()); } var dbTaskResult = _context.Tasks.FirstOrDefault(x => x.Id == taskId); if (dbTaskResult == null) { return(ExceptionMessagesEnum.TaskNotFound.ToErrorModel()); } var currentUser = await _userManager.GetCurrentUserAsync(); if (dbTaskResult.Author != currentUser.Result.UserName) { return new ResultModel { IsSuccess = false, Errors = new List <IErrorModel> { new ErrorModel { Message = "Not have permission to deactivate task" } } } } ; dbTaskResult.IsDeleted = true; _context.Tasks.Update(dbTaskResult); var result = await _context.PushAsync(); if (result.IsSuccess) { await _notify.DeleteTaskNotificationAsync(dbTaskResult); } return(new ResultModel { IsSuccess = result.IsSuccess, Errors = result.Errors }); }