Employee_Group.cs 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Windows.Forms;
  5. using UAS_MES_NEW.CustomControl.AccordionMenu;
  6. using UAS_MES_NEW.CustomControl.DataGrid_View;
  7. using UAS_MES_NEW.DataOperate;
  8. using UAS_MES_NEW.Entity;
  9. using UAS_MES_NEW.PublicMethod;
  10. namespace UAS_MES_NEW.Employee
  11. {
  12. public partial class Employee_Group : Form
  13. {
  14. DataHelper dh;
  15. DataTable dt;
  16. DataTable Dbfind;
  17. DataTable Dbfind1;
  18. AutoSizeFormClass asc = new AutoSizeFormClass();
  19. public Employee_Group()
  20. {
  21. InitializeComponent();
  22. try { UAS_MES_NEW.I18n.LanguageManager.Localize(this); } catch { }
  23. }
  24. private void 人员分组_Load(object sender, EventArgs e)
  25. {
  26. asc.controllInitializeSize(this);
  27. dh = SystemInf.dh;
  28. //手动加入第一列全选列
  29. DataGridViewCheckBoxColumn dgvc = new DataGridViewCheckBoxColumn();
  30. dgvc.AutoSizeMode = DataGridViewAutoSizeColumnMode.None;
  31. dgvc.Width = 90;
  32. dgvc.Name = "全选";
  33. DataGridViewCheckBoxHeaderCell ch1 = new DataGridViewCheckBoxHeaderCell(UserGroupDGV, dgvc);
  34. dgvc.HeaderCell = ch1;
  35. this.UserGroupDGV.Columns.Insert(0, dgvc);
  36. ug_code.FormName = Name;
  37. ug_code.TableName = "CS$USERGROUP";
  38. ug_code.SelectField = "ug_code # 分组编号,ug_name # 分组名称,ug_inman # 录入人,ug_indate #录入日期";
  39. ug_code.SetValueField = new string[] { "ug_code" };
  40. ug_code.DbChange += Ug_code_Dbchage;
  41. ug_name.FormName = Name;
  42. ug_name.TableName = "CS$USERGROUP";
  43. ug_name.SelectField = "ug_code # 分组编号,ug_name # 分组名称,ug_inman # 录入人,ug_indate #录入日期";
  44. ug_name.SetValueField = new string[] { "ug_name" };
  45. ug_name.DbChange += Ug_name_Dbchage;
  46. ug_code.KeyDown += KeyDownEvent;
  47. ug_name.KeyDown += KeyDownEvent;
  48. }
  49. private void Ug_name_Dbchage(object sender, EventArgs e)
  50. {
  51. Dbfind = ug_name.ReturnData;
  52. BaseUtil.SetFormValue(this.Controls, Dbfind);
  53. }
  54. private void Ug_code_Dbchage(object sender, EventArgs e)
  55. {
  56. Dbfind1 = ug_code.ReturnData;
  57. BaseUtil.SetFormValue(this.Controls, Dbfind1);
  58. }
  59. private void 人员分组_SizeChanged(object sender, EventArgs e)
  60. {
  61. asc.controlAutoSize(this);
  62. }
  63. private void Screen_Click(object sender, EventArgs e)
  64. {
  65. dt = (DataTable)dh.ExecuteSql("select ug_code,ug_id,ug_name,'查看组内成员' UserSetting,'权限分配' PowerSetting from cs$usergroup " + BaseUtil.GetScreenSqlCondition(ug_code, ug_name) + " order by ug_code", "select");
  66. BaseUtil.FillDgvWithDataTable(UserGroupDGV, dt);
  67. }
  68. private void DeleteGroup_Click(object sender, EventArgs e)
  69. {
  70. string ConfirmDelete = MessageBox.Show(this.ParentForm, UAS_MES_NEW.I18n.LanguageManager.T("删除分组会一并删除组员和权限,确认删除?"), UAS_MES_NEW.I18n.LanguageManager.T("提示"), MessageBoxButtons.YesNo, MessageBoxIcon.Question).ToString();
  71. if (ConfirmDelete == "Yes")
  72. {
  73. //UserGroup的ID
  74. List<string> DeleteID = new List<string>();
  75. //分组编号
  76. List<string> DeleteCode = new List<string>();
  77. for (int i = 0; i < UserGroupDGV.Rows.Count; i++)
  78. {
  79. if (UserGroupDGV.Rows[i].Cells["全选"].FormattedValue.ToString() == "True")
  80. {
  81. DeleteID.Add(UserGroupDGV.Rows[i].Cells["ug_id"].Value.ToString());
  82. DeleteCode.Add(UserGroupDGV.Rows[i].Cells["ug_code"].Value.ToString());
  83. }
  84. }
  85. dh.BatchInsert("delete from cs$usergroup where ug_id=:ug_id", new string[] { "ug_id" }, DeleteID.ToArray());
  86. dh.BatchInsert("delete from cs$empgroup where eg_groupcode=:ug_code", new string[] { "ug_code" }, DeleteCode.ToArray());
  87. dh.BatchInsert("delete from cs$usergrouppower where ugp_groupcode=:ug_code", new string[] { "ug_code" }, DeleteCode.ToArray());
  88. MessageBox.Show(UAS_MES_NEW.I18n.LanguageManager.T("删除分组成功"));
  89. Screen.PerformClick();
  90. }
  91. }
  92. private void NewGroup_Click(object sender, EventArgs e)
  93. {
  94. Employee_NewGroup NewWin = new Employee_NewGroup();
  95. BaseUtil.SetFormCenter(NewWin);
  96. NewWin.FormClosed += Screen_Click;
  97. NewWin.ShowDialog();
  98. }
  99. private void UserGroupDGV_CellClick(object sender, DataGridViewCellEventArgs e)
  100. {
  101. if (e.RowIndex >= 0 && e.ColumnIndex >= 0)
  102. {
  103. string CallerUser = "Employee!DataGroup";
  104. string CallerPower = "Employee!PowerGroup";
  105. if (UserGroupDGV.Columns[e.ColumnIndex].Name == "UserSetting" && !AccordionMenu.OpenedFormName.ContainsKey(CallerUser))
  106. {
  107. AccordionMenu.OpenedFormName.Add(CallerUser, 101);
  108. TabControl tc = (TabControl)this.Parent.Parent;
  109. TabPage tb = new TabPage { Name = CallerUser, Tag = CallerUser, Text = "人员查看" };
  110. tc.TabPages.Add(tb);
  111. string ug_code = UserGroupDGV.Rows[e.RowIndex].Cells["ug_code1"].Value.ToString();
  112. string ug_name = UserGroupDGV.Rows[e.RowIndex].Cells["ug_name1"].Value.ToString();
  113. Employee_ChooseUserToGroup NewUser = new Employee_ChooseUserToGroup(ug_code, ug_name);
  114. NewUser.TopLevel = false;
  115. tc.SelectedTab = tb;
  116. tb.Controls.Add(NewUser);
  117. NewUser.WindowState = FormWindowState.Maximized;
  118. NewUser.Show();
  119. }
  120. else if (UserGroupDGV.Columns[e.ColumnIndex].Name == "PowerSetting" && !AccordionMenu.OpenedFormName.ContainsKey(CallerPower))
  121. {
  122. AccordionMenu.OpenedFormName.Add(CallerPower, 101);
  123. TabControl tc = (TabControl)this.Parent.Parent;
  124. //如果窗体不存在进行打开
  125. TabPage tb = new TabPage { Tag = CallerPower, Name = CallerPower, Text = "权限控制" };
  126. tc.TabPages.Add(tb);
  127. string ug_code = UserGroupDGV.Rows[e.RowIndex].Cells["ug_code1"].Value.ToString();
  128. string ug_name = UserGroupDGV.Rows[e.RowIndex].Cells["ug_name1"].Value.ToString();
  129. Employee_Power NewPower = new Employee_Power(ug_code, ug_name);
  130. NewPower.TopLevel = false;
  131. tc.SelectedTab = tb;
  132. tb.Controls.Add(NewPower);
  133. NewPower.WindowState = FormWindowState.Maximized;
  134. NewPower.Show();
  135. }
  136. }
  137. }
  138. private void KeyDownEvent(object sender, KeyEventArgs e)
  139. {
  140. if (e.KeyCode == Keys.Enter)
  141. {
  142. Screen.PerformClick();
  143. }
  144. }
  145. }
  146. }