Beispiel #1
0
        /// <summary>
        /// 医嘱验证
        /// </summary>
        /// <param name="inpateint_id"></param>
        /// <param name="baby_id"></param>
        /// <param name="dept_br"></param>
        /// <param name="wardbr"></param>
        /// <param name="inpatient_no"></param>
        /// <param name="tb"></param>
        public static string Yzyz(string inpateint_id, string baby_id, string dept_br, string wardbr, string inpatient_no, DataTable tb, string in_date)
        {
            try
            {
                if (GetCpstatus(inpateint_id, baby_id, dept_br, wardbr, inpatient_no, in_date) != 0)
                {
                    string strWorker = "WORKER_ID@" + FrmMdiMain.CurrentUser.LoginCode + "|WORKER_NAME@" + FrmMdiMain.CurrentUser.Name + "|WORKER_MEDIC_DEGREE@|WORKER_MEDIC_DUTY@|WORKER_MEDIC_DEPARTMENT@" + FrmMdiMain.CurrentDept.WardName + "|WORKER_MEDIC_DIVISION@|WORKER_MEDIC_GROUP@|WORKER_MEDIC_OFFICE@" + FrmMdiMain.CurrentDept.DeptName + "|WORKER_MEDIC_DEPARTMENT_ID@" + FrmMdiMain.CurrentDept.WardId + "|WORKER_MEDIC_OFFICE_ID@" + FrmMdiMain.CurrentDept.DeptId + "";
                    //设置病人的索引信息
                    string strPatientIndex = "UHID@|DATE_VALIDATED@" + in_date + "|CELL_ID@|OUTPATIENT_ID@|INPATIENT_ID@" + inpatient_no + "|MEDICAL_RECORD_ID@|HIS_INSIDE_ID@|HIS_OUTSIDE_ID@|SOCIAL_SECURITY_ID@|Tag@";
                    //初始化接口
                    Inscription.Manadal.EmrPlugIn.epiFunctionBase Function = Inscription.Manadal.EmrPlugIn.epiManager.GetEmrPlugInFunction("HIS", "", strWorker, strPatientIndex);
                    string    xml   = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Group>";
                    DataTable tbnew = tb.Copy();

                    tbnew.DefaultView.RowFilter = " (status_flag is null or status_flag<=0 ) and 医嘱内容 is not null";
                    tbnew = tbnew.DefaultView.ToTable();
                    if (tbnew.Rows.Count == 0)
                    {
                        return("");
                    }
                    int flag = 0;
                    for (int i = 0; i < tbnew.Rows.Count; i++)
                    {
                        //第医嘱的第一行
                        if (tbnew.Rows[i]["医嘱内容"].ToString().Trim() != "" && IsGroupFirstRow(tbnew, i))
                        {
                            //if (xml != "<?xml version=\"1.0\" encoding=\"utf-8\"?>")
                            //    xml += "</Group>";
                            xml += "<ITEM ADVICE_CODE='" + (tbnew.Rows[i]["xmly"].ToString().Trim() == "1" ? "yp":"xm") + tbnew.Rows[i]["hoitem_id"].ToString().Trim() + "' ADVICE_NAME_A='" + tbnew.Rows[i]["医嘱内容"].ToString().Trim() + "' PRICE_DOSE_SPECS='" + tbnew.Rows[i]["剂量"].ToString().Trim() + tbnew.Rows[i]["单位"].ToString().Trim() + "' PRICE_DOSE_VALUE='0'/>";
                        }
                        else
                        {
                            xml += "<ITEM ADVICE_CODE='" + (tbnew.Rows[i]["xmly"].ToString().Trim() == "1" ? "yp" : "xm") + tbnew.Rows[i]["hoitem_id"].ToString().Trim() + "' ADVICE_NAME_A='" + tbnew.Rows[i]["医嘱内容"].ToString().Trim() + "' PRICE_DOSE_SPECS='" + tbnew.Rows[i]["剂量"].ToString().Trim() + tbnew.Rows[i]["单位"].ToString().Trim() + "' PRICE_DOSE_VALUE='0'/>";
                        }

                        //if(i==tbnew.Rows.Count-1)
                        //    xml += "</Group>";
                    }
                    xml += "</Group>";
                    string RunInfo = Function.Cell("医嘱验证", new string[] { xml });

                    return(RunInfo);
                }
                return("");
            }
            catch (Exception ex)
            {
                return("操作取消");

                throw new Exception(ex.Message + " 医嘱验证错误");
            }
        }
Beispiel #2
0
 public static int GetCpstatus(string inpateint_id, string baby_id, string dept_br, string wardbr, string inpatient_no, string in_date)
 {
     try
     {
         string strWorker = "WORKER_ID@" + FrmMdiMain.CurrentUser.LoginCode + "|WORKER_NAME@" + FrmMdiMain.CurrentUser.Name + "|WORKER_MEDIC_DEGREE@|WORKER_MEDIC_DUTY@|WORKER_MEDIC_DEPARTMENT@" + FrmMdiMain.CurrentDept.WardName + "|WORKER_MEDIC_DIVISION@|WORKER_MEDIC_GROUP@|WORKER_MEDIC_OFFICE@" + FrmMdiMain.CurrentDept.DeptName + "|WORKER_MEDIC_DEPARTMENT_ID@" + FrmMdiMain.CurrentDept.WardId + "|WORKER_MEDIC_OFFICE_ID@" + FrmMdiMain.CurrentDept.DeptId + "";
         //设置病人的索引信息
         string strPatientIndex = "UHID@|DATE_VALIDATED@" + in_date + "|CELL_ID@|OUTPATIENT_ID@|INPATIENT_ID@" + inpatient_no + "|MEDICAL_RECORD_ID@|HIS_INSIDE_ID@|HIS_OUTSIDE_ID@|SOCIAL_SECURITY_ID@|Tag@";
         //初始化接口
         Inscription.Manadal.EmrPlugIn.epiFunctionBase Function = Inscription.Manadal.EmrPlugIn.epiManager.GetEmrPlugInFunction("HIS", "", strWorker, strPatientIndex);
         string RunInfo = Function.Cell("是否入径", new string[] { "All" });
         if (RunInfo.Trim() == "" || RunInfo == string.Empty)
         {
             return(0);//代表没有进入路径
         }
         else
         {
             return(1);
         }
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
Beispiel #3
0
        public static bool ShowCpform(string _inpatient_id, string _baby_id, string dept_br, string wardbr, string inpatient_no, string in_date)
        {
            string strWorker = "WORKER_ID@" + FrmMdiMain.CurrentUser.LoginCode + "|WORKER_NAME@" + FrmMdiMain.CurrentUser.Name + "|WORKER_MEDIC_DEGREE@|WORKER_MEDIC_DUTY@|WORKER_MEDIC_DEPARTMENT@" + FrmMdiMain.CurrentDept.WardName + "|WORKER_MEDIC_DIVISION@|WORKER_MEDIC_GROUP@|WORKER_MEDIC_OFFICE@" + FrmMdiMain.CurrentDept.DeptName + "|WORKER_MEDIC_DEPARTMENT_ID@" + FrmMdiMain.CurrentDept.WardId + "|WORKER_MEDIC_OFFICE_ID@" + FrmMdiMain.CurrentDept.DeptId + "";
            //设置病人的索引信息
            string strPatientIndex = "UHID@|DATE_VALIDATED@" + in_date + "|CELL_ID@|OUTPATIENT_ID@|INPATIENT_ID@" + inpatient_no + "|MEDICAL_RECORD_ID@|HIS_INSIDE_ID@|HIS_OUTSIDE_ID@|SOCIAL_SECURITY_ID@|Tag@";

            //strPatientIndex = "UHID@2[测试医生2]431517619234.375|DATE_VALIDATED@2013-09-03 10:00:19|CELL_ID@|OUTPATIENT_ID@|INPATIENT_ID@131017533|MEDICAL_RECORD_ID@|HIS_INSIDE_ID@|HIS_OUTSIDE_ID@|SOCIAL_SECURITY_ID@|Tag@";

            // strWorker = "WORKER_ID@guest1|WORKER_NAME@Guest1|WORKER_MEDIC_DEGREE@院长|WORKER_MEDIC_DUTY@|WORKER_MEDIC_DEPARTMENT@%|WORKER_MEDIC_DIVISION@系统用户|WORKER_MEDIC_GROUP@系统用户|WORKER_MEDIC_OFFICE@系统用户|WORKER_MEDIC_DEPARTMENT_ID@|WORKER_MEDIC_OFFICE_ID@";
            //初始化接口
            Inscription.Manadal.EmrPlugIn.epiFunctionBase Function = Inscription.Manadal.EmrPlugIn.epiManager.GetEmrPlugInFunction("HIS", "", strWorker, strPatientIndex);
            //获取路径医嘱套餐
            string RunInfo = Function.Cell("获取医嘱套餐", new string[] { });
            //MessageBox.Show(RunInfo);
            //return true;
            DataView newview = new DataView();
            //newview = view;
            DataTable tbview = new DataTable();
            int       yf     = 0;

            //选择药房 Modify By zouchihua 2012-9-28 0表示所有药房
            if (yf != 0)
            {
                tbview = view.Table;
                tbview.DefaultView.RowFilter = " ((type in (1,2,3) and default_dept=" + yf.ToString() + ") or type not in (1,2,3))";
            }
            else
            {
                tbview = view.Table;
                tbview.DefaultView.RowFilter = " ";
            }
            newview = new DataView(tbview.DefaultView.ToTable());
            string    xmlstr = RunInfo;
            DataTable tb     = GetTable(xmlstr);

            if (tb == null)
            {
                return(false);
            }
            //更改列名
            tb.Columns["ADVICE_TYPE_CODE"].ColumnName = "xmly";
            tb.Columns["GROUP_ID"].ColumnName         = "fzxh";
            tb.Columns["OPEN_TYPE_CODE"].ColumnName   = "mngtype";//临时或者长期医嘱
            tb.Columns["USAGE_NAME"].ColumnName       = "yf";
            tb.Columns["FREQ_NAME"].ColumnName        = "pc";

            tb.Columns["base_dose_value"].ColumnName    = "jl";   //剂量
            tb.Columns["BASE_DOSE_UNITNAME"].ColumnName = "jldw";
            tb.Columns["ADVICE_CODE"].ColumnName        = "xmid"; //项目为hotiem_id ,药品为cjid;
            tb.Columns["ADVICE_NAME_A"].ColumnName      = "content";

            ArrayList ArCfxh = new ArrayList();

            try
            {
                SaveCporder(newview, tb, _inpatient_id, _baby_id, dept_br, wardbr, Guid.Empty.ToString(), Guid.Empty.ToString(), Guid.Empty.ToString(), Guid.Empty.ToString(), ref ArCfxh);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return(false);
            }
            return(true);
        }