Loading... ## 后端接口文档 后端提供各种api接口 ### 共同性 所有返回值均为json格式 | 返回值 | 说明 | 举例 | 类型 | 备注 | | --------- | ---------------------- | ------------------------- | ------ | ------------------- | | http code | 返回token验证情况 | 成功:200 失败:422或其他 | int | 必有 | | status | 表明程序运行是否正确 | 0:有错误,1:正确 | int | 必有 | | message | 输出程序运行结果或错误 | 登录成功! | string | 如果status为0,必有 | 传入值:加入headers传输 | 传入值 | 说明 | 举例 | 类型 | 备注 | | ------------- | -------------------------- | ----------------- | ------ | ---- | | Authorization | 传入access token,验证身份 | Bearer +你的token | string | 必须 | 在其他模块里,共同性的东西不在赘述 **若无特殊说明,均默认string类型,默认使用表单传输** ### 刷新令牌 URL:`/refresh` 方法:`POST` 用于访问令牌失效了,但是刷新令牌未失效的情况自动获取新的访问令牌 **加入headers传输:** | 传入值 | 说明 | 举例 | 类型 | 备注 | | ------------- | ----------------- | ------------------------- | ------ | ---- | | Authorization | 传入refresh token | Bearer +你的refresh token | string | 必须 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------------ | ---------------- | ---- | ------ | ---- | | access_token | 返回新的访问令牌 | 无 | string | 必有 | ### 登录 URL:`/login` 方法:`POST` **注意:**本接口不需要访问令牌 用于用户登录 | 传入值 | 说明 | 举例 | 备注 | | -------- | ------------ | ------------ | ---------------------------------- | | role | 验证登录角色 | 1 | 必须 1为学生,2为收书员,3为管理员 | | username | 用户名 | 302024334011 | 必须 | | password | 密码 | 无 | 必须 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------------- | -------- | ---- | ------ | ----------- | | access_token | 访问令牌 | 无 | string | status为1时 | | refresh_token | 刷新令牌 | 无 | string | status为1时 | ### 注册 URL:`/reg` 方法:`POST` **注意:**本接口不需要访问令牌 | 传入值 | 说明 | 举例 | 备注 | | -------- | ------------ | ------------ | -------------------------------------- | | role | 设置注册角色 | 1 | 必须 1为学生,2为收书员 | | username | 用户名 | 302024334011 | 必须 | | password | 密码 | 无 | 必须 | | place | 校区 | 1 | 必须 校区,1为朝晖,2为屏峰,3为莫干山 | | phone | 电话 | 无 | 必须 | | shoukuan | 收款方式 | 支付宝 | role为1时必须 | | address | 地址 | 尚6 | role为1时必须 | | name | 姓名 | 测试学生 | role为2时必须 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------------- | -------- | ---- | ------ | -------------------- | | access_token | 访问令牌 | 无 | string | status为1时且role为1 | | refresh_token | 刷新令牌 | 无 | string | status为1时且role为1 | ### 检验首次登录 URL:`/check_first_login` 方法:`POST` **注意:**本接口不需要访问令牌 用于检查学生是否为第一次登录 | 传入值 | 说明 | 举例 | 备注 | | -------- | ------------ | ------------ | ---------------------------------- | | role | 验证登录角色 | 1 | 必须 1为学生,2为收书员,3为管理员 | | username | 用户名 | 302024334011 | 必须 | | password | 密码 | 无 | 必须 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | result | 返回结果 | True | bool | status为1时 | ### 获取旧书再利用市场信息 URL:`/get_uploaded_books` 方法:`POST` **注:管理员使用本接口会返回所有订单,包括已卖出的** | 传入值 | 说明 | 举例 | 备注 | | ------ | ------------------ | ---- | --------------------------------------------------------- | | action | 区分市场和本人订单 | all | 可选 all代表本校区所有还未卖出的订单,own或无代表本人订单 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | result | 返回结果 | 略 | json | status为1时 | | result中的子项目 | 说明 | | ---------------- | ------------------------------------- | | name | 书的名称 | | place | 校区,1为朝晖,2为屏峰,3为莫干山 | | print_edition | 出版社 | | publisher | 作者 | | img_url | 图片链接 | | uploader | 上传者 | | available | 是否被卖出 True:未卖出 False:已卖出 | | id | 订单id号 | | time | 上传时间 | ### 显示旧书回收订单 URL:`/get_user_upload_books` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | ------ | ------------------ | ---- | ------------------------------------------------------------ | | action | 区分市场和本人订单 | all | 可选 all代表本校区所有还没有被接单的订单,stu_check 为学生查询,booker_check为收书员查询 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | result | 返回结果 | 略 | json | status为1时 | | result中的子项目 | 说明 | | ---------------- | --------------------------------------- | | uploader | 上传者 | | kg_real | 收书员上传的重量 | | place | 校区,1为朝晖,2为屏峰,3为莫干山 | | money_uploader | 学生获得的奖励 | | kg_upload | 学生上传的重量 | | img_url | 图片链接 | | uploader | 上传者 | | available | 是否被接单 True:未接单 False:已接单 | | id | 订单id号 | | time | 上传时间 | | isend | 是否完成订单 True:已完成 False:未完成 | | booker | 收书员学号 | | money_booker | 收书员获得的奖励 | ### 我要卖书模块上传 URL:`/upload_book` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | --------- | -------------- | ---- | ---- | | kg_upload | 上传的大概重量 | 5 | 必须 | | img_url | 照片的地址 | 无 | 必须 | ### 收书员完成收书 URL:`/shoushu` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | ------- | ------------ | ---- | ---- | | img_url | 照片地址 | 无 | 必须 | | kg_real | 真实的重量 | 5 | 必须 | | id | 接单订单的id | 1 | 必须 | ### 收书员获得订单 URL:`/get_order` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | ------ | -------------- | ---- | ---- | | id | 要获得的订单id | 5 | 必须 | ### 收书员获得学生信息 URL:`/get_order_detail` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | ------ | -------------- | ---- | ---- | | id | 要获得的订单id | 5 | 必须 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | result | 返回结果 | 略 | json | status为1时 | | result中的子项目 | 说明 | | ---------------- | -------- | | phone | 学生电话 | | address | 学生地址 | ### 上传旧书再利用模块书籍 URL:`/upload_book_hub` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | ------------- | -------- | -------- | ---- | | name | 书籍名称 | 高等数学 | 必须 | | print_edition | 书籍版本 | 第五版 | 必须 | | publisher | 作者 | 宋浩 | 必须 | | img_url | 图片链接 | 无 | 必须 | ### 完成旧书再利用模块订单 URL:`/book_end` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | ------ | -------------- | ---- | ---- | | id | 要完成的订单id | 5 | 必须 | ### 管理员学生管理 #### 获取学生信息 URL:`/admin/user/stu` 方法:`POST` #### 修改学生信息 URL:`/admin/user/stu_manage` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | -------- | ------ | ---- | -------------------- | | new_pass | 新密码 | 无 | 可选,若不更改既为空 | | score | 信誉分 | 80 | 必须 | | money | 余额 | 10 | 必须 | ### 管理员信誉分管理 #### 查看举报信息 URL:`/admin/score` 方法:`POST` | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | data | 返回结果 | 略 | json | status为1时 | | data中的子项目 | 说明 | | -------------- | ------------------ | | report_user | 举报者学号 | | reported_user | 被举报者学号 | | message | 举报内容 | | time | 举报时间 | | id | 举报id | | data | 举报订单id | | available | 管理员是否完成处理 | | score | 扣除的分数 | #### 处理举报信息 URL:`/admin/score_manage` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | ------------ | ------------ | ------------ | ---- | | stu_username | 被学生学号 | 302024334011 | 必须 | | score | 扣除的分数 | 5 | 必须 | | id | 涉及的举报id | 10 | 必须 | #### 取消扣分 URL:`/admin/score_cancel` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | ------ | ------------ | ---- | ---- | | id | 涉及的举报id | 10 | 必须 | #### 理由库管理 URL:`/admin/reason` ##### 方法1:GET 获取已经存储的理由 | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | -------- | ------ | ----------- | | id | 理由id | 5 | int | status为1时 | | reason | 理由内容 | 欺诈行为 | string | status为1时 | ##### 方法2:POST 添加新的理由 | 传入值 | 说明 | 举例 | 备注 | | ------ | -------- | -------- | ---- | | reason | 新的理由 | 欺诈行为 | 必须 | ##### 方法3:DELETE 删除理由 **使用header传输:** | 传入值 | 说明 | 举例 | 备注 | | ------ | ------------ | ---- | ---- | | id | 删除的理由id | 10 | 必须 | ### 管理员内容管理 URL:`/admin/book_manage` ##### 方法1:GET 获取市场内容 **使用header传输:** | 传入值 | 说明 | 举例 | 备注 | | ------ | ------------ | ---- | ---- | | id | 查看的订单id | 10 | 必须 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | result | 返回结果 | 略 | json | status为1时 | | result中的子项目 | 说明 | | ---------------- | ------------------------------------- | | name | 书的名称 | | place | 校区,1为朝晖,2为屏峰,3为莫干山 | | print_edition | 出版社 | | publisher | 作者 | | img_url | 图片链接 | | uploader | 上传者 | | available | 是否被卖出 True:未卖出 False:已卖出 | | id | 订单id号 | | time | 上传时间 | ##### 方法2:POST 修改内容 | 传入值 | 说明 | | ------------- | ------------------------------------- | | name | 书的名称 | | place | 校区,1为朝晖,2为屏峰,3为莫干山 | | print_edition | 出版社 | | publisher | 作者 | | img_url | 图片链接 | | uploader | 上传者 | | available | 是否被卖出 True:未卖出 False:已卖出 | | id | 订单id号 | | time | 上传时间 | ##### 方法3:DELETE 删除理由 **使用header传输:** | 传入值 | 说明 | 举例 | 备注 | | ------ | ------------ | ---- | ---- | | id | 封禁的订单id | 10 | 必须 | ### 超级管理员管理 URL:`/admin/admin` ##### 方法1:GET 获取管理员信息 | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | result | 返回结果 | 略 | json | status为1时 | | result中的子项目 | 说明 | | ---------------- | -------------- | | user_manage | 用户管理权限 | | score_manage | 信誉分管理权限 | | content_manage | 内容管理权限 | | super_admin | 超级管理员权限 | | id | 管理员id | ##### 方法2:POST 添加新管理员或修改管理员信息 | 传入值 | 说明 | 举例 | 备注 | | -------------- | -------------- | ------- | ------------------------------------------ | | id | 修改的管理员id | 10 | 可选,若为空则为添加管理员 | | username | 管理员用户名 | niubige | 可选,注册时必须 | | password | 密码 | 无 | 可选,注册时必须,修改时为空默认不更改密码 | | user_manage | 用户管理权限 | 1 | 必须 1为有权限,0为无权限 | | score_manage | 信誉分管理权限 | 1 | 必须 1为有权限,0为无权限 | | content_manage | 内容管理权限 | 1 | 必须 1为有权限,0为无权限 | | super_admin | 超级管理员权限 | 1 | 必须 1为有权限,0为无权限 | ##### 方法3:DELETE 删除管理员 **使用header传输:** | 传入值 | 说明 | 举例 | 备注 | | ------ | -------------- | ---- | ---- | | id | 删除管理员的id | 10 | 必须 | ### 举报 URL:`/report` ##### 方法1:GET 获取自己的举报信息 | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | result | 返回内容 | 无 | json | status为1时 | | result中的子项目 | 说明 | | ---------------- | ---------------- | | reported_user | 被举报者学号 | | message | 举报内容 | | score | 扣除的分数 | | data | 举报的订单id | | available | 举报是否处理完成 | | id | 举报id号 | | time | 举报时间 | ##### 方法2:POST 添加新的举报内容 | 传入值 | 说明 | 举例 | 备注 | | ------------- | ------------ | ------------ | ---- | | reported_user | 被举报者学号 | 302024334011 | 必须 | | message | 举报内容 | 欺诈行为 | 必须 | | data | 举报的订单id | 5 | 必须 | ##### 方法3:DELETE 删除举报内容 **使用header传输:** | 传入值 | 说明 | 举例 | 备注 | | ------ | ------------ | ---- | ---- | | id | 删除的举报id | 10 | 必须 | ### 全局设置管理 ##### 方法1:GET 获取全局设置 | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | result | 返回内容 | 无 | json | status为1时 | | result中的子项目 | 说明 | | ---------------- | -------------------- | | money_per_kg | 单价 | | rate | 收书员获得奖励的比例 | | score | 最低信誉分要求 | ##### 方法2:POST 修改全局设置 | 传入值 | 说明 | 举例 | 备注 | | ------------ | -------------------- | ---- | ---- | | money_per_kg | 单价 | 10 | 必须 | | rate | 收书员获得奖励的比例 | 0.2 | 必须 | | score | 最低信誉分要求 | 10 | 必须 | ### 用户信息维护 #### 学生 URL:`/manage/1` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | -------- | -------- | ------ | -------------------------------------------------- | | action | 说明操作 | check | 必须 check代表查看信息,manage为更改信息 | | place | 校区 | 1 | 当action为manage时必须 1为朝晖,2为屏峰,3为莫干山 | | phone | 手机号码 | 无 | 当action为manage时必须 | | address | 地址 | 尚6 | 当action为manage时必须 | | shoukuan | 收款地址 | 支付宝 | 当action为manage时必须 | | new_pass | 新密码 | 无 | 可选,若不更改既为空 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | data | 返回结果 | 略 | json | status为1时 | | data中的子项目 | 说明 | | -------------- | --------------------------- | | phone | 学生电话 | | address | 学生地址 | | place | 1为朝晖,2为屏峰,3为莫干山 | | score | 信誉分 | | shoukuan | 收款方式 | | money | 余额 | #### 收书员 URL:`/manage/2` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | -------- | -------- | ----- | -------------------------------------------------- | | action | 说明操作 | check | 必须 check代表查看信息,manage为更改信息 | | place | 校区 | 1 | 当action为manage时必须 1为朝晖,2为屏峰,3为莫干山 | | phone | 手机号码 | 无 | 当action为manage时必须 | | new_pass | 新密码 | 无 | 可选,若不更改既为空 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | data | 返回结果 | 略 | json | status为1时 | | data中的子项目 | 说明 | | -------------- | --------------------------- | | phone | 电话 | | name | 姓名 | | place | 1为朝晖,2为屏峰,3为莫干山 | | money | 余额 | #### 管理员 URL:`/manage/3` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | -------- | -------- | ----- | ---------------------------------------- | | action | 说明操作 | check | 必须 check代表查看信息,manage为更改信息 | | new_pass | 新密码 | 无 | 可选,若不更改既为空 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | data | 返回结果 | 略 | json | status为1时 | | data中的子项目 | 说明 | | -------------- | -------------- | | user_manage | 用户管理权限 | | score_manage | 信誉分管理权限 | | content_manage | 内容管理权限 | | super_admin | 超级管理员权限 | **注:返回均为布尔值** ### 聊天 #### 获取聊天简介 URL:`/chat/get/all` 方法:`POST` 获取和每一个用户聊天的最新三条对方发来的信息 | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | data | 返回结果 | 略 | json | status为1时 | | data中的子项目 | 说明 | | -------------- | ------------------ | | poster | 发送者学号 | | data | 三条内容 | | time | 三条内容的发送时间 | #### 获取聊天信息详情 URL:`/chat/get/detail` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | -------- | -------------------- | ------------ | ---- | | req_user | 要查看和谁的聊天记录 | 302024334011 | 必须 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | -------- | ---- | ---- | ----------- | | data | 返回结果 | 略 | json | status为1时 | | data中的子项目 | 说明 | | -------------- | ---------------- | | poster | 这条信息的发送者 | | receiver | 这条信息的接收者 | | time | 内容的发送时间 | | data | 聊天内容 | 发送信息 URL:`/chat/post` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | -------- | -------- | ------------ | ---- | | receiver | 发给谁 | 302024334011 | 必须 | | data | 聊天内容 | 你好啊! | 必须 | ### 上传图片 URL:`/upload_img` 方法:`POST` | 传入值 | 说明 | 举例 | 备注 | | ------ | ---------- | ---- | --------------- | | file | 上传的图片 | 无 | 必须 为file类型 | | 返回值 | 说明 | 举例 | 类型 | 备注 | | ------ | ------------ | ---- | ------ | ----------- | | url | 返回图片链接 | 略 | string | status为1时 | 最后修改:2025 年 02 月 21 日 © 允许规范转载 赞 不用打赏哦!