20260802220544

This commit is contained in:
oneao committed 2026-08-02 22:05:44 +08:00
1 parent c00329b5a4
commit 4fc9040a8a
60 files changed
+6273 -908

No files matched your search

+18
View File
@@ -0,0 +1,18 @@
# FMS 项目长期记忆
## 设计令牌作用域(重要踩坑)
- `--fms-*` 设计令牌必须在 `:root` 上定义(全局),不能只放在 `.theme-root`。
- 原因:`a-modal` 等 antdv 组件默认 teleport 到 `<body>`,脱离 `.theme-root`,令牌在其内部全部失效,表现为 "var(--fms-border) is not defined" 报错 + 边框/颜色丢失。
- 现状:`fms-vue/src/styles/main.scss` 的 `:root` 已声明全部令牌;`.theme-root` 仅保留 color/background/overflow。
## fms-file 附件组件关键约定
- 宫格/列表双模式由 `FileListPanel.vue` 的 `viewMode`(grid/list)控制。
- 上传:点击/拖拽/粘贴均汇入 `addFiles()`,允许重复上传同一文件(前端已移除去重,后端无同名约束)。
- 拖拽重复入栈防护在 `handleDragEnter/Leave` 的 `e.currentTarget !== e.target` 判断,非靠去重。
- 待上传文件虚拟 id 形如 `_pending_N`,`deleteSelected` 需降序删除防索引漂移。
## 项目结构速查
- 后端 `fms-api/` Spring Boot 4.1 + Java 21 + SQL Server(Druid 多组织路由);端口 8088,context-path `/api`。
- 前端 `fms-vue/` Vue 3 + Vite + Pinia + antdv-next;dev `:5180`,代理 `/api`→`127.0.0.1:8088`。
- 通用数据接口:`/data/loaddata`、`/data/page`、`/data/saveobjt`、`/data/nextid`、`/auth/login`、`/file/upload`。勿新增业务端点。
- 开发纪律:改完不自行 build/起服务,除非用户要求;可用 `vite build`(或 `--mode development --emptyOutDir false` 规避 dist 清理权限问题)验证。