public async Task <Result <Core.Models.BaselineAntenatalCare> > Handle(EditBaselineAntenatalCareCommand request, CancellationToken cancellationToken)
        {
            using (_unitOfWork)
            {
                try
                {
                    Core.Models.BaselineAntenatalCare baselineAntenatalCare = await _unitOfWork
                                                                              .Repository <Core.Models.BaselineAntenatalCare>().Get(x =>
                                                                                                                                    x.PatientMasterVisitId == request.PatientMasterVisitId &&
                                                                                                                                    x.PatientId == request.PatientId).FirstOrDefaultAsync();

                    if (baselineAntenatalCare != null)
                    {
                        baselineAntenatalCare.BreastExamDone     = request.BreastExamDone;
                        baselineAntenatalCare.TreatedForSyphilis = request.TreatedForSyphilis;
                        baselineAntenatalCare.HivStatusBeforeAnc = request.HivStatusBeforeAnc;
                        baselineAntenatalCare.PregnancyId        = request.PregnancyId;
                        baselineAntenatalCare.TestedForSyphilis  = request.TestedForSyphilis;
                        baselineAntenatalCare.SyphilisTestUsed   = request.SyphilisTestUsed;
                        baselineAntenatalCare.SyphilisResults    = request.SyphilisResults;
                    }

                    _unitOfWork.Repository <Core.Models.BaselineAntenatalCare>().Update(baselineAntenatalCare);
                    await _unitOfWork.SaveAsync();

                    return(Result <Core.Models.BaselineAntenatalCare> .Valid(baselineAntenatalCare));
                }
                catch (Exception e)
                {
                    Log.Error(e.Message);
                    return(Result <Core.Models.BaselineAntenatalCare> .Invalid(e.Message));
                }
            }
        }
示例#2
0
        public async Task <IActionResult> Put([FromBody] EditBaselineAntenatalCareCommand command)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(command));
            }

            var response = await _mediator.Send(command, HttpContext.RequestAborted);

            if (response.IsValid)
            {
                return(Ok(response.Value));
            }

            return(BadRequest(response));
        }