# ChatViewer ## Docs - 用户 [用户接口](https://chat-viewer.apifox.cn/doc-3034032.md): - 分类 [分类目录接口](https://chat-viewer.apifox.cn/doc-3043505.md): - 通知 [通知](https://chat-viewer.apifox.cn/doc-3059228.md): ## API Docs - 用户 [发送验证码](https://chat-viewer.apifox.cn/api-112920670.md): 该接口不必登录。 - 用户 [用户登录](https://chat-viewer.apifox.cn/api-112929180.md): 提供两种登录方式: - 用户 [用户注册](https://chat-viewer.apifox.cn/api-112986732.md): - Controller层验证手机号、验证码、密码的格式合法性 - 用户 [用户修改信息](https://chat-viewer.apifox.cn/api-112990755.md): - 校验SecurityContextHolder中的用户id,是否与请求体中的用户id相同 - 用户 [用户信息](https://chat-viewer.apifox.cn/api-112995626.md): 已登录用户查询信息 - 分类 [查询分类目录](https://chat-viewer.apifox.cn/api-113740571.md): 由于目录是查询较多、改动较少的数据。每次查询时重新组织目录树结构会带来不必要的时间消耗,故使用Cache Aside机制,将目录树结构存储至Redis。 - 分类 [删除分类](https://chat-viewer.apifox.cn/api-113994710.md): 还未完成的功能: - 分类 [插入分类路径](https://chat-viewer.apifox.cn/api-113998004.md): - [ ] TODO: 权限校验 - 分类 [插入子分类](https://chat-viewer.apifox.cn/api-113999643.md): - [ ] TODO: 权限校验 - ChatGPT [GPT会话列表](https://chat-viewer.apifox.cn/api-113030593.md): 已登录用户提供token,查询自己与ChatGPT的非空对话列表,每个会话项包括`conversationId`、`firstMessage`。 - ChatGPT [新建会话](https://chat-viewer.apifox.cn/api-113039143.md): 从JWT Token中获取userId,根据conversationType新建会话,返回会话conversationId。 - ChatGPT [删除会话](https://chat-viewer.apifox.cn/api-113042250.md): - 校验该会话是否属于当前登录用户 - ChatGPT [消息记录](https://chat-viewer.apifox.cn/api-113042462.md): 消息记录查询 - ChatGPT [发送消息](https://chat-viewer.apifox.cn/api-113049822.md): 使用到的ChatGPT SDK为:[ChatGPT Java SDK](https://github.com/PlexPt/chatgpt-java) - 文章 [文章详情查询](https://chat-viewer.apifox.cn/api-114019433.md): 根据articleId,返回带有作者和文章信息的ArticleDto,并读取redis中对应的点赞数,如果用户已登录,同时需要返回文章的点赞状态`isLike`。 - 文章 [文章分页查询](https://chat-viewer.apifox.cn/api-114136031.md): 分页查询文章信息与作者信息。 - 文章 [上传文件](https://chat-viewer.apifox.cn/api-114148856.md): 调用阿里云OSS服务实现文件上传功能,文章图像、题目录音均需调用此接口。 - 文章 [上传文章](https://chat-viewer.apifox.cn/api-114152953.md): - 点赞 [点赞/取消点赞](https://chat-viewer.apifox.cn/api-114164867.md): Redis缓存设计:以articleId而非userId为主体进行组织,因为某文章被大量点赞的概率,比某用户大量点赞多个文章的概率更大。 - 点赞 [点赞状态查询](https://chat-viewer.apifox.cn/api-114199243.md): 查询用户对文章或评论的点赞状态。 - 评论 [评论查询](https://chat-viewer.apifox.cn/api-114216671.md): - 评论 [添加评论](https://chat-viewer.apifox.cn/api-114338557.md): 已登录用户发表评论: - 聊天 [会话查询](https://chat-viewer.apifox.cn/api-114345024.md): 查询已登录用户的所有聊天会话摘要,包括联系人、最后一条消息、未读消息数。 - 聊天 [聊天记录](https://chat-viewer.apifox.cn/api-114347060.md): 查询与某个联系人最新的一定条数的聊天记录。 - 聊天 [发送消息](https://chat-viewer.apifox.cn/api-114347268.md): 发送消息接口,已登录用户向toId用户发送消息content。 - 聊天 [设置已读](https://chat-viewer.apifox.cn/api-114347489.md): 将已登录用户与id1用户之间的消息设置为已读。 - 通知 [通知摘要](https://chat-viewer.apifox.cn/api-114387579.md): 查询用户所有类型(点赞、评论)的最新消息与未读消息数 - 通知 [通知查询](https://chat-viewer.apifox.cn/api-114390341.md): 查询已登录用户某个类型的所有通知 - 通知 [设为已读](https://chat-viewer.apifox.cn/api-114390425.md): 将用户某一类别的消息全部设为已读状态。 - 问题 [问题分页查询](https://chat-viewer.apifox.cn/api-114395074.md): - 问题 [添加问题](https://chat-viewer.apifox.cn/api-114395899.md): 添加问题 - 问题 [问题查询](https://chat-viewer.apifox.cn/api-114395972.md): 根据Id查询MySQL中的problem。 - 问题 [回答查询](https://chat-viewer.apifox.cn/api-114396049.md): 查询已登录用户对某问题的回答 - 问题 [保存回答](https://chat-viewer.apifox.cn/api-114396189.md): 保存回答: - 问题 [求助GPT](https://chat-viewer.apifox.cn/api-114396833.md): (1)更新用户回答。 - 购买token [添加商品](https://chat-viewer.apifox.cn/api-124936306.md): *本应用的商品主要为用户ChatGPT token余额的购买。 - 购买token [秒杀免费商品](https://chat-viewer.apifox.cn/api-124943455.md): - 限量免费token的秒杀