public async Task <MDSCheckResult> PostAsync()
        {
            var contenttype = Request.Content.Headers.ContentType;

            System.Diagnostics.Debug.WriteLine(Request.Content.Headers.ToString());

            string requestXml = await Request.Content.ReadAsStringAsync();

            if (string.IsNullOrWhiteSpace(requestXml))
            {
                this.ThrowHttpResponseExceptions(HttpStatusCode.BadRequest, "alertInputParm is null!");
            }

            MDSCheckInputParm inputParam = null;

            try
            {
                inputParam = XmlHelper.XmlDeserialize <MDSCheckInputParm>(requestXml);
            }
            catch
            {
                this.ThrowHttpResponseExceptions(HttpStatusCode.BadRequest, "alertInputParm is null!");
            }


            if (inputParam == null)
            {
                this.ThrowHttpResponseExceptions(HttpStatusCode.BadRequest, "alertInputParm is null!");
            }
            var tempHKID = inputParam.PatientInfo.HKID.ToUpper();

            return(JsonFromFile(tempHKID));
        }
Example #2
0
        public MDSCheckResult CheckMDS(MDSCheckInputParm inputParam)
        {
            var client = new RestClient(restUri);

            var request = new RestRequest("mdsCheck", Method.POST);

            request.AddHeader("client_secret", client_secret);
            request.AddHeader("client_id", client_id);
            request.AddHeader("pathospcode", pathospcode);

            request.XmlSerializer = new DotNetXmlSerializer();

            var xmlRequestBody = XmlHelper.XmlSerializeToString(inputParam);

            request.AddParameter("application/json", xmlRequestBody, ParameterType.RequestBody);

            logger.Info(string.Format("MDS request:{0}{1}", Environment.NewLine, XmlHelper.XmlSerializeToString(inputParam)));
            var response = client.Execute <MDSCheckResult>(request);

            if (!response.IsSuccessful())
            {
                response.ThrowException();
            }

            var result = response.Data;

            logger.Info(string.Format("MDS response:{0}{1}", Environment.NewLine, JsonHelper.ToJson(result)));
            return(result);
        }
Example #3
0
        private static void MDSCheckInputTest()
        {
            var input = new MDSCheckInputParm
            {
                HasG6pdDeficiency     = true,
                PatientAllergyProfile = new List <PatientAllergyProfile> {
                    new PatientAllergyProfile {
                        HiclSeqNo = "HiclSeqNoStr",
                        HicSeqNos = new HiclSeqNos {
                            HicSeqNo = new List <string> {
                                "HiclSeqNo1", "HiclSeqNo2"
                            }
                        }
                    }
                }
            };

            var xmlStr = XmlHelper.XmlSerializeToString(input);
        }
Example #4
0
        public MDSCheckInputParm CreateMDSRequest(PatientDemoEnquiry patientEnquiry,
                                                  AlertProfileResult alertProfileRes,
                                                  GetDrugMdsPropertyHqResponse getDrugMdsPropertyHqRes,
                                                  GetPreparationResponse getPreparationRes,
                                                  ref string drugName
                                                  )
        {
            var patientCache = FullCacheHK.PataientCache[patientEnquiry.CaseList[0].Number.Trim().ToUpper()];

            var mdsInput = new MDSCheckInputParm
            {
                PatientInfo = CreateMDSPatientInfo(patientEnquiry),

                UserInfo = CreateMDSUserInfo(patientEnquiry),

                PatientAllergyProfile = CreateMDSAllergy(alertProfileRes),

                PatientAdrProfile = CreateMDSAdr(alertProfileRes),

                CurrentRxDrugProfile = CreateMDSRxDrugProfileIfSkipMDS(getDrugMdsPropertyHqRes, getPreparationRes, patientEnquiry.CaseList[0].HospitalCode),

                CheckDscm    = false,
                CheckDrcm    = false,
                CheckDlcm    = false,
                CheckSteroid = false,
                CheckDiscon  = false,
                CheckHepaB   = false,
                HasPregnancy = false,
                CheckDdim    = false,

                HasG6pdDeficiency  = true,
                CheckDdcm          = true,
                CheckDam           = true,
                CheckAdr           = true,
                CallerSourceSystem = "PMS",
            };

            //show at msg title: CAUTION for + uppercase[drugDdimDisplayName from 2.5.1]
            drugName = mdsInput.CurrentRxDrugProfile.DrugDdimDisplayName.ToUpper();

            return(mdsInput);
        }
 public MDSCheckResult CheckMDS(MDSCheckInputParm inputParam)
 {
     throw new NotImplementedException();
 }