Files
ERP/ofbiz-framework/plugins/modern-ui/OA-SPEC.md
T
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

9.9 KiB
Raw Blame History

OA 复刻规格(参照:致远 A6-V5 协同管理软件 V9.0SP1 / A8+ 企业版)

目标:用我们自己的 Vue3 + Element Plus 技术栈,功能 + 排版完整复刻致远 OA 的形态。 本文件是功能/页面/布局的结构规格(供子代理照建),描述的是功能结构与交互,不复制其源码或业务数据。 现有可复用地基:ErpAppShell(外壳/路由/折叠/独立滚动)、vue-router、设计系统(tokens/安静风格)、组件库 (ErpDataTable 自取数表格+搜索+分页+详情抽屉、ErpSearchFormErpTabbedDataPanelErpStatusTagErpDrawerErpPageHeaderErpActionBar)、登录门禁。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 个表单不现实也无必要——模式已明确(表格网格表单 + 节点流程图),按引擎复刻即可,再补几张样板表单。