learning-backup

00 · 总体方案

版本 v0.2 | 创建 2026-06-10 | 最后编辑 2026-06-10 | 状态 草稿 | 作者 XXX

上游基线:requirements.md(只读)


1. 项目目标

从 0 到 1 独立完成人力资源系统中「组织人事模块」的完整建设,覆盖产品设计 + 全栈开发 + 交付上线三个维度,最终交付一个可实际运行、内网可访问的系统,并以规范的 Git 提交沉淀工程过程。

考核重点是「端到端闭环能力」——不仅是编码,还包括:需求理解深度、产品结构设计、技术方案合理性、把抽象需求落地为可用系统的执行力,以及对用户体验与可扩展性的思考。因此本项目的成败标准不是「写了多少代码」,而是「能否讲清楚一条完整的业务闭环并让它跑起来」。

北极星指标(自评)

维度 达标标准
闭环完整度 至少 1 条「数据录入 → 流程流转 → 审批 → 留痕 → 统计可视化」的端到端链路全程可演示
覆盖广度 10 个功能域均有产品定义与数据落点;核心域可交互,扩展域至少有页面骨架
工程规范 提交规范、目录规范、Lint 通过、README 可一键拉起
产品素养 信息架构清晰、关键流程有状态机、权限模型自洽、空/错/加载态完整
可扩展性 多租户/组织树、RBAC、审计、统一分页与错误码等横切能力预留

2. 范围(Scope)

2.1 In Scope —— 10 大功能域(全量铺开)

# 功能域 本期定位
1 组织架构管理 P0 核心:主体/部门/岗位/职级/汇报关系 + 架构图可视化
2 员工花名册 P0 核心:全量字段、多维检索、批量导入导出、列表自定义列
3 档案库 P1:电子档案分类存储、权限控制、借阅与归还
4 入离调转管理 P0 核心:入职/离职/调动/转正全流程 + 审批与记录
5 合同管理 P1:签订/续签/变更/到期提醒 + 合同模板
6 任职奖惩 P1:任职资格、晋升、奖惩、考核结果归档
7 员工关怀 P2:生日/周年/节日提醒,关怀记录与统计
8 统计分析 P0 核心:人员结构、入离职趋势、司龄分布等多维看板
9 人事报表 P2:报表模板、自定义生成、导出 Excel/PDF、定时推送
10 人事动态 P0 核心:人员变动时间线 + 操作日志全量留痕 + 变更追溯

优先级仅用于排期与降级策略(见 06-roadmap.md),产品与数据设计本期对 10 个域全部给出方案(「全量铺开」)。P0 必须可交互演示;P1 至少打通主链路;P2 给出页面骨架 + 数据结构 + 至少一个可用动作。

2.2 Out of Scope(本期不做 / mock)

2.3 假设与约束


3. 交付物清单

交付物 说明 位置
规划文档 本目录全套(00–07)+ Slidev 演示 docs/
后端源码 Go + Gin + Bun,含 migrations 与 seed server/(规划,本期未建)
前端源码 Nuxt 3 + Tailwind web/(规划,本期未建)
数据库脚本 顺序 SQL migrations + schema 导出 server/migrations/schema.sql
启动说明 根 README + docker-compose.yml + mise 任务(mise run up/dev 仓库根
在线系统 内网可访问 URL,含演示账号 部署机
Git 仓库 规范提交历史 GitLab

4. 技术选型摘要

选型 理由
前端框架 Nuxt 3(Vue 3 + TS) 用户指定;SSR/SEO 友好、目录约定式路由、server/ 可做 BFF;与 Vue 生态一致
UI/样式 Tailwind CSS + 设计 token + 组件库 与参考工程一致,配 huashu-design 设计语言落地
表格/图表 TanStack Table + ECharts(vue-echarts) 花名册大表格 + 统计看板
状态管理 Pinia Vue 官方推荐
后端框架 Go 1.26 + Gin 用户指定;参考工程同构,约定可复用
ORM Bun ORM 参考工程同款,PG 友好、轻量
数据库 PostgreSQL 16 用户指定;树形/JSONB/全文检索能力满足组织人事
缓存 Redis 7 会话、提醒任务、热点缓存
ID Snowflake(BIGINT) 与参考工程一致,避免自增暴露规模
鉴权 JWT 参考工程一致
部署 Docker Compose 一键内网拉起
设计/演示 huashu-design(HTML 原型)+ Slidev 高保真原型、汇报演示

与参考工程的差异点:前端从 Vite-SPA 改为 Nuxt 3(用户指定)。因此前端不直接复用参考工程代码,但其组件分层(components/uicomposablesstoresapi)思路保留;后端沿用参考工程的 internal/<module>(handler/service/repo/models/router)分层与 migrations 约定。详见 02-architecture.md


5. 里程碑总览

阶段 目标 产物 时间盒
M0 规划 需求拆解、架构与数据设计定稿 docs/ 全套(本阶段) Day 0
M1 地基 工程骨架 + 基础设施 + 鉴权 + 组织/员工 CRUD 可登录、可看组织树与花名册 Day 1 上半
M2 闭环 入离调转审批流 + 人事动态/操作日志 1 条端到端闭环可演示 Day 1 下半
M3 看板 统计分析看板 + 导入导出 数据可视化 Day 2 上半
M4 扩展 档案/合同/奖惩/关怀/报表 骨架与主链路 10 域全覆盖 Day 2 下半
M5 交付 部署、README、演示稿、收尾 在线 URL + Slidev 截止前

时间盒为理想排期;实际按 06-roadmap.md 的优先级动态降级(先保 P0 闭环,再铺广度)。


6. 风险概览(详见 06

风险 等级 应对
工期极紧、范围过大(10 域全铺) 严格 P0 优先、扩展域只做骨架;可降级清单前置
Nuxt 与参考工程前端不同构,无现成代码 前端只借鉴分层,组件用 Tailwind 自建;优先用成熟 headless 组件
审批流状态机复杂度 用通用 approval_instances 表 + 简单串行审批,先跑通再增强
部署/内网联通 Docker Compose 一键化,提前验证端口与可达性

变更记录

版本 日期 作者 说明
v0.1 2026-06-10 XXX 初稿:目标、范围、交付物、选型、里程碑、风险
v0.2 2026-06-10 XXX 启动方式由 Makefile 改为 mise 任务