diff --git a/src/CounterDrone.Core/Models/ModelInfo.cs b/src/CounterDrone.Core/Models/ModelInfo.cs index d02e225..7718ea7 100644 --- a/src/CounterDrone.Core/Models/ModelInfo.cs +++ b/src/CounterDrone.Core/Models/ModelInfo.cs @@ -13,7 +13,10 @@ namespace CounterDrone.Core.Models [NotNull] public string Name { get; set; } = string.Empty; - public string ModelType { get; set; } = string.Empty; + /// 对应 EntityType 枚举:0=Drone 1=Platform 2=DetectionEquip + public int EntityType { get; set; } + + public string Description { get; set; } = string.Empty; public string FilePath { get; set; } = string.Empty; diff --git a/src/CounterDrone.Core/Services/IModelService.cs b/src/CounterDrone.Core/Services/IModelService.cs index e43b44b..fa7c4c9 100644 --- a/src/CounterDrone.Core/Services/IModelService.cs +++ b/src/CounterDrone.Core/Services/IModelService.cs @@ -7,6 +7,7 @@ namespace CounterDrone.Core.Services public interface IModelService { ModelInfo ImportModel(string filePath, string name); + ModelInfo ImportModel(string filePath, string name, int entityType, string description); ModelInfo AddModel(ModelInfo model); void DeleteModel(string id); List GetAllModels(); diff --git a/src/CounterDrone.Core/Services/ModelService.cs b/src/CounterDrone.Core/Services/ModelService.cs index af7aaa2..658809e 100644 --- a/src/CounterDrone.Core/Services/ModelService.cs +++ b/src/CounterDrone.Core/Services/ModelService.cs @@ -18,6 +18,9 @@ namespace CounterDrone.Core.Services } public ModelInfo ImportModel(string filePath, string name) + => ImportModel(filePath, name, 0, ""); + + public ModelInfo ImportModel(string filePath, string name, int entityType, string description) { if (string.IsNullOrWhiteSpace(name)) throw new ArgumentException("模型名称不能为空"); @@ -33,6 +36,8 @@ namespace CounterDrone.Core.Services var model = new ModelInfo { Name = name, + EntityType = entityType, + Description = description, FilePath = filePath, FileSize = fileInfo.Length / (1024.0 * 1024.0), }; diff --git a/src/Unity/Assets/Scripts/Managers/ModelManager.cs b/src/Unity/Assets/Scripts/Managers/ModelManager.cs index 471c56c..5d0ab69 100644 --- a/src/Unity/Assets/Scripts/Managers/ModelManager.cs +++ b/src/Unity/Assets/Scripts/Managers/ModelManager.cs @@ -28,6 +28,8 @@ namespace CounterDrone.Unity void OnDisable() { SqliteConnectionTracker.Untrack(_db); _db?.Dispose(); _db = null; } public ModelInfo Import(string filePath, string name) => _service.ImportModel(filePath, name); + public ModelInfo Import(string filePath, string name, int entityType, string desc) + => _service.ImportModel(filePath, name, entityType, desc); public ModelInfo Add(ModelInfo model) => _service.AddModel(model); public void Delete(string id) => _service.DeleteModel(id); public List GetAll() => _service.GetAllModels();