frmFaultStatisticsReport.cs 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. using ComponentFactory.Krypton.Toolkit;
  2. using NXWMS.Client.Code.Extends;
  3. using NXWMS.Client.Model.AppModels.Condition.Report;
  4. using NXWMS.Client.Model.AppModels.Result;
  5. using NXWMS.Client.Model.AppModels.Result.Report;
  6. using NXWMS.Client.Model.CoreModels;
  7. using NXWMS.Client.String.Enums;
  8. using NXWMS.Commons;
  9. using NXWMS.Services;
  10. using System;
  11. using System.Collections.Generic;
  12. using System.ComponentModel;
  13. using System.Data;
  14. using System.Drawing;
  15. using System.Linq;
  16. using System.Text;
  17. using System.Windows.Forms;
  18. namespace NXWMS.Forms.Report
  19. {
  20. public partial class frmFaultStatisticsReport : KryptonForm
  21. {
  22. /// <summary>
  23. /// 客户端字段排序列表
  24. /// </summary>
  25. private List<ClientFieldOrderResult> _clientFieldOrderList;
  26. private int _pageSize;
  27. private int _pageIndex;
  28. private int _totalCount;
  29. public frmFaultStatisticsReport()
  30. {
  31. InitializeComponent();
  32. InitData();
  33. InitControl();
  34. }
  35. /// <summary>
  36. /// 数据初始化
  37. /// </summary>
  38. private void InitData()
  39. {
  40. _clientFieldOrderList = new List<ClientFieldOrderResult>();
  41. _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "DevTypeName", FieldDesc = "设备类型" });
  42. _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "DevName", FieldDesc = "设备" });
  43. _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "FAULT_NO", FieldDesc = "报警代码" });
  44. _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "FAULT_DESC", FieldDesc = "报警描述" });
  45. _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "FaultLevelName", FieldDesc = "报警级别" });
  46. _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "FAULT_TIME", FieldDesc = "报警发生时间" });
  47. _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "END_TIME", FieldDesc = "报警结束时间" });
  48. _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "FAULT_TIME_LEN", FieldDesc = "报警时长(秒)" });
  49. }
  50. /// <summary>
  51. /// 控件初始化
  52. /// </summary>
  53. private void InitControl()
  54. {
  55. CheckForIllegalCrossThreadCalls = false;
  56. dataGridView.BuildDataGridView(CommonUtil.GetFieldOrderDic(_clientFieldOrderList), false);
  57. var fieldList = new List<FieldValue>().Add<FieldValue>(new FieldValue { Code = "", Name = "全部" });
  58. cmbSearchFaultLevel.DataSource = fieldList.GetFieldValueIdList<FaultLevel>();
  59. cmbSearchFaultLevel.DisplayMember = "Name";
  60. cmbSearchFaultLevel.ValueMember = "Id";
  61. _pageIndex = 1;
  62. _pageSize = 20;
  63. }
  64. private void btnSearch_Click(object sender, EventArgs e)
  65. {
  66. _pageIndex = 1;
  67. var loadfrm = new frmLoading();
  68. loadfrm.Show();
  69. var message = loadfrm.EventCalExec(LoadSearch, this.pageTool.PageIndex, this.pageTool.PageSize);
  70. pageTool.DataCount = _totalCount;
  71. if (!string.IsNullOrWhiteSpace(message))
  72. {
  73. KryptonMessageBox.Show($"查询失败!\r\n{message}", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);
  74. }
  75. }
  76. private string LoadSearch(int pageIndex, int pageSize)
  77. {
  78. var result = ReportServices.reportSearchService.GetFaultStatisticsReportList(new FaultStatisticsReportCondition
  79. {
  80. OperationUserId = AppConfig.UserLoginResult.UserInfo.UserId,
  81. DevInfo=txtSearchDevInfo.Text,
  82. DevTypeInfo=txtSearchDevType.Text,
  83. FaultInfo=txtSearchFault.Text,
  84. FaultBeginTimeLen= numSearchBeginTimeLen.Value.GetObjectToInt(),
  85. FaultEndTimeLen = numSearchEndTimeLen.Value.GetObjectToInt(),
  86. PageIndex = pageIndex,
  87. PageSize = pageSize
  88. });
  89. if (result.Status == OperateStatus.Success)
  90. {
  91. _totalCount = result.Data.TotalCount;
  92. _pageIndex = pageIndex;
  93. _pageSize = pageSize;
  94. if (result.Data.RowData.Any())
  95. {
  96. dataGridView.Columns.Clear();
  97. dataGridView.DataSource = result.Data.RowData.ToList();
  98. dataGridView.BuildDataGridView(CommonUtil.GetFieldOrderDic(_clientFieldOrderList));
  99. }
  100. else
  101. {
  102. if (dataGridView.DataSource != null)
  103. {
  104. dataGridView.DataSource = new List<FaultStatisticsReportResult>();
  105. }
  106. dataGridView.BuildDataGridView(CommonUtil.GetFieldOrderDic(_clientFieldOrderList), false);
  107. }
  108. return string.Empty;
  109. }
  110. else
  111. {
  112. return result.Message;
  113. }
  114. }
  115. private void btnSearchExport_Click(object sender, EventArgs e)
  116. {
  117. dataGridView.DataGridViewExport($"{AppConfig.CurrentMenu.FirstOrDefault().MenuName}列表" +
  118. DateTime.Now.ToString("yyyyMMddHH"));
  119. }
  120. }
  121. }