Files
ERP/ofbiz-framework/plugins/modern-ui/OA-SPEC.md
QiufengandClaude Opus 4.8 5e51dc3f56 SNAPSHOT W7 已部署稳定态 — 凯迪ERP+OA一体化平台 (MET 73.3%)
恢复点(restore point)。别人改崩后可 git reset --hard 回到此提交。

== 此快照内容 ==
- 后端 oa-backend: 734 控制器 / 711 实体 (Spring Boot 3.2.5 + SQLite, 端口8091)
- 前端 modern-ui/app: Vue3+Vite, 约700页 (构建产物已在 oa-backend/src/main/resources/static)
- 数据库 oa-backend/data/oa.db: 含全部演示数据 (强制入库, 6.6MB)
- 交接文档 go.md + go-code-reference/endpoints/entities/database.md
- 多代理建设脚本 .claude/wf-*.js

== 状态 ==
- 对 凯迪科技ERP_20260507.xlsx 合规 MET ~73.3% (PARTIAL 75: 34可建+6种子/bug+35外部硬天花板)
- 安全: 5轮红队+5轮复检, default-deny分级鉴权, 连续零可利用
- W3~W7 累计补完436缺口; W8末轮(40缺口)为半成品(源码树可编译但未集成)
- 运行: cd oa-backend; java -jar build/libs/oa-backend-0.1.0.jar --server.port=8091; admin/123456

== 排除(gitignore, 可再生) ==
node_modules / oa-backend/build / .jdks / *.log / Backup-ERP-* / 弃用的OFBiz核心(只保留modern-ui)
完整文件夹备份见同目录 Backup-ERP-20260615-191517/ (含上述全部, 仅缺 node_modules)

时间戳: 20260615-191517

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-15 19:19:15 +08:00

120 lines
9.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# OA 复刻规格(参照:致远 A6-V5 协同管理软件 V9.0SP1 / A8+ 企业版)
> 目标:用我们自己的 **Vue3 + Element Plus** 技术栈,**功能 + 排版完整复刻**致远 OA 的形态。
> 本文件是功能/页面/布局的**结构规格**(供子代理照建),描述的是功能结构与交互,不复制其源码或业务数据。
> 现有可复用地基:`ErpAppShell`(外壳/路由/折叠/独立滚动)、vue-router、设计系统(tokens/安静风格)、组件库
> (`ErpDataTable` 自取数表格+搜索+分页+详情抽屉、`ErpSearchForm`、`ErpTabbedDataPanel`、`ErpStatusTag`、
> `ErpDrawer`、`ErpPageHeader`、`ErpActionBar`)、登录门禁。OA 直接复用这套底座。
## 0. 整体信息架构(IA
**顶部栏(固定)**:左=企业 Logo+名称;右=空间切换(个人空间/单位空间/澄澈式模板空间) + 工具区(应用中心九宫格、全局搜索、在线客服、消息铃铛、设置齿轮、头像)。
**一级模块导航(顶部水平菜单,hover 展开二级下拉)**
| 一级模块 | 二级菜单 |
|---|---|
| **协同工作** | 协同BPM门户 · 新建事项 · 待发事项 · 已发事项 · 待办事项 · 已办事项 · 流程督办监控 · 流程中心 |
| **应用定制平台** | 工作台 · 应用管理中心 · 运维中心 · 监测中心 |
| **报表中心** | 报表管理 · 报表分析 |
| **目标管理** | 主题空间 · 项目/任务 · 工作计划 · 日程事件 · 时间视图 · 领导行程 |
| **会议管理** | 主题空间 · 新建会议 · 我的会议 · 会议纪要 · 会议室 · 快速会议 |
| **知识社区** | 知识门户 · 我的收藏 · 文档中心 · 知识地图 · 我的博客 · RSS订阅 · 文档库管理 |
| **文档协作** | 新建协作 · 协作列表 |
| **文化建设** | 新闻 · 公告 · 讨论 · 调查 · 享空间 |
| **HR管理** | 组织机构设置 · 员工档案管理 · 统计分析 · 工作时间设置 · 信息项设置 |
**快捷功能条(门户顶部彩色图标按钮)**:新建事项 · 新建会议 · 新建计划 · 通讯录 · 我的任务 · 跟踪事项 · 添加快捷(+)。
## 1. 个人空间门户(首页 main,已细看)
布局:顶部固定栏 + 一级模块导航条 + 快捷功能条 + **门户卡片网格(3 列)**
- **待办中心**(左大卡):6 个分类计数瓷砖(全部待办 / 业务审批 / 待开会议 / 重要待办 / 领导发的 / 知会事项),每块显示数字徽标;下方是待办列表(空时显示"暂无数据"占位图)。
- **我的日程**(中卡):大日期 + 本周日期条(日一二三四五六, 今天高亮) + 过滤标签(全部/会议/事件) + 日程列表(空占位)。
- **我的消息**(右卡):标签(全部(100)/@我的(0)) + 消息列表(标题+时间+来源,如签到/文档新建/重命名通知)。
- **我的模板 | 我的报表**(左下卡,标签切换)。
- **跟踪事项**(中下卡,计数)。
- 右上角天气小组件(城市+温度+天气)。
- 每张卡片右上有「···」更多/设置入口。
视觉:浅灰底、白卡、细边框、圆角、克制配色;主色蓝;卡片标题左对齐 + 右侧"更多"。→ 直接用我们的安静设计系统 + 卡片网格复刻。
## 2. 待复刻的模块清单与页面类型(结构)
每个模块的典型页面类型(OA 通用范式,用我们组件实现):
### 2.1 协同工作(核心)
- **新建事项**:发起表单(标题、正文富文本、表单模板、流程选择/节点、附件上传、相关事项关联、意见、协同人/部门选择树、发送)。→ 多步审批流发起页。
- **待办事项 / 已办事项 / 待发事项 / 已发事项**:列表页(筛选:标题/来源/时间/状态;列:标题、发起人、当前节点、来文时间、状态标签;行操作:办理/查看/转发;分页)。→ `ErpDataTable` + `ErpSearchForm`
- **事项办理/详情页**:正文 + 流程轨迹(流转节点时间线)+ 处理意见区 + 操作按钮(同意/退回/转交/加签/办结)。→ 详情 + 时间线 + 动作条。
- **流程督办监控 / 流程中心**:流程实例监控列表 + 流程模板管理。
### 2.2 会议管理
- 新建会议(表单:主题/时间/会议室/参会人/议题/附件);我的会议(列表,待开/已开/我发起);会议纪要(列表+详情);会议室(资源预订日历);快速会议。
### 2.3 目标管理
- 项目/任务(任务列表+看板+甘特);工作计划(日/周/月计划列表+填报);日程事件(日历视图);时间视图;领导行程;主题空间。
### 2.4 知识社区
- 知识门户(门户);文档中心(文件夹树 + 文件列表 + 上传/预览/版本);知识地图;我的收藏;我的博客;RSS订阅;文档库管理。
### 2.5 文档协作
- 新建协作(在线文档协同编辑发起);协作列表(我的协作文档列表)。
### 2.6 文化建设
- 新闻 / 公告(列表 + 详情 + 发布;置顶/分类);讨论(论坛贴);调查(问卷列表+作答+统计);享空间(动态/分享流)。
### 2.7 报表中心
- 报表管理(报表列表/设计入口);报表分析(图表看板)。
### 2.8 HR管理
- 组织机构设置(组织树);员工档案管理(员工列表+档案详情);统计分析;工作时间设置;信息项设置。
### 2.9 应用定制平台(低代码,二期再深)
- 工作台 / 应用管理中心 / 运维中心 / 监测中心。
### 2.10 通讯录(快捷入口)
- 组织架构树 + 人员列表 + 人员详情(部门/职务/电话/邮箱)。→ 树 + 表 + 详情。
## 3. 复用映射(OA 模块 → 现有资产)
- 列表类页面 → `ErpDataTable`(可自取数) + `ErpSearchForm` + `ErpStatusTag` + 分页 + 详情抽屉。
- 门户/卡片 → 安静卡片网格(同已重写的仪表盘风格)。
- 树+表+详情(通讯录/组织/文档中心) → `el-tree` + `ErpDataTable` + `ErpDrawer`
- 多步审批流转 → 详情页时间线(`el-timeline`) + 动作条(`ErpActionBar`)。
- 日历(日程/会议室) → `el-calendar` 或自绘周/月视图。
## 5. 深度理解(二次探索):表单 + 流程 + 低代码 才是这套 OA 的真正核心
二次深扒(截图存于 `verification/oa-shots/` 及会话)后确认:**致远 OA 的本质不是"9 个模块的静态列表页",而是一个表单驱动 + 审批流转的低代码平台**。待办/已办/待发/已发只是"表单实例在流程中流转"的结果视图。
### 5.1 新建事项 = 表单模板选择器(核心入口)
弹窗:左侧按部门/业务分类的**表单模板树**(最近使用、财务审批(8)、项目常用模板(17)、工程管理中心(26)、行政部(7)、人力资源部(6)、公用模板(45)… 粗算 117+ 模板)+ 右侧模板卡片(名称/归属机构/发布时间,hover 出 **预览 / 使用**+ 新建自由协同。
→ 复刻:一个"选模板→填表单→走流程"的发起器;模板按分类树组织。
### 5.2 表单(表单页签)= 表格网格布局 + 富字段 + 子表
以"保函付款申请单"为例:HTML 表格网格,单元格为带标签的字段,字段类型含:
- 文本、文本域、日期/日期时间、**人员选择器**、**部门选择器**、单选(radio)、复选、下拉、数字/金额、附件(附件)。
- **明细子表(动态行)**:如 收款人户名/账号/开户行/金额/凭证附件,可加行删行、行内附件。
→ 复刻:需要一个**表单 schema 驱动的渲染/填写引擎**(按 schema 渲染表格网格 + 各字段控件 + 子表),而不是为每张表硬编码。
### 5.3 流程(流程页签)= 可视化审批流定义
横向流程图:`发起者 → 部门主管[审批] → {制单出纳[知会] ‖ 复核出纳[知会]}(并行) → 结算会计[审批] → 财务部负责人[审批] → 董事长[审批] → 第一出纳[协同] → 结算会计[知会] → 复核出纳[审批] → END`
节点 = **角色/人 + 节点类型**:[审批]/[知会]/[协同];支持串行、并行分支(后续应也有条件分支)。还有"流程使用说明书"页签。
→ 复刻:一个**流程引擎/流转模型**(节点+类型+串并行)+ 流程图展示 + 实例流转(驱动待办/已办)。
### 5.4 应用定制平台(CAP)= 低代码设计器
"为企业量身定制协同业务应用"。统计:系统应用数 2、**表单总数 248(无流程表单 14 + 有流程表单 234)**、队列容量 20000;字段类型转换(文本转日期/数字/日期时间)。入口:应用管理中心(应用/表单管理 + 设计器)、监测中心、运维中心。
→ 复刻(终极形态):一个**低代码表单设计器**(拖拽字段建表格网格 + 子表)+ **流程设计器**(拖节点连线设审批/知会/协同)+ 应用/表单管理。这是"把表格编辑变成低代码平台"的那块。
### 5.5 对复刻架构的影响(重要)
忠实复刻应以"引擎"为中心,而非堆静态页:
1. **表单引擎**FormSchema(字段定义+布局网格+子表)→ FormRenderer(填写)/ FormPreview(只读)。
2. **流程引擎**FlowSchema(节点+类型+连线)→ FlowDiagram(展示)+ 实例流转 → 生成 待办/已办/待发/已发。
3. **发起器**:新建事项(模板树 → 选模板 → 填表单 → 选/走流程 → 提交)。
4. **低代码设计器**:表单设计器 + 流程设计器 + 模板/应用管理(CAP)。
5. 先内置几张样板表单(如 保函付款申请单、供应商准入申请、请假/报销)作为种子数据演示。
> 技术限制说明:致远的"办理详情""CAP 设计器"等是重 iframe 页,浏览器扩展常卡/断连;表单与流程的"预览"页可稳定截取(已扒)。逐张扒完 248 个表单不现实也无必要——**模式已明确**(表格网格表单 + 节点流程图),按引擎复刻即可,再补几张样板表单。