コード例 #1
0
ファイル: AYD2FY.cs プロジェクト: ewin66/LGI.Gzzszlfz
        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
        }
コード例 #2
0
        /// <summary>
        ///取 HIS 信息接口
        /// </summary>
        /// <param name="sHISName">医院名称</param>
        /// <param name="Sslbx">识别类型</param>
        /// <param name="Ssbz">识别值</param>
        /// <param name="Debug">是否写日志</param>
        /// <param name="by">备用</param>
        /// <returns></returns>
        public string LGGetHISINFO(string sHISName, string Sslbx, string Ssbz, string Debug, string by)
        {
            ///Pweb
            if (sHISName.ToUpper() == "PWEB")
            {
                return("123456789012345");
            }
            if (sHISName.ToUpper() == "ZSDXZLYYFZ")
            {
                return(zsdxzlyy_fz.ptxml(Sslbx, Ssbz, Debug));
            }
            ///新疆肿瘤
            if (sHISName.ToUpper() == "XJZLYY")
            {
                return(xjzlyy.ptxml(Sslbx, Ssbz, Debug));
            }
            //威海市立
            if (sHISName.ToUpper() == "WHSLYY")
            {
                return(sdswhslyy.ptxml(Sslbx, Ssbz, Debug));
            }

            //锦州
            if (sHISName.ToUpper() == "JZYKDXFSYY")
            {
                return(jzykdxfsyy.ptxml(Sslbx, Ssbz, Debug));
            }

            ///湘雅2院
            if (sHISName.ToUpper() == "XY2Y")
            {
                return(xy2y.ptxml(Sslbx, Ssbz, Debug));
            }


            ///中山大学眼科医院
            if (sHISName.ToUpper() == "ZSDXYKYY")
            {
                return(zsdxykyy.ptxml(Sslbx, Ssbz, Debug));
            }

            ///广东省中医院   住院 Servlet /Json
            if (sHISName.ToUpper() == "GDSZYY")
            {
                return(gdszyy.ptxml(Sslbx, Ssbz, Debug));
            }

            ///张家港市第一人民医院
            if (sHISName.ToUpper() == "ZJGSDYRMYY")
            {
                return(zjgsdyrmyy.ptxml(Sslbx, Ssbz, Debug));
            }

            ///东莞市东华医院
            if (sHISName.ToUpper() == "DGSDHYY")
            {
                return(dgdhyy.ptxml(Sslbx, Ssbz, Debug));
            }

            ///福州市第二医院
            if (sHISName.ToUpper() == "FZS2Y")
            {
                return(fzs2y.ptxml(Sslbx, Ssbz, Debug));
            }

            ///安医大二附院
            if (sHISName.ToUpper() == "AYD2FY")
            {
                return(AYD2FY.ptxml(Sslbx, Ssbz, Debug));
            }
            ///存储过程
            if (sHISName.ToUpper() == "CCGC")
            {
                return(SP_SELECT.ptxml(Sslbx, Ssbz, Debug));
            }
            ///多条数据选择窗
            if (sHISName.ToUpper() == "DTSJXS")
            {
                return(SP_SELECT.ptxml2(Sslbx, Ssbz, Debug));
            }
            ////宁波北仑人民医院
            if (sHISName.ToUpper() == "NBBLMRYY")
            {
                return(NBBLRMYY.ptxml(Sslbx, Ssbz, Debug));
            }
            //////盛泽医院
            if (sHISName.ToUpper() == "SZSZYY")
            {
                return(SZSZYY.ptxml(Sslbx, Ssbz, Debug));
            }
            //////宁波鄞州人民医院
            if (sHISName.ToUpper() == "NBYZRMYY")
            {
                return(NBYZRMYY.ptxml(Sslbx, Ssbz, Debug));
            }
            ////长沙中心医院
            if (sHISName.ToUpper() == "CSZXYY")
            {
                return(CSZXYY.ptxml(Sslbx, Ssbz, Debug));
            }
            ////武汉协和医院
            if (sHISName.ToUpper() == "WHXHYY")
            {
                return(WHXHYY.ptxml(Sslbx, Ssbz, Debug));
            }
            //////安徽省肿瘤医院
            if (sHISName.ToUpper() == "AHSZLYY")
            {
                return(AHSZLYY.ptxml(Sslbx, Ssbz, Debug));
            }
            //////宁波鄞州第二医院
            if (sHISName.ToUpper() == "NBYZD2YY")
            {
                return(NBYZ2Y.ptxml(Sslbx, Ssbz, Debug));
            }
            ////山西肿瘤医院
            if (sHISName.ToUpper() == "SXSZLYY")
            {
                return(SXSZLYY.ptxml(Sslbx, Ssbz, Debug));
            }
            ////重庆市医科大学附属永川医院
            if (sHISName.ToUpper() == "CQYCYY")
            {
                return(CQYCYY.ptxml(Sslbx, Ssbz, Debug));
            }
            ////湘雅3院
            if (sHISName.ToUpper() == "XY3Y")
            {
                return(XY3Y.xy3yxml(Sslbx, Ssbz, Debug));
            }
            ////湘雅附一医院
            if (sHISName.ToUpper() == "XYFYYY")
            {
                return(XYFYYY.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 武夷山市立医院
            if (sHISName.ToUpper() == "WYSSLYY")
            {
                return(WYSSLYY.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 汕头中心医院
            if (sHISName.ToUpper() == "STZXYY")
            {
                return(STZXYY.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 北京宣武医院
            if (sHISName.ToUpper() == "BJXWYY")
            {
                return(bjxwyy.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 北京航天医院
            if (sHISName.ToUpper() == "BJHTYY")
            {
                return(BJHTYY.ptxml(Sslbx, Ssbz, Debug));
            }
            ////福建省省立医院
            if (sHISName.ToUpper() == "FJSSLYY")
            {
                return(FJSSLYY.ptxml(Sslbx, Ssbz, Debug));
            }
            ////邵阳市中心医院--HL7-撤销申请单
            if (sHISName.ToUpper() == "SYSZXYY")
            {
                return(SYSZXYY.ptxml(Sslbx, Ssbz, Debug));
            }
            ////湖南省人民医院   webservices
            if (sHISName.ToUpper() == "HNSRMYY")
            {
                return(HNSRMYY.ptxml(Sslbx, Ssbz, Debug));
            }
            ////长沙市妇幼  jsdwn'dll  蔡
            if (sHISName.ToUpper() == "CSSFYBJY")
            {
                return(LGHISJK.cssfybjy.cssfybjyhx(Sslbx, Ssbz, Debug));
            }
            ////长沙市妇幼  体检
            if (sHISName.ToUpper() == "CSSFY")
            {
                return(CSSFY.ptxml(Sslbx, Ssbz, Debug));
            }
            ////上海市仁济医院  接口  jsdwn'dll
            if (sHISName.ToUpper() == "SHSRJYY")
            {
                return(LGHISJK.shsrjyy.shsrjyyXML(Sslbx, Ssbz, Debug));
            }
            ////山西大二院  webservices 西门子
            if (sHISName.ToUpper() == "SXDEY")
            {
                return(SXDEY.ptxml(Sslbx, Ssbz, Debug));
            }
            ////中山肿瘤 webservices
            if (sHISName.ToUpper() == "ZSZL")
            {
                return(zsdxzlyy.ptxml(Sslbx, Ssbz, Debug));
            }
            ////中山肿瘤 平台
            if (sHISName.ToUpper() == "ZSZLPT")
            {
                return(zsdxzlyyPT.ptxml(Sslbx, Ssbz, Debug));
            }
            ////南京胸科医院 webservices
            if (sHISName.ToUpper() == "NJXKYY")
            {
                return(LGHISJK.njxkyy.njxkyyXML(Sslbx, Ssbz, Debug));
            }
            ////福建省妇幼保健院 webservices+HL7
            if (sHISName.ToUpper() == "FJSFY")
            {
                return(FJSFYBJY.ptxml(Sslbx, Ssbz, Debug));
            }
            ////上海市嘉定区中医医院 webservices
            if (sHISName.ToUpper() == "SHJDZYYY")
            {
                return(shsjdqzyyy.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 常德市第一人民医院 平台
            if (sHISName.ToUpper() == "CDSDYRMYY")
            {
                return(cdsdyrmyy.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 南京中大医院
            if (sHISName.ToUpper() == "NJZDYY")
            {
                return(njzdyy.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 石河子一附院
            if (sHISName.ToUpper() == "XJSHZYY")
            {
                return(xjshzyy.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 石河子一附院  体检接口--czf
            if (sHISName.ToUpper() == "SHZ1FY")
            {
                return(shz1fy.cz1yxml(Sslbx, Ssbz, Debug));
            }
            //// 宁波象山人民医院  视图
            if (sHISName.ToUpper() == "NBXSRMYY")
            {
                return(nbxsrmyy.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 厦门第一医院
            if (sHISName.ToUpper() == "XMDYYY")
            {
                return(XMDYYY.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 南京高淳--不用,改用czf的
            if (sHISName.ToUpper() == "NJSGCRMYY")
            {
                return(NJSGCRMYY.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 苏附一
            if (sHISName.ToUpper() == "SFYYY")
            {
                return(jsszsfy.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 青海大学附属医院
            if (sHISName.ToUpper() == "QHDXFSYY")
            {
                return(qhdxfsyy.ptxml(Sslbx, Ssbz, Debug));
            }
            //// 厦门中山医院 mq医惠,客户端安装MQ
            if (sHISName.ToUpper() == "XMZSYY")
            {
                return(xmzsyy.ptxml(Sslbx, Ssbz));
            }
            //// 厦门中山医院 mq医惠,服务器安装MQ,解决客户端安装MQ,初次提取信息时缓慢的问题
            if (sHISName.ToUpper() == "XMSZSYY")
            {
                return(xmszsyy.ptxml(Sslbx, Ssbz));
            }
            else
            {
                MessageBox.Show(sHISName + ",无此医院参数!", "PATHGETHISZGQ");
                return("0");
            }
        }