frmBeltOperationInfo.cs 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. using com.hnshituo.core.webapp.vo;
  2. using Common;
  3. using Common.vo.pb;
  4. using Infragistics.Win;
  5. using Infragistics.Win.UltraWinEditors;
  6. using Infragistics.Win.UltraWinGrid;
  7. using JC_MeasuringSystem;
  8. using MeterModuleLibrary;
  9. using MeterPlugInLibrary;
  10. using Microsoft.VisualBasic;
  11. using System;
  12. using System.Collections.Generic;
  13. using System.Data;
  14. using System.Drawing;
  15. using System.Linq;
  16. using System.Net;
  17. using System.Threading;
  18. using System.Windows.Forms;
  19. namespace BeltScaleSystem
  20. {
  21. public partial class frmBeltOperationInfo : Form
  22. {
  23. public frmBeltOperationInfo()
  24. {
  25. InitializeComponent();
  26. }
  27. private ComBaseInfoService comBaseInfoService = new ComBaseInfoService(); //基础数服务
  28. private MeterWorkBeltTimingService meterWorkBeltTimingService = new MeterWorkBeltTimingService();
  29. private DataTable dtPoint;//计量点数据源
  30. private MeterBaseScalePointService monitorService = new MeterBaseScalePointService();
  31. //菜单栏事件
  32. private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
  33. {
  34. switch (e.Tool.Key)
  35. {
  36. case "查询":
  37. QueryScalePrediction();
  38. break;
  39. case "导出":
  40. ExportExcel();
  41. break;
  42. }
  43. }
  44. //查询
  45. private void QueryScalePrediction() {
  46. try
  47. {
  48. DataTable dtTmingTable = null;
  49. CommonPage<MeterWorkBeltTiminginfo> cp = new CommonPage<MeterWorkBeltTiminginfo>();
  50. MeterWorkBeltTiminginfo timinginfo = new MeterWorkBeltTiminginfo();
  51. cp.startTime = dtStartTime.Text.ToString();
  52. cp.endTime = dtEndTime.Text.ToString();
  53. //if (cmbStateName.Text!="全部"&& cmbStateName.Text != "") {
  54. // timinginfo.scaleName = cmbStateName.Text.ToString().Substring(0,1);
  55. //}
  56. if (cbPntName_1.Text.ToString() != "") {
  57. timinginfo.baseSpotNo = cbPntName_1.Value.ToString();
  58. }
  59. timinginfo.valueFlag = "1";
  60. timinginfo.weightType = "0";
  61. cp.param = timinginfo;
  62. RESTfulResult<List<MeterWorkBeltTiminginfo>> rms = meterWorkBeltTimingService.doQueryWf(cp);
  63. //此处为特殊处理 如需sql查询 请查看后台mapper.xml文件,sql语句已准备。
  64. if (rms.Succeed)
  65. {
  66. if (rms.Data != null && rms.Data.Count > 0)
  67. {
  68. List<MeterWorkBeltTiminginfo> list2 = new List<MeterWorkBeltTiminginfo>();
  69. MeterWorkBeltTiminginfo ti = new MeterWorkBeltTiminginfo();
  70. DataRow[] ARows = rms.Data.ListToDataTable<MeterWorkBeltTiminginfo>().Select("scaleName='A'");
  71. DataRow[] BRows = rms.Data.ListToDataTable<MeterWorkBeltTiminginfo>().Select("scaleName='B'");
  72. for(int i=0;i<ARows.Length;i++){
  73. string packageNo = ARows[i]["packageNo"].ToString();
  74. ARows[i]["weightDiff"] = ARows[i]["weightDiff"] + "%";
  75. for (int j = 0; j < BRows.Length; j++)
  76. {
  77. if (BRows[j]["packageNo"].ToString()== packageNo) {
  78. ARows[i]["weightB"] = BRows[j]["weight"].ToString();
  79. }
  80. }
  81. }
  82. if (ARows != null || ARows.Length != 0)
  83. {
  84. ARows.OrderBy(r => DateTime.Parse(r["createTime"].ToString()));
  85. dtTmingTable = ARows.CopyToDataTable();
  86. }
  87. }
  88. ClsControlPack.CopyDataToDatatable(ref dtTmingTable, ref dataTable3, true);
  89. ClsControlPack.RefreshAndAutoSize(ultraGrid2);
  90. }
  91. else
  92. {
  93. dtTmingTable.Clear();
  94. ClsControlPack.CopyDataToDatatable(ref dtTmingTable, ref dataTable3, true);
  95. ClsControlPack.RefreshAndAutoSize(ultraGrid2);
  96. }
  97. //}
  98. }
  99. catch (Exception ex)
  100. {
  101. MessageBox.Show("查询错误"+ex);
  102. }
  103. }
  104. private void ExportExcel() {
  105. string str = Interaction.InputBox("请输入要导出的文件名", "提示", "", 100, 100);
  106. string pqath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
  107. this.ultraGridExcelExporter1.Export(this.ultraGrid2, pqath + "\\" + str + ".xls");
  108. MessageBox.Show("导出成功,请查看桌面!是否有[" + str + ".xls]表格");
  109. }
  110. //下拉框控件自定义option
  111. public static void valueToCombo(DataTable source, UltraComboEditor cbb)
  112. {
  113. cbb.DataSource = source;
  114. cbb.DisplayMember = "VALUE";
  115. cbb.ValueMember = "TEXT";
  116. }
  117. private void frmBeltOperationInfo_Load(object sender, EventArgs e)
  118. {
  119. dtStartTime.Value = Convert.ToDateTime((DateTime.Now.ToString("yyyy-MM-dd") + " 00:00:00"));
  120. dtEndTime.Value = Convert.ToDateTime((DateTime.Now.ToString("yyyy-MM-dd") + " 23:59:59"));
  121. MeterBaseSpotInfoService meterBaseSpotInfoService = new MeterBaseSpotInfoService();//计量点信息
  122. RESTfulResult<List<MeterBaseSpotInfo>> spo = meterBaseSpotInfoService.doQueryWf(new MeterBaseSpotInfo { validFlag = "1", spotTypeNo = "001002005" });
  123. if (spo.Succeed && spo.Data != null && spo.Data.Count > 0)
  124. {
  125. dtPoint = spo.Data.ListToDataTable<MeterBaseSpotInfo>();
  126. }
  127. if (dtPoint != null)
  128. {
  129. cbPntName_1.DataSource = dtPoint;
  130. cbPntName_1.DisplayMember = "baseSpotName";
  131. cbPntName_1.ValueMember = "baseSpotNo";
  132. }
  133. cbPntName_1.SelectedIndex = -1;
  134. //DataTable dt3 = new DataTable();
  135. //dt3.Columns.Add("TEXT");
  136. //dt3.Columns.Add("VALUE");
  137. //dt3.Rows.Add("0", "全部");
  138. //dt3.Rows.Add("1", "A秤");
  139. //dt3.Rows.Add("2", "B秤");
  140. //valueToCombo(dt3, cmbStateName);
  141. //this.cmbStateName.SelectedIndex = 0;
  142. }
  143. }
  144. }