懒羊羊
2023-12-28 e46d3baaf3e8d7d85f4bafec3aad75e52b078408
提交 | 用户 | 时间
e46d3b 1 using System;
2 using System.Collections.Generic;
3 using System.ComponentModel;
4 using System.Data;
5 using System.Drawing;
6 using System.Linq;
7 using System.Text;
8 using System.Windows.Forms;
9 using WeifenLuo.WinFormsUI.Docking;
10 using YX.Entity;
11 using YX.BLL;
12 namespace YX
13 {
14     public partial class FrmRole : WindowParent
15     {
16         SystemMenu_Bll menu_bll = new SystemMenu_Bll();
17         SystemRole_Bll role_bll = new SystemRole_Bll();
18   
19         public FrmRole(string ParentId)
20         {
21             InitializeComponent();
22             SetButton(ParentId, this.toolStrip1);//设置按钮权限
23
24         }
25     
26         private void FrmRole_Load(object sender, EventArgs e)
27         {
28             BindTreeView();
29             if (treeView1.Nodes.Count > 0)
30             {
31                 treeView1.Nodes[0].Expand();
32             }
33             //设置不自动显示数据库中未绑定的列
34             this.dataGridView1.AutoGenerateColumns = false;
35         }
36         public void BindTreeView()
37         {
38             try
39             {
40                 treeView1.ImageList = imageList1;
41                 treeView1.Nodes.Clear();
42                 var list = role_bll.GetRoles();
43                 var parents = list.Where(o => o.ParentId == "0");
44                 foreach (var item in parents)
45                 {
46                     TreeNode tn = new TreeNode();
47                     tn.Text = item.Roles_Name;
48                     tn.Tag = item.Roles_ID;
49                     tn.ImageIndex = 0;
50                     FillTree(tn, list);
51                     treeView1.Nodes.Add(tn);
52                 }
53             }
54             catch (Exception ex)
55             {
56                 System_Bll.WriteLogToDB(new Entity.Base_Log
57                 {
58                     CreateUserID = FrmLogin.LoginUserID,
59                     CreateUserName = FrmLogin.loginUserName,
60                     LocalIP = FrmLogin.LocalIP,
61                     LogMessage = ex.Message,
62                     Type = "系统错误!",
63                     ClassName = typeof(FrmRole).ToString()
64                 });
65                 MessageBox.Show(ex.Message);
66             }
67         }
68
69         private void FillTree(TreeNode node, List<Base_Roles> list)
70         {
71
72             var childs = list.Where(o => o.ParentId == node.Tag.ToString());
73             if (childs.Count() > 0)
74             {
75                 foreach (var item in childs)
76                 {
77                     TreeNode tnn = new TreeNode();
78                     tnn.Text = item.Roles_Name;
79                     tnn.Tag = item.Roles_ID;
80                     tnn.ImageIndex = 0;
81                     if (item.ParentId == node.Tag.ToString())
82                     {
83                         FillTree(tnn, list);
84                     }
85                     node.Nodes.Add(tnn);
86                 }
87
88             }
89         }
90
91         private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
92         {
93             string roleID = e.Node.Tag.ToString();
94             this.dataGridView1.DataSource = role_bll.GetRoleByRoleId(roleID);
95             
96         }
97
98         private void btn_add_Click(object sender, EventArgs e)
99         {
100             FrmRoleEdit edit = new FrmRoleEdit(this);
101          
102             edit.ShowDialog();
103         }
104
105         private void btn_edit_Click(object sender, EventArgs e)
106         {
107             if (dataGridView1.DataSource == null)
108             {
109                 MessageBox.Show("请选择要编辑的行!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
110             }
111             else
112             {
113                 DataGridViewRow dr = dataGridView1.SelectedRows[0];
114                 if (dr != null)
115                 {
116                     FrmRoleEdit edit = new FrmRoleEdit(this, ref dr);
117                     edit.ShowDialog();
118                 }
119             }
120         }
121
122         private void btn_delete_Click(object sender, EventArgs e)
123         {
124             try
125             {
126                 DataGridViewRow dr = dataGridView1.SelectedRows[0];
127                 if (dr != null)
128                 {
129                     int result = role_bll.DeleteRole(dr.Cells["Roles_ID"].Value.ToString());
130                     if (result == 1)
131                     {
132                         MessageBox.Show("删除成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
133                         this.dataGridView1.DataSource = role_bll.GetRoleByRoleId(treeView1.SelectedNode.Tag.ToString());
134                         BindTreeView();
135                     }
136                     else
137                     {
138                         MessageBox.Show("删除失败!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
139                     }
140                 }
141             }
142             catch (Exception ex)
143             {
144
145                 System_Bll.WriteLogToDB(new Entity.Base_Log
146                 {
147                     CreateUserID = FrmLogin.LoginUserID,
148                     CreateUserName = FrmLogin.loginUserName,
149                     LocalIP = FrmLogin.LocalIP,
150                     LogMessage = ex.Message,
151                     Type = "系统错误!",
152                     ClassName = typeof(FrmRole).ToString()
153                 });
154                 MessageBox.Show(ex.Message);
155             }
156         }
157
158         private void btn_refresh_Click(object sender, EventArgs e)
159         {
160             if (treeView1.SelectedNode != null)
161             {
162                 this.dataGridView1.DataSource = role_bll.GetRoleByRoleId(this.treeView1.SelectedNode.Tag.ToString());
163             }
164           
165         }
166         private void 刷新ToolStripMenuItem_Click(object sender, EventArgs e)
167         {
168             BindTreeView();
169             if (treeView1.Nodes.Count > 0)
170             {
171                 treeView1.Nodes[0].Expand();
172             }
173         }
174     }
175 }