device-setting.ts 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. // 夜航灯开关
  2. export enum NightLightsStateEnum {
  3. CLOSE = 0, // 0-关闭
  4. OPEN = 1, // 1-打开
  5. }
  6. // 限远开关
  7. export enum DistanceLimitStatusEnum {
  8. UNSET = 0, // 0-未设置
  9. SET = 1, // 1-已设置
  10. }
  11. export interface DistanceLimitStatus {
  12. state?: DistanceLimitStatusEnum;
  13. distance_limit?: number; // 限远
  14. }
  15. // 避障
  16. export enum ObstacleAvoidanceStatusEnum {
  17. CLOSE = 0, // 0-关闭
  18. OPEN = 1, // 1-开启
  19. }
  20. export interface ObstacleAvoidance {
  21. horizon?: ObstacleAvoidanceStatusEnum;// 水平避障开关
  22. upside?: ObstacleAvoidanceStatusEnum;// 上行方向避障开关
  23. downside?: ObstacleAvoidanceStatusEnum;// 下行方向避障开关
  24. }
  25. // 设备管理设置key
  26. export enum DeviceSettingKeyEnum {
  27. NIGHT_LIGHTS_MODE_SET = 'night_lights_state', // 夜航灯开关
  28. HEIGHT_LIMIT_SET = 'height_limit', // 限高设置
  29. DISTANCE_LIMIT_SET = 'distance_limit_status', // 限远开关
  30. OBSTACLE_AVOIDANCE_HORIZON = 'obstacle_avoidance_horizon', // 水平避障状态
  31. OBSTACLE_AVOIDANCE_UPSIDE = 'obstacle_avoidance_upside', // 上视避障状态
  32. OBSTACLE_AVOIDANCE_DOWNSIDE = 'obstacle_avoidance_downside', // 下视避障状态
  33. }
  34. export type DeviceSettingType = Record<DeviceSettingKeyEnum, any>
  35. export const initDeviceSetting = {
  36. [DeviceSettingKeyEnum.NIGHT_LIGHTS_MODE_SET]:
  37. {
  38. label: '飞行器夜航灯',
  39. value: '',
  40. trueValue: NightLightsStateEnum.CLOSE,
  41. editable: false,
  42. popConfirm: {
  43. visible: false,
  44. loading: false,
  45. // content: '为保证飞行器的作业安全,建议打开夜航灯',
  46. label: '飞行器夜航灯',
  47. },
  48. settingKey: DeviceSettingKeyEnum.NIGHT_LIGHTS_MODE_SET,
  49. },
  50. [DeviceSettingKeyEnum.HEIGHT_LIMIT_SET]:
  51. {
  52. label: '限高',
  53. value: '',
  54. trueValue: 120,
  55. editable: false,
  56. popConfirm: {
  57. visible: false,
  58. loading: false,
  59. // content: '限高:20 - 1500m',
  60. // info: '修改限高会影响当前机场的所有作业任务,建议确认作业情况后再进行修改',
  61. label: '限高',
  62. },
  63. settingKey: DeviceSettingKeyEnum.HEIGHT_LIMIT_SET,
  64. },
  65. [DeviceSettingKeyEnum.DISTANCE_LIMIT_SET]:
  66. {
  67. label: '限远',
  68. value: '',
  69. trueValue: DistanceLimitStatusEnum.UNSET,
  70. // info: '限远(15 - 8000m)是约束飞行器相对机场的最大作业距离',
  71. editable: false,
  72. popConfirm: {
  73. visible: false,
  74. loading: false,
  75. // content: '限远 (15- 8000m) 是约束飞行器相对机场的最大作业距离',
  76. // info: '修改限远会影响当前机场的所有作业任务,建议确认作业情况后再进行修改',
  77. label: '限远',
  78. },
  79. settingKey: DeviceSettingKeyEnum.DISTANCE_LIMIT_SET,
  80. },
  81. [DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_HORIZON]:
  82. {
  83. label: '水平避障',
  84. value: '',
  85. trueValue: ObstacleAvoidanceStatusEnum.CLOSE,
  86. // info: '飞行器的避障工作状态显示,可以快速开启/关闭飞行器避障,如需进一步设置请在设备运维页面设置',
  87. editable: false,
  88. popConfirm: {
  89. visible: false,
  90. loading: false,
  91. // content: '飞行器避障是保障飞行作业安全的基础功能,建议保持飞行器避障开启',
  92. label: '水平避障',
  93. },
  94. settingKey: DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_HORIZON,
  95. },
  96. [DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_UPSIDE]:
  97. {
  98. label: '上视避障',
  99. value: '',
  100. trueValue: ObstacleAvoidanceStatusEnum.CLOSE,
  101. // info: '飞行器的避障工作状态显示,可以快速开启/关闭飞行器避障,如需进一步设置请在设备运维页面设置',
  102. editable: false,
  103. popConfirm: {
  104. visible: false,
  105. loading: false,
  106. // content: '飞行器避障是保障飞行作业安全的基础功能,建议保持飞行器避障开启',
  107. label: '上视避障',
  108. },
  109. settingKey: DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_UPSIDE,
  110. },
  111. [DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_DOWNSIDE]:
  112. {
  113. label: '下视避障',
  114. value: '',
  115. trueValue: ObstacleAvoidanceStatusEnum.CLOSE,
  116. // info: '飞行器的避障工作状态显示,可以快速开启/关闭飞行器避障,如需进一步设置请在设备运维页面设置',
  117. editable: false,
  118. popConfirm: {
  119. visible: false,
  120. loading: false,
  121. // content: '飞行器避障是保障飞行作业安全的基础功能,建议保持飞行器避障开启',
  122. label: '下视避障',
  123. },
  124. settingKey: DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_DOWNSIDE,
  125. },
  126. } as DeviceSettingType
  127. export const initDeviceSettingFormModel = {
  128. nightLightsState: false, // 夜航灯开关
  129. heightLimit: 20, // 限高设置
  130. distanceLimitStatus: { state: false, distanceLimit: 15 }, // 限远开关
  131. obstacleAvoidanceHorizon: false, // 飞行器避障-水平开关设置
  132. obstacleAvoidanceUpside: false, // 飞行器避障-上视开关设置
  133. obstacleAvoidanceDownside: false, // 飞行器避障-下视开关设置
  134. }
  135. export type DeviceSettingFormModel = typeof initDeviceSettingFormModel