public async Task <bool> Handle(UpdateJobTaskRequest message, IOutputPort <UpdateJobTaskResponse> outputPort) { var taskEntity = await taskRepository.GetById(message.TaskId); if (taskEntity == null) { outputPort.Handle(new UpdateJobTaskResponse(new[] { applicationErrorFactory.ResourceNotFound })); return(false); } bool isOwner = await jobOwnerShipValidator.IsJobOwner(message.CallerId, taskEntity.JobEntityId); if (!isOwner) { outputPort.Handle(new UpdateJobTaskResponse(new[] { applicationErrorFactory.ResourceNotOwned })); return(false); } mapper.Map(message, taskEntity); await taskRepository.Update(taskEntity); outputPort.Handle(new UpdateJobTaskResponse()); return(true); }
public IHttpActionResult Put( [FromUri] UpdateJobTaskRequest request, [FromBody] Delta <UpdateJobTaskPayload> input) { request.Payload = input; request.OrganizationUserId = Credential.OrganizationUserId; var jobTask = _updateRequestProcessor.Process(request); return(Ok(jobTask)); }