# 06 功能需求规格 ## 6.1 编写说明 本章采用标准化需求规格的写法,对系统应具备的主要功能进行描述。每条需求均尽量明确以下内容: - 功能目标 - 适用角色 - 触发条件 - 业务结果 - 优先级 这些需求编号将作为后续数据库设计、接口设计、测试用例设计和答辩说明的重要依据。 ## 6.2 平台基础子系统功能需求 | 编号 | 功能名称 | 需求说明 | 参与角色 | 触发/前置条件 | 结果与验收要点 | 优先级 | |------|----------|----------|----------|----------------|----------------|--------| | FR-PC-01 | 用户注册与登录 | 系统应支持用户注册、登录、退出和邮箱验证 | user | 系统开放注册并具备身份事实源 | 用户可完成注册和登录,未验证用户受限 | 高 | | FR-PC-02 | 用户资料维护 | 系统应支持用户查看和维护个人资料 | user | 用户已登录 | 用户可查看并更新个人基础资料 | 高 | | FR-PC-03 | 用户状态管理 | 管理端应支持审核、启用、停用、封禁、删除等状态管理 | admin、super_admin | 管理员具备相应权限 | 用户状态变更可持久化并可追溯 | 高 | | FR-PC-04 | 部门树管理 | 管理端应支持部门新增、修改、排序、层级调整和删除控制 | admin、super_admin | 管理员具备组织管理权限 | 部门层级正确展示,非法删除被阻止 | 高 | | FR-PC-05 | 岗位管理 | 管理端应支持岗位新增、修改、启停和删除 | admin、super_admin | 管理员具备组织管理权限 | 岗位信息可维护,状态可控制 | 中 | | FR-PC-06 | 用户部门分配 | 管理端应支持为用户分配一个或多个部门 | admin、super_admin | 用户和部门已存在 | 用户与部门关系可持久化维护 | 高 | | FR-PC-07 | 用户岗位分配 | 管理端应支持为用户分配一个或多个岗位 | admin、super_admin | 用户和岗位已存在 | 用户与岗位关系可持久化维护 | 中 | | FR-PC-08 | 角色管理 | 管理端应支持角色新增、修改、删除和查询 | admin、super_admin | 管理员具备角色管理权限 | 角色信息可维护,编码唯一 | 高 | | FR-PC-09 | 权限字典管理 | 管理端应支持权限定义和角色授权关系维护 | admin、super_admin | 角色和权限已存在 | 角色与权限关系可维护并可查询 | 高 | | FR-PC-10 | 用户角色分配 | 管理端应支持为用户分配一个或多个角色 | admin、super_admin | 用户和角色已存在 | 用户可获得相应角色能力 | 高 | | FR-PC-11 | 数据范围配置 | 管理端应支持按模块配置角色的数据范围 | admin、super_admin | 角色和模块已存在 | 模块级数据范围可配置并生效 | 高 | | FR-PC-12 | 审计日志记录 | 系统应自动记录管理端关键操作的审计日志 | admin、staff、major_lead | 发生关键管理操作 | 日志中保留操作者、动作、对象、时间和上下文 | 高 | | FR-PC-13 | 审计日志查询 | 管理端应支持按条件查询审计记录 | admin、super_admin | 审计日志已存在 | 支持按时间、操作者、动作和对象查询 | 中 | | FR-PC-14 | 系统配置管理 | 管理端应支持维护与业务有关的系统配置项 | admin、super_admin | 管理员具备配置权限 | 关键业务配置可维护并可被业务读取 | 中 | ## 6.3 功能房预约子系统功能需求 | 编号 | 功能名称 | 需求说明 | 参与角色 | 触发/前置条件 | 结果与验收要点 | 优先级 | |------|----------|----------|----------|----------------|----------------|--------| | FR-FA-01 | 楼房管理 | 管理端应支持楼房信息新增、修改、启停和排序 | admin、super_admin | 管理员具备场地管理权限 | 楼房信息可维护并可用于房间归属 | 高 | | FR-FA-02 | 房间管理 | 管理端应支持房间信息新增、修改、启停和排序 | admin、super_admin | 楼房已存在 | 房间可被正确归属于楼房和楼层 | 高 | | FR-FA-03 | 楼房楼层查询 | 前台应支持按楼房、楼层查询房间列表 | user | 房间数据已存在 | 用户可查看目标范围内房间基础信息 | 高 | | FR-FA-04 | 时间占用查询 | 前台应支持按时间窗口查询房间占用情况 | user | 房间与预约数据已存在 | 用户可查看房间在指定时间段的占用状态 | 高 | | FR-FA-05 | 预约申请 | 用户应能够选择房间、时间和用途提交预约申请 | user | 用户已登录、房间可用、未被封禁 | 系统保存预约记录并分配初始状态 | 高 | | FR-FA-06 | 参与人维护 | 用户应能够为预约添加和维护参与人 | user | 用户已登录并创建预约 | 系统保存参与人信息并校验合法性 | 高 | | FR-FA-07 | 预约审核 | 审核人员应能够对待审预约执行通过或驳回 | staff、admin、super_admin | 审核开关开启且预约处于待审状态 | 状态、审核人、审核时间和审核意见被记录 | 高 | | FR-FA-08 | 预约取消 | 用户应能够在符合条件时取消自己的预约 | user | 预约属于当前用户且尚未开始 | 预约状态变更为取消并保留取消信息 | 高 | | FR-FA-09 | 驳回后重提 | 用户应能够修改被驳回预约并重新提交 | user | 预约处于驳回状态 | 预约可再次进入审核流程 | 中 | | FR-FA-10 | 我的预约查询 | 用户应能够查看与自己相关的预约记录 | user | 用户已登录 | 可查看预约状态、时间、房间和参与人信息 | 高 | | FR-FA-11 | 封禁管理 | 管理端应能够对违规用户执行封禁和解封 | admin、super_admin | 管理员具有封禁权限 | 被封禁用户不能新建预约 | 高 | | FR-FA-12 | 模块配置管理 | 管理端应能够配置预约审核开关、最长时长等规则 | admin、super_admin | 管理员具有配置权限 | 配置可被预约业务读取并影响流程 | 中 | | FR-FA-13 | 统计排行 | 系统应支持按时间窗口统计房间和用户使用排行 | admin、staff、user | 预约事实数据已存在 | 可生成房间榜和用户榜 | 中 | ## 6.4 课程资源分享子系统功能需求 | 编号 | 功能名称 | 需求说明 | 参与角色 | 触发/前置条件 | 结果与验收要点 | 优先级 | |------|----------|----------|----------|----------------|----------------|--------| | FR-CR-01 | 专业管理 | 管理端应支持专业信息新增、修改、启停和排序 | admin、super_admin | 管理员具备相应权限 | 专业信息可维护并可作为课程归属基础 | 高 | | FR-CR-02 | 课程管理 | 管理端应支持课程信息新增、修改、启停和排序 | admin、super_admin | 专业已存在 | 课程可被正确归属于专业 | 高 | | FR-CR-03 | 专业负责人配置 | 管理端应支持为专业配置一个或多个负责人 | admin、super_admin | 用户和专业已存在 | 专业与负责人关系可持久化维护 | 高 | | FR-CR-04 | 草稿创建 | 用户应能够为某课程创建资源草稿 | user | 用户已登录、课程存在 | 资源草稿可被保存并继续编辑 | 高 | | FR-CR-05 | 草稿编辑 | 用户应能够编辑草稿、驳回或下架状态的资源 | user | 资源属于当前用户且处于允许编辑状态 | 草稿内容可被更新 | 高 | | FR-CR-06 | 文件或外链录入 | 用户应能够上传文件或填写外链作为资源内容 | user | 草稿已存在 | 资源内容可按文件型或外链型保存 | 高 | | FR-CR-07 | 提交审核 | 用户应能够将资源从可提交状态送审 | user | 资源信息完整并满足业务规则 | 资源进入待审状态 | 高 | | FR-CR-08 | 资源审核 | 审核人员应能够对待审资源执行通过或驳回 | major_lead、admin、super_admin | 资源处于待审状态且审核人有权限 | 审核结果、审核人和审核意见被记录 | 高 | | FR-CR-09 | 资源发布与下架 | 系统应支持资源发布、下架和重新提交 | major_lead、admin、super_admin | 资源审核通过或处于已发布状态 | 资源状态可按规则流转 | 高 | | FR-CR-10 | 资源列表查询 | 前台应支持按专业、课程、关键词查询已发布资源 | user | 已发布资源存在 | 用户可查询和筛选资源 | 高 | | FR-CR-11 | 资源详情查看 | 前台应支持查看资源详情及其课程归属信息 | user | 资源已发布 | 可查看标题、描述、作者、课程等内容 | 高 | | FR-CR-12 | 下载记录与统计 | 系统应记录资源下载行为并维护统计信息 | user | 资源可下载 | 下载事件被记录,统计可更新 | 高 | | FR-CR-13 | 最佳推荐管理 | 管理端应支持对资源进行推荐和取消推荐 | major_lead、admin、super_admin | 资源已发布且审核人有权限 | 推荐事实被记录并可撤销 | 中 | | FR-CR-14 | 积分记录与排行 | 系统应根据审核和推荐规则记录积分事件并生成排行 | user、major_lead、admin | 已配置积分规则 | 积分事件可追踪,排行可统计 | 中 | | FR-CR-15 | 我的资源管理 | 用户应能够查看自己的资源列表、状态和审核结果 | user | 用户已登录 | 能按状态查看资源并进行后续操作 | 高 | ## 6.5 可选扩展功能需求:数字图书馆 | 编号 | 功能名称 | 需求说明 | 参与角色 | 触发/前置条件 | 结果与验收要点 | 优先级 | |------|----------|----------|----------|----------------|----------------|--------| | FR-LB-01 | 图书元数据管理 | 管理端应支持图书基础元数据维护 | librarian、admin、super_admin | 图书馆模块启用 | 图书主体信息可维护 | 低 | | FR-LB-02 | 图书资源投稿 | 用户应能够投稿电子书或资料 | user | 图书馆模块启用且用户已登录 | 投稿草稿可保存并送审 | 低 | | FR-LB-03 | 图书审核发布 | 管理端应支持图书审核、发布和下架 | librarian、admin、super_admin | 图书资源处于待审状态 | 图书资源可按规则流转 | 低 | | FR-LB-04 | 下载与收藏统计 | 系统应支持图书下载和收藏统计 | user | 图书馆模块启用 | 下载和收藏事实可被记录和统计 | 低 | ## 6.6 需求特点总结 从功能需求规格可以看出,本课题具有以下特点: - 不是单纯的 CRUD 系统 - 存在明显的多角色协作 - 存在多个需要明确生命周期的状态对象 - 存在多对多关系、层级关系和事件型数据 - 需要对权限、数据范围、审核、统计和审计进行统一考虑 这些特点决定了后续数据库设计不能仅满足“能存数据”,而应进一步考虑: - 主键与外键设计 - 业务状态与辅助字段一致性 - 多对多关系拆分 - 事件表与主体表分层 - 查询和统计的索引支撑