| 1. 用户管理 | 1.1 用户注册 | username(用户名,★)、password(用户密码,★)、email(用户邮箱)、phone(用户手机号)、realName(真实姓名) | 1. 校验用户名是否已存在;2. 若用户名不存在,将用户信息保存到数据库 | 1. 用户名已存在:{"code":"000001","msg":"用户名已存在","data":...}; 2. 保存成功:{"code":"000000","msg":"调用成功","data":...} |
| 1.2 用户登录 | username(用户名,★)、password(用户密码,★) | 1. 根据用户名查询用户信息;2. 验证查询到的用户密码是否正确;3. 密码正确则返回登录成功的用户信息 | 1. 用户不存在/密码错误:{"code":"000001","msg":"用户不存在或密码错误","data":...}; 2. 登录成功:{"code":"000000","msg":"调用成功","data":...} |
| 1.3 修改用户信息 | userId(用户 id,★)、email(用户邮箱)、phone(用户手机号)、realName(真实姓名)、avatarUrl(头像地址) | 1. 根据 userId 判断用户是否存在;2. 若用户存在,更新用户信息 | 1. 用户不存在:{"code":"000001","msg":"用户不存在","data":...}; 2. 更新成功:{"code":"000000","msg":"调用成功","data":...} |
| 1.4 获取用户详情 | userId(用户 id,★) | 1. 根据 userId 判断用户是否存在;2. 若用户存在,返回用户详细信息 | 1. 用户不存在:{"code":"000001","msg":"用户不存在","data":...}; 2. 查询成功:{"code":"000000","msg":"调用成功","data":...} |
| 1.5 禁用/启用用户 | userId(用户 id,★)、status(用户状态,★) | 1. 根据 userId 判断用户是否存在;2. 若用户存在,更新用户状态 | 1. 用户不存在:{"code":"000001","msg":"用户不存在","data":...}; 2. 状态更新成功:{"code":"000000","msg":"调用成功","data":...} |
| 2. 图书管理 | 2.1 新增图书 | isbn(ISBN 编号)、title(图书标题,★)、author(作者)、publisher(出版社)、publishDate(出版日期)、categoryId(分类 ID)、totalQuantity(总数量)、availableQuantity(可借数量)、status(图书状态)、description(图书描述)、coverImage(封面图片地址) | 1. 校验图书 ISBN 是否已存在;2. 若 ISBN 不存在,将图书信息保存到数据库 | 1. ISBN 已存在:{"code":"000001","msg":"该 ISBN 的图书已存在","data":...}; 2. 保存成功:{"code":"000000","msg":"调用成功","data":...} |
| 2.2 删除图书 | bookId(图书唯一标识,★) | 1. 根据 bookId 判断图书是否存在;2. 若图书存在,删除指定图书信息 | 1. 图书不存在:{"code":"000001","msg":"图书信息不存在","data":...}; 2. 删除成功:{"code":"000000","msg":"调用成功","data":...} |
| 2.3 修改图书 | bookId(图书唯一标识,★)、isbn(ISBN 编号)、title(图书标题)、author(作者)、publisher(出版社)、publishDate(出版日期)、categoryId(分类 ID)、totalQuantity(总数量)、availableQuantity(可借数量)、status(图书状态)、description(图书描述)、coverImage(封面图片地址) | 1. 根据 bookId 判断图书是否存在;2. 若图书存在,更新图书信息 | 1. 图书不存在:{"code":"000001","msg":"图书信息不存在","data":...}; 2. 更新成功:{"code":"000000","msg":"调用成功","data":...} |
| 2.4 查询图书详情 | bookId(图书唯一标识,★) | 1. 根据 bookId 判断图书是否存在;2. 若图书存在,获取图书详细信息 | 1. 图书不存在:{"code":"000001","msg":"图书信息不存在","data":...}; 2. 查询成功:{"code":"000000","msg":"调用成功","data":...} |
| 2.5 查询图书列表 | title(图书标题)、author(作者)、categoryId(分类 ID)、status(图书状态) | 根据传入条件筛选图书列表 | {"code":"000000","msg":"调用成功","data":...}(返回筛选后的图书列表) |
| 3. 借阅管理 | 3.1 用户借书 | userId(用户 id,★)、bookId(图书 id,★) | 1. 校验用户是否存在;2. 校验图书是否存在且可借;3. 检查图书可借数量是否充足;4. 若均满足,更新图书可用数量和状态,创建借阅记录并保存到数据库 | 1. 用户不存在:{"code":"000001","msg":"用户信息不存在","data":...}; 2. 图书不存在/不可借:{"code":"000001","msg":"图书不存在或不可借","data":...}; 3. 无库存:{"code":"000001","msg":"图书暂无库存","data":...}; 4. 借书成功:{"code":"000000","msg":"调用成功","data":...} |
| 3.2 用户还书 | recordId(借阅记录 id,★) | 1. 校验借阅记录是否存在;2. 判断借阅记录是否已归还;3. 若未归还,更新借阅记录的归还时间及状态,同时更新图书的可用数量和状态 | 1. 记录不存在:{"code":"000001","msg":"借阅记录不存在","data":...}; 2. 已归还:{"code":"000001","msg":"该书籍已归还","data":...}; 3. 还书成功:{"code":"000000","msg":"调用成功","data":...} |
| 3.3 用户续借 | recordId(借阅记录 id,★) | 1. 校验借阅记录是否存在;2. 判断是否可续借(如是否逾期、是否超最大续借次数);3. 若可续借,更新借阅记录的续借次数及应还时间 | 1. 记录不存在:{"code":"000001","msg":"借阅记录不存在","data":...}; 2. 不可续借:{"code":"000001","msg":"无法续借,该书已逾期或超过最大续借次数","data":...}; 3. 续借成功:{"code":"000000","msg":"调用成功","data":...} |
| 3.4 查询借阅历史 | userId(用户 id,★)、pageNo(页码,默认 1)、pageSize(每页大小,默认 10) | 1. 校验用户是否存在;2. 若用户存在,根据 userId 查询其所有借阅记录(分页) | 1. 用户不存在:{"code":"000001","msg":"用户信息不存在","data":...}; 2. 查询成功:{"code":"000000","msg":"调用成功","data":...}(返回分页借阅记录) |
| 4. 系统配置管理 | 4.1 新增系统配置 | configKey(配置键名,★)、configValue(配置值)、configDesc(配置说明)、groupName(所属组别)、isEnabled(是否启用,★) | 1. 校验配置键名是否已存在;2. 若键名不存在,将配置信息保存到数据库 | 1. 键名已存在:{"code":"000001","msg":"配置键名已存在","data":...}; 2. 保存成功:{"code":"000000","msg":"调用成功","data":...} |
| 4.2 修改系统配置 | configId(配置项唯一标识,★)、configValue(配置值)、configDesc(配置说明)、groupName(所属组别)、isEnabled(是否启用) | 1. 根据 configId 判断配置是否存在;2. 若配置存在,更新配置信息 | 1. 配置不存在:{"code":"000001","msg":"配置信息不存在","data":...}; 2. 更新成功:{"code":"000000","msg":"调用成功","data":...} |
| 4.3 删除系统配置 | configId(配置项唯一标识,★) | 1. 根据 configId 判断配置是否存在;2. 若配置存在,删除指定配置信息 | 1. 配置不存在:{"code":"000001","msg":"配置信息不存在","data":...}; 2. 删除成功:{"code":"000000","msg":"调用成功","data":...} |
| 4.4 查询系统配置列表 | groupName(所属组别)、isEnabled(是否启用) | 根据传入条件筛选系统配置数据 | {"code":"000000","msg":"调用成功","data":...}(返回筛选后的配置列表) |
| 4.5 获取单个系统配置详情 | configId(配置项唯一标识,★) | 1. 根据 configId 判断配置是否存在;2. 若配置存在,查询该配置的详细信息 | 1. 配置不存在:{"code":"000001","msg":"配置信息不存在","data":...}; 2. 查询成功:{"code":"000000","msg":"调用成功","data":...} |
| 5. 通知消息管理 | 5.1 发送通知消息 | title(消息标题,★)、content(消息内容,★)、messageType(消息类型,★)、userId(接收用户 ID) | 1. 校验消息类型是否合法;2. 若 userId 为空,向所有用户发送公告;3. 若 userId 不为空,向指定用户发送私信;4. 将通知消息保存至数据库 | 1. 消息类型不合法:{"code":"000001","msg":"消息类型不合法","data":...}; 2. 发送成功:{"code":"000000","msg":"调用成功","data":...} |
| 5.2 查询用户未读通知 | userId(用户 ID,★) | 根据 userId 查询其未读的通知消息 | {"code":"000000","msg":"调用成功","data":...}(返回未读通知列表) |
| 5.3 标记通知为已读 | messageId(消息 ID,★) | 1. 判断消息是否存在且属于当前用户;2. 若满足,更新消息状态为已读 | 1. 消息不存在/无权操作:{"code":"000001","msg":"消息不存在或无权操作","data":...}; 2. 标记成功:{"code":"000000","msg":"调用成功","data":...} |
| 5.4 获取通知详情 | messageId(消息 ID,★) | 1. 验证消息是否存在;2. 若消息存在,返回消息的详细信息 | 1. 消息不存在:{"code":"000001","msg":"消息不存在","data":...}; 2. 查询成功:{"code":"000000","msg":"调用成功","data":...} |
| 6. 统计报表管理 | 6.1 生成借阅情况统计报表 | startDate(开始日期,★)、endDate(结束日期,★) | 1. 校验日期范围是否合法(开始日期≤结束日期);2. 若合法,根据借阅记录统计指定时间段内的借阅情况 | 1. 日期范围不合法:{"code":"000001","msg":"日期范围不合法","data":...}; 2. 生成成功:{"code":"000000","msg":"调用成功","data":...}(返回借阅统计数据) |
| 6.2 生成图书利用率统计报表 | startDate(开始日期,★)、endDate(结束日期,★) | 1. 校验日期范围是否合法;2. 若合法,通过借阅记录与图书信息关联计算图书利用率 | 1. 日期范围不合法:{"code":"000001","msg":"日期范围不合法","data":...}; 2. 生成成功:{"code":"000000","msg":"调用成功","data":...}(返回利用率统计数据) |
| 6.3 生成用户活跃度统计报表 | startDate(开始日期,★)、endDate(结束日期,★) | 1. 校验日期范围是否合法;2. 若合法,基于借阅记录统计用户的活跃次数和频率 | 1. 日期范围不合法:{"code":"000001","msg":"日期范围不合法","data":...}; 2. 生成成功:{"code":"000000","msg":"调用成功","data":...}(返回活跃度统计数据) |
| 6.4 获取所有统计报表列表 | 无入参 | 查询统计报表表中的所有记录 | {"code":"000000","msg":"调用成功","data":...}(返回所有报表记录) |
| 6.5 删除指定统计报表 | reportId(报表 ID,★) | 1. 根据 reportId 判断报表是否存在;2. 若报表存在,执行删除操作 | 1. 报表不存在:{"code":"000001","msg":"报表不存在","data":...}; 2. 删除成功:{"code":"000000","msg":"调用成功","data":...} |