public async Task <Result <AddHeiLabTestsDoneResponse> > Handle(AddHeiLabTestsDoneCommand request, CancellationToken cancellationToken) { using (_labUnitOfWork) { try { if (request.HeiLabTestTypes.Any()) { List <HeiLabTests> heiLabTestses = new List <HeiLabTests>(); request.HeiLabTestTypes.ForEach(x => heiLabTestses.Add(new HeiLabTests { PatientId = request.PatientId, HeiLabTestTypeId = x.Id, LabOrderId = request.LabOrderId })); await _labUnitOfWork.Repository <HeiLabTests>().AddRangeAsync(heiLabTestses); await _labUnitOfWork.SaveAsync(); } return(Result <AddHeiLabTestsDoneResponse> .Valid(new AddHeiLabTestsDoneResponse() { Message = "Successfully added Hei Lab Test Types" })); } catch (Exception e) { Log.Error(e, $"An error occured while trying to add Hei Lab Tests Types"); return(Result <AddHeiLabTestsDoneResponse> .Invalid($"An error occured while trying to add Hei Lab Tests Types")); } } }
public async Task <IActionResult> SaveHeiLabTests([FromBody] AddHeiLabTestsDoneCommand addHeiLabTestsDoneCommand) { var heiLabTestsResponse = await _mediator.Send(addHeiLabTestsDoneCommand).ConfigureAwait(false); if (heiLabTestsResponse.IsValid) { return(Ok(heiLabTestsResponse.Value)); } return(BadRequest(heiLabTestsResponse)); }