Пример #1
0
        public string InsertPatientMedFrequency(PostPatientMedFrequencyRequest request)
        {
            string id = null;

            try
            {
                // Before inserting a new one, check if the Frequency lookup already contains that name.
                if (request.PatientMedFrequency != null && !string.IsNullOrEmpty(request.PatientMedFrequency.Name))
                {
                    NGManager         ngManager     = new NGManager();
                    GetLookUpsRequest lookUpRequest = new GetLookUpsRequest
                    {
                        ContractNumber = request.ContractNumber,
                        TypeName       = LookUpType.Frequency.ToString(),
                        UserId         = request.UserId,
                        Version        = request.Version,
                    };
                    List <IdNamePair> lookups = ngManager.GetLookUps(lookUpRequest);
                    var freq = lookups.Find(x => x.Name.ToLower() == request.PatientMedFrequency.Name.ToLower());
                    if (freq != null)
                    {
                        id = freq.Id;
                    }
                }
                if (string.IsNullOrEmpty(id))
                {
                    id = EndpointUtil.InsertPatientMedFrequency(request);
                }
                return(id);
            }
            catch (Exception ex) { throw ex; }
        }
Пример #2
0
        public PostPatientMedFrequencyResponse Post(PostPatientMedFrequencyRequest request)
        {
            PostPatientMedFrequencyResponse response = new PostPatientMedFrequencyResponse();
            ValidateTokenResponse           result   = null;

            try
            {
                if (base.Request != null)
                {
                    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.Id    = MedicationManager.InsertPatientMedFrequency(request);
                }
                else
                {
                    throw new UnauthorizedAccessException();
                }
            }
            catch (Exception ex)
            {
                CommonFormatter.FormatExceptionResponse(response, base.Response, ex);
                if ((ex is WebServiceException) == false)
                {
                    MedicationManager.LogException(ex);
                }
            }
            finally
            {
                List <string> patientIds = null;
                if (request.PatientMedFrequency != null)
                {
                    patientIds = new List <string>();
                    patientIds.Add(request.PatientMedFrequency.PatientId);
                }
                if (result != null)
                {
                    string browser     = (base.Request != null) ? base.Request.UserAgent : unknownBrowserType;
                    string hostAddress = (base.Request != null) ? base.Request.UserHostAddress : unknownUserHostAddress;
                    AuditUtil.LogAuditData(request, result.SQLUserId, patientIds, browser, hostAddress, request.GetType().Name);
                }
            }
            return(response);
        }
Пример #3
0
        public void Insert_PatientMedFrequency_Test()
        {
            PostPatientMedFrequencyRequest request = new PostPatientMedFrequencyRequest
            {
                PatientMedFrequency = new PatientMedFrequency {
                    Name = "prn (as needed)", PatientId = "5325db63d6a4850adcbba922"
                },
                ContractNumber = contractNumber,
                UserId         = userId,
                Version        = version,
                Token          = token
            };

            JsonServiceClient.HttpWebRequestFilter = x =>
                                                     x.Headers.Add(string.Format("{0}: {1}", "Token", token));

            //[Route("/{Version}/{ContractNumber}/PatientMedSupp/Frequency/Insert", "POST")]
            PostPatientMedFrequencyResponse response = client.Post <PostPatientMedFrequencyResponse>(string.Format("{0}/{1}/{2}/PatientMedSupp/Frequency/Insert", url, version, contractNumber), request);

            Assert.IsNotNull(response);
        }
Пример #4
0
        public string InsertPatientMedFrequency(PostPatientMedFrequencyRequest request)
        {
            try
            {
                string      id     = null;
                IRestClient client = new JsonServiceClient();
                //[Route("/{Context}/{Version}/{ContractNumber}/PatientMedSupp/Frequency/Insert", "POST")]
                var url = Common.Helper.BuildURL(string.Format("{0}/{1}/{2}/{3}/PatientMedSupp/Frequency/Insert",
                                                               DDMedicationUrl,
                                                               "NG",
                                                               request.Version,
                                                               request.ContractNumber), request.UserId);
                if (request.PatientMedFrequency != null)
                {
                    PatientMedFrequencyData data = new PatientMedFrequencyData
                    {
                        Name      = request.PatientMedFrequency.Name,
                        PatientId = request.PatientMedFrequency.PatientId
                    };
                    PostPatientMedFrequencyDataResponse dataDomainResponse = client.Post <PostPatientMedFrequencyDataResponse>(url, new PostPatientMedFrequencyDataRequest
                    {
                        Context                 = "NG",
                        ContractNumber          = request.ContractNumber,
                        UserId                  = request.UserId,
                        Version                 = request.Version,
                        PatientMedFrequencyData = data,
                    } as object);

                    if (dataDomainResponse != null)
                    {
                        id = dataDomainResponse.Id;
                    }
                }
                return(id);
            }
            catch (Exception ex) { throw ex; }
        }