Example #1
0
        /// <summary>
        /// 发药消息明细
        /// </summary>
        /// <param name="presorderid"></param>
        /// <param name="masterid"></param>
        public void InsertDrugMessageRecord(int presorderid, int masterid)
        {
            Model.ZY_DRUGMESSAGE_MASTER zyDurgMessageMaster = new ZY_DRUGMESSAGE_MASTER();
            Model.ZY_PresOrder          zyPresOrder         = BindEntity <ZY_PresOrder> .CreateInstanceDAL(oleDb).GetModel(presorderid);

            Model.ZY_PatList zyPatlist = BindEntity <ZY_PatList> .CreateInstanceDAL(oleDb).GetModel(zyPresOrder.PatListID);

            Model.YP_MakerDic makerdic = BindEntity <YP_MakerDic> .CreateInstanceDAL(oleDb).GetModel(zyPresOrder.ItemID);

            Model.YP_ProductDic productdic = BindEntity <YP_ProductDic> .CreateInstanceDAL(oleDb).GetModel(makerdic.ProductID);

            Model.ZY_DRUGMESSAGE_ORDER zy_drugMessageOrder = new ZY_DRUGMESSAGE_ORDER();
            zy_drugMessageOrder.MASTERID      = masterid;
            zy_drugMessageOrder.MAKERDICID    = zyPresOrder.ItemID;
            zy_drugMessageOrder.CHEMNAME      = zyPresOrder.ItemName;
            zy_drugMessageOrder.SPEC          = zyPresOrder.Standard;
            zy_drugMessageOrder.DRUGNUM       = zyPresOrder.Amount;
            zy_drugMessageOrder.CUREDEPT      = Convert.ToInt32(zyPresOrder.PresDeptCode);
            zy_drugMessageOrder.CUREDOC       = Convert.ToInt32(zyPresOrder.PresDocCode);
            zy_drugMessageOrder.CURENO        = zyPatlist.CureNo;
            zy_drugMessageOrder.PATNAME       = zyPatlist.PatientInfo.PatName;
            zy_drugMessageOrder.BEDNO         = zyPatlist.BedCode;
            zy_drugMessageOrder.PATID         = zyPresOrder.PatListID;
            zy_drugMessageOrder.UNITNAME      = zyPresOrder.Unit;
            zy_drugMessageOrder.TRADEPRICE    = zyPresOrder.Buy_Price;
            zy_drugMessageOrder.RETAILPRICE   = zyPresOrder.Sell_Price;
            zy_drugMessageOrder.UNITNUM       = Convert.ToInt32(zyPresOrder.RelationNum);
            zy_drugMessageOrder.ORDERRECIPEID = presorderid;
            zy_drugMessageOrder.CHARGEMAN     = Convert.ToInt32(zyPresOrder.ChargeCode);
            zy_drugMessageOrder.CHARGEDATE    = zyPresOrder.CostDate;
            zy_drugMessageOrder.ORDERGROUP_ID = zyPresOrder.group_id;
            zy_drugMessageOrder.DOCORDERTYPE  = zyPresOrder.order_type;
            zy_drugMessageOrder.DOCORDERID    = zyPresOrder.order_id;
            zy_drugMessageOrder.SPECDICID     = makerdic.SpecDicID;     // add 2010-09-19 zenghao
            zy_drugMessageOrder.PRODUCTNAME   = productdic.ProductName; // add 2010-09-19 zenghao
            BindEntity <ZY_DRUGMESSAGE_ORDER> .CreateInstanceDAL(oleDb).Add(zy_drugMessageOrder);

            //object obj = BindEntity<ZY_DRUGMESSAGE_ORDER>.CreateInstanceDAL(oleDb).GetFieldValue("max(drugmessageid)", "1=1");


            //string strwhere2 = "drugmessageid=" + int.Parse(obj.ToString());
            //string updatefield = Tables.zy_drugmessage_order.SPECDICID+oleDb.EuqalTo()+ makerdic.SpecDicID;
            //BindEntity<HIS.Model.ZY_DRUGMESSAGE_ORDER>.CreateInstanceDAL(oleDb).Update(strwhere2, updatefield);


            //string strWhere = "drugmessageid=" + masterid;
            //string updatefiled1 = Tables.zy_drugmessage_master.PRESDEPTID + oleDb.EuqalTo() +Convert.ToInt32(zyPresOrder.PresDeptCode);
            //string updatefiled2 = Tables.zy_drugmessage_master.DISPDEPT + oleDb.EuqalTo() + Convert.ToInt32(zyPresOrder.ExecDeptCode);
            //BindEntity<HIS.Model.ZY_DRUGMESSAGE_MASTER>.CreateInstanceDAL(oleDb).Update(strWhere, updatefiled1,updatefiled2);

            return;
        }
Example #2
0
        /// <summary>
        /// 上传病程记录
        /// </summary>
        /// <param name="record">病历记录</param>
        public static void Upload_In_Hospital_Records(string dahId, EmrRecord record)
        {
            XmlDocument upateData = new XmlDocument();
            XmlDocument result    = new XmlDocument();

            upateData.LoadXml(Properties.Resources.InHospitalRecords);
            #region  入病历数据
            foreach (XmlNode node in upateData.SelectSingleNode("chs/table/row").ChildNodes)
            {
                foreach (XmlNode recordNode in record.RecordContentXml.SelectSingleNode("病程记录").ChildNodes)
                {
                    if (node.InnerText.Trim() == recordNode.Name.Trim())
                    {
                        node.InnerText = recordNode.InnerText;
                    }
                }
            }
            Model.PatientInfo patInfo = BindEntity <Model.PatientInfo> .CreateInstanceDAL(oleDb).GetModel(record.PatId);

            Model.ZY_PatList patList = BindEntity <Model.ZY_PatList> .CreateInstanceDAL(oleDb).GetModel(record.PatListId);

            upateData.SelectSingleNode("chs/table/row/zyid").InnerText  = (HIS.SYSTEM.Core.EntityConfig.WorkID * 10000000 + record.PatListId).ToString();                                                            //住院ID
            upateData.SelectSingleNode("chs/table/row/dahid").InnerText = dahId;                                                                                                                                     //档案号
            upateData.SelectSingleNode("chs/table/row/cf").InnerText    = "";                                                                                                                                        //处方
            upateData.SelectSingleNode("chs/table/row/qt").InnerText    = "";                                                                                                                                        //其他
            upateData.SelectSingleNode("chs/table/row/zdqt").InnerText  = "";                                                                                                                                        //其他诊断
            upateData.SelectSingleNode("chs/table/row/jcrq").InnerText  = record.RecordCreateDate.Year.ToString("0000") + record.RecordCreateDate.Month.ToString("00") + record.RecordCreateDate.Day.ToString("00"); //检查日期
            upateData.SelectSingleNode("chs/table/row/jcys").InnerText  = new GWMHIS.BussinessLogicLayer.Classes.Employee(Convert.ToInt64(record.RecordCreateEmp)).Name;                                             //检查医生
            upateData.SelectSingleNode("chs/table/row/jgdm").InnerText  = HIS.SYSTEM.Core.EntityConfig.WorkID.ToString();
            upateData.SelectSingleNode("chs/table/row/djr").InnerText   = new GWMHIS.BussinessLogicLayer.Classes.Employee(Convert.ToInt64(record.RecordCreateEmp)).Name;
            upateData.SelectSingleNode("chs/table/row/djrq").InnerText  = record.RecordCreateDate.Year.ToString("0000") + record.RecordCreateDate.Month.ToString("00") + record.RecordCreateDate.Day.ToString("00");
            #endregion

            CHIService service = new CHIService();
            result.LoadXml(service.upload_In_Hospital_Records(upateData.InnerXml));

            if (Convert.ToBoolean(result.SelectSingleNode("chs/status").InnerText))
            {
                record.UpdateFlag = 1;
                record.Update();
            }
            else
            {
                throw new Exception(result.SelectSingleNode("chs/message").InnerText);
            }
        }
Example #3
0
        /// <summary>
        /// 上传入院记录
        /// </summary>
        /// <param name="record">病历记录</param>
        public static void Upload_To_Hospital_Records(string dahId, EmrRecord record)
        {
            XmlDocument upateData = new XmlDocument();
            XmlDocument result    = new XmlDocument();

            upateData.LoadXml(Properties.Resources.ToHospitalRecords);
            #region  入病历数据
            foreach (XmlNode node in upateData.SelectSingleNode("chs/table/row").ChildNodes)
            {
                foreach (XmlNode recordNode in record.RecordContentXml.SelectSingleNode("入院记录").ChildNodes)
                {
                    if (node.InnerText.Trim() == recordNode.Name.Trim())
                    {
                        node.InnerText = recordNode.InnerText;
                    }
                }
            }

            Model.PatientInfo patInfo = BindEntity <Model.PatientInfo> .CreateInstanceDAL(oleDb).GetModel(record.PatId);

            Model.ZY_PatList patList = BindEntity <Model.ZY_PatList> .CreateInstanceDAL(oleDb).GetModel(record.PatListId);

            upateData.SelectSingleNode("chs/table/row/zyid").InnerText  = (HIS.SYSTEM.Core.EntityConfig.WorkID * 10000000 + record.PatListId).ToString(); //住院ID
            upateData.SelectSingleNode("chs/table/row/zyh").InnerText   = patInfo.CureNo;                                                                 //住院号
            upateData.SelectSingleNode("chs/table/row/dahid").InnerText = dahId;                                                                          //档案号
            upateData.SelectSingleNode("chs/table/row/zylx").InnerText  = "1";                                                                            //住院类型
            //付费方式
            switch (patInfo.ACCOUNTTYPE)
            {
            case "自费":
                upateData.SelectSingleNode("chs/table/row/fffs").InnerText = "8";
                break;

            case "农合":
                upateData.SelectSingleNode("chs/table/row/fffs").InnerText = "6";
                break;

            case "居民医保":
                upateData.SelectSingleNode("chs/table/row/fffs").InnerText = "4";
                break;

            case "职工医保":
                upateData.SelectSingleNode("chs/table/row/fffs").InnerText = "3";
                break;

            case "公费":
                upateData.SelectSingleNode("chs/table/row/fffs").InnerText = "1";
                break;

            default:
                upateData.SelectSingleNode("chs/table/row/fffs").InnerText = "9";
                break;
            }
            upateData.SelectSingleNode("chs/table/row/ryrq").InnerText     = patList.CureDate.Year.ToString("0000") + patList.CureDate.Month.ToString("00") + patList.CureDate.Day.ToString("00"); //入院时间
            upateData.SelectSingleNode("chs/table/row/ryks").InnerText     = new GWMHIS.BussinessLogicLayer.Classes.Employee(Convert.ToInt64(patList.CureDeptCode)).Name;                          //科室
            upateData.SelectSingleNode("chs/table/row/ch").InnerText       = patList.BedCode;                                                                                                      //床号
            upateData.SelectSingleNode("chs/table/row/zzys").InnerText     = new GWMHIS.BussinessLogicLayer.Classes.Employee(Convert.ToInt64(Convert.ToInt64(patList.CureDocCode))).Name;          //主治医生
            upateData.SelectSingleNode("chs/table/row/qt").InnerText       = "";                                                                                                                   //其他
            upateData.SelectSingleNode("chs/table/row/csd").InnerText      = "";                                                                                                                   //出生地
            upateData.SelectSingleNode("chs/table/row/gzdw").InnerText     = "";                                                                                                                   //工作单位
            upateData.SelectSingleNode("chs/table/row/zdqt").InnerText     = "";
            upateData.SelectSingleNode("chs/table/row/jzyy").InnerText     = HIS.SYSTEM.Core.EntityConfig.WorkName;
            upateData.SelectSingleNode("chs/table/row/jgdm").InnerText     = HIS.SYSTEM.Core.EntityConfig.WorkID.ToString();
            upateData.SelectSingleNode("chs/table/row/djr").InnerText      = new GWMHIS.BussinessLogicLayer.Classes.Employee(Convert.ToInt64(record.RecordCreateEmp)).Name;
            upateData.SelectSingleNode("chs/table/row/djrq").InnerText     = record.RecordCreateDate.Year.ToString("0000") + record.RecordCreateDate.Month.ToString("00") + record.RecordCreateDate.Day.ToString("00");
            upateData.SelectSingleNode("chs/table/row/his_blbh").InnerText = (record.RecordId).ToString();
            #endregion

            CHIService service = new CHIService();
            result.LoadXml(service.upload_To_Hospital_Records(upateData.InnerXml));

            if (Convert.ToBoolean(result.SelectSingleNode("chs/status").InnerText))
            {
                record.UpdateFlag = 1;
                record.Update();
                Upload_Zycf_Records(record.PatListId, dahId, record.RecordId);
            }
            else
            {
                throw new Exception(result.SelectSingleNode("chs/message").InnerText);
            }
        }