From 846d79a8d7048810c1c55c5825d79356ed130700 Mon Sep 17 00:00:00 2001
From: tian <11429339@qq.com>
Date: Fri, 19 Jun 2026 10:02:09 +0800
Subject: [PATCH] =?UTF-8?q?ModelInfo:=20ModelType=E2=86=92EntityType(?=
=?UTF-8?q?=E6=9E=9A=E4=B8=BE)=20+=20Description=EF=BC=9BImportModel=20?=
=?UTF-8?q?=E6=94=AF=E6=8C=81=E4=BC=A0=E5=8F=82?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/CounterDrone.Core/Models/ModelInfo.cs | 5 ++++-
src/CounterDrone.Core/Services/IModelService.cs | 1 +
src/CounterDrone.Core/Services/ModelService.cs | 5 +++++
src/Unity/Assets/Scripts/Managers/ModelManager.cs | 2 ++
4 files changed, 12 insertions(+), 1 deletion(-)
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();