- 项目文档:PRD、SRS、架构设计文档、前后端详细设计文档、架构设计规范 - 数据库脚本:用户创建和数据库初始化脚本 - 后端框架:Spring Boot 3.2 + MyBatis-Plus 3.5 基础架构 - 公共组件:统一返回结果、分页封装、全局异常处理 - 基础功能:链路追踪、API日志、健康检查接口 - 配置文件:application.yml.example 配置模板 - 开发规范:遵循架构设计规范,data目录存放MyBatis-Plus文件
6.1 KiB
6.1 KiB
工作日志服务平台 - 需求规格说明书 (SRS)
版本号:V1.0
日期:2023-10-27
状态:待开发
1. 引言
1.1 项目背景
配合 2026 年人员管理需求,构建一套简易的工作日志服务平台,用于记录员工日常工作内容,支持模板化管理及人员信息维护。
1.2 建设目标
实现人员信息数字化管理、工作日志在线填写与查看、日志模板标准化配置。
1.3 范围
包含人员管理、日志模板管理、工作日志管理三大模块。不包含项目管理模块。
2. 用户角色
系统分为两种角色,权限控制如下:
| 角色 | 说明 | 权限范围 |
|---|---|---|
| 普通员工 | 系统的使用者 | 1. 修改个人密码/信息 2. 撰写、查看、修改、删除自己的日志 3. 查看启用的日志模板 |
| 管理员 | 系统的维护者 | 1. 拥有普通员工所有权限 2. 人员管理:增删改查所有人员、启用/禁用账号 3. 模板管理:增删改查所有模板、启用/禁用模板 4. 日志管理:可查看全公司日志(可选) |
3. 功能需求详解
3.1 人员管理模块
| 功能点 | 描述 | 输入项 | 处理逻辑 | 输出/结果 |
|---|---|---|---|---|
| 账号登录 | 用户进入系统 | 账号、密码 | 验证账号存在且状态为“启用”,密码匹配 | 登录成功跳转首页,失败提示错误 |
| 人员列表 | 查看人员信息 | 无/搜索条件 | 展示人员基本信息列表 | 表格展示姓名、职位、状态等 |
| 新增人员 | 创建新账号 | 姓名、账号、密码、职位等 | 账号唯一性校验,密码加密存储 | 创建成功,状态默认为“启用” |
| 编辑人员 | 修改信息 | 除账号外的所有字段 | 验证权限(仅管理员或本人) | 信息更新 |
| 启用/禁用 | 控制账号状态 | 无 | 切换状态标志位 | 禁用后该账号无法登录 |
| 删除人员 | 移除人员 | 无 | 逻辑删除(建议)或物理删除 | 人员从列表消失 |
3.2 日志模板管理模块
| 功能点 | 描述 | 输入项 | 处理逻辑 | 输出/结果 |
|---|---|---|---|---|
| 模板列表 | 查看可用模板 | 无 | 仅展示状态为“启用”的模板给普通用户 | 模板名称、使用说明列表 |
| 新增模板 | 创建新模板 | 名称、内容、说明 | 内容支持 Markdown 格式 | 模板创建成功 |
| 编辑模板 | 修改模板 | 名称、内容、说明 | 验证权限(仅管理员) | 模板信息更新 |
| 启用/禁用 | 控制模板可用性 | 无 | 切换状态标志位 | 禁用后用户写日志时不可选 |
| 删除模板 | 移除模板 | 无 | 验证权限(仅管理员) | 模板从列表消失 |
3.3 工作日志管理模块
| 功能点 | 描述 | 输入项 | 处理逻辑 | 输出/结果 |
|---|---|---|---|---|
| 写日志 | 提交日常工作 | 日期、内容、选用模板 | 1. 记录人自动获取当前登录者 2. 内容字数校验 3. 记录时间自动生成 |
日志保存成功 |
| 日志列表 | 查看历史日志 | 日期范围、关键词 | 普通用户仅见自己,管理员可见全部 | 日志列表(含日期、摘要) |
| 编辑日志 | 修改已写日志 | 内容、模板 | 仅允许修改自己的日志 | 日志内容更新 |
| 删除日志 | 移除日志 | 无 | 仅允许删除自己的日志 | 日志从列表消失 |
| 日志详情 | 查看完整内容 | 无 | 渲染 Markdown 内容为 HTML | 展示格式化后的日志内容 |
4. 数据字段与约束
4.1 人员信息 (User)
- 姓名:必填,文本。
- 联系方式:选填,文本。
- 电子邮箱:选填,需符合邮箱格式。
- 登录账号:必填,唯一,文本。
- 登录密码:必填,加密存储(不可明文)。
- 职位:选填,文本。
- 描述:选填,文本。
- 状态:启用/禁用。
4.2 日志模板 (Template)
- 模板名称:必填,文本。
- 模板内容:必填,支持 Markdown 语法。
- 使用说明:选填,文本。
- 状态:启用/禁用。
4.3 工作日志 (Log)
- 日志日期:必填,日期格式(YYYY-MM-DD)。
- 记录人:系统自动获取,不可手动修改。
- 记录时间:系统自动生成(YYYY-MM-DD HH:MM:SS)。
- 记录内容:必填,最大 2000 汉字,支持 Markdown 语法。
- 使用模板:选填,关联模板 ID。
5. 非功能需求 (NFR)
5.1 安全性
- 密码安全:所有用户密码必须经过哈希加密(如 BCrypt)后存入数据库。
- 权限控制:接口层需验证登录态(Token),普通用户不可越权访问管理员接口或他人数据。
- 输入过滤:防止 XSS 攻击,尤其是 Markdown 内容渲染时需做安全过滤。
5.2 性能与约束
- 字数限制:日志内容前端需实时统计字数,后端需二次校验,超过 2000 汉字禁止提交。
- 并发支持:支持至少 50 人同时在线操作无明显卡顿。
- 数据保留:禁用/删除操作建议采用“软删除”(标记状态位),以便后续审计追溯。
5.3 可用性
- Markdown 支持:前端需集成 Markdown 编辑器,支持预览功能。
- 响应式:界面需适配主流浏览器及移动端基础查看。
6. 全局逻辑规则
- 登录拦截:用户状态为“禁用”时,任何接口请求均返回“账号已禁用”。
- 模板关联:删除模板时,若已有日志引用该模板,日志中的模板内容不回溯修改,仅断开关联或保留快照。
- 时间逻辑:日志日期允许补填过去日期,但“记录时间”必须为当前服务器时间。
- 默认值:新增人员默认状态为“启用”;新增模板默认状态为“启用”。
备注:本文档为开发基准文档,如有变更需同步更新版本号。