企业资产管理系统 - 详细功能需求说明书

作者: laoren

版本: 1.0.0

日期: 202607

更新日志:

  • 基础需求

[toc]

一、用户认证与权限管理

1 登录功能

功能描述:用户通过账号密码登录系统,获取访问令牌。

业务规则

  1. 账号不区分大小写,密码需加密存储(BCrypt)
  2. 连续登录失败 5 次,锁定账号 15 分钟(防暴力破解)
  3. 支持 ” 记住我 ” 功能(Token 有效期 7 天)
  4. 同一账号同一时间只允许一个设备在线(Sa-Token 并发控制)

界面交互

  • 登录页包含:账号输入框、密码输入框、验证码(可选)、登录按钮
  • 密码框支持显示/隐藏密码切换
  • 登录失败时,在输入框下方红色文字提示错误原因
  • 登录成功后,跳转至仪表盘

异常场景

场景系统响应
账号不存在提示 ” 用户名或密码错误 “(不暴露具体原因)
密码错误提示 ” 用户名或密码错误 “,记录失败次数
账号被禁用提示 ” 账号已被禁用,请联系管理员 “
Token 过期自动跳转登录页,提示 ” 登录已过期,请重新登录 “

2 退出登录

功能描述:用户主动退出系统,清除会话信息。

业务规则

  1. 退出时清除服务端 Session 和客户端 Token
  2. 退出后跳转到登录页
  3. 不支持 ” 退出但保留登录状态 ”

界面交互

  • 右上角用户头像下拉菜单中提供 ” 退出登录 ” 按钮
  • 点击后弹出确认框:” 确认退出登录吗?“

3 当前用户信息获取

功能描述:获取当前登录用户的详细信息,用于前端渲染。

返回字段

{
  "userId": 3,
  "username": "zhangsan",
  "realName": "张三",
  "roleCode": "USER",
  "roleName": "普通员工",
  "deptId": 2,
  "deptName": "技术部",
  "email": "zhangsan@company.com",
  "phone": "13800000003"
}

界面交互

  • 页面顶部右侧显示用户头像(首字母)和真实姓名
  • 鼠标悬停显示下拉菜单:个人信息、修改密码、退出登录

4 修改密码

功能描述:用户修改自己的登录密码。

业务规则

  1. 需验证原密码正确性
  2. 新密码长度 6-20 位,必须包含字母和数字
  3. 新密码不能与原密码相同
  4. 修改成功后,强制退出重新登录

界面交互

  • 弹窗表单:原密码、新密码、确认密码
  • 密码强度指示条(弱/中/强)
  • 修改成功后提示 ” 密码已修改,请重新登录 “

二、仪表盘(工作台)

1 数据概览

功能描述:展示当前用户关心的核心数据指标。

业务规则

指标计算逻辑可见角色
总资产数全部资产数量全部
空闲资产数status=0 的资产数量全部
已领用资产数status=1 的资产数量全部
待审批数量status=0 的申请单数量MANAGER/ADMIN
我的申请数当前用户发起的申请总数全部
本部门资产数当前用户所在部门的资产数USER/MANAGER

界面交互

  • 卡片式布局展示指标数字
  • 点击卡片可跳转到对应的列表页面(如点击 ” 待审批 ” 跳转到待审批列表)

2 待办事项列表

功能描述:展示当前用户需要处理的待办事项。

业务规则

  1. 普通用户:显示 ” 我的申请 ” 中状态为 ” 待审批 ” 的记录
  2. 主管/管理员:显示 ” 待审批 ” 列表
  3. 按申请时间倒序排列
  4. 最多显示 5 条,点击 ” 查看更多 ” 跳转至完整列表

界面交互

  • 列表展示:申请编号、资产名称、申请人、申请时间
  • 每条记录右侧有 ” 去处理 ” 或 ” 查看详情 ” 按钮

三、资产管理

1 资产列表(分页查询)

功能描述:支持多条件筛选和分页查看资产列表。

筛选条件:

筛选字段类型说明
资产名称模糊搜索支持模糊匹配
资产编号精确搜索支持全匹配
类别下拉选择从类别表中读取
状态下拉选择空闲/已领用/维修中/已报废
所属部门下拉选择从部门表中读取(ADMIN 可见全部,MANAGER 可见本部门)
领用人模糊搜索按真实姓名搜索

列表字段展示

列名宽度特殊处理
序号60px自动编号
资产名称150px-
资产编号130px-
类别100px-
当前状态100px使用彩色标签(绿色 - 空闲/蓝色 - 已领用/橙色 - 维修中/灰色 - 已报废)
所属部门120px-
领用人80px无人领用时显示 ”-“
购买日期110px格式:YYYY-MM-DD
价格100px保留两位小数,显示 ¥符号
操作220px动态按钮(见下方说明)

操作按钮权限

用户角色可用操作
USER查看详情、发起申请(仅空闲资产)
MANAGER查看详情、发起申请(仅空闲资产)、查看本部门资产报表
ADMIN查看详情、编辑、删除、发起申请(全部资产)

界面交互

  • 分页组件:显示总条数、每页 10/20/50/100 可选、跳转页码
  • 搜索条件支持 ” 重置 ” 一键清空
  • 表格支持按列排序(资产编号、价格、购买日期)

2 新增资产

功能描述:管理员新增一条资产记录。

表单字段

字段类型必填说明
资产名称输入框最大 50 字符
类别下拉选择从类别表读取
规格型号输入框最大 100 字符
购买日期日期选择器不能超过当前日期
购买价格数字输入框保留两位小数,大于 0
备注文本域最大 200 字符

业务规则

  1. 资产编号由系统自动生成:ZC + 年月日 + 4位流水号(如 ZC202607190001)
  2. 新增资产默认状态为 ” 空闲 ”
  3. 新增成功后在列表中刷新

界面交互

  • 使用弹窗 Dialog 形式,非跳转页面
  • 提交时表单校验,校验失败高亮错误字段
  • 提交成功后弹出提示并关闭弹窗

3 编辑资产

功能描述:管理员修改资产信息。

业务规则

  1. 资产编号不可修改(只读)
  2. 状态为 ” 已领用 ” 的资产,不允许修改类别和购买日期(防止数据不一致)
  3. 修改成功后刷新列表

界面交互

  • 与新增资产共用同一 Dialog,通过参数区分模式
  • 已领用资产的敏感字段置灰不可编辑

4 删除资产

功能描述:管理员删除资产记录。

业务规则

  1. 状态为 ” 已领用 ” 的资产不允许删除(必须先归还)
  2. 删除为物理删除(直接从表中删除)
  3. 删除前需二次确认

界面交互

  • 点击删除按钮,弹出确认框:” 确认删除资产【XXX】吗?此操作不可恢复!”
  • 删除成功后刷新列表

5 导出 Excel

功能描述:管理员将当前筛选结果导出为 Excel 文件。

业务规则

  1. 导出的数据范围为当前筛选条件(非全量,避免性能问题)
  2. 导出字段包含列表所有字段
  3. 导出文件名:资产列表_YYYYMMDD_HHMMSS.xlsx
  4. 单次导出上限为 10000 条

界面交互

  • 列表上方 ” 导出 Excel” 按钮
  • 点击后显示 ” 正在导出…” 加载状态
  • 导出完成后浏览器自动下载

6 导入 Excel

功能描述:管理员通过 Excel 批量导入资产。

业务规则

  1. 导入模板需包含:资产名称、类别编码、规格型号、购买日期、购买价格、备注
  2. 类别编码必须存在于类别表中,否则报错
  3. 导入时逐行校验,失败行记录错误原因
  4. 部分成功/部分失败时,成功的数据正常入库,失败的数据返回错误列表

界面交互

  • 点击 ” 导入 Excel” 打开弹窗
  • 下载导入模板
  • 上传文件后展示预览数据(前 10 条)
  • 点击 ” 确认导入 ” 后显示导入结果(成功 X 条,失败 X 条,下载错误日志)

四、资产申请管理

1 发起申请

功能描述:用户对某个资产发起领用/归还/报废申请。

前置条件

申请类型资产状态要求用户要求
领用必须为 ” 空闲 “任何登录用户
归还必须为 ” 已领用 ” 且领用人为当前用户当前领用人
报废必须为 ” 已领用 ” 或 ” 维修中 “ADMIN(普通用户不可发起报废)

表单字段

字段类型必填说明
资产信息只读展示显示资产名称、编号、当前状态
申请类型单选按钮领用/归还/报废(根据资产状态自动过滤可用选项)
申请理由文本域最大 200 字符

业务规则

  1. 同一资产在同一时间只能有一个 ” 待审批 ” 的申请(防止并发重复申请)
  2. 申请提交后,资产状态不变,等待审批通过后才变更
  3. 申请编号自动生成:SQ + 年月日 + 4位流水号(如 SQ202607190001)
  4. 申请人默认为当前用户,所属部门自动带入
  5. 提交成功后跳转到 ” 我的申请 ” 列表

界面交互

  • 从资产列表点击 ” 发起申请 ” 按钮,弹出申请表单
  • 申请类型根据资产状态智能推荐(空闲→领用;已领用且为当前用户→归还)
  • 提交按钮防重复点击(点击后置灰)

2 我的申请列表

功能描述:查看当前用户发起的所有申请记录。

筛选条件

筛选字段类型说明
申请编号精确搜索-
申请类型下拉选择全部/领用/归还/报废
状态下拉选择全部/待审批/已通过/已驳回/已撤销
申请日期范围日期范围选择器起始日期~结束日期

列表字段

列名说明特殊处理
申请编号--
资产名称--
资产编号--
申请类型领用/归还/报废用不同颜色标签
申请理由超过 15 字符显示省略号 + 悬停完整内容-
申请时间YYYY-MM-DD HH:mm:ss-
状态待审批/已通过/已驳回/已撤销状态标签:橙色/绿色/红色/灰色
审批人-未审批时显示 ”-“
审批意见-未审批时显示 ”-“
操作-仅 ” 待审批 ” 状态显示 ” 撤销 ” 按钮

业务规则

  1. 已通过的申请不可撤销
  2. 已驳回的申请可以再次发起(重新提交申请)
  3. 撤销申请后,申请状态变为 ” 已撤销 “

3 撤销申请

功能描述:用户在审批前撤销自己的申请。

业务规则

  1. 仅 ” 待审批 ” 状态的申请可撤销
  2. 仅申请人本人可撤销
  3. 撤销后申请状态变为 ” 已撤销 “,资产状态保持不变

界面交互

  • 在 ” 我的申请 ” 列表中,每条 ” 待审批 ” 记录显示 ” 撤销 ” 按钮
  • 点击后弹出确认框:” 确认撤销该申请吗?”
  • 撤销成功后刷新列表

4 待审批列表(审批管理)

功能描述:主管/管理员查看待处理的审批申请。

数据范围控制

角色可见范围
MANAGER仅可见本部门员工发起的申请
ADMIN可见全部申请

筛选条件

  • 同 ” 我的申请列表 “,但默认只显示 ” 待审批 ” 状态
  • 额外增加 ” 申请人部门 ” 筛选(仅 ADMIN 可见)

列表字段

列名说明特殊处理
申请编号--
资产名称--
申请人真实姓名-
申请部门部门名称-
申请类型-颜色标签
申请时间YYYY-MM-DD HH:mm:ss-
操作-” 审批 ” 按钮

界面交互

  • 点击 ” 审批 ” 按钮打开审批弹窗
  • 审批后列表自动刷新
  • 有新待审批时,菜单栏显示红点徽标

5 审批操作

功能描述:主管/管理员对申请进行通过或驳回处理。

表单字段

字段类型必填说明
申请详情只读展示-展示完整的申请信息(含资产图片占位)
审批结果单选按钮通过/驳回
审批意见文本域驳回时建议填写原因

业务规则

  1. 审批 ” 通过 ” 时,资产状态同步变更:
    • 领用 → 资产状态改为 ” 已领用 “,归属人和部门更新
    • 归还 → 资产状态改为 ” 空闲 “,归属人和部门清空
    • 报废 → 资产状态改为 ” 已报废 ”
  2. 审批 ” 驳回 ” 时,资产状态不变
  3. 审批完成后,申请状态变更(已通过/已驳回)
  4. 同一申请不可重复审批(前端 + 后端双重校验)

界面交互

  • 弹窗展示申请详情和审批表单
  • 审批意见输入框:当选择 ” 驳回 ” 时,建议必填(前端提醒)
  • 提交按钮加载状态(防止重复提交)

五、部门管理

1 部门列表

功能描述:树形结构展示部门层级关系。

列表字段

列名说明
部门名称树形缩进显示层级
部门编码-
创建时间-
操作编辑/删除

业务规则

  1. 支持多级部门(parent_id 关联)
  2. 删除部门时,检查该部门下是否有员工,如有则禁止删除
  3. 删除部门时,检查该部门下是否有资产,如有则禁止删除

2 新增/编辑部门

表单字段

字段类型必填说明
上级部门树形下拉选择不选则为顶级部门
部门名称输入框最大 50 字符
部门编码输入框字母 + 数字 + 下划线,唯一

六、员工管理

1 员工列表

功能描述:查看所有员工信息,支持分页和筛选。

筛选条件

筛选字段类型说明
真实姓名模糊搜索-
部门下拉选择从部门表读取
角色下拉选择USER/MANAGER/ADMIN
状态下拉选择启用/禁用

列表字段

列名说明特殊处理
账号--
真实姓名--
邮箱--
手机号--
部门--
角色USER/MANAGER/ADMIN标签显示
状态启用/禁用绿色/灰色标签
创建时间--
操作编辑/重置密码/启用/禁用动态按钮

2 新增/编辑员工

表单字段

字段类型必填说明
账号输入框字母 + 数字,唯一,4-20 位
真实姓名输入框最大 20 字符
邮箱输入框邮箱格式校验
手机号输入框手机号格式校验
部门下拉选择-
角色下拉选择USER/MANAGER/ADMIN
状态开关启用/禁用

特殊规则

  • 新增员工时,密码默认:123456(首次登录强制修改)
  • 不能删除自己(ADMIN 不能删除自己的账号)

3 重置密码

功能描述:管理员将员工密码重置为默认密码。

业务规则

  1. 重置后密码为 123456
  2. 员工下次登录时强制修改密码
  3. 重置前需要二次确认

七、操作日志

1 日志列表

功能描述:管理员查看所有用户的关键操作记录。

记录内容

字段说明
操作用户真实姓名
操作类型如 ” 登录 ”、” 新增资产 ”、” 审批通过 ” 等
请求方法GET/POST/PUT/DELETE
请求参数记录 JSON 格式参数(脱敏处理)
IP 地址-
操作时间YYYY-MM-DD HH:mm:ss
耗时毫秒

筛选条件

筛选字段类型说明
操作用户模糊搜索-
操作类型下拉选择预定义操作列表
日期范围日期范围选择器-

业务规则

  1. 日志保留 90 天,超期自动清理(定时任务)
  2. 不记录密码等敏感字段(自动过滤)
  3. 日志量过大时,支持按日期分区表

界面交互

  • 日志列表默认展示最近 100 条
  • 支持导出日志(按筛选条件

八、通知与消息(扩展功能)

1 审批通知

功能描述:当申请被审批通过/驳回时,申请人收到通知。

通知方式

  1. 站内消息(右上角消息铃铛)
  2. (可选)邮件通知

消息内容

  • 审批通过:” 您的【资产领用】申请(编号:SQ202607190001)已通过审批 ”
  • 审批驳回:” 您的【资产领用】申请(编号:SQ202607190001)已被驳回,原因:XXX”

界面交互

  • 右上角消息图标显示未读数量红点
  • 点击下拉展示最近 5 条消息
  • 点击 ” 查看全部 ” 跳转到消息中心

2 附录一:状态码定义

状态码含义
200操作成功
400参数错误
401未登录或 Token 过期
403无权限访问
404资源不存在
409数据冲突(如重复提交)
500服务器内部错误

3 附录二:权限矩阵速查表

功能USERMANAGERADMIN
查看资产列表
查看资产详情
新增资产
编辑资产
删除资产
导出资产
导入资产
发起申请
查看我的申请
审批申请(本部门)-
审批申请(全部)
部门管理
员工管理
操作日志