Commit Graph
18 Commits
Author SHA1 Message Date
ArtoriasWu f4dec3c120 初始化 MiGu.Server 项目,包含基本的 ASP.NET Core 8 配置、JWT 鉴权、RBAC 权限管理、YARP 反向代理及相关配置文件。新增 build-and-run 脚本以简化构建与运行流程,添加 README 文档以指导用户快速上手。 2026-06-22 09:29:31 +08:00
ArtoriasWu f2ef32a22b 引入WMS仓储主数据与关系管理全流程能力
后端实现基于EF Core的库区/库位/容器/物料/关系/历史等模型、服务与RESTful接口,支持多数据库Provider。前端新增类型、API与聚合页面,支持主数据及容器位置/物料关系的增删改查、绑定/解绑、装料/卸料、历史追溯。完善权限、菜单与文档,平台具备完整WMS能力。
2026-06-22 09:15:42 +08:00
ArtoriasWu 87629a8537 调整 .gitignore 以适配 backends 目录结构
将 MiGu.Server 相关忽略规则迁移至 backends/MiGu.Server,并新增对 .tmp-build* 和 /.cursor/rules 的忽略,优化敏感数据与临时文件的管理。
2026-06-22 08:55:55 +08:00
ArtoriasWu 45f0261ed7 Ignore frontend build artifacts 2026-06-09 09:03:41 +08:00
zhaowei.huang 1c03c7bd80 build(frontend): sync compiled web assets 2026-06-08 18:18:48 +08:00
zhaowei.huangandCursor 655d50e04d fix(server): 转发头可信代理可配置、登录冷启动非阻塞与启动路径/授权健壮化
Program.cs 的 ForwardedHeaders 改为读 ForwardedHeaders:KnownProxies 显式收紧可信代理
(未配置则维持信任所有,适合同机/内网;配置后按数量收紧 ForwardLimit,解析全失败 fail-closed),
并补 AnyAuthed 授权策略、内容根/前端目录三级探测、OpsAuditStore 与 HttpClientFactory 注册;
AuthController 登录改 MaybeStart(waitForReady:false) 避免 SimpleLite 冷启动阻塞登录;
SimpleLiteLauncher 增强相对 ContentRoot 的文件/目录解析,兼容从 bin 目录运行。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-08 16:10:34 +08:00
zhaowei.huangandCursor 4ca5a5afeb feat(server/logs): 内核 DLog 日志管理 API 与地图内容读取接口
LogsController 暴露 SimpleLite 落盘 DLog(概览/文件浏览/条目/合订/分析/原文/下载),
含路径穿越防护、单文件与跨文件聚合的条数/字节上限,鉴权收紧为 PlatformScope(仅平台后台用户);
MapsContentController 经投影 API 定位地图目录后读取地图 JSON,含路径穿越校验。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-08 16:09:59 +08:00
zhaowei.huangandCursor bc1d4b8b5c feat(server/ops): 运维动作真实下发内核、审计持久化与幂等去重
OpsController 由「假成功队列」改为经投影反射 API 真实下发 SimpleLite,按 appsettings
的 Ops:Dispatch 映射 opCode→kind:Method,并做白名单 + JWT ops claim 双重校验;
审计改用 OpsAuditStore 原子落盘(取代进程内队列,重启不丢),新增 IdempotencyKey 幂等去重;
ExtractNumericId 取首段数字避免 AGV-12-3 误合并。appsettings 同步加 Ops:Dispatch 说明与 sl-route 鉴权策略。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-08 16:09:29 +08:00
zhaowei.huangandCursor e77ee818f1 feat(server/rbac): 权限页聚合迁移、最后管理员保护与配置原子落盘
PageCatalog 将 admin-config 重构为 6 大聚合分类,并加旧 key 别名兼容旧链接;
RbacStore 接入原子写 + 损坏备份,新增「最后管理员」保护,避免操作后系统无任何在岗管理员;
ConfigStore 改用 AtomicFile 持久化;新增 Infra/AtomicFile 原子写工具(临时名带 GUID 防并发)。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-08 16:09:01 +08:00
zhaowei.huangandCursor 7db98c18b2 chore(web): 重新构建前端静态资源
同步工作流编辑器组件的 Vite 构建产物与 components.d.ts 自动声明。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-03 18:40:52 +08:00
zhaowei.huangandCursor 7382e85598 feat(platform): 部署配置向导 + 地图管理,地图编辑器接入统一存取与 AI 助手
- 配置向导:登录按 deployment 画像引导平台选型(导航方式/模块/场景),未完成则路由守卫强制进入 /wizard;选型驱动菜单按需裁剪,并联动 SimpleLite 写 plugins/active-scenes.json + 透传 --scenes 选择性加载导航场景插件
- 地图管理页:服务器地图列表/使用/重命名/删除、地图合并、多地图连接管理
- 地图编辑器:项目存取改为存入地图管理统一目录(同名替换确认),支持 ?map=/?new= 进入,新增右侧可停靠 AI 助手面板
- 集成 PTL 拣选模块;新增车队分配面板(运维总览/筛选联动)
- SimpleLiteBuildSync 同步运行时依赖 DLL;重新构建前端静态资源

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-03 09:37:07 +08:00
zhaowei.huangandCursor e2269e430d feat(platform): 合并车辆运维页并优化 3D 画布嵌入体验
将维护策略与车队生命周期并入车辆运维 Tab,补充旧路由重定向与 RBAC 页面 key 迁移;改进 Workspace3D 就绪探测与 wwwroot 静态资源。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-31 14:39:50 +08:00
zhaowei.huangandCursor be0503c535 chore(web): 重新构建前端静态资源
同步 simple-platform-vue 构建产物与 index.html 入口哈希。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-31 00:16:56 +08:00
zhaowei.huangandCursor 62943e6c42 feat(vehicle-hub): 新增车辆运维页(健康监控 / 维护操作 / 批量管理)
- 新增 fleetHealth / vehicleOps API、useVehicleHub 组合式与 VehicleHealthCard 卡片
- 新增 /admin/config/vehicle-hub 与 /monitor/vehicle-hub 双端路由及侧栏菜单
- car 类型补充 rawId/onboardUrl/lstatus 及 FleetHealthRow/VehicleCardModel
- 后端 PageCatalog 注册「车辆运维」页,原「车辆维护」更名为「车辆维护策略」

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-31 00:16:16 +08:00
zhaowei.huang 3356c2cd12 chore(web): 重新构建前端静态资源
- 更新 MiGu.Server/wwwroot/assets 产物与 index.html 入口哈希,对应本次前端源码改动
2026-05-29 23:53:00 +08:00
zhaowei.huang 37680a0ae7 feat(launcher): SimpleLite 进程独立化与 DLL 热更新
- FollowParent=false 时在 Windows 用 cmd /c start 脱离父进程组,关闭 MiGu.Server 不再连带结束 SimpleLite
- 新增 SimpleLiteBuildSync:SimpleLite 未运行时把 obj/Debug 最新 DLL 同步到 bin/Debug,并探测「前往站点」API 是否可用
- 新增 RestartForUpdate 与 POST /api/health/simplelite/restart-for-update:一键关闭、同步、重启以加载新 API
- 诊断增加 FollowParent / GotoSiteApiAvailable / DeployHint;新增 scripts/redeploy-simplelite.ps1 部署脚本
- Dispose 增加 _disposed 幂等保护,避免重复释放
2026-05-29 23:51:23 +08:00
zhaowei.huang a5dd632898 feat(rbac): RbacStore 持久化权限体系替代硬编码 UserStore
- 新增 PageCatalog / RbacModels / RbacStore / RbacController:用户、角色、页面/操作/控件授权落盘 data/rbac.json,支持运行时增删改并即时生效
- 密码改用 PBKDF2-SHA256(100k 迭代 + 16B 随机盐) 存储,校验走 FixedTimeEquals 防时序攻击;对外 DTO 绝不外泄盐/哈希
- AuthController 登录 / me / switch-scope 统一收敛到 BuildSession,按角色在当前 scope 的并集计算有效权限并签发 JWT
- EffectivePermissions 增加 AllowedPages;移除旧的硬编码 UserStore
- Program.cs 注册 RbacStore、新增 RbacAdmin 授权策略(ops claim 含 * 或 auth.manage),并按 SimpleLite:FollowParent 决定是否注册停机清理钩子
2026-05-29 23:51:08 +08:00
zhaowei.huangandCursor 42978930ca feat: 迁入 MiGu.Server、平台前端与车辆列表 reflection 回退
从 Simple-FR 拆出 Platform.Server 并重命名为 MiGu.Server;frontends 源码与构建脚本迁入本仓库。地图监控在 projection/cars 失败或为空时回退 reflection 车辆列表;Simple 仓库已移除旧 Platform.Server。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 18:16:34 +08:00