DetectorTableEnum.java 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. package com.energy.manage.analyse.constant;
  2. public enum DetectorTableEnum {
  3. /**
  4. * 风速功率功率曲线检测器
  5. */
  6. POWER_CURVE("anomaly_powercurve", "(风速功率)功率曲线检测器"),
  7. /**
  8. * 风速功率功率散点检测器
  9. */
  10. SCATTER("anomaly_scatter", "(风速功率)功率散点检测器"),
  11. /**
  12. * 风速功率simulink检测器
  13. */
  14. SIMULINK("anomaly_simulink", "(风速功率)simulink检测器"),
  15. /**
  16. * 偏航扭缆角度检测器
  17. */
  18. CABLE_TWIST("anomaly_cabletwist", "(偏航)扭缆角度检测器"),
  19. /**
  20. * 偏航偏航角度检测器
  21. */
  22. STATIC_YAW("anomaly_staticyaw", "(偏航)偏航角度检测器"),
  23. /**
  24. * 变桨最小桨距角检测器
  25. */
  26. MIN_PITCH("anomaly_minpitch", "(变桨)最小桨距角检测器"),
  27. /**
  28. * 变桨-转速-功率检测器
  29. */
  30. PITCH_COORD("anomaly_pitchcoord", "(变桨)变桨-转速-功率检测器"),
  31. /**
  32. * 变桨检测器
  33. */
  34. PITCH_REGULATION("anomaly_pitchregulation", "(变桨)变桨检测器"),
  35. /**
  36. * 运行状态机械运行状态检测器
  37. */
  38. OPERATION("anomaly_operation", "(运行状态)机械运行状态检测器"),
  39. /**
  40. * 运行状态电气功率质量检测器
  41. */
  42. POWER_QUALITY("anomaly_powerquality", "(运行状态)电气功率质量检测器"),
  43. /**
  44. * Cp 检测器
  45. * 对应字段:model5_aerodynamics_cp
  46. */
  47. CP_DETECTOR("anomaly_cp", "Cp检测器"),
  48. /**
  49. * TSR 风速分箱检测器
  50. * 对应字段:model5_aerodynamics_tsr
  51. */
  52. TSR_DETECTOR("anomaly_tsr", "TSR风速分箱检测器"),
  53. /**
  54. * Cp-TSR 联合分布检测器
  55. * 对应字段:model5_aerodynamics_cp_tsr
  56. */
  57. CP_TSR_DETECTOR("anomaly_cp_tsr", "Cp-TSR联合分布检测器"),
  58. /**
  59. * 降载检测器-新增
  60. */
  61. ANOMALY_DELOAD_DETECTOR("anomaly_deload", "Cp-TSR联合分布检测器");
  62. private final String tableName;
  63. private final String description;
  64. DetectorTableEnum(String tableName, String description) {
  65. this.tableName = tableName;
  66. this.description = description;
  67. }
  68. public String getTableName() {
  69. return tableName;
  70. }
  71. public String getDescription() {
  72. return description;
  73. }
  74. /**
  75. * 根据表名获取枚举
  76. */
  77. public static DetectorTableEnum fromTableName(String tableName) {
  78. for (DetectorTableEnum value : values()) {
  79. if (value.getTableName().equals(tableName)) {
  80. return value;
  81. }
  82. }
  83. return null;
  84. }
  85. /**
  86. * 获取完整的表名(带年份后缀)
  87. * 注意:这里年份2026是硬编码的,如果有动态需求可以调整
  88. */
  89. public String getFullTableName(String year) {
  90. return tableName +"_"+ year;
  91. }
  92. /**
  93. * 获取模块名称
  94. * 根据描述判断所属模块
  95. */
  96. public String getModuleName() {
  97. if (description.contains("偏航")) {
  98. return "yaw";
  99. } else if (description.contains("变桨")) {
  100. return "pitch";
  101. } else if (description.contains("风速功率")) {
  102. return "wind_power";
  103. } else if (description.contains("运行状态")) {
  104. return "control_params";
  105. }
  106. return "unknown";
  107. }
  108. }