Beispiel #1
0
        public List <MedicationMap> FilterFieldResultsByParams(GetMedFieldsRequest request, List <MedicationMap> matches)
        {
            try
            {
                if (request.Route != null)
                {
                    matches = matches.Where(l => l.Route == request.Route).ToList();
                }

                if (request.Form != null)
                {
                    matches = matches.Where(l => l.Form == request.Form).ToList();
                }

                if (request.Strength != null)
                {
                    matches = matches.Where(l => l.Strength == request.Strength).ToList();
                }
                return(matches);
            }
            catch (Exception ex)
            {
                throw new Exception("AD:FilterFieldResultsByParams()::" + ex.Message, ex.InnerException);
            }
        }
Beispiel #2
0
        public GetMedFieldsResponse Get(GetMedFieldsRequest request)
        {
            GetMedFieldsResponse  response = new GetMedFieldsResponse();
            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;
                    var results = SearchManager.GetSearchMedFieldsResults(request);

                    response.DosageForms = results.FormList;
                    response.Routes      = results.RouteList;
                    response.Strengths   = results.StrengthList;
                    response.Units       = results.UnitsList;
                }
                else
                {
                    throw new UnauthorizedAccessException();
                }
            }
            catch (Exception ex)
            {
                CommonFormatterUtil.FormatExceptionResponse(response, base.Response, ex);
                if ((ex is WebServiceException) == false)
                {
                    SearchManager.LogException(ex);
                }
            }
            finally
            {
                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, null, browser, hostAddress, request.GetType().Name);
                }
            }

            return(response);
        }
Beispiel #3
0
        public void GetPatientMedSupps_Test()
        {
            GetMedFieldsRequest request = new GetMedFieldsRequest
            {
                ContractNumber = contractNumber,
                UserId         = userId,
                Version        = version
            };

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

            //[Route("/{Version}/{ContractNumber}/Search/Meds/Fields", "GET")]
            GetMedFieldsResponse response = client.Get <GetMedFieldsResponse>(string.Format("{0}/{1}/{2}/Search/Meds/Fields?Name={3}", url, version, contractNumber, "JAIPUR"));

            Assert.IsNotNull(response);
        }
Beispiel #4
0
        public MedFieldsLists GetSearchMedFieldsResults(GetMedFieldsRequest request)
        {
            try
            {
                var lists    = new MedFieldsLists();
                var matches  = EndpointUtil.GetMedicationMapsByName(request, request.UserId);
                var fMatches = SearchUtil.FilterFieldResultsByParams(request, matches);

                // break out into seperate lists here.
                lists.RouteList    = GetRouteSelections(fMatches);
                lists.FormList     = GetFormSelections(fMatches);
                lists.StrengthList = GetStrengthSelections(fMatches);
                return(lists);
            }
            catch (WebServiceException ex)
            {
                throw new WebServiceException("AD:GetSearchAllergyResults()::" + ex.Message, ex.InnerException);
            }
        }
Beispiel #5
0
        public List <MedicationMap> GetMedicationMapsByName(GetMedFieldsRequest e, string userId)
        {
            try
            {
                List <MedicationMap> result = new List <MedicationMap>();

                IRestClient client = new JsonServiceClient();
                //[Route("/{Context}/{Version}/{ContractNumber}/MedicationMap", "POST")]
                var url = Common.Helper.BuildURL(string.Format("{0}/{1}/{2}/{3}/MedicationMap",
                                                               _ddMedicationServiceUrl,
                                                               "NG",
                                                               e.Version,
                                                               e.ContractNumber,
                                                               e.Name), userId);

                GetMedicationMapDataResponse dataDomainResponse = client.Post <GetMedicationMapDataResponse>(url, new GetMedicationMapDataRequest
                {
                    Context        = "NG",
                    ContractNumber = e.ContractNumber,
                    Name           = e.Name,
                    UserId         = e.UserId,
                    Version        = e.Version
                } as object);

                if (dataDomainResponse.MedicationMapsData != null)
                {
                    result.AddRange(dataDomainResponse.MedicationMapsData.Select(AutoMapper.Mapper.Map <MedicationMap>));
                }

                return(result);
            }
            catch (WebServiceException ex)
            {
                throw new Exception("AD:SearchEndpointUtil:GetMedicationMapsByName()::" + ex.Message, ex.InnerException);
            }
        }