GetEnums() +SensorType 枚举(雷达/光电/红外)

- 新增 SensorType 枚举(Radar=0, EO=1, IR=2)供前端探测设备 UI 分类
- EnumMetadata + GetEnums() 加入 SensorType(含中文翻译)
- 对接文档同步更新
- 262 测试通过,Unity 编译通过
This commit is contained in:
tian 2026-06-21 10:33:57 +08:00
parent fb3c6fd2eb
commit a6ad8a348e
6 changed files with 22 additions and 2 deletions

View File

@ -442,13 +442,14 @@ public ModelInfo Get(string id);
### 6.1 有官方中文翻译的枚举GetEnums() 返回) ### 6.1 有官方中文翻译的枚举GetEnums() 返回)
这 12 个枚举通过 `scenario.GetEnums()` 获取中英文对照,可直接用于下拉框: 这 13 个枚举通过 `scenario.GetEnums()` 获取中英文对照,可直接用于下拉框:
```csharp ```csharp
var enums = scenario.GetEnums(); var enums = scenario.GetEnums();
// enums.DroneType, enums.PowerType, enums.PlatformType, enums.AerosolType, // enums.DroneType, enums.PowerType, enums.PlatformType, enums.AerosolType,
// enums.WeatherType, enums.WindDirection, enums.SceneType, enums.FormationMode, // enums.WeatherType, enums.WindDirection, enums.SceneType, enums.FormationMode,
// enums.TriggerMode, enums.ReleaseMode, enums.EquipmentRole, enums.EntityType // enums.TriggerMode, enums.ReleaseMode, enums.EquipmentRole, enums.EntityType,
// enums.SensorType
``` ```
| 枚举 | 成员 = 值 | 中文 | | 枚举 | 成员 = 值 | 中文 |
@ -465,6 +466,7 @@ var enums = scenario.GetEnums();
| **ReleaseMode** | Single=0, Continuous=1, Pulse=2 | 单次齐射/连续释放/脉冲释放 | | **ReleaseMode** | Single=0, Continuous=1, Pulse=2 | 单次齐射/连续释放/脉冲释放 |
| **EquipmentRole** | Detection=0, LaunchPlatform=1 | 探测设备/发射平台 | | **EquipmentRole** | Detection=0, LaunchPlatform=1 | 探测设备/发射平台 |
| **EntityType** | Drone=0, Platform=1, DetectionEquip=2, Cloud=3, Munition=4 | 无人机/发射平台/探测设备/云团/弹药 | | **EntityType** | Drone=0, Platform=1, DetectionEquip=2, Cloud=3, Munition=4 | 无人机/发射平台/探测设备/云团/弹药 |
| **SensorType** | Radar=0, EO=1, IR=2 | 雷达/光电/红外 |
### 6.2 无官方翻译的枚举(前端需自行映射中文) ### 6.2 无官方翻译的枚举(前端需自行映射中文)
@ -568,6 +570,7 @@ public class EnumMetadata
public List<EnumItem> ReleaseMode { get; set; } public List<EnumItem> ReleaseMode { get; set; }
public List<EnumItem> EquipmentRole { get; set; } public List<EnumItem> EquipmentRole { get; set; }
public List<EnumItem> EntityType { get; set; } public List<EnumItem> EntityType { get; set; }
public List<EnumItem> SensorType { get; set; }
} }
``` ```

View File

@ -60,6 +60,13 @@ namespace CounterDrone.Core.Models
LaunchPlatform = 1 LaunchPlatform = 1
} }
public enum SensorType
{
Radar = 0,
EO = 1,
IR = 2
}
// === 气溶胶 & 毁伤 === // === 气溶胶 & 毁伤 ===
public enum AerosolType public enum AerosolType
{ {

View File

@ -25,5 +25,6 @@ namespace CounterDrone.Core.Services
public List<EnumItem> ReleaseMode { get; set; } = new(); public List<EnumItem> ReleaseMode { get; set; } = new();
public List<EnumItem> EquipmentRole { get; set; } = new(); public List<EnumItem> EquipmentRole { get; set; } = new();
public List<EnumItem> EntityType { get; set; } = new(); public List<EnumItem> EntityType { get; set; } = new();
public List<EnumItem> SensorType { get; set; } = new();
} }
} }

View File

@ -246,6 +246,7 @@ namespace CounterDrone.Core.Services
ReleaseMode = EnumToList<Models.ReleaseMode>(TranslateRelease), ReleaseMode = EnumToList<Models.ReleaseMode>(TranslateRelease),
EquipmentRole = EnumToList<Models.EquipmentRole>(TranslateEquipmentRole), EquipmentRole = EnumToList<Models.EquipmentRole>(TranslateEquipmentRole),
EntityType = EnumToList<Models.EntityType>(TranslateEntityType), EntityType = EnumToList<Models.EntityType>(TranslateEntityType),
SensorType = EnumToList<Models.SensorType>(TranslateSensorType),
}; };
} }
@ -350,6 +351,14 @@ namespace CounterDrone.Core.Services
_ => r.ToString(), _ => r.ToString(),
}; };
private static string TranslateSensorType(Models.SensorType t) => t switch
{
Models.SensorType.Radar => "雷达",
Models.SensorType.EO => "光电",
Models.SensorType.IR => "红外",
_ => t.ToString(),
};
private static string TranslateEntityType(Models.EntityType t) => t switch private static string TranslateEntityType(Models.EntityType t) => t switch
{ {
Models.EntityType.Drone => "无人机", Models.EntityType.Drone => "无人机",

Binary file not shown.