Main.cs 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209
  1. using System;
  2. using DevExpress.XtraBars;
  3. using UAS_DeviceMonitor.DataOperate;
  4. using System.Data;
  5. using System.Text;
  6. using UAS_DeviceMonitor.Entity;
  7. using UAS_DeviceMonitor.Device.Command;
  8. using UAS_DeviceMonitor.PublicMethod;
  9. using DevExpress.XtraEditors;
  10. using DevExpress.XtraGrid;
  11. using DevExpress.XtraGrid.Views.Grid;
  12. namespace UAS_DeviceMonitor
  13. {
  14. public partial class Main : DevExpress.XtraBars.Ribbon.RibbonForm
  15. {
  16. StringBuilder sql = new StringBuilder();
  17. public Main()
  18. {
  19. SystemInf.dh = new DataHelper();
  20. InitializeComponent();
  21. dpc_enableCheckEdit.QueryCheckStateByValue += CheckedEdit_QueryCheckStateByValue;
  22. CheckEditCommandSet.QueryCheckStateByValue += CheckedEdit_QueryCheckStateByValue;
  23. }
  24. private void Main_Load(object sender, EventArgs e)
  25. {
  26. //设备列表
  27. GridDeviceList.GetDataSQL = "select de_id,de_code,de_name,de_spec,de_indate,de_runstatus,de_address,de_wccode,de_vendcode,de_vendname from device".ToUpper();
  28. PageControlDeviceList.Gridcontrol = GridDeviceList;
  29. //轮询业务
  30. GridPolling.GetDataSQL = "select pl_id,pl_code,pl_name,pl_type,pl_dccode,pl_remark from polling".ToUpper();
  31. GridPolling.ID = "pl_id";
  32. GridPolling.TableName = "polling";
  33. GridPolling.InsertSQL = "insert into polling(pl_id,pl_code,pl_name,pl_type,pl_dccode,pl_remark) values(polling_seq.nextval,:pl_code,:pl_name,:pl_type,:pl_dccode,:pl_remark)";
  34. ButtonDeletePolling.Grid = GridPolling;
  35. ButtonSavePolling.Grid = GridPolling;
  36. ButtonAddPolling.Grid = GridPolling;
  37. //轮询配置界面
  38. GridPollingSetting.GetDataSQL = "SELECT DPC_ID,DPC_DECODE ,DPC_PLCODE ,DPC_PLNAME ,DPC_INTERVAL ,DPC_DCCODE ,DPC_FUNCTION , DPC_ENABLE,DPC_STATUS ,DPC_REMARK FROM DEVICEPOLLINGCONFIG";
  39. GridPollingSetting.ID = "DPC_ID";
  40. GridPollingSetting.TableName = "DEVICEPOLLINGCONFIG";
  41. GridPollingSetting.InsertSQL = "insert into DEVICEPOLLINGCONFIG(DPC_ID,DPC_DECODE ,DPC_PLCODE ,DPC_PLNAME ,DPC_INTERVAL ,DPC_DCCODE ,DPC_FUNCTION , DPC_ENABLE,DPC_STATUS ,DPC_REMARK) values(DEVICEPOLLINGCONFIG_seq.nextval,:DPC_DECODE ,:DPC_PLCODE ,:DPC_PLNAME ,:DPC_INTERVAL ,:DPC_DCCODE ,:DPC_FUNCTION , :DPC_ENABLE,:DPC_STATUS ,:DPC_REMARK)";
  42. ButtonSaveCommandSet.Grid = GridPollingSetting;
  43. ButtonNewCommandSet.Grid = GridPollingSetting;
  44. ButtonDeleteCommandSet.Grid = GridPollingSetting;
  45. //指令设置界面
  46. GridCommandSetting.GetDataSQL = "select 0 CHOOSE,dc_id,dc_code,dc_name,dc_command from devicecommand".ToUpper();
  47. GridCommandSetting.TableName = "devicecommand";
  48. GridCommandSetting.ID = "dc_id";
  49. GridCommandSetting.InsertSQL = "insert into devicecommand(dc_id,dc_code,dc_name,dc_command) values(devicecommand_seq.nextval,:dc_code,:dc_name,:dc_command)";
  50. ButtonSaveCommand.Grid = GridCommandSetting;
  51. ButtonDeleteCommand.Grid = GridCommandSetting;
  52. }
  53. #region 界面通用事件
  54. /// <summary>
  55. /// 选项卡切换不同XPage
  56. /// </summary>
  57. /// <param name="sender"></param>
  58. /// <param name="e"></param>
  59. private void ButtonItem_ItemClick(object sender, ItemClickEventArgs e)
  60. {
  61. HideXPage(e.Item.Tag.ToString());
  62. }
  63. /// <summary>
  64. /// 根据点击按钮的Tag显示对应的XPage
  65. /// </summary>
  66. /// <param name="PageName"></param>
  67. private void HideXPage(string PageName)
  68. {
  69. for (int i = 0; i < MainTabControl.TabPages.Count; i++)
  70. {
  71. if (MainTabControl.TabPages[i].Name == PageName)
  72. MainTabControl.TabPages[i].PageVisible = true;
  73. else
  74. MainTabControl.TabPages[i].PageVisible = false;
  75. }
  76. }
  77. private void ItemComboBox_ParseEditValue(object sender, DevExpress.XtraEditors.Controls.ConvertEditValueEventArgs e)
  78. {
  79. e.Value = e.Value.ToString(); e.Handled = true;
  80. }
  81. /// <summary>
  82. /// Grid中的ComboBox的值设置
  83. /// </summary>
  84. /// <param name="sender"></param>
  85. /// <param name="e"></param>
  86. private void ItemComboBox_SelectedIndexChanged(object sender, EventArgs e)
  87. {
  88. ComboBoxEdit combox = sender as ComboBoxEdit;
  89. //ComboBoxData combodata = (ComboBoxData)(combox).SelectedItem;
  90. GridControl grid = combox.Parent as GridControl;
  91. combox.EditValue = "TEST";
  92. ////Console.WriteLine(combox.EditValue.GetType());
  93. GridView myView = (grid.MainView as GridView);
  94. myView.SetRowCellValue(myView.FocusedRowHandle, myView.FocusedColumn.Name, "123123");
  95. combox.Text = "1231";
  96. //DataTable dt = (DataTable)grid.DataSource;
  97. //dt.Rows[myView.FocusedRowHandle][myView.FocusedColumn.Name.ToUpper()] = combodata.Value;
  98. }
  99. /// <summary>
  100. /// 勾选Grid的CheckBox
  101. /// </summary>
  102. /// <param name="sender"></param>
  103. /// <param name="e"></param>
  104. private void CheckedEdit_QueryCheckStateByValue(object sender, DevExpress.XtraEditors.Controls.QueryCheckStateByValueEventArgs e)
  105. {
  106. string val = "";
  107. if (e.Value != null)
  108. {
  109. val = e.Value.ToString();
  110. }
  111. else
  112. {
  113. val = "FALSE";//默认为不选
  114. }
  115. switch (val.ToUpper())
  116. {
  117. case "TRUE":
  118. case "YES":
  119. case "1":
  120. e.CheckState = System.Windows.Forms.CheckState.Checked;
  121. break;
  122. case "FALSE":
  123. case "NO":
  124. case "0":
  125. e.CheckState = System.Windows.Forms.CheckState.Unchecked;
  126. break;
  127. default:
  128. e.CheckState = System.Windows.Forms.CheckState.Checked;
  129. break;
  130. }
  131. e.Handled = true;
  132. }
  133. #endregion
  134. #region PageCommandSet业务代码
  135. /// <summary>
  136. /// 新增指令弹窗
  137. /// </summary>
  138. /// <param name="sender"></param>
  139. /// <param name="e"></param>
  140. private void ButtonNewCommand_Click(object sender, EventArgs e)
  141. {
  142. FormNewCommand fncmd = new FormNewCommand(BaseUtil.GetComboxEditValue(Brand), Brand.Text);
  143. fncmd.ShowDialog();
  144. GridCommandSetting.RefreshData();
  145. }
  146. /// <summary>
  147. /// 加载ComBox品牌数据
  148. /// </summary>
  149. /// <param name="sender"></param>
  150. /// <param name="e"></param>
  151. private void PageCommandSet_VisibleChanged(object sender, EventArgs e)
  152. {
  153. if (PageCommandSet.PageVisible)
  154. {
  155. DataTable dt = (DataTable)SystemInf.dh.ExecuteSql("select * from devicebrand", "select");
  156. BaseUtil.FillComBoxEditWidthDataTable(Brand, "db_name", "db_code", dt);
  157. GridCommandSetting.Condition = " where dc_brand='" + BaseUtil.GetComboxEditValue(Brand) + "'";
  158. }
  159. }
  160. private void Brand_SelectedIndexChanged(object sender, EventArgs e)
  161. {
  162. GridCommandSetting.Condition = " where dc_brand='" + BaseUtil.GetComboxEditValue(Brand) + "'";
  163. GridCommandSetting.RefreshData();
  164. }
  165. #endregion
  166. #region PagePollingSetting业务代码
  167. private void ButtonStartPolling_Click(object sender, EventArgs e)
  168. {
  169. }
  170. private void ButtonPausePolling_Click(object sender, EventArgs e)
  171. {
  172. }
  173. private void PagePollingSetting_VisibleChanged(object sender, EventArgs e)
  174. {
  175. if (PagePollingSetting.PageVisible)
  176. {
  177. DataTable dt = (DataTable)SystemInf.dh.ExecuteSql("select dc_name,dc_code from devicecommand ", "select");
  178. PollingSetItemLookUpEdit.DataSource = dt;
  179. PollingSetItemLookUpEdit.DisplayMember = "DC_NAME";
  180. PollingSetItemLookUpEdit.ValueMember = "DC_CODE";
  181. }
  182. }
  183. #endregion
  184. }
  185. }