private string CallByWebReq(string caseNumber) { string SOAPObj = BuildRequestSoap(caseNumber); string url = Url; var request = HttpWebRequest.Create(url + "?op=searchHKPMIPatientByCaseNo") as HttpWebRequest; request.ContentType = "text/xml"; request.Method = "POST"; using (var streamWriter = new StreamWriter(request.GetRequestStream())) { streamWriter.Write(SOAPObj); streamWriter.Flush(); } using (var webresponse = request.GetResponse() as HttpWebResponse) { using (var reader = new StreamReader(webresponse.GetResponseStream())) { string response = reader.ReadToEnd(); var patientResultXmlElement = SoapParserHelper.ParserPatientDemoEnquiryElement(response); var resStr = XmlHelper.FormatXML(patientResultXmlElement); return resStr; } } }
private void btnVerifyAll_Click(object sender, EventArgs e) { try { var files = Directory.GetFiles(Path.Combine(BASE_DIR, @"PE\"), "*.xml"); var caseNumbers = files.Select(o => new FileInfo(o).Name) .Select(o => o.Substring(0, o.Length - ".xml".Length)) .ToList(); foreach (var item in caseNumbers) { var caseNumber = item.ToString(); if (!caseNumber.StartsWith("HN2020")) { continue; } var file = Path.Combine(BASE_DIR, string.Format(@"PE\{0}.xml", caseNumber)); var doc = XElement.Load(file); var patientOrg = SoapParserHelper.LoadSamplePatientDemoEnquiry(caseNumber, @"Data\PE"); var hkId = patientOrg.Patient.HKID; System.Diagnostics.Debug.WriteLine(string.Format("CASENUMBER:{0}", caseNumber)); System.Diagnostics.Debug.WriteLine(string.Format("HKID:{0}", hkId)); var medicationFile = Path.Combine(BASE_DIR, string.Format(@"MP\{0}.json", caseNumber)); var medicationProfile = JsonHelper.JsonToObjectFromFile <MedicationProfileResult>(medicationFile); var alertFile = Path.Combine(BASE_DIR, string.Format(@"AP\{0}.json", hkId)); var alertProfile = JsonHelper.JsonToObjectFromFile <AlertProfileResult>(alertFile); if (RuleMappingHelper.HKID_ItemCode_Mapping.ContainsKey(hkId)) { var drugItemCode = RuleMappingHelper.HKID_ItemCode_Mapping[hkId]; var fileName = string.Format("{0}_{1}.xml", hkId, drugItemCode); var drugMasterFile = Path.Combine(BASE_DIR, string.Format(@"DM\getDrugMdsPropertyHq\{0}", fileName)); var drugMasterRes = XElement.Load(drugMasterFile); var paprationFile = Path.Combine(BASE_DIR, string.Format(@"DM\getPreparation\{0}", fileName)); var paprationRes = XElement.Load(paprationFile); var mdsFile = Path.Combine(BASE_DIR, string.Format(@"MDS\{0}.json", hkId)); var mdsCheckRes = JsonHelper.JsonToObjectFromFile <MDSCheckResult>(mdsFile); } } MessageBox.Show("Verify successfully......"); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void GeneratePatient(string casenumber, string hkId) { try { var patientOrg = SoapParserHelper.LoadSamplePatientDemoEnquiry("HN202003001", @"DEMO\PE");; patientOrg.Patient.HKID = hkId; patientOrg.CaseList[0].Number = casenumber; var patientFullXmlStr = @"<S:Envelope xmlns:S=""http://schemas.xmlsoap.org/soap/envelope/""> <S:Header> <work:WorkContext xmlns:work = ""http://oracle.com/weblogic/soap/workarea/"" >rO0ABXdqADF3ZWJsb2dpYy5hcHAuUEFTX1BBU19QQVRJRU5UX0VOUVVJUllfV1NTXzJfMF8xMl82AAAA1gAAACN3ZWJsb2dpYy53b3JrYXJlYS5TdHJpbmdXb3JrQ29udGV4dAAIMi4wLjEyLjYAAA==</work:WorkContext> </S:Header> <S:Body> <ns2:searchHKPMIPatientByCaseNoResponse xmlns:ns2=""http://webservice.pas.ha.org.hk/""> {0} </ns2:searchHKPMIPatientByCaseNoResponse> </S:Body> </S:Envelope>"; var patientXmlStr = XmlHelper.XmlSerializeToString(patientOrg); patientFullXmlStr = string.Format(patientFullXmlStr, patientXmlStr.Substring(@"<?xml version=""1.0"" encoding=""utf - 8""?>".Length)); patientFullXmlStr = XmlHelper.FormatXML(patientFullXmlStr); var patientTargetFileName = Path.Combine(baseDir, string.Format(@"Demo\PE\{0}.xml", casenumber)); File.WriteAllText(patientTargetFileName, patientFullXmlStr); var medicationOrg = JsonHelper.JsonToObjectFromFile <MedicationProfileResult>(medicationProfileSeed); medicationOrg.CaseNum = casenumber; medicationOrg.MedProfileId = hkId; var medicationTargetStr = JsonHelper.FormatJson(JsonHelper.ToJson(medicationOrg)); var medicationTargetFileName = Path.Combine(baseDir, string.Format(@"Demo\MP\{0}.json", casenumber)); File.WriteAllText(medicationTargetFileName, medicationTargetStr); var alertOrg = JsonHelper.JsonToObjectFromFile <AlertProfileResult>(alertProfileSeed); var alertTargetStr = JsonHelper.FormatJson(JsonHelper.ToJson(alertOrg)); var alertTargetFileName = Path.Combine(baseDir, string.Format(@"Demo\AP\{0}.json", hkId)); File.WriteAllText(alertTargetFileName, alertTargetStr); } catch (Exception EX) { EX = EX; } }
public SearchHKPMIPatientByCaseNoResponse searchHKPMIPatientByCaseNo(SearchHKPMIPatientByCaseNo searchHKPMIPatientByCaseNo) { WorkContext = new WorkContextSoapHeader(); HttpContext.Current.Request.InputStream.Position = 0; var requestStr = new StreamReader(HttpContext.Current.Request.InputStream, Encoding.UTF8).ReadToEnd(); var patHospCode = ConfigurationManager.AppSettings["patHospCode"]; if (false == searchHKPMIPatientByCaseNo.HospitalCode.Equals(patHospCode, StringComparison.OrdinalIgnoreCase)) { return(new SearchHKPMIPatientByCaseNoResponse { }); } return(new SearchHKPMIPatientByCaseNoResponse { PatientDemoEnquiry = SoapParserHelper.LoadSamplePatientDemoEnquiry(searchHKPMIPatientByCaseNo.CaseNo) }); }
public void Test_GetPatientDemographic_Successful() { var caseNumber = "HN170002512"; var fileName = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, string.Format(@"Data\PE\{0}.xml", caseNumber)); var expetctedObject = SoapParserHelper.LoadSamplePatientDemoEnquiry(caseNumber, @"Data\PE"); Assert.IsNotNull(expetctedObject); var expectedXmlStr = XmlHelper.XmlSerializeToString(expetctedObject); var actualObject = parser.GetPatientResult(caseNumber); Assert.IsNotNull(expetctedObject); var actualXmlStr = XmlHelper.XmlSerializeToString(actualObject); Assert.AreEqual(expectedXmlStr, actualXmlStr); }
private void cbxCaseNumber_SelectedIndexChanged(object sender, EventArgs e) { try { ClearCache(); var caseNumber = cbxCaseNumber.SelectedItem.ToString(); LoadPatient(caseNumber); var patientOrg = SoapParserHelper.LoadSamplePatientDemoEnquiry(caseNumber, @"Data\PE"); var hkId = patientOrg.Patient.HKID; if (RuleMappingHelper.HKID_ItemCode_Mapping.ContainsKey(hkId)) { var drugItemCode = RuleMappingHelper.HKID_ItemCode_Mapping[hkId]; var fileName = string.Format("{0}_{1}.xml", hkId, drugItemCode); LoadDrugMaster(fileName); LoadPreparation(fileName); } LoadMedicationProfile(caseNumber); LoadAlertProfile(hkId); LoadMDSCheckResult(hkId); } catch (Exception ex) { ex = ex; } }
public PatientDemoEnquiry GetPatientResult(string caseNumber) { var result = SoapParserHelper.LoadSamplePatientDemoEnquiry(caseNumber, RELATIVE_URL); return(result); }