feat(platform): 部署配置向导 + 地图管理,地图编辑器接入统一存取与 AI 助手
- 配置向导:登录按 deployment 画像引导平台选型(导航方式/模块/场景),未完成则路由守卫强制进入 /wizard;选型驱动菜单按需裁剪,并联动 SimpleLite 写 plugins/active-scenes.json + 透传 --scenes 选择性加载导航场景插件 - 地图管理页:服务器地图列表/使用/重命名/删除、地图合并、多地图连接管理 - 地图编辑器:项目存取改为存入地图管理统一目录(同名替换确认),支持 ?map=/?new= 进入,新增右侧可停靠 AI 助手面板 - 集成 PTL 拣选模块;新增车队分配面板(运维总览/筛选联动) - SimpleLiteBuildSync 同步运行时依赖 DLL;重新构建前端静态资源 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -45,6 +45,8 @@ public static class SimpleLiteBuildSync
|
||||
log?.LogInformation("[SimpleLiteBuildSync] 已同步 {Src} → {Dst}", objExe, binExe);
|
||||
}
|
||||
|
||||
SyncRuntimeDeps(objDll, binDir, log);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -67,6 +69,30 @@ public static class SimpleLiteBuildSync
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>同步 obj 输出目录中的运行时依赖(Costura 未嵌入或需独立存在的 DLL)。</summary>
|
||||
private static void SyncRuntimeDeps(string objDll, string binDir, ILogger? log)
|
||||
{
|
||||
var objDir = Path.GetDirectoryName(objDll);
|
||||
if (string.IsNullOrEmpty(objDir)) return;
|
||||
|
||||
var names = new[] { "LessokajiWeaverUtilities.dll" };
|
||||
foreach (var name in names)
|
||||
{
|
||||
var src = Path.Combine(objDir, name);
|
||||
if (!File.Exists(src))
|
||||
{
|
||||
var deps = Path.Combine(objDir, "..", "..", "tools", "deps", name);
|
||||
deps = Path.GetFullPath(deps);
|
||||
if (File.Exists(deps)) src = deps;
|
||||
else continue;
|
||||
}
|
||||
|
||||
var dst = Path.Combine(binDir, name);
|
||||
File.Copy(src, dst, true);
|
||||
log?.LogInformation("[SimpleLiteBuildSync] 已同步依赖 {Name}", name);
|
||||
}
|
||||
}
|
||||
|
||||
private static bool TryResolvePaths(string contentRoot, out string objDll, out string objExe, out string binDir)
|
||||
{
|
||||
objDll = objExe = "";
|
||||
|
||||
Reference in New Issue
Block a user