ItemManagerForm.cs 6.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  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.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using DotNettyFrom.config;
  11. using DotNettyFrom.db;
  12. using DotNettyFrom.excel;
  13. using DotNettyFrom.model;
  14. namespace DotNettyFrom.form
  15. {
  16. public partial class ItemManagerForm : Form
  17. {
  18. private int _SelectIndex = -1;
  19. public ItemManagerForm()
  20. {
  21. InitializeComponent();
  22. }
  23. private void ItemManagerForm_Load(object sender, EventArgs e)
  24. {
  25. CbFindType.SelectedIndex = 0;
  26. DataTable dataSource = DbHelper.GetInstance().SelectCmds();
  27. dataGridViewItem.DataSource = dataSource;
  28. }
  29. #region 事件
  30. private void dataGridViewItem_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
  31. {
  32. int row = dataGridViewItem.RowCount;
  33. int x = e.RowIndex;
  34. if (x >= 0 && x < row)
  35. {
  36. object value = dataGridViewItem[0, x].Value;
  37. ItemEditorForm ief = new ItemEditorForm(value.ToString());
  38. ief.ItemHandler += Ief_ItemHandler;
  39. ief.ShowDialog();
  40. }
  41. }
  42. private void BtnAddCmd_Click(object sender, EventArgs e)
  43. {
  44. ItemEditorForm ief = new ItemEditorForm();
  45. ief.ItemHandler += Ief_ItemHandler;
  46. ief.ShowDialog();
  47. }
  48. private void Ief_ItemHandler(int action, string message)
  49. {
  50. RtbLogInfo.Text = message;
  51. ReLoadDatatable();
  52. }
  53. private void BtnDelSelectItem_Click(object sender, EventArgs e)
  54. {
  55. if (_SelectIndex >= 0)
  56. {
  57. int id = int.Parse(dataGridViewItem[0, _SelectIndex].Value + "");
  58. string hex = dataGridViewItem[2, _SelectIndex].Value + "";
  59. DialogResult dialogResult = MessageBox.Show("确定删除 Primary Key=" + id + " Hex=" + hex + "?", "提示",
  60. MessageBoxButtons.OKCancel,
  61. MessageBoxIcon.Warning);
  62. if (dialogResult == DialogResult.OK)
  63. {
  64. int byId = DbHelper.GetInstance().DeleteCmdById(id);
  65. if (byId > 0)
  66. {
  67. ReLoadDatatable();
  68. RtbLogInfo.Text = "删除成功";
  69. }
  70. }
  71. }
  72. else
  73. {
  74. RtbLogInfo.Text = "请重新选中";
  75. }
  76. }
  77. private void ReLoadDatatable()
  78. {
  79. DataTable dt = dataGridViewItem.DataSource as DataTable;
  80. dt.Clear();
  81. dt = DbHelper.GetInstance().SelectCmds();
  82. dataGridViewItem.DataSource = dt;
  83. }
  84. private void BtnRefresh_Click(object sender, EventArgs e)
  85. {
  86. DataTable dt = dataGridViewItem.DataSource as DataTable;
  87. dt.Clear();
  88. dt = DbHelper.GetInstance().SelectCmds();
  89. dataGridViewItem.DataSource = dt;
  90. }
  91. private void BtnReset_Click(object sender, EventArgs e)
  92. {
  93. int res = DbHelper.GetInstance().ResetUserData();
  94. RtbLogInfo.Text = res > 0 ? "重置数据成功" : "重置失败";
  95. ReLoadDatatable();
  96. }
  97. private void BtnImportExcel_Click(object sender, EventArgs e)
  98. {
  99. OpenFileDialog openFileDialog = new OpenFileDialog();
  100. openFileDialog.Filter = "Excel文件|*.xls;*.xlsx|所有文件|*.*";
  101. openFileDialog.InitialDirectory = Application.StartupPath;
  102. if (openFileDialog.ShowDialog() == DialogResult.OK)
  103. {
  104. List<WvBean> wvBeans = new ExcelHelper(openFileDialog.FileName, RtbLogInfo).LoadExcelFile()
  105. .GetExcelList();
  106. InsertExcelList2DB(wvBeans);
  107. }
  108. this.DialogResult = DialogResult.None;
  109. }
  110. private void InsertExcelList2DB(List<WvBean> list)
  111. {
  112. for (var i = 0; i < list.Count; i++)
  113. {
  114. int res = DbHelper.GetInstance().InsertCmd(list[i]);
  115. if (res <= 0)
  116. {
  117. RtbLogInfo.Text += "插入失败" + list[i].ToString() + "\n";
  118. }
  119. }
  120. ReLoadDatatable();
  121. }
  122. private void BtnClearAll_Click(object sender, EventArgs e)
  123. {
  124. DialogResult dialogResult =
  125. MessageBox.Show("确定要清空所有数据?", "警告", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
  126. if (dialogResult == DialogResult.OK)
  127. {
  128. //
  129. DbHelper.GetInstance().DeleteAllData();
  130. ReLoadDatatable();
  131. }
  132. }
  133. private void BtnClose_Click(object sender, EventArgs e)
  134. {
  135. this.Close();
  136. }
  137. private void BtnFind_Click(object sender, EventArgs e)
  138. {
  139. string query = TBInputFind.Text.Trim();
  140. if (query.Equals(""))
  141. {
  142. ReLoadDatatable();
  143. }
  144. else
  145. {
  146. // ID - 10进制
  147. // ID - 16进制
  148. // 名字 - IDInfo
  149. // 描述 - Desp
  150. int mType = CbFindType.SelectedIndex;
  151. string table = DBConfig.GetTableName();
  152. string sql = "";
  153. switch (mType)
  154. {
  155. case 0:
  156. sql = @"select* from " + table + " where my_index = " + query;
  157. break;
  158. case 1:
  159. sql = @"select* from " + table + " where MY_ID = '" + query + "'";
  160. break;
  161. case 2:
  162. sql = @"select* from " + table + " where idInfo like '%" + query + "%'";
  163. break;
  164. case 3:
  165. sql = @"select* from " + table + " where desp like '%" + query + "%'";
  166. break;
  167. default:
  168. ReLoadDatatable();
  169. return;
  170. }
  171. DataTable dt = dataGridViewItem.DataSource as DataTable;
  172. dt.Clear();
  173. dt = DbHelper.GetInstance().SelectCmds(sql);
  174. dataGridViewItem.DataSource = dt;
  175. }
  176. }
  177. #endregion
  178. private void dataGridViewItem_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
  179. {
  180. if (e.Button == MouseButtons.Left)
  181. {
  182. int x = e.RowIndex;
  183. if (x >= 0 && x < dataGridViewItem.RowCount)
  184. {
  185. _SelectIndex = x;
  186. }
  187. }
  188. }
  189. }
  190. }