public async Task <Result <AddQueueResponse> > Handle(AddQueueCommand request, CancellationToken cancellationToken) { using (_queueUnitOfWork) { try { QueueWaitingList qwl = new QueueWaitingList(); qwl.PatientId = request.PatientId; qwl.Priority = request.Priority; qwl.ServiceRoomId = request.ServiceRoomId; qwl.Status = request.Status; qwl.CreateDate = DateTime.Now; qwl.CreatedBy = request.CreatedBy; await _queueUnitOfWork.Repository <QueueWaitingList>().AddAsync(qwl); await _queueUnitOfWork.SaveAsync(); return(Result <AddQueueResponse> .Valid(new AddQueueResponse() { PatientId = qwl.PatientId, Message = "The Patient has been added to the waiting List successfully" })); } catch (Exception e) { Log.Error(e.Message); return(Result <AddQueueResponse> .Invalid(e.Message)); } } }
public async Task <IActionResult> AddQueue([FromBody] AddQueueCommand command) { if (!ModelState.IsValid) { return(BadRequest(ModelState.Values.Select(x => x.Errors))); } var response = await _mediator.Send(command, HttpContext.RequestAborted); if (!response.IsValid) { return(BadRequest(response)); } return(Ok(response.Value)); }