public void UpdatePatientObservation_Test() { List <PatientObservation> po = new List <PatientObservation>(); po.Add(new PatientObservation { DeleteFlag = true, DisplayId = 1, EndDate = null, GroupId = null, Id = "53e907dcd6a4850bc4f863ba", Name = "GERD", ObservationId = "533ed16ed4332307bc592bb8", PatientId = "5325db15d6a4850adcbba82a", Source = "CM", Standard = false, StartDate = DateTime.Now, StateId = 2, TypeId = "533d8278d433231deccaa62d", Units = null, Values = null }); PostUpdateObservationItemsRequest request = new PostUpdateObservationItemsRequest { ContractNumber = contract, PatientId = "5325db15d6a4850adcbba82a", UserId = userId, Version = version, Context = "NG", PatientObservations = po }; ObservationsManager oManager = new ObservationsManager(); PostUpdateObservationItemsResponse response = oManager.SavePatientObservations(request); Assert.IsNotNull(response); }
public PostUpdateObservationItemsResponse Post(PostUpdateObservationItemsRequest request) { PostUpdateObservationItemsResponse response = new PostUpdateObservationItemsResponse(); ObservationsManager om = new ObservationsManager(); ValidateTokenResponse result = null; try { request.Token = base.Request.Headers["Token"] as string; result = Security.IsUserValidated(request.Version, request.Token, request.ContractNumber); if (result.UserId.Trim() != string.Empty) { request.UserId = result.UserId; response = om.SavePatientObservations(request); } else { throw new UnauthorizedAccessException(); } } catch (Exception ex) { CommonFormatter.FormatExceptionResponse(response, base.Response, ex); if ((ex is WebServiceException) == false) { om.LogException(ex); } } finally { List <string> patientIds = new List <string>(); patientIds.Add(request.PatientId); if (result != null) { AuditHelper.LogAuditData(request, result.SQLUserId, patientIds, System.Web.HttpContext.Current.Request, request.GetType().Name); } } return(response); }
public PostUpdateObservationItemsResponse SavePatientObservations(PostUpdateObservationItemsRequest request) { try { PostUpdateObservationItemsResponse response = new PostUpdateObservationItemsResponse(); List <PatientObservation> obsl = request.PatientObservations; //List<string> patientObservationIds = ObservationsUtil.GetPatientObservationIds(obsl); List <PatientObservationRecordData> poRecordDataList = new List <PatientObservationRecordData>(); if (request.PatientObservations != null && request.PatientObservations.Count > 0) { foreach (PatientObservation po in obsl) { PatientObservationRecordData pord = null; if (po.Values != null && po.Values.Count > 0) // Labs and Vitals have values { foreach (ObservationValue ov in po.Values) { pord = ObservationsUtil.CreatePatientObservationRecord(po, ov); //ObservationEndpointUtil.UpdatePatientObservation(request, pord); poRecordDataList.Add(pord); } } else // Problem does not have values { pord = ObservationsUtil.CreatePatientObservationRecord(po, null); //ObservationEndpointUtil.UpdatePatientObservation(request, pord); poRecordDataList.Add(pord); } } response = ObservationEndpointUtil.UpdatePatientObservation(request, poRecordDataList); } response.Version = request.Version; return(response); } catch (Exception ex) { throw new Exception("AD:SavePatientObservations()::" + ex.Message, ex.InnerException); } }
internal static PostUpdateObservationItemsResponse UpdatePatientObservation(PostUpdateObservationItemsRequest request, List <PatientObservationRecordData> pord) { PostUpdateObservationItemsResponse response = null; try { IRestClient client = new JsonServiceClient(); //[Route("/{Context}/{Version}/{ContractNumber}/Patient/{PatientId}/Observations/Update", "PUT")] string url = Common.Helper.BuildURL(string.Format("{0}/{1}/{2}/{3}/Patient/{4}/Observations/Update/", DDPatientObservationsServiceUrl, "NG", request.Version, request.ContractNumber, request.PatientId), request.UserId); PutUpdatePatientObservationsDataResponse dataDomainResponse = client.Put <PutUpdatePatientObservationsDataResponse>( url, new PutUpdatePatientObservationsDataRequest { PatientObservationsRecordData = pord, UserId = request.UserId } as object); if (dataDomainResponse.Result) { response = new PostUpdateObservationItemsResponse(); response.PatientObservations = ObservationsUtil.GetPatientObservations(dataDomainResponse.PatientObservationsData); response.Result = dataDomainResponse.Result; } return(response); } catch (WebServiceException ex) { throw new WebServiceException("AD:UpdatePatientObservation()::" + ex.Message, ex.InnerException); } }