public async Task <DataResult <TaskUpdateResponse> > ProcessTaskUpdate(TaskBlModel model) { return(await ProcessTaskUpdateTransaction(model)); }
public async Task <DataResult <TaskUpdateResponse> > Update(int id, [FromBody] TaskBlModel model) { model.Id = id; return(await _taskService.ProcessTaskUpdate(model)); }
private async Task <DataResult <TaskUpdateResponse> > ProcessTaskUpdateTransaction(TaskBlModel model) { return(await _transactionManager.ExecuteInTransactionAsync(async transaction => { try { ToDoTask taskEntity = await _unitOfWork.ToDoTasks.GetByIdAsync(model.Id); if (taskEntity == null) { return new DataResult <TaskUpdateResponse>() { ResponseStatusType = ResponseStatusType.Error, Message = ResponseMessageType.IdIsMissing }; } if (!string.IsNullOrWhiteSpace(model.Text)) { taskEntity.Text = model.Text; taskEntity.DueDate = model.DeadLine; await _unitOfWork.ToDoTasks.UpdateAsync(taskEntity); await _unitOfWork.SaveAsync(); await transaction.CommitAsync(); return new DataResult <TaskUpdateResponse>() { Data = new TaskUpdateResponse() { TaskId = model.Id }, ResponseStatusType = ResponseStatusType.Succeed }; } await transaction.RollbackAsync(); return new DataResult <TaskUpdateResponse>() { Data = new TaskUpdateResponse() { TaskId = model.Id }, Message = ResponseMessageType.InvalidModel, ResponseStatusType = ResponseStatusType.Error }; } catch (Exception e) { await transaction.RollbackAsync(); _logger.LogW(e, "ContentAdminBlModel: {C}", args: new object[] { AsJsonFormatter.Create(model) }); return new DataResult <TaskUpdateResponse>() { Data = new TaskUpdateResponse() { TaskId = model.Id }, Message = ResponseMessageType.InvalidModel, ResponseStatusType = ResponseStatusType.Error }; } })); }
public async Task <DataResult <TaskAddResponse> > Create(TaskBlModel model) { return(await _taskService.ProcessTaskCreate(model)); }