Пример #1
0
        /// <summary>
        /// 通过功能组名称根据用户角色获得 组内所以可以显示的项目的名称
        /// </summary>
        /// <param name="groupname">功能组名称</param>
        /// <returns>项目名称列表</returns>
        public List <Outlook_Table_Jb_User> getItemNameByGroupName(string groupname)
        {
            List <Outlook_Table_Jb_User> list = new List <Outlook_Table_Jb_User>();
            string sql = "select ITEMNAME,PICNAME from OUTLOOK_TABLE_JB_USER  where GROUPNAME = @groupname and jiaose = @role and yesno = '1'order by TRIG_ID";

            try
            {
                Hashtable table = new Hashtable();
                table.Add("@groupname", groupname);
                table.Add("@role", Global.longid);
                DbParameter[] parms = dbHelper.getParams(table);

                DataTable ds = dbHelper.GetDataSet(sql, parms);
                for (int i = 0; i < ds.Rows.Count; i++)
                {
                    Outlook_Table_Jb_User outlook = new Outlook_Table_Jb_User();
                    outlook.Itemname = ds.Rows[i]["ITEMNAME"].ToString();
                    outlook.Picname  = ds.Rows[i]["PICNAME"].ToString();
                    list.Add(outlook);
                }

                dbHelper.getConnection().Close();
            }
            catch (Exception ex)
            {
                Log.write(ex.Message + "\r\n" + ex.StackTrace);
                throw ex;
            }
            finally
            {
                dbHelper.getConnection().Close();
            }
            return(list);
        }
Пример #2
0
        /// <summary>
        /// 初始化工具栏中的内容
        /// </summary>
        public void initToolBar()
        {
            List <string> groups = layoutBLL.getAllGroupName();

            for (int i = 0; i < groups.Count; i++)
            {
                IconPanel iconPanel1 = new IconPanel();

                MainToolBar.AddBand(groups[i].ToString(), iconPanel1);
                List <Outlook_Table_Jb_User> items = layoutBLL.getItemNameByGroupName(groups[i].ToString());
                table.Add(iconPanel1, items);
                for (int j = 0; j < items.Count; j++)
                {
                    Outlook_Table_Jb_User outlook = items[j];
                    iconPanel1.AddIcon(outlook.Itemname, imlMain.Images[outlook.Picname], new MouseEventHandler(PanelEvent));
                }
            }
            //if (groups.Count < 3)
            //{
            MainToolBar.SelectBand(0);
            //}
            //else
            //{
            //    MainToolBar.SelectBand(3);
            //    openWatchMain();
            //}
        }
Пример #3
0
        //保存
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                string jiaose = comboBox1.Text;
                if (jiaose == "sa")
                {
                    MessageBox.Show("超级管理员权限不能被修改!", "信息!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;
                }
                List <Outlook_Table_Jb_User> users = new List <Outlook_Table_Jb_User>();
                foreach (DataGridViewRow row in dataGridView1.Rows)
                {
                    Outlook_Table_Jb_User user = new Outlook_Table_Jb_User();
                    user.Groupname = row.Cells[3].Value.ToString();
                    user.Itemname  = row.Cells[2].Value.ToString();
                    user.Jiase     = row.Cells[0].Value.ToString();
                    user.Ob_name   = row.Cells[7].Value.ToString();
                    user.Objecname = row.Cells[6].Value.ToString();
                    user.Picname   = row.Cells[4].Value.ToString();
                    user.Trig_id   = Convert.ToDecimal(row.Cells[5].Value);

                    user.Yesno = row.Cells[1].Value.ToString();
                    users.Add(user);
                    //     MessageBox.Show(row.Cells[1].Value.ToString());
                }

                if (bll.save(jiaose, users))
                {
                    MessageBox.Show("数据保存成功!", "信息!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    Log.saveLog(string.Format("设置用户{0}权限成功!", jiaose));
                }
                else
                {
                    MessageBox.Show("数据保存失败!", "信息!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
            catch (Exception)
            {
                MessageBox.Show("与数据库连接失败,请查看网络连接是否正常。如不能解决请与网络管理员联系!", "严重错误:", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #4
0
        /// <summary>
        /// 处理工具栏中相关项的点击事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void PanelEvent(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                if (sender is Label)
                {
                    try
                    {
                        string key      = ((Label)sender).Text; //获得数据字典中的key 即功能项目的名称
                        string formText = "  " + key;
                        formName = Dictionary[key].ToString();  //获得数据字典中的 对应窗口的类名


                        if (!ShowChildrenForm(formText))
                        {
                            //以下是通过反射 获得该窗体的实例

                            Type t = Type.GetType(Global.namespceName + "." + formName);

                            CurrentForm = (Form)Activator.CreateInstance(t);



                            CurrentForm.MdiParent = this;
                            //设置窗体的标题
                            CurrentForm.Text = formText;
                            if (!CurrentForm.IsDisposed)
                            {
                                CurrentForm.WindowState = FormWindowState.Maximized;
                                CurrentForm.Show();
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("该功能出现错误:" + ex.Message);
                    }
                }
                else
                {
                    PanelIcon pic = (PanelIcon)sender;
                    List <Outlook_Table_Jb_User> list    = (List <Outlook_Table_Jb_User>)table[pic.iconPanel];
                    Outlook_Table_Jb_User        jb_user = list[pic.Index];
                    try
                    {
                        string key      = jb_user.Itemname;    //获得数据字典中的key 即功能项目的名称
                        string formText = "  " + key;
                        formName = Dictionary[key].ToString(); //获得数据字典中的 对应窗口的类名

                        if (!ShowChildrenForm(formText))
                        {
                            //以下是通过反射 获得该窗体的实例
                            Type t = Type.GetType(Global.namespceName + "." + formName);
                            CurrentForm = (Form)Activator.CreateInstance(t);

                            CurrentForm.MdiParent = this;
                            //设置窗体的标题
                            CurrentForm.Text = "  " + key;
                            if (!CurrentForm.IsDisposed)
                            {
                                CurrentForm.WindowState = FormWindowState.Maximized;
                                CurrentForm.Show();
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("该功能出现错误:" + ex.Message);
                    }
                }
            }
        }