BXDBFrom.cs 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Linq;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using DevExpress.XtraEditors;
  11. using System.Reflection;
  12. using Uninpho.DBOperation.Model;
  13. using Uninpho.DBOperation.Operation;
  14. using Uninpho.Railway.Waveform;
  15. namespace Uninpho.Tools.components.DataManager
  16. {
  17. public partial class BXDBFrom : DevExpress.XtraEditors.XtraForm
  18. {
  19. DrawCrl drawfrmlgl = new DrawCrl();
  20. DrawCrl drawfrmjh = new DrawCrl();
  21. bool showJGT = true;
  22. public BXDBFrom()
  23. {
  24. InitializeComponent();
  25. }
  26. List<PZClass> pzlist = new List<PZClass>();
  27. string index = string.Empty;
  28. public BXDBFrom(List<string> yswjm_lgl, List<string> yswjm_jhfx)
  29. {
  30. InitializeComponent();
  31. List<T_metadata_account> metadata = new List<T_metadata_account>();
  32. DataAnalysisToPG.GetTongDaoData(ref metadata);
  33. for (int i = 0; i < metadata.Count; i++)
  34. {
  35. pzlist.Add(new PZClass() { Id = metadata[i].name, Name = metadata[i].chname });
  36. }
  37. loadData(yswjm_lgl, yswjm_jhfx);
  38. }
  39. private void loadData(List<string> yswjm_lgl, List<string> yswjm_jhfx)
  40. {
  41. this.KeyPreview = true;
  42. this.KeyDown += yyKeyDown;
  43. this.KeyUp += yyKeyUp;
  44. WaveInput lglwave = new WaveInput();
  45. WaveInput jhwave = new WaveInput();
  46. lglwave.InputType = "lgl_bxdb";
  47. jhwave.InputType = "jh_bxdb";
  48. //几何分析波形数据
  49. List<T_jihefenxi_boxing> jhfxBX = DMControl.GetJHFX_BXDataByIDS(yswjm_jhfx[0]);
  50. List<T_jihefenxi_boxing> jhfxBXold = DMControl.GetJHFX_BXDataByIDS(yswjm_jhfx[1]);
  51. SetWaveFun("jh", "Licheng", jhfxBX, jhfxBXold, jhwave, drawfrmjh);
  52. //轮轨力波形数据
  53. List<T_lunguili_boxing> lglBX = DMControl.GetLGL_BXDataByIDS(yswjm_lgl.Count == 0 ? "0,0" : yswjm_lgl[0]);
  54. List<T_lunguili_boxing> lglBXold = DMControl.GetLGL_BXDataByIDS(yswjm_lgl.Count == 0 ? "0,0" : yswjm_lgl[1]);
  55. SetWaveFun("lgl", "Licheng", lglBX, lglBXold, lglwave, drawfrmlgl);
  56. }
  57. private void SetWaveFun<T>(string type, string XaxisList, List<T> jhfxBX, List<T> jhfxBXold, WaveInput jhwave, DrawCrl drawfrmjh)
  58. {
  59. if (jhfxBX.Count > 0)
  60. {
  61. List<decimal> jgjlcjh = new List<decimal>();
  62. //构造绘制的point
  63. WaveDataTools.showBXT(jhfxBX, jhfxBXold, XaxisList, ref jhwave, pzlist);//数据
  64. //录入配置信息
  65. WaveDataTools.ReadConfig(type, ref jhwave);
  66. //设置控件位置
  67. ShowLayoutPanel.Controls.Add(drawfrmjh, 0, type == "jh" ? 0 : 1);
  68. drawfrmjh.Dock = DockStyle.Fill;
  69. WaveDataTools.initPZMessage(ref jhwave);
  70. drawfrmjh.YXCLoadEvnet(jhwave,showJGT);
  71. showJGT = false;
  72. }
  73. else
  74. {
  75. if (type == "jh") XtraMessageBox.Show("几何分析波形数据为空", "提示");//轮轨力波形数据为空
  76. ShowLayoutPanel.RowStyles[type == "jh" ? 0 : 1].Height = 0;
  77. }
  78. }
  79. bool ispushALT = false;
  80. bool ispushCtrl = false;
  81. bool ispushShift = false;
  82. public void yyKeyDown(object sender, KeyEventArgs e)
  83. {
  84. DrawCrl.boardkey = e.KeyValue;
  85. }
  86. public void yyKeyUp(object sender, KeyEventArgs e)
  87. {
  88. DrawCrl.boardkey = 0;
  89. }
  90. }
  91. }