public async Task <IActionResult> AddAdverseEvents([FromBody] AddAdverseEventCommand addAdverseEventCommand) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var response = await _mediator.Send(addAdverseEventCommand, Request.HttpContext.RequestAborted); if (response.IsValid) { return(Ok(response.Value)); } return(BadRequest(response)); }
public async Task <Result <AdverseEventsResponse> > Handle(AddAdverseEventCommand request, CancellationToken cancellationToken) { using (_commontUnitOfWork) { try { if (request.AdverseEvents.Any()) { List <PatientAdverseEvent> patientAdverseEvents = new List <PatientAdverseEvent>(); request.AdverseEvents.ForEach(x => patientAdverseEvents.Add(new PatientAdverseEvent { PatientId = x.PatientId, PatientMasterVisitId = x.PatientMasterVisitId, Action = x.Action, AdverseEventId = x.AdverseEventId, CreateBy = x.CreateBy, CreateDate = x.CreateDate, DeleteFlag = x.DeleteFlag, EventCause = x.EventCause, EventName = x.EventName, Severity = x.Severity })); await _commontUnitOfWork.Repository <PatientAdverseEvent>().AddRangeAsync(patientAdverseEvents); await _commontUnitOfWork.SaveAsync(); } return(Result <AdverseEventsResponse> .Valid(new AdverseEventsResponse() { Message = "Successfully added adverse events" })); } catch (Exception e) { Log.Error($"Failed to add adverse events"); return(Result <AdverseEventsResponse> .Invalid($"Failed to add adverse events")); } } }