Exemple #1
0
        /// <summary>
        /// 调用获取个人信息接口
        /// </summary>
        /// <param name="hObj"></param>
        /// <returns></returns>
        private bool GetPersonInfo(OutpatientClass hObj)
        {
            String sOut;

            AddLog("调用获取个人信息接口");
            AddLog("输入参数:无");

            hObj.GetPersonInfo(out sOut);

            AddLog("输出数据:");
            AddLog(sOut);

            XmlDocument xmlDoc = GetXmlDoc(sOut);

            bool bRet = CheckOutputState(xmlDoc);

            if (bRet)
            {
                string  sIC_NO, sPersonName;
                XmlNode dataNode = GetNodeFromPath(xmlDoc.DocumentElement, "output/ic");
                sIC_NO      = dataNode.SelectNodes("ic_no")[0].InnerText;
                sPersonName = dataNode.SelectNodes("personname")[0].InnerText;
                AddLog("解析XML结果:\r\n医保应用号:" + sIC_NO + "\r\n姓名:" + sPersonName);
            }

            xmlDoc = null;

            AddLog("\r\n");

            return(bRet);
        }
Exemple #2
0
        /// <summary>
        /// 调用获取个人信息接口
        /// </summary>
        /// <param name="sDll"></param>
        /// <returns></returns>
        public ResultClass GetPersonInfo(OutpatientClass sDll, string cardNo)
        {
            ResultClass resultClassTemp = new ResultClass();

            string    sMome = "";
            bool      bRet  = false;
            string    sOut  = "";
            DataTable dt    = new DataTable();

            _sColumns.Clear();
            //ic卡
            _sColumns.Add("card_no");   //社保卡卡号
            _sColumns.Add("ic_no");
            _sColumns.Add("id_no");
            _sColumns.Add("personname");
            _sColumns.Add("sex");
            _sColumns.Add("birthday");
            _sColumns.Add("fromhosp");
            _sColumns.Add("fromhospdate");
            _sColumns.Add("fundtype");
            _sColumns.Add("isyt");
            _sColumns.Add("jclevel");
            _sColumns.Add("hospflag");
            //网络信息
            _sColumns.Add("persontype");
            _sColumns.Add("isinredlist");
            _sColumns.Add("isspecifiedhosp");
            _sColumns.Add("ischronichosp");
            _sColumns.Add("personcount");
            _sColumns.Add("chroniccode");
            dt = CreatDataTable(_sColumns);

            AddLog("调用获取个人信息接口");
            AddLog("输入参数:无");

            sDll.GetPersonInfo(out sOut);

            AddLog("输出数据:");
            AddLog(sOut);

            XmlDocument xmlDoc = GetXmlDoc(sOut);

            CheckOutputState(xmlDoc, out bRet, out sMome);

            if (bRet)
            {
                DataRow dr          = dt.NewRow();
                XmlNode dataNode    = GetNodeFromPath(xmlDoc.DocumentElement, "output/ic");
                XmlNode dataNodeNet = GetNodeFromPath(xmlDoc.DocumentElement, "output/net");
                foreach (string s in _sColumns)
                {
                    XmlNodeList xNodeList = dataNode.SelectNodes(s);
                    if (xNodeList.Count > 0)
                    {
                        dr[s] = xNodeList[0].InnerText;
                    }
                    else
                    {
                        dr[s] = dataNodeNet.SelectNodes(s)[0].InnerText;
                    }
                }
                dt.Rows.Add(dr);
                AddLog("解析获取个人信息接口完成");

                List <PatientInfo> patientInfoList = new List <PatientInfo>();
                foreach (DataRow drI in dt.Rows)
                {
                    PatientInfo patientInfo = new PatientInfo();
                    patientInfo.CardNo          = drI["card_no"].ToString();
                    patientInfo.IcNo            = drI["ic_no"].ToString();
                    patientInfo.IdNo            = drI["id_no"].ToString();
                    patientInfo.PersonName      = drI["personname"].ToString();
                    patientInfo.Sex             = drI["sex"].ToString();
                    patientInfo.Birthday        = drI["birthday"].ToString();
                    patientInfo.FromHosp        = drI["fromhosp"].ToString();
                    patientInfo.FromHospDate    = drI["fromhospdate"].ToString();
                    patientInfo.FundType        = drI["fundtype"].ToString();
                    patientInfo.IsYT            = drI["isyt"].ToString();
                    patientInfo.JcLevel         = drI["jclevel"].ToString();
                    patientInfo.HospFlag        = drI["hospflag"].ToString();
                    patientInfo.PersonType      = drI["persontype"].ToString();
                    patientInfo.IsInredList     = drI["isinredlist"].ToString();
                    patientInfo.IsSpecifiedHosp = drI["isspecifiedhosp"].ToString();
                    patientInfo.IsChronicHosp   = drI["ischronichosp"].ToString();
                    patientInfo.PersonCount     = drI["personcount"].ToString();
                    patientInfo.ChronIcCode     = drI["chroniccode"].ToString();
                    patientInfoList.Add(patientInfo);
                }

                resultClassTemp.oResult = patientInfoList;
            }
            xmlDoc = null;

            resultClassTemp.bSucess  = bRet;
            resultClassTemp.sRemarks = sMome;
            return(resultClassTemp);
        }