Beispiel #1
0
        public async Task <Result <VisitDetailsCommandEditResult> > Handle(VisitDetailsCommandEdit request, CancellationToken cancellationToken)
        {
            using (_unitOfWork)
            {
                Core.Models.VisitDetails visitDetailsEdit = await _unitOfWork.Repository <Core.Models.VisitDetails>()
                                                            .Get(x => x.PatientId == request.PatientId && x.Id == request.Id)
                                                            .OrderByDescending(x => x.Id).FirstOrDefaultAsync();

                if (visitDetailsEdit != null)
                {
                    visitDetailsEdit.DaysPostPartum = request.DaysPostPartum;
                    visitDetailsEdit.VisitNumber    = request.VisitNumber;
                    visitDetailsEdit.VisitType      = request.VisitType;

                    _unitOfWork.Repository <Core.Models.VisitDetails>().Update(visitDetailsEdit);
                    await _unitOfWork.SaveAsync();

                    return(Result <VisitDetailsCommandEditResult> .Valid(new VisitDetailsCommandEditResult { Id = visitDetailsEdit.Id }));
                }
                else
                {
                    return(Result <VisitDetailsCommandEditResult> .Valid(new VisitDetailsCommandEditResult { Id = 0 }));
                }
            }
        }
Beispiel #2
0
        public async Task <Result <DeleteVisitDetailsCommandResponse> > Handle(DeleteVisitDetailsCommand request, CancellationToken cancellationToken)
        {
            using (_unitOfWork)
            {
                try
                {
                    Core.Models.VisitDetails visitDetails = await _unitOfWork.Repository <Core.Models.VisitDetails>()
                                                            .Get(x => x.Id == Int32.Parse(request.Id.ToString())).FirstOrDefaultAsync();

                    if (visitDetails != null)
                    {
                        visitDetails.DeleteFlag = true;
                    }

                    _unitOfWork.Repository <Core.Models.VisitDetails>().Update(visitDetails);
                    await _unitOfWork.SaveAsync();

                    return(Result <DeleteVisitDetailsCommandResponse> .Valid(new DeleteVisitDetailsCommandResponse()
                    {
                        Id = request.Id
                    }));
                }
                catch (Exception e)
                {
                    Log.Error(e.Message);
                    return(Result <DeleteVisitDetailsCommandResponse> .Invalid(e.Message));
                }
            }
        }