Пример #1
0
        /// <summary>
        /// 根据类别得到通用模板列表
        /// </summary>
        /// <param name="catalog">模板类别</param>
        /// <returns></returns>
        public DataTable GetTemplate(string catalog, string deptCode)
        {
            string auditConfig    = AppConfigReader.GetAppConfig("TempletAuditConfig").Config;
            string newEmrShowType = AppConfigReader.GetAppConfig("NewEmrShowType").Config;//1:按照病种分组  2:不进行分组
            string sqlGetTemplate = string.Empty;

            if (auditConfig.Split('-')[0] == "1")
            {
                if (newEmrShowType == "1")
                {
                    sqlGetTemplate = sql_queryTemplateAudited + " order by ordername ";
                }
                else
                {
                    sqlGetTemplate = sql_queryTemplateAudited + " order by mr_name ";
                }
            }
            else
            {
                if (newEmrShowType == "1")
                {
                    sqlGetTemplate = sql_queryTemplate + " order by ordername ";
                }
                else
                {
                    sqlGetTemplate = sql_queryTemplate + " order by mr_name ";
                }
            }
            DataTable dt = m_app.SqlHelper.ExecuteDataTable(string.Format(sqlGetTemplate, catalog, deptCode));

            //GetActuralTemplate(dt);
            return(dt);
        }
Пример #2
0
        private void SetShowType()
        {
            string newEmrShowType = AppConfigReader.GetAppConfig("NewEmrShowType").Config; //1:按照病种分组  2:不进行分组

            if (newEmrShowType != "1")                                                     //不进行分组
            {
                colkIND.GroupIndex = -1;
                gridView1.OptionsView.ShowGroupPanel = false;
            }
        }
Пример #3
0
        /// <summary>
        /// 针对护理的表单设置页数
        /// </summary>
        private void SetPageIndexForNurseRecord()
        {
            string AutoAddPage = AppConfigReader.GetAppConfig("AutoAddPageForNurseRecord").Config;

            if (AutoAddPage == "1")
            {
                string pageIndex = m_PatUtil.GetNurseRecordPageIndex(m_Model.InstanceId.ToString(), m_Model.TempIdentity, m_Model.ModelCatalog, m_noofinpat).ToString();
                if (pageIndex != "-1")
                {
                    CurrentForm.zyEditorControl1.EMRDoc.PageIndexForNurse = pageIndex;
                    CurrentForm.zyEditorControl1.EMRDoc.Refresh();
                    CurrentForm.zyEditorControl1.Refresh();
                }
            }
        }
Пример #4
0
        /// <summary>
        /// 判断是否超时
        /// </summary>
        /// <param name="qccode"></param>
        /// <param name="dt"></param>
        /// <returns></returns>
        bool checkOutTime(string qccode, DataTable dt)
        {
            bool result = false;

            string islock = "";

            islock = AppConfigReader.GetAppConfig("IsLockByQcTime").Config; // if(m)
            //加锁的部门编号
            string lockDept = AppConfigReader.GetAppConfig("LockDept").Config;

            string[] dept = lockDept.Split(',');
            {
                foreach (string deptno in dept)
                {
                    if (m_app.User.CurrentDeptId.Trim() == deptno.Trim())
                    {
                        result = true;
                    }
                }
            }
            if (result)
            {
                if (islock == "0")
                {
                    result = false;
                }
                else
                {
                    result = false;
                    if (dt != null)
                    {
                        for (int i = 0; i < dt.Rows.Count; i++)
                        {
                            if (dt.Rows[i]["qccode"].ToString().Trim() == qccode)
                            {
                                result = true;
                            }
                        }
                    }
                }
            }
            return(result);
        }
Пример #5
0
 private void InitWardInfo()
 {
     try
     {
         string   config = AppConfigReader.GetAppConfig("ChangeWardLookAllWard").Config;
         string[] array  = config.Split(new char[]
         {
             ','
         });
         string[] array2 = FormMain.Instance.User.GWCodes.Split(new char[]
         {
             ','
         });
         bool      flag        = false;
         string    commandText = "select id from jobs ";
         ArrayList arrayList   = new ArrayList();
         DataTable dataTable   = ((IEmrHost)FormMain.Instance).SqlHelper.ExecuteDataTable(commandText);
         if (dataTable.Rows.Count > 0)
         {
             for (int i = 0; i < dataTable.Rows.Count; i++)
             {
                 arrayList.Add(dataTable.Rows[i]["ID"].ToString());
             }
         }
         string[] array3 = array;
         for (int j = 0; j < array3.Length; j++)
         {
             string   text   = array3[j];
             string[] array4 = array2;
             for (int k = 0; k < array4.Length; k++)
             {
                 string b = array4[k];
                 if (text == b && text != "")
                 {
                     if (arrayList.Contains(text))
                     {
                         flag = true;
                     }
                 }
             }
         }
         if (flag)
         {
             string    commandText2 = "SELECT a.id deptid, a.name deptname, b.id wardid, b.name wardname \r\n                                                 FROM department a, ward b, dept2ward c\r\n                                                WHERE a.id = c.deptid and b.id = c.wardid and a.valid = '1' and b.valid = '1'\r\n                                             ORDER BY a.name ";
             DataTable dataTable2   = ((IEmrHost)FormMain.Instance).SqlHelper.ExecuteDataTable(commandText2);
             foreach (DataRow dataRow in dataTable2.Rows)
             {
                 DeptWardInfo current = new DeptWardInfo(dataRow["deptid"].ToString(), dataRow["deptname"].ToString(), dataRow["wardid"].ToString(), dataRow["wardname"].ToString());
                 this.comboBoxEdit_Dt.Properties.Items.Add(current);
             }
         }
         else
         {
             foreach (DeptWardInfo current in FormMain.Instance.User.RelateDeptWards)
             {
                 this.comboBoxEdit_Dt.Properties.Items.Add(current);
             }
         }
     }
     catch (SqlException message)
     {
         FormMain.Instance.Logger.Error(message);
     }
     catch (Exception message2)
     {
         FormMain.Instance.Logger.Error(message2);
     }
 }
Пример #6
0
        /// <summary>
        /// add by  ywk 2012年6月1日 14:54:43
        ///  修改模板的功能
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnEditTempl_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (treeList1.FocusedNode == null)
            {
                return;
            }
            TreeListNode focusNode = treeList1.FocusedNode;

            if (!treeList1.FocusedNode.GetValue("NODETYPE").ToString().Equals("Leaf"))
            {
                m_app.CustomMessageBox.MessageShow("请选择模板");
                return;
            }
            //新增时先记录点击的节点以便修改后还是定位在此处
            string nodeID = string.Empty;

            if (this.treeList1.FocusedNode != null)
            {
                nodeID = treeList1.FocusedNode.GetValue("ID").ToString();
            }

            TempletItem item = (TempletItem)treeList1.FocusedNode.Tag;

            //原显示是有问题的add by 杨伟康
            if (item.Content.Contains("\n\r"))
            {
                m_ItemContent.MyItem.Content = item.Content.Replace("\n\r", "\r\n");
            }
            else if (item.Content.Contains("'||chr(10)||chr(13)||'"))
            {
                m_ItemContent.MyItem.Content = item.Content.Replace("'||chr(10)||chr(13)||'", "\r\n");
            }
            else
            {
                m_ItemContent.MyItem.Content = item.Content;
            }
            //m_ItemContent.MyItem.Content = item.Content.Replace("\n\r", "\r\n");


            m_ItemContent.MyItem.Code        = item.Code;        //模板CODE
            m_ItemContent.MyItem.ItemName    = item.ItemName;    //模板名称
            m_ItemContent.MyItem.CatalogName = item.CatalogName; //分类名称
            m_ItemContent.MyItem.ParentID    = item.ParentID;    //父节点
            m_ItemContent.MyItem.IsPerson    = item.IsPerson;    //区分科室和个人小模板
            m_ItemContent.MyItem.CreateUser  = item.CreateUser;

            //修改和删除只能控制到是创建人进行操作 add by ywk  edit by cyq 2012-09-27
            //if (m_ItemContent.MyItem.CreateUser != m_app.User.Id)
            //{
            //    m_app.CustomMessageBox.MessageShow("此模板只有创建者可以进行修改");
            //    return;
            //}
            //是否可以修改所有人创建的模板(0不可以 1;K)
            string CanEditPersonTempleteAll = AppConfigReader.GetAppConfig("CanEditPersonTempleteAll").Config;

            if (CanEditPersonTempleteAll.Trim() == "0")
            {
                string msg = GetMsgIfNotCreateUser(nodeID, item.CreateUser, 1, 0, int.Parse(item.IsPerson));
                if (!string.IsNullOrEmpty(msg))
                {
                    m_app.CustomMessageBox.MessageShow(msg);
                    return;
                }
            }
            if (m_ItemContent.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                string content = string.Empty;
                if (m_ItemContent.MyItem.Content.Contains("\r\n"))//存在换行,替代插入数据库中 edit by ywk
                {
                    content = m_ItemContent.MyItem.Content.Replace("\r\n", "'||chr(10)||chr(13)||'");
                }
                else
                {
                    content = m_ItemContent.MyItem.Content;
                }
                string            updatesql = @" update emrtemplet_item_person set item_content=@content,name=@name where code=@code ";
                OracleParameter[] paraList  = new OracleParameter[]
                {
                    new OracleParameter("content", OracleType.Clob),
                    new OracleParameter("name", OracleType.VarChar),
                    new OracleParameter("code", OracleType.VarChar)
                };
                paraList[0].Value = content;
                paraList[1].Value = m_ItemContent.MyItem.ItemName;
                paraList[2].Value = item.Code;

                DS_SqlHelper.CreateSqlHelper();
                DS_SqlHelper.ExecuteNonQuery(updatesql, paraList, CommandType.Text);

                PersonItemManager_Load(null, null);
                TreeListNode leafnode = treeList1.FindNodeByKeyID(nodeID);
                m_app.CustomMessageBox.MessageShow("修改成功");
                treeList1.FocusedNode = leafnode;
            }
        }
Пример #7
0
        private void InitWardInfo()
        {
            try
            {
                string jobIDs = AppConfigReader.GetAppConfig("ChangeWardLookAllWard").Config;

                string[] jobArray      = jobIDs.Split(',');
                string[] userJobArray  = FormMain.Instance.User.GWCodes.Split(',');
                bool     isLookAllWard = false;

                //如果删除了岗位,这边要先判断在配置中的岗位存在ywk
                string    sqlSerchJob = "select id from jobs ";
                ArrayList jobs        = new ArrayList();
                DataTable DtPower     = null;
                DtPower = ((IEmrHost)FormMain.Instance).SqlHelper.ExecuteDataTable(sqlSerchJob);
                if (DtPower.Rows.Count > 0)
                {
                    for (int i = 0; i < DtPower.Rows.Count; i++)
                    {
                        jobs.Add(DtPower.Rows[i]["ID"].ToString());
                    }
                }
                DtPower = null; //add by Ukey 2016-08-26
                foreach (string jobID in jobArray)
                {
                    foreach (string userJobID in userJobArray)
                    {
                        if (jobID == userJobID && jobID != "")
                        {
                            if (jobs.Contains(jobID))
                            {
                                isLookAllWard = true;
                            }
                        }
                    }
                }

                //update by Ukey 2016-08-26 判断非管理员权限的单一员工权限, 限制切换科室的一个人进入两个(非全院科室)权限
                DtPower = ((IEmrHost)FormMain.Instance).SqlHelper.ExecuteDataTable("select deptorward from users where id ='" + this.id + "'");
                DataRow  DrRow           = DtPower.Rows[0];
                string   strdeptorward   = null;
                string[] deptorwardArray = DrRow["deptorward"].ToString().Split(',');

                foreach (string dept in deptorwardArray)
                {
                    if (strdeptorward != null)
                    {
                        strdeptorward += "," + "'" + dept + "'";
                    }
                    else
                    {
                        strdeptorward = "'" + dept + "'";
                    }
                }



                DataTable dt = null;
                Dictionary <string, int> columnwidth = new Dictionary <string, int>();
                SqlWordbook sqlWordBook = null;

                if (isLookAllWard)                                                   //update by Ukey 2016-08-26
                {
                    string getAllDeptWards = @"select *   
                                                    from (SELECT a.id || b.id FLOWID,
                                                    a.id DEPTID,
                                                    b.id WARDID,
                                                    a.name DEPTNAME,
                                                    b.name WardName
                                                FROM department a, ward b, dept2ward c
                                                WHERE a.id = c.deptid
                                                and b.id = c.wardid
                                                and a.valid = '1'
                                                and b.valid = '1' ORDER BY a.name)"; //update by Ukey 2016-08-26
                    dt = ((IEmrHost)FormMain.Instance).SqlHelper.ExecuteDataTable(getAllDeptWards);
                    dt.Columns["FLOWID"].Caption   = "代码";
                    dt.Columns["WARDID"].Caption   = "病区ID";
                    dt.Columns["DEPTID"].Caption   = "科室ID";
                    dt.Columns["DEPTNAME"].Caption = "科室";
                    dt.Columns["WARDNAME"].Caption = "病区";
                }
                else
                {
                    string getAllDeptWards = @"select *   
                                                    from (SELECT a.id || b.id FLOWID,
                                                    a.id DEPTID,
                                                    b.id WARDID,
                                                    a.name DEPTNAME,
                                                    b.name WardName
                                                FROM department a, ward b, dept2ward c
                                                WHERE a.id = c.deptid
                                                and b.id = c.wardid
                                                and a.valid = '1'
                                                and b.valid = '1'
                                                and a.id in (" + strdeptorward + @") ORDER BY a.name)
                                                union 
                                                select *
                                                    from (SELECT a.id || b.id FLOWID,
                                                    a.id DEPTID,
                                                    b.id WARDID,
                                                    a.name DEPTNAME,
                                                    b.name WardName
                                                FROM department a, ward b, dept2ward c
                                                WHERE a.id = c.deptid
                                                and b.id = c.wardid
                                                and a.valid = '1'
                                                and b.valid = '1'
                                                and b.id in (" + strdeptorward + @") ORDER BY a.name)";//update by Ukey 2016-08-06
                    dt = ((IEmrHost)FormMain.Instance).SqlHelper.ExecuteDataTable(getAllDeptWards);
                    if (dt == null)
                    {
                        dt = new DataTable();
                        DataColumn colCode   = new DataColumn("DEPTID");
                        DataColumn colWardId = new DataColumn("WARDID");
                        DataColumn colFLOWID = new DataColumn("FLOWID");
                        DataColumn colName   = new DataColumn("DEPTNAME");
                        dt.Columns.Add(colCode);
                        dt.Columns.Add(colName);
                        dt.Columns.Add(colFLOWID);
                        dt.Columns.Add(colWardId);
                        dt.Columns["FLOWID"].Caption   = "代码";
                        dt.Columns["DEPTID"].Caption   = "科室ID";
                        dt.Columns["WARDID"].Caption   = "病区ID";
                        dt.Columns["DEPTNAME"].Caption = "科室";

                        columnwidth = new Dictionary <string, int>();
                        foreach (DeptWardInfo ward in FormMain.Instance.User.RelateDeptWards)
                        {
                            DataRow row = dt.NewRow();
                            row["DEPTID"]   = ward.DeptId;
                            row["WARDID"]   = ward.WardId;
                            row["FLOWID"]   = ward.DeptId + ward.WardId;
                            row["DEPTNAME"] = ward.DeptName + "(" + ward.WardName + ")";
                            dt.Rows.Add(row);
                        }
                    }
                    else
                    {
                        dt.Columns["FLOWID"].Caption   = "代码";
                        dt.Columns["DEPTID"].Caption   = "科室ID";
                        dt.Columns["WARDID"].Caption   = "病区ID";
                        dt.Columns["DEPTNAME"].Caption = "科室";
                        dt.Columns["WARDNAME"].Caption = "病区";
                    }
                }
                new GenerateShortCode(((IEmrHost)FormMain.Instance).SqlHelper).AutoAddShortCode(dt, "DEPTNAME");
                columnwidth.Add("DEPTID", 45);
                columnwidth.Add("WARDID", 45);
                columnwidth.Add("DEPTNAME", 110);
                sqlWordBook = new SqlWordbook("queryname", dt, "FLOWID", "DEPTNAME", columnwidth, "DEPTID//DEPTNAME//PY//WB");
                this.lookUpEditorDepart.SqlWordbook = sqlWordBook;
            }
            catch (System.Data.SqlClient.SqlException ex)
            {
                FormMain.Instance.Logger.Error(ex);
            }
            catch (Exception ex)
            {
                FormMain.Instance.Logger.Error(ex);
            }
        }