PesListForm.cs 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. using DevExpress.XtraEditors;
  2. using Ips.Library.Basic;
  3. using Ips.Library.DxpLib;
  4. using Ips.Library.Entity;
  5. using Ips.Sps.Store;
  6. using System;
  7. using System.Collections.Generic;
  8. using System.ComponentModel;
  9. using System.Data;
  10. using System.Drawing;
  11. using System.Linq;
  12. using System.Text;
  13. using System.Threading.Tasks;
  14. using System.Windows.Forms;
  15. namespace Ips.Sps.TskResults.Peses
  16. {
  17. public partial class PesListForm : DevExpress.XtraEditors.XtraForm
  18. {
  19. public PesListForm()
  20. {
  21. InitializeComponent();
  22. _pesStore = Stores.It.PesStore;
  23. _pesStore.ListSourceChanged += _pesStore_ListSourceChanged;
  24. }
  25. PesStore _pesStore;
  26. private void _pesStore_ListSourceChanged(object sender, EventArgs e)
  27. {
  28. grdPesList.SetDataSource(_pesStore.ListSource);
  29. }
  30. private void PesListForm_Load(object sender, EventArgs e)
  31. {
  32. InitCtrl();
  33. }
  34. private void InitCtrl()
  35. {
  36. txtSigCategory.Properties.Items.Add("全部", null, -1);
  37. txtSigCategory.Properties.Items.AddEnum<SignalCategory>();
  38. txtStartTime.UseTimeEdit();
  39. txtEndTime.UseTimeEdit();
  40. grdPesList.SetResourceList(xpcSatList, xpcEmtList);
  41. btnQuery.PerformClick();
  42. }
  43. private void btnClear_Click(object sender, EventArgs e)
  44. {
  45. txtSigCategory.EditValue = null;
  46. txtStartTime.EditValue = null;
  47. txtEndTime.EditValue = null;
  48. txtMainSat.EditValue = null;
  49. txtAdjaSat.EditValue = null;
  50. txtDtoMin.EditValue = null;
  51. txtDtoMax.EditValue = null;
  52. txtDfoMin.EditValue = null;
  53. txtDfoMax.EditValue = null;
  54. txtSnrMin.EditValue = null;
  55. txtIsValid.EditValue = null;
  56. }
  57. private void btnQuery_Click(object sender, EventArgs e)
  58. {
  59. var model = _pesStore.QueryModel;
  60. double? dtoMin = null, dtoMax = null, dfoMin = null, dfoMax = null, snrMin = null;
  61. if (txtDtoMin.Text.IsNotNullOrWhitespace())
  62. {
  63. if (double.TryParse(txtDtoMin.Text.Trim(), out double _dtoMin))
  64. {
  65. dtoMin = _dtoMin;
  66. }
  67. else
  68. {
  69. MsgHelper.ShowWarn("请输入正确的时差起始范围!");
  70. return;
  71. }
  72. }
  73. if (txtDtoMax.Text.IsNotNullOrWhitespace())
  74. {
  75. if (double.TryParse(txtDtoMax.Text.Trim(), out double _dtoMax))
  76. {
  77. dtoMax = _dtoMax;
  78. }
  79. else
  80. {
  81. MsgHelper.ShowWarn("请输入正确的时差结束范围!");
  82. return;
  83. }
  84. }
  85. if (txtDfoMin.Text.IsNotNullOrWhitespace())
  86. {
  87. if (double.TryParse(txtDfoMin.Text.Trim(), out double _dfoMin))
  88. {
  89. dfoMin = _dfoMin;
  90. }
  91. else
  92. {
  93. MsgHelper.ShowWarn("请输入正确的频差起始范围!");
  94. return;
  95. }
  96. }
  97. if (txtDfoMax.Text.IsNotNullOrWhitespace())
  98. {
  99. if (double.TryParse(txtDfoMax.Text.Trim(), out double _dfoMax))
  100. {
  101. dfoMax = _dfoMax;
  102. }
  103. else
  104. {
  105. MsgHelper.ShowWarn("请输入正确的频差结束范围!");
  106. return;
  107. }
  108. }
  109. if (txtSnrMin.Text.IsNotNullOrEmpty())
  110. {
  111. if (double.TryParse(txtSnrMin.Text.Trim(), out double _snrMin))
  112. {
  113. snrMin = _snrMin;
  114. }
  115. else
  116. {
  117. MsgHelper.ShowWarn("请输入正确信噪比!");
  118. return;
  119. }
  120. }
  121. model.SigCategory = txtSigCategory.EditValue == null ? null : (SignalCategory)txtSigCategory.EditValue;
  122. model.StartTime = txtStartTime.EditValue == null ? null : txtStartTime.DateTime;
  123. model.EndTime = txtEndTime.EditValue == null ? null : txtEndTime.DateTime;
  124. model.MainSatId = txtMainSat.EditValue == null ? null : (int)txtMainSat.EditValue;
  125. model.AdjaSatId = txtAdjaSat.EditValue == null ? null : (int)txtAdjaSat.EditValue;
  126. model.IsValid = txtIsValid.EditValue == null ? null : (bool)txtIsValid.EditValue;
  127. model.DtoMin = dtoMin;
  128. model.DtoMax = dtoMax;
  129. model.DfoMin = dfoMin;
  130. model.DfoMax = dfoMax;
  131. model.SnrMin = snrMin;
  132. _pesStore.BindList();
  133. }
  134. private void txtSat_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
  135. {
  136. if (e.Button.Kind == DevExpress.XtraEditors.Controls.ButtonPredefines.Clear)
  137. {
  138. ((BaseEdit)sender).EditValue = null;
  139. }
  140. }
  141. }
  142. }