Esempio n. 1
0
        public static string rtn_CallInterface(string format, string serverName, string msgBody, string callOperator, string WebUrl, string debug, string certificate)
        {
            //集成平台地址


            aydefyweb.WSInterface ayd2yy = new LGHISJKZGQ.aydefyweb.WSInterface();


            if (WebUrl.Trim() != "")
            {
                ayd2yy.Url = WebUrl;
            }

            string msgHeader = "<?xml version=\"1.0\" encoding=\"utf-8\"?><root><serverName>" + serverName.Trim() + "</serverName>"
                               + "<format>" + format + "</format><callOperator>" + callOperator.Trim() + "</callOperator><certificate>" + certificate + "</certificate></root>";


            if (debug == "1")
            {
                log.WriteMyLog("入参:msgHeader:" + msgHeader + "\r\nmsgBody" + msgBody);
            }


            try
            {
                MessageBox.Show(ayd2yy.Url);
                string rtn = ayd2yy.CallInterface(msgHeader, msgBody);

                if (debug == "1")
                {
                    log.WriteMyLog("返回:" + rtn);
                }
                return(rtn);
            }
            catch (Exception ee)
            {
                MessageBox.Show("连接webservice异常:" + ee.Message);
                return("-1");
            }
        }
Esempio n. 2
0
        public static string ptxml(string Sslbx, string Ssbz, string debug)
        {
            if (Sslbx.Trim() == "")
            {
                MessageBox.Show("无此" + Sslbx);
                return("0");
            }

            #region 获取SZ或T_SZ配置


            string xtdm   = f.ReadString(Sslbx, "xtdm", "2060000").Replace("\0", "").Trim();
            string WebUrl = f.ReadString(Sslbx, "WebUrl", "http://223.220.200.45:1506/services/WSInterface?wsdl").Replace("\0", "").Trim();
            debug = f.ReadString(Sslbx, "debug", "").Replace("\0", "").Trim();

            string certificate = f.ReadString(Sslbx, "certificate", "ZmmJ9RMCKAUxFsiwl/08iiA3J17G0OpI").Replace("\0", "").Trim();
            #endregion



            #region 提取基本信息
            string OSQ = "";
            if (Sslbx == "卡号")
            {
                if (Ssbz.Length > 19)
                {
                    try
                    {
                        Ssbz = Ssbz.Substring(9, 10);
                    }
                    catch
                    {
                        log.WriteMyLog("截取卡号异常Substring(9, 10):" + Ssbz);
                    }
                }
                if (debug == "1")
                {
                    log.WriteMyLog("卡号:" + Ssbz);
                }

                string rtn = SP_SELECT.ptxml2(Sslbx, Ssbz, debug, "");
                if (rtn != "0")
                {
                    return(rtn);
                }

                if (debug == "1")
                {
                    log.WriteMyLog("未查询到申请单记录,获取基本信息");
                }

                OSQ = "<root><patientId></patientId><visitNo>" + Ssbz + "</visitNo></root>";
            }
            else
            if (Sslbx == "门诊号")
            {
                string rtn = SP_SELECT.ptxml2(Sslbx, Ssbz, debug, "");
                if (rtn != "0")
                {
                    return(rtn);
                }

                if (debug == "1")
                {
                    log.WriteMyLog("未查询到申请单记录,获取基本信息");
                }

                OSQ = "<root><patientId></patientId><visitNo>" + Ssbz + "</visitNo></root>";
            }
            else
            if (Sslbx == "住院号")
            {
                string rtn = SP_SELECT.ptxml2(Sslbx, Ssbz, debug, "");
                if (rtn != "0")
                {
                    return(rtn);
                }

                if (debug == "1")
                {
                    log.WriteMyLog("未查询到申请单记录,获取基本信息");
                }

                OSQ = "<root><patientId></patientId><visitNo>" + Ssbz + "</visitNo></root>";
            }
            else
            {
                MessageBox.Show("无此识别类型" + Sslbx);
                return("0");
            }

            aydefyweb.WSInterface ayd2yy = new LGHISJKZGQ.aydefyweb.WSInterface();
            if (WebUrl.Trim() != "")
            {
                ayd2yy.Url = WebUrl;
            }

            string msgHeader = "<?xml version=\"1.0\" encoding=\"utf-8\"?><root><serverName>GetPatientBaseInfoIndex</serverName>"
                               + "<format>xml</format><callOperator></callOperator><certificate>" + certificate + "</certificate></root>";

            if (debug == "1")
            {
                log.WriteMyLog("入参:msgHeader:" + msgHeader + "\r\nmsgBody" + OSQ);
            }


            try
            {
                string rtn = "";
                try
                {
                    rtn = ayd2yy.CallInterface(msgHeader, OSQ);
                }
                catch (Exception e1)
                {
                    MessageBox.Show("连接webservice异常:" + e1.Message);
                    return("0");
                }
                if (debug == "1")
                {
                    log.WriteMyLog("返回:" + rtn);
                }

                if (rtn == "<?xml version=\"1.0\" encoding=\"utf-8\"?><root/>")
                {
                    MessageBox.Show("未查询到病人信息");
                    return("0");
                }

                PT_XML px = new PT_XML();


                XmlNode     xmlok = null;
                XmlDocument xd    = new XmlDocument();
                try
                {
                    xd.LoadXml(rtn);
                    xmlok = xd.SelectSingleNode("/root/patients/patient");
                }
                catch
                {
                    MessageBox.Show("未查询到病人信息");
                    return("0");
                }


                px.myDictionary["姓名"] = xmlok["patientName"].InnerText;
                string xb = xmlok["patientSex"].InnerText;
                if (xb == "1")
                {
                    xb = "女";
                }
                else if (xb.Trim() == "0")
                {
                    xb = "男";
                }
                else
                {
                    xb = "";
                }
                px.myDictionary["性别"] = xb;

                if (Sslbx.Trim() == "住院号")
                {
                    px.myDictionary["病人类别"] = "住院";
                    px.myDictionary["住院号"]  = xmlok["visitNo"].InnerText;
                    try
                    {
                        px.myDictionary["送检科室"] = xmlok["admissionDept"].InnerText;
                    }
                    catch
                    {
                    }
                    px.myDictionary["就诊ID"] = xmlok["visitNum"].InnerText;
                }
                else
                {
                    px.myDictionary["病人类别"] = "门诊";
                    px.myDictionary["门诊号"]  = xmlok["visitNo"].InnerText;
                    try
                    {
                        px.myDictionary["送检科室"] = xmlok["cureDept"].InnerText;
                    }
                    catch
                    {
                    }
                    if (Sslbx.Trim() == "卡号")
                    {
                        px.myDictionary["就诊ID"] = Ssbz;
                    }
                }


                px.myDictionary["年龄"]   = ZGQClass.CsrqToAge(xmlok["patientBirthdate"].InnerText);
                px.myDictionary["地址"]   = xmlok["commPostCode"].InnerText;
                px.myDictionary["电话"]   = xmlok["telephone"].InnerText;
                px.myDictionary["病人编号"] = xmlok["patientId"].InnerText;

                px.myDictionary["申请序号"] = "";
                px.myDictionary["送检医生"] = "";
                px.myDictionary["费别"]   = "";
                px.myDictionary["临床诊断"] = "";
                px.myDictionary["民族"]   = "";
                px.myDictionary["身份证号"] = xmlok["identityNo"].InnerText;

                string exep = "";
                return(px.rtn_XML(ref exep));
            }
            catch (Exception ee)
            {
                MessageBox.Show(ee.Message);

                return("0");
            }

            #endregion
        }