# 工作日志服务平台 - 需求规格说明书 (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. 全局逻辑规则
1. **登录拦截**:用户状态为“禁用”时,任何接口请求均返回“账号已禁用”。
2. **模板关联**:删除模板时,若已有日志引用该模板,日志中的模板内容**不回溯修改**,仅断开关联或保留快照。
3. **时间逻辑**:日志日期允许补填过去日期,但“记录时间”必须为当前服务器时间。
4. **默认值**:新增人员默认状态为“启用”;新增模板默认状态为“启用”。
---
**备注**:本文档为开发基准文档,如有变更需同步更新版本号。