台球预订系统 API 接口文档
本系统是一套完整的台球预订系统,支持三端应用:
- 商家端:商家管理台桌、教练、预订和统计
- 教练端:教练管理个人信息、查看订单和收益统计
- 用户端:用户搜索台桌、教练,进行预订和支付
API基础URL | /api |
请求格式 | JSON |
响应格式 | JSON |
编码 | UTF-8 |
所有接口都需要进行签名验证,部分接口需要用户登录后才能访问。
认证说明
请求头格式
签名验证
签名参数
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
app_id | String | 是 | 应用ID |
timestamp | Integer | 是 | 时间戳 |
nonce | String | 是 | 随机字符串 |
sign | String | 是 | 签名 |
响应格式
响应字段说明
字段名 | 类型 | 说明 |
---|---|---|
code | String | 响应码,0000表示成功 |
message | String | 响应消息 |
data | Object/Array | 响应数据 |
timestamp | Integer | 服务器时间戳 |
错误码
错误码 | 说明 | 解决方案 |
---|---|---|
0000 | 请求成功 | - |
1001 | 参数错误 | 检查请求参数 |
1002 | 签名验证失败 | 检查签名算法 |
1003 | Token无效 | 重新登录获取Token |
1004 | 权限不足 | 检查用户权限 |
2001 | 用户不存在 | 检查用户ID |
2002 | 密码错误 | 检查密码 |
3001 | 商家不存在 | 检查商家ID |
3002 | 商家未审核 | 等待商家审核通过 |
4001 | 教练不存在 | 检查教练ID |
4002 | 教练不在线 | 选择在线教练 |
5001 | 台桌不存在 | 检查台桌ID |
5002 | 台桌不可用 | 选择其他台桌或时间 |
6001 | 订单不存在 | 检查订单号 |
6002 | 订单状态异常 | 检查订单状态 |
9999 | 系统异常 | 联系技术支持 |
商家认证接口
商家认证接口提供完整的商家入驻、审核和登录流程。系统支持智能审核状态管理,确保只有通过审核的商家才能正常使用系统功能。
verify_status = 0 | 待审核 - 商家申请已提交,等待管理员审核 |
verify_status = 1 | 审核通过 - 商家可以正常登录和使用系统 |
verify_status = 2 | 审核驳回 - 申请被拒绝,可查看驳回原因并重新提交 |
智能重新提交 | 被驳回的申请可以重新提交,系统会更新现有记录 |
审核状态检查 | 登录时自动检查审核状态,未通过审核无法登录 |
文件上传支持 | 支持商家头像和店铺介绍图片上传 |
多种登录方式 | 支持密码登录和验证码登录两种方式 |
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
name | String | 是 | 商家名称 | 星辰台球厅 |
contact_person | String | 是 | 联系人 | 张三 |
contact_phone | String | 是 | 联系电话(注册后不可修改) | 13800138000 |
address | String | 是 | 详细地址 | 北京市朝阳区建国路88号 |
password | String | 是 | 登录密码 | 123456 |
description | String | 否 | 商家描述 | 专业台球娱乐场所 |
avatar | String | 否 | 商家头像URL | /uploads/avatar/xxx.jpg |
shop_images | Array | 否 | 店铺图片URL数组 | ["/uploads/shop/1.jpg", "/uploads/shop/2.jpg"] |
新用户注册 | 创建新记录,状态为待审核(0) |
已存在待审核 | 提示"申请已提交,请等待审核" |
已存在已通过 | 提示"该手机号已注册,请直接登录" |
已存在被驳回 | 允许重新提交,更新现有记录并重置为待审核状态 |
请求示例
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
password | String | 是 | 密码 | 123456 |
verify_status = 0 | 待审核状态,显示固定等待消息,禁止登录 |
verify_status = 1 | 审核通过,允许正常登录 |
verify_status = 2 | 审核驳回,显示具体驳回原因,禁止登录 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
code | String | 是 | 验证码 | 123456 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 注册手机号 | 13800138000 |
发送频率 | 同一手机号1分钟内只能发送一次 |
每日限制 | 同一手机号每天最多发送5次 |
验证码有效期 | 5分钟 |
账号状态检查 | 只有正常状态的商家账号才能找回密码 |
请求示例
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 注册手机号 | 13800138000 |
code | String | 是 | 验证码 | 123456 |
password | String | 是 | 新密码(至少6位) | newpassword123 |
密码强度 | 新密码长度不能少于6位 |
验证码校验 | 验证码必须有效且未过期 |
强制重新登录 | 重置成功后清除所有登录token |
一次性使用 | 验证码使用后立即失效 |
请求示例
响应示例
请求参数
无需参数,通过Token获取当前登录商家信息
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
name | String | 否 | 商家名称 | 星辰台球厅 |
phone | String | 否 | 联系电话 | 13800138000 |
String | 否 | 邮箱 | contact@example.com | |
address | String | 否 | 详细地址 | 北京市朝阳区建国路88号 |
description | String | 否 | 商家描述 | 专业台球娱乐场所 |
business_hours | String | 否 | 营业时间 | 09:00-22:00 |
avatar | String | 否 | 商家头像URL | /storage/uploads/avatars/20240115/xxx.jpg |
shop_images | Array | 否 | 店铺介绍图片数组(最多9张) | ["/storage/uploads/images/20240115/xxx1.jpg", "/storage/uploads/images/20240115/xxx2.jpg"] |
请求示例
响应示例
商家端台桌管理 最近更新:2025-06-19
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
status | Integer | 否 | 状态筛选:0-禁用,1-启用 | 1 |
type | Integer | 否 | 台桌类型:1-斯诺克,2-美式,3-中式 | 1 |
keyword | String | 否 | 搜索关键词(台桌名称) | A区1号桌 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 台桌ID | 1 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 台桌ID | 1 |
name | String | 否 | 台桌名称 | A区1号桌 |
type | Integer | 否 | 台桌类型:1-斯诺克,2-美式,3-中式 | 1 |
description | String | 否 | 台桌描述 | 专业比赛用台 |
price | Decimal | 否 | 小时收费 | 50.00 |
status | Integer | 否 | 状态:0-禁用,1-启用 | 1 |
location | String | 否 | 位置信息 | 一楼A区 |
image | String | 否 | 台桌图片URL | /uploads/table/table1.jpg |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 台桌ID | 1 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
status | Integer | 否 | 状态筛选:0-禁用,1-启用 | 1 |
keyword | String | 否 | 搜索关键词(姓名或电话) | 张教练 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
name | String | 是 | 教练姓名 | 张教练 |
phone | String | 是 | 联系电话 | 13800138000 |
avatar | String | 是 | 头像URL | /uploads/coach/avatar1.jpg |
gender | Integer | 是 | 性别:1-男,2-女 | 1 |
age | Integer | 是 | 年龄 | 28 |
specialties | String | 是 | 擅长项目,多个用逗号分隔 | 斯诺克,九球 |
experience | String | 是 | 教学经验 | 5年教学经验 |
hourly_rate | Decimal | 是 | 每小时费用 | 120.00 |
请求示例
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
content | String | 是 | 反馈内容 | 我有一些建议... |
contact | String | 否 | 联系方式 | 13800138000 |
请求示例
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
name | String | 是 | 商家名称 | 星辰台球厅 |
phone | String | 是 | 联系电话 | 13800138000 |
String | 是 | 邮箱 | contact@example.com |
API基础URL | /api |
请求格式 | JSON |
响应格式 | JSON |
编码 | UTF-8 |
所有接口都需要进行签名验证,部分接口需要用户登录后才能访问。
认证说明
请求头格式
签名验证
签名参数
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
app_id | String | 是 | 应用ID |
timestamp | Integer | 是 | 时间戳 |
nonce | String | 是 | 随机字符串 |
sign | String | 是 | 签名 |
响应格式
响应字段说明
字段名 | 类型 | 说明 |
---|---|---|
code | String | 响应码,0000表示成功 |
message | String | 响应消息 |
data | Object/Array | 响应数据 |
timestamp | Integer | 服务器时间戳 |
错误码
错误码 | 说明 | 解决方案 |
---|---|---|
0000 | 请求成功 | - |
1001 | 参数错误 | 检查请求参数 |
1002 | 签名验证失败 | 检查签名算法 |
1003 | Token无效 | 重新登录获取Token |
1004 | 权限不足 | 检查用户权限 |
2001 | 用户不存在 | 检查用户ID |
2002 | 密码错误 | 检查密码 |
3001 | 商家不存在 | 检查商家ID |
3002 | 商家未审核 | 等待商家审核通过 |
4001 | 教练不存在 | 检查教练ID |
4002 | 教练不在线 | 选择在线教练 |
5001 | 台桌不存在 | 检查台桌ID |
5002 | 台桌不可用 | 选择其他台桌或时间 |
6001 | 订单不存在 | 检查订单号 |
6002 | 订单状态异常 | 检查订单状态 |
9999 | 系统异常 | 联系技术支持 |
商家认证接口
商家认证接口提供完整的商家入驻、审核和登录流程。系统支持智能审核状态管理,确保只有通过审核的商家才能正常使用系统功能。
verify_status = 0 | 待审核 - 商家申请已提交,等待管理员审核 |
verify_status = 1 | 审核通过 - 商家可以正常登录和使用系统 |
verify_status = 2 | 审核驳回 - 申请被拒绝,可查看驳回原因并重新提交 |
智能重新提交 | 被驳回的申请可以重新提交,系统会更新现有记录 |
审核状态检查 | 登录时自动检查审核状态,未通过审核无法登录 |
文件上传支持 | 支持商家头像和店铺介绍图片上传 |
多种登录方式 | 支持密码登录和验证码登录两种方式 |
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
name | String | 是 | 商家名称 | 星辰台球厅 |
contact_person | String | 是 | 联系人 | 张三 |
contact_phone | String | 是 | 联系电话(注册后不可修改) | 13800138000 |
address | String | 是 | 详细地址 | 北京市朝阳区建国路88号 |
password | String | 是 | 登录密码 | 123456 |
description | String | 否 | 商家描述 | 专业台球娱乐场所 |
avatar | String | 否 | 商家头像URL | /uploads/avatar/xxx.jpg |
shop_images | Array | 否 | 店铺图片URL数组 | ["/uploads/shop/1.jpg", "/uploads/shop/2.jpg"] |
新用户注册 | 创建新记录,状态为待审核(0) |
已存在待审核 | 提示"申请已提交,请等待审核" |
已存在已通过 | 提示"该手机号已注册,请直接登录" |
已存在被驳回 | 允许重新提交,更新现有记录并重置为待审核状态 |
请求示例
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
password | String | 是 | 密码 | 123456 |
verify_status = 0 | 待审核状态,显示固定等待消息,禁止登录 |
verify_status = 1 | 审核通过,允许正常登录 |
verify_status = 2 | 审核驳回,显示具体驳回原因,禁止登录 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
code | String | 是 | 验证码 | 123456 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 注册手机号 | 13800138000 |
发送频率 | 同一手机号1分钟内只能发送一次 |
每日限制 | 同一手机号每天最多发送5次 |
验证码有效期 | 5分钟 |
账号状态检查 | 只有正常状态的商家账号才能找回密码 |
请求示例
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 注册手机号 | 13800138000 |
code | String | 是 | 验证码 | 123456 |
password | String | 是 | 新密码(至少6位) | newpassword123 |
密码强度 | 新密码长度不能少于6位 |
验证码校验 | 验证码必须有效且未过期 |
强制重新登录 | 重置成功后清除所有登录token |
一次性使用 | 验证码使用后立即失效 |
请求示例
响应示例
请求参数
无需参数,通过Token获取当前登录商家信息
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
name | String | 否 | 商家名称 | 星辰台球厅 |
phone | String | 否 | 联系电话 | 13800138000 |
String | 否 | 邮箱 | contact@example.com | |
address | String | 否 | 详细地址 | 北京市朝阳区建国路88号 |
description | String | 否 | 商家描述 | 专业台球娱乐场所 |
business_hours | String | 否 | 营业时间 | 09:00-22:00 |
avatar | String | 否 | 商家头像URL | /storage/uploads/avatars/20240115/xxx.jpg |
shop_images | Array | 否 | 店铺介绍图片数组(最多9张) | ["/storage/uploads/images/20240115/xxx1.jpg", "/storage/uploads/images/20240115/xxx2.jpg"] |
请求示例
响应示例
商家端台桌管理
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
status | Integer | 否 | 状态筛选:0-禁用,1-启用 | 1 |
type | Integer | 否 | 台桌类型:1-斯诺克,2-美式,3-中式 | 1 |
keyword | String | 否 | 搜索关键词(台桌名称) | A区1号桌 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 台桌ID | 1 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 台桌ID | 1 |
name | String | 否 | 台桌名称 | A区1号桌 |
type | Integer | 否 | 台桌类型:1-斯诺克,2-美式,3-中式 | 1 |
description | String | 否 | 台桌描述 | 专业比赛用台 |
price | Decimal | 否 | 小时收费 | 50.00 |
status | Integer | 否 | 状态:0-禁用,1-启用 | 1 |
location | String | 否 | 位置信息 | 一楼A区 |
image | String | 否 | 台桌图片URL | /uploads/table/table1.jpg |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 台桌ID | 1 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
status | Integer | 否 | 状态筛选:0-禁用,1-启用 | 1 |
keyword | String | 否 | 搜索关键词(姓名或电话) | 张教练 |
响应示例
🎱 台球预订系统 API 接口文档
台球预订系统 API 接口文档
本系统是一套完整的台球预订系统,支持三端应用:
- 商家端:商家管理台桌、教练、预订和统计
- 教练端:教练管理个人信息、查看订单和收益统计
- 用户端:用户搜索台桌、教练,进行预订和支付
API基础URL | /api |
请求格式 | JSON |
响应格式 | JSON |
编码 | UTF-8 |
所有接口都需要进行签名验证,部分接口需要用户登录后才能访问。
认证说明
请求头格式
签名验证
签名参数
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
app_id | String | 是 | 应用ID |
timestamp | Integer | 是 | 时间戳 |
nonce | String | 是 | 随机字符串 |
sign | String | 是 | 签名 |
响应格式
响应字段说明
字段名 | 类型 | 说明 |
---|---|---|
code | String | 响应码,0000表示成功 |
message | String | 响应消息 |
data | Object/Array | 响应数据 |
timestamp | Integer | 服务器时间戳 |
错误码
错误码 | 说明 | 解决方案 |
---|---|---|
0000 | 请求成功 | - |
1001 | 参数错误 | 检查请求参数 |
1002 | 签名验证失败 | 检查签名算法 |
1003 | Token无效 | 重新登录获取Token |
1004 | 权限不足 | 检查用户权限 |
2001 | 用户不存在 | 检查用户ID |
2002 | 密码错误 | 检查密码 |
3001 | 商家不存在 | 检查商家ID |
3002 | 商家未审核 | 等待商家审核通过 |
4001 | 教练不存在 | 检查教练ID |
4002 | 教练不在线 | 选择在线教练 |
5001 | 台桌不存在 | 检查台桌ID |
5002 | 台桌不可用 | 选择其他台桌或时间 |
6001 | 订单不存在 | 检查订单号 |
6002 | 订单状态异常 | 检查订单状态 |
9999 | 系统异常 | 联系技术支持 |
商家认证接口
商家认证接口提供完整的商家入驻、审核和登录流程。系统支持智能审核状态管理,确保只有通过审核的商家才能正常使用系统功能。
verify_status = 0 | 待审核 - 商家申请已提交,等待管理员审核 |
verify_status = 1 | 审核通过 - 商家可以正常登录和使用系统 |
verify_status = 2 | 审核驳回 - 申请被拒绝,可查看驳回原因并重新提交 |
智能重新提交 | 被驳回的申请可以重新提交,系统会更新现有记录 |
审核状态检查 | 登录时自动检查审核状态,未通过审核无法登录 |
文件上传支持 | 支持商家头像和店铺介绍图片上传 |
多种登录方式 | 支持密码登录和验证码登录两种方式 |
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
name | String | 是 | 商家名称 | 星辰台球厅 |
contact_person | String | 是 | 联系人 | 张三 |
contact_phone | String | 是 | 联系电话(注册后不可修改) | 13800138000 |
address | String | 是 | 详细地址 | 北京市朝阳区建国路88号 |
password | String | 是 | 登录密码 | 123456 |
description | String | 否 | 商家描述 | 专业台球娱乐场所 |
avatar | String | 否 | 商家头像URL | /uploads/avatar/xxx.jpg |
shop_images | Array | 否 | 店铺图片URL数组 | ["/uploads/shop/1.jpg", "/uploads/shop/2.jpg"] |
新用户注册 | 创建新记录,状态为待审核(0) |
已存在待审核 | 提示"申请已提交,请等待审核" |
已存在已通过 | 提示"该手机号已注册,请直接登录" |
已存在被驳回 | 允许重新提交,更新现有记录并重置为待审核状态 |
请求示例
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
password | String | 是 | 密码 | 123456 |
verify_status = 0 | 待审核状态,显示固定等待消息,禁止登录 |
verify_status = 1 | 审核通过,允许正常登录 |
verify_status = 2 | 审核驳回,显示具体驳回原因,禁止登录 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
code | String | 是 | 验证码 | 123456 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 注册手机号 | 13800138000 |
发送频率 | 同一手机号1分钟内只能发送一次 |
每日限制 | 同一手机号每天最多发送5次 |
验证码有效期 | 5分钟 |
账号状态检查 | 只有正常状态的商家账号才能找回密码 |
请求示例
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 注册手机号 | 13800138000 |
code | String | 是 | 验证码 | 123456 |
password | String | 是 | 新密码(至少6位) | newpassword123 |
密码强度 | 新密码长度不能少于6位 |
验证码校验 | 验证码必须有效且未过期 |
强制重新登录 | 重置成功后清除所有登录token |
一次性使用 | 验证码使用后立即失效 |
请求示例
响应示例
请求参数
无需参数,通过Token获取当前登录商家信息
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
name | String | 否 | 商家名称 | 星辰台球厅 |
phone | String | 否 | 联系电话 | 13800138000 |
String | 否 | 邮箱 | contact@example.com | |
address | String | 否 | 详细地址 | 北京市朝阳区建国路88号 |
description | String | 否 | 商家描述 | 专业台球娱乐场所 |
business_hours | String | 否 | 营业时间 | 09:00-22:00 |
avatar | String | 否 | 商家头像URL | /storage/uploads/avatars/20240115/xxx.jpg |
shop_images | Array | 否 | 店铺介绍图片数组(最多9张) | ["/storage/uploads/images/20240115/xxx1.jpg", "/storage/uploads/images/20240115/xxx2.jpg"] |
请求示例
响应示例
商家端台桌管理
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
status | Integer | 否 | 状态筛选:0-禁用,1-启用 | 1 |
type | Integer | 否 | 台桌类型:1-斯诺克,2-美式,3-中式 | 1 |
keyword | String | 否 | 搜索关键词(台桌名称) | A区1号桌 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 台桌ID | 1 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 台桌ID | 1 |
name | String | 否 | 台桌名称 | A区1号桌 |
type | Integer | 否 | 台桌类型:1-斯诺克,2-美式,3-中式 | 1 |
description | String | 否 | 台桌描述 | 专业比赛用台 |
price | Decimal | 否 | 小时收费 | 50.00 |
status | Integer | 否 | 状态:0-禁用,1-启用 | 1 |
location | String | 否 | 位置信息 | 一楼A区 |
image | String | 否 | 台桌图片URL | /uploads/table/table1.jpg |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 台桌ID | 1 |
响应示例
商家端教练管理 最近更新:2025-06-19
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
status | Integer | 否 | 状态筛选:0-禁用,1-启用 | 1 |
keyword | String | 否 | 搜索关键词(姓名或电话) | 张教练 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 教练ID | 1 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 教练ID | 1 |
name | String | 否 | 教练姓名 | 张教练 |
phone | String | 否 | 联系电话 | 13800138000 |
gender | Integer | 否 | 性别:1-男,2-女 | 1 |
age | Integer | 否 | 年龄 | 28 |
avatar | String | 否 | 头像URL | /uploads/coach/avatar1.jpg |
description | String | 否 | 教练简介 | 专业台球教练,擅长斯诺克和九球教学 |
specialties | String | 否 | 专长领域,多个用逗号分隔 | 斯诺克,九球 |
experience | String | 否 | 教学经验 | 5年教学经验 |
certificates | String | 否 | 持有证书 | 国家级台球教练证 |
hourly_rate | Decimal | 否 | 小时收费 | 120.00 |
status | Integer | 否 | 状态:0-禁用,1-启用 | 1 |
work_days | String | 否 | 工作日,1-7代表周一到周日,多个用逗号分隔 | 1,2,3,4,5 |
work_hours | String | 否 | 工作时间段 | 09:00-18:00 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 教练ID | 1 |
响应示例
预订管理接口
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
status | String | 否 | 状态筛选:pending/confirmed/completed/cancelled | confirmed |
start_date | String | 否 | 开始日期 | 2024-01-01 |
end_date | String | 否 | 结束日期 | 2024-01-31 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
order_id | String | 是 | 订单ID | TB202401011400001 |
响应示例
教练端认证接口
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13899888898 |
password | String | 是 | 密码 | 123456 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13899888898 |
password | String | 是 | 密码 | 123456 |
gender | String | 否 | 性别 | 女 |
age | Integer | 否 | 年龄 | 25 |
avatar | String | 否 | 头像URL | /uploads/coach/avatar.jpg |
specialties | Array | 是 | 专业特长(数组) | ["1","2","3"] |
level | String | 否 | 技术等级 | 2 |
experience_years | Integer | 否 | 从业年限 | 5 |
hourly_rate | Decimal | 否 | 课时费(元/小时) | 139.00 |
bio | String | 否 | 个人简介 | 甜美可人,专业服务 |
响应示例
此接口需要教练登录,请在请求头中包含有效的Token。
响应示例
此接口需要教练登录,请在请求头中包含有效的Token。
响应示例
此接口需要教练登录,请在请求头中包含有效的Token。
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
gender | String | 否 | 性别 | 女 |
age | Integer | 否 | 年龄 | 25 |
avatar | String | 否 | 头像URL | /uploads/coach/avatar.jpg |
specialties | Array | 否 | 专业特长(数组) | ["1","2","3"] |
level | String | 否 | 技术等级 | 2 |
experience_years | Integer | 否 | 从业年限 | 5 |
hourly_rate | Decimal | 否 | 课时费(元/小时) | 139.00 |
bio | String | 否 | 个人简介 | 甜美可人,专业服务 |
life_photos | Array | 否 | 生活照数组(最多9张) | ["/storage/uploads/images/20240115/xxx1.jpg", "/storage/uploads/images/20240115/xxx2.jpg"] |
响应示例
此接口需要教练登录,请在请求头中包含有效的Token。
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
certificates | String | 否 | 持有证书 | 专业证书 |
achievements | String | 否 | 主要成就 | 领导省一级冠军 |
teaching_methods | Array | 否 | 教学方式 | ["1","2","3"] |
available_days | String | 否 | 可教学时间(周几) | 1,2,3,5,6,7 |
start_time | String | 否 | 开始时间 | 10:00:00 |
end_time | String | 否 | 结束时间 | 22:00:00 |
max_students | Integer | 否 | 最大学员数 | 20 |
响应示例
此接口需要教练登录,请在请求头中包含有效的Token。
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
person_name | String | 是 | 真实姓名 | 李小美 |
id_card | String | 是 | 身份证号码 | 110101199501011234 |
响应示例
此接口需要教练登录,请在请求头中包含有效的Token。
响应示例
教练端短信验证码登录
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
响应示例
• 验证码由系统自动生成,无需前端传入
• 同一手机号1分钟内只能发送一次验证码
• 验证码有效期为5分钟
• 只有已注册的教练才能接收登录验证码
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
code | String | 是 | 6位数验证码 | 123456 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 注册手机号 | 13800138000 |
发送频率 | 同一手机号1分钟内只能发送一次 |
每日限制 | 同一手机号每天最多发送5次 |
验证码有效期 | 5分钟 |
账号状态检查 | 只有正常状态的教练账号才能找回密码 |
请求示例
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 注册手机号 | 13800138000 |
code | String | 是 | 验证码 | 123456 |
password | String | 是 | 新密码(至少6位) | newpassword123 |
密码强度 | 新密码长度不能少于6位 |
验证码校验 | 验证码必须有效且未过期 |
强制重新登录 | 重置成功后清除所有登录token |
一次性使用 | 验证码使用后立即失效 |
密码加密 | 使用PHP password_hash函数加密存储 |
请求示例
响应示例
教练端订单管理
响应示例
教练端数据统计
响应示例
用户端认证接口
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
code | String | 是 | 微信授权code | 013Q7s0w3m2QC93X6H1w3Qc13d1Q7s0l |
nickname | String | 否 | 用户昵称 | 台球爱好者 |
avatar | String | 否 | 用户头像 | https://example.com/avatar.jpg |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
code | String | 是 | 短信验证码 | 123456 |
响应示例
请求参数
无需参数,通过Token获取当前登录用户信息
响应示例
请求参数
无需参数,通过Token获取当前登录用户信息
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
nickname | String | 否 | 用户昵称 | 台球大师 |
String | 否 | 邮箱地址 | user@example.com | |
avatar | String | 否 | 头像URL | https://example.com/new_avatar.jpg |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
real_name | String | 是 | 真实姓名 | 张三 |
id_card | String | 是 | 身份证号 | 110101199001011234 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
code | String | 是 | 短信验证码 | 123456 |
响应示例
用户搜索功能
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
keyword | String | 否 | 搜索关键词 | 台球厅 |
city | String | 否 | 城市 | 北京市 |
district | String | 否 | 区县 | 朝阳区 |
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
keyword | String | 否 | 搜索关键词 | 1号台 |
type | String | 否 | 台桌类型 | snooker |
merchant_id | String | 否 | 商家ID | 1 |
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
keyword | String | 否 | 搜索关键词 | 李教练 |
specialty | String | 否 | 专长 | 斯诺克 |
merchant_id | String | 否 | 商家ID | 1 |
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
latitude | String | 是 | 纬度 | 39.915 |
longitude | String | 是 | 经度 | 116.404 |
radius | Integer | 否 | 搜索半径(公里),默认5 | 5 |
type | String | 否 | 搜索类型:merchant/coach,默认merchant | merchant |
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
响应示例
用户端商家相关
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
keyword | String | 否 | 搜索关键词 | 星辰台球 |
city | String | 否 | 城市筛选 | 北京市 |
district | String | 否 | 区域筛选 | 朝阳区 |
sort | String | 否 | 排序方式:rating/distance/table_count | rating |
latitude | Float | 否 | 纬度(用于距离排序) | 39.9042 |
longitude | Float | 否 | 经度(用于距离排序) | 116.4074 |
响应示例
路径参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 商家ID | 1 |
响应示例
路径参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 商家ID | 1 |
查询参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
type | String | 否 | 台桌类型筛选 | snooker |
响应示例
路径参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 商家ID | 1 |
查询参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
specialty | String | 否 | 专长筛选 | 斯诺克 |
响应示例
通用订单管理
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
table_id | Integer | 是 | 台桌ID | 1 |
start_time | String | 是 | 开始时间 | 2024-01-01 14:00:00 |
end_time | String | 是 | 结束时间 | 2024-01-01 16:00:00 |
contact_phone | String | 是 | 联系电话 | 13800138000 |
remark | String | 否 | 备注 | 生日聚会 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
order_id | String | 是 | 订单ID | TB202401011400001 |
响应示例
支付接口
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
order_id | String | 是 | 订单ID | TB202401011400001 |
openid | String | 是 | 用户openid | oGZUI0zHgKSH1hsJn6S4n6m9KtUg |
amount | Number | 是 | 支付金额(分) | 10000 |
description | String | 是 | 商品描述 | 台球桌预约费用 |
响应示例
请求参数
微信服务器回调数据,按照微信官方格式。
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
order_id | String | 是 | 原订单ID | TB202401011400001 |
refund_amount | Number | 是 | 退款金额(分) | 10000 |
refund_reason | String | 是 | 退款原因 | 用户主动取消订单 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
order_id | String | 是 | 订单ID | TB202401011400001 |
pay_type | String | 是 | 支付方式:wechat/alipay | |
return_url | String | 否 | 支付成功后跳转地址 | https://example.com/success |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
pay_id | String | 是 | 支付ID | PAY2024010114001 |
响应示例
文件上传接口
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
file | File | 是 | 图片文件 | image.jpg |
type | String | 否 | 文件类型:avatar/logo/table | avatar |
• 单张图片最大10MB
• 支持格式:jpg、jpeg、png、gif、webp
• 大于5MB的图片会自动压缩
• 压缩后仍大于10MB的图片会上传失败
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
files[] | File[] | 是 | 图片文件数组(最多9张) | image1.jpg, image2.jpg |
• 单张图片最大10MB
• 支持格式:jpg、jpeg、png、gif、webp
• 大于5MB的图片会自动压缩
• 压缩后仍大于10MB的图片会被跳过
• 最多同时上传9张图片
请求示例(JavaScript)
响应示例
地区数据接口
省市区级联选择接口,支持三级地区数据查询,用于商家注册地址选择、用户地址管理等场景。
- 省份列表:获取全国所有省份、直辖市、自治区数据
- 城市列表:根据省份ID获取对应的城市列表
- 区县列表:根据城市ID获取对应的区县列表
- 完整地址:根据省市区ID获取完整的地址信息
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
province_id | Integer | 是 | 省份ID | 19 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
city_id | Integer | 是 | 城市ID | 1 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
province_id | Integer | 否 | 省份ID | 19 |
city_id | Integer | 否 | 城市ID | 1 |
district_id | Integer | 否 | 区县ID | 1 |
响应示例
• 省市区数据采用国家标准行政区划代码
• 数据按照sort_order字段排序,优先显示重要城市
• 建议前端实现级联选择,用户选择省份后再加载城市,选择城市后再加载区县
• fullAddress接口支持部分参数查询,可只传province_id获取省份信息
• 所有接口都支持CORS跨域请求
系统配置接口
响应示例
短信服务接口
短信服务相关接口,基于短信宝API实现,支持验证码发送、业务通知、余额查询等功能。
- 验证码发送:支持商家注册、通用验证码等场景
- 业务通知:支持教练预约通知、商家台桌预订通知
- 防刷机制:同一手机号1分钟内只能发送一次,每日限制5次
- 模板管理:支持多种短信模板,自动添加签名【星界飞码网络】
- 错误映射:短信宝错误码映射为统一的API错误码
merchant_register | 商家注册验证码模板 - 参数:{code} |
verify_code | 通用验证码模板 - 参数:{code} |
coach_booking | 教练预约通知模板 - 参数:{userName}, {address}, {DateTime} |
merchant_booking | 商家台桌预订通知模板 - 参数:{merchant_name}, {number}, {from_time} |
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
template | String | 否 | 模板类型:merchant_register/verify_code/coach_booking/merchant_booking | verify_code |
expire | Integer | 否 | 过期时间(分钟),默认5分钟 | 5 |
响应示例
• 验证码由系统自动生成,无需前端传入
• 同一手机号1分钟内只能发送一次验证码
• 每日每个手机号最多发送5次验证码
• 验证码默认有效期为5分钟
• 短信内容会自动添加签名【星界飞码网络】
此接口需要管理员权限,请在请求头中包含有效的管理员Token。
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
phone | String | 是 | 手机号 | 13800138000 |
content | String | 是 | 短信内容(不包含签名) | 【星界飞码网络】用户张三在万达广场预约了您的指导课程,时间为2024-01-15 14:00-16:00,请及时确认。 |
响应示例
此接口需要管理员权限,请在请求头中包含有效的管理员Token。
响应示例
此接口用于测试短信宝账户配置,可以使用自定义的用户名和密码进行测试。
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
username | String | 是 | 短信宝用户名 | xingjiefeima111 |
password | String | 是 | 短信宝密码或ApiKey | xingjiefeima123 |
phone | String | 是 | 测试手机号 | 13800138000 |
content | String | 是 | 短信内容(不包含签名) | 这是一条测试短信 |
signature | String | 否 | 短信签名,默认【测试】 | 【测试】 |
响应示例
此接口需要管理员权限,请在请求头中包含有效的管理员Token。
响应示例
微信小程序登录接口
微信小程序登录相关接口,用于获取用户的openid和session_key。
- 登录流程:小程序调用wx.login()获取code,然后调用登录接口换取openid
- 安全性:AppSecret在服务端配置,不会暴露给客户端
- 缓存机制:access_token自动缓存,避免频繁请求微信服务器
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
code | String | 是 | 微信登录授权code | 013Q7s0w3m2QC93X6H1w3Qc13d1Q7s0l |
小程序端调用示例
响应示例
code有效期为5分钟,且每个code只能使用一次。请确保在获取code后立即调用登录接口。
微信小程序获取手机号接口
微信小程序获取用户手机号相关接口,用于获取用户的真实手机号码。
- 授权流程:用户点击授权按钮,小程序获取code,服务端调用微信API解密手机号
- 隐私保护:用户手机号在日志中自动脱敏处理
- 安全验证:支持水印验证,确保数据来源的真实性
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
code | String | 是 | 获取手机号授权code | e31968a7f94cc5ee25fafc2aef2773f0 |
openid | String | 否 | 用户openid(可选) | oABC123456789xyz |
小程序端调用示例
响应示例
响应字段说明
字段名 | 类型 | 说明 |
---|---|---|
phone_number | String | 用户绑定的手机号(国外手机号会有区号) |
pure_phone_number | String | 没有区号的手机号 |
country_code | String | 区号 |
watermark | Object | 数据水印,用于验证数据来源 |
watermark.timestamp | Number | 用户获取手机号操作的时间戳 |
watermark.appid | String | 小程序appid |
1. code有效期为5分钟,且每个code只能使用一次
2. 需要用户主动授权才能获取手机号
3. 接口有频率限制,请避免频繁调用
4. 务必妥善保管AppSecret,不要在客户端暴露
错误码 | 说明 | 解决方案 |
---|---|---|
0000 | 成功 | - |
4001 | 请求方式错误,请使用POST | 检查请求方法 |
4002 | code参数不能为空 | 检查参数是否正确传递 |
5001 | 微信小程序配置不完整 | 检查AppID和AppSecret配置 |
5002 | 获取access_token失败 | 检查网络连接和微信配置 |
5003 | 获取手机号失败 | 检查code是否有效或已过期 |
5004 | 微信API调用失败 | 检查网络连接 |
5005 | 微信登录失败 | 检查code和微信配置 |
微信官方错误码
错误码 | 说明 | 解决方案 |
---|---|---|
-1 | 系统繁忙 | 稍后再试 |
40029 | code无效 | 检查code是否正确且未过期 |
45011 | API调用太频繁 | 减缓调用频率 |
40013 | AppID不匹配 | 检查AppID配置 |
商家数据统计
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
start_date | String | 否 | 开始日期 | 2024-01-01 |
end_date | String | 否 | 结束日期 | 2024-01-31 |
dimension | String | 否 | 统计维度:day/week/month | day |
响应示例
响应示例
用户端意见反馈
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
type | Integer | 是 | 反馈类型:1=建议 2=投诉 3=Bug反馈 4=其他 | 1 |
title | String | 是 | 反馈标题,1-100字符 | 预订功能改进建议 |
content | String | 是 | 反馈内容,1-1000字符 | 希望能增加提前预订功能 |
contact_info | String | 否 | 联系方式,最多50字符 | 13800138000 |
images | Array | 否 | 反馈图片URL数组,最多5张 | ["https://example.com/img1.jpg"] |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页条数,默认10,最大50 | 10 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 反馈ID | 123 |
响应示例
响应示例
用户端教练申请
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
name | String | 是 | 真实姓名 | 张教练 |
phone | String | 是 | 联系电话 | 13800138000 |
age | Integer | 否 | 年龄(18-60) | 28 |
gender | Integer | 否 | 性别:1=男 2=女 | 1 |
experience_years | Integer | 是 | 从业年限 | 5 |
specialty | String | 是 | 专业特长 | 花式台球、九球技巧 |
introduction | String | 是 | 个人介绍 | 专业台球教练,有丰富的教学经验... |
id_card_front | String | 是 | 身份证正面照片URL | https://example.com/id_front.jpg |
id_card_back | String | 是 | 身份证背面照片URL | https://example.com/id_back.jpg |
education | String | 否 | 学历 | 本科 |
work_experience | String | 否 | 工作经历 | 2018年-2023年在XX台球俱乐部担任教练... |
expected_salary | Number | 否 | 期望薪资 | 8000.00 |
available_time | String | 否 | 可工作时间 | 周一至周五 18:00-22:00 |
certificates | Array | 否 | 证书图片URL数组(最多5张) | ["https://example.com/cert1.jpg", "https://example.com/cert2.jpg"] |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码(默认1) | 1 |
limit | Integer | 否 | 每页数量(默认10) | 10 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 申请ID | 123 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 申请ID | 123 |
响应示例
用户端教练相关
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
keyword | String | 否 | 搜索关键词 | 李教练 |
specialty | String | 否 | 专长筛选 | 斯诺克 |
merchant_id | Integer | 否 | 商家ID筛选 | 1 |
sort | String | 否 | 排序方式:rating/experience/price_asc/price_desc/order_count | rating |
min_rating | Float | 否 | 最低评分筛选 | 4.0 |
max_price | Float | 否 | 最高价格筛选 | 200.00 |
响应示例
路径参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 教练ID | 1 |
响应示例
此接口需要用户登录,请在请求头中包含有效的Token。
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
coach_id | Integer | 是 | 教练ID | 1 |
booking_date | String | 是 | 预约日期(YYYY-MM-DD) | 2024-01-20 |
start_time | String | 是 | 开始时间(HH:mm:ss) | 14:00:00 |
duration | Float | 是 | 时长(小时) | 2.0 |
contact_phone | String | 是 | 联系电话 | 13800138000 |
notes | String | 否 | 备注信息 | 希望重点练习技巧动作 |
响应示例
此接口需要用户登录,请在请求头中包含有效的Token。
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
booking_id | Integer | 是 | 预约ID | 123 |
reason | String | 否 | 取消原因 | 临时有事 |
响应示例
此接口需要用户登录,请在请求头中包含有效的Token。
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
booking_id | Integer | 是 | 预约ID | 123 |
rating | Integer | 是 | 评分(1-5星) | 5 |
review | String | 否 | 评价内容 | 教练很专业,技术过硬 |
响应示例
用户端用户信息相关
此接口需要用户登录,请在请求头中包含有效的Token。
响应示例
此接口需要用户登录,请在请求头中包含有效的Token。
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
username | String | 否 | 用户名 | 张三 |
avatar | String | 否 | 头像地址 | https://example.com/avatar.jpg |
age | Integer | 否 | 年龄 | 25 |
phone | String | 否 | 手机号 | 15812345678 |
String | 否 | 邮箱 | user@example.com |
响应示例
此接口需要用户登录,请在请求头中包含有效的Token。
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
status | String | 否 | 状态筛选 | completed |
响应示例
商家端优惠券管理
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
status | Integer | 否 | 状态筛选:0-禁用,1-启用 | 1 |
keyword | String | 否 | 搜索关键词(优惠券名称) | 新用户专享 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 优惠券ID | 1 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 优惠券ID | 1 |
name | String | 否 | 优惠券名称 | 新用户专享 |
type | Integer | 否 | 优惠券类型:1-满减券,2-折扣券 | 1 |
discount_amount | Decimal | 否 | 优惠金额(满减券)或折扣率(折扣券) | 20.00 |
min_amount | Decimal | 否 | 最低消费金额 | 100.00 |
valid_days | Integer | 否 | 有效天数 | 30 |
description | String | 否 | 优惠券描述 | 新用户首次下单满100元减20元 |
start_time | String | 否 | 开始时间 | 2024-01-15 00:00:00 |
end_time | String | 否 | 结束时间 | 2024-12-31 23:59:59 |
status | Integer | 否 | 状态:0-禁用,1-启用 | 1 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 优惠券ID | 1 |
响应示例
用户端优惠券
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
user_id | Integer | 是 | 用户ID | 1 |
merchant_id | Integer | 否 | 商家ID筛选 | 1 |
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认10 | 10 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
user_id | Integer | 是 | 用户ID | 1 |
coupon_id | Integer | 是 | 优惠券ID | 1 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
user_id | Integer | 是 | 用户ID | 1 |
status | Integer | 否 | 状态:0=未使用 1=已使用 2=已过期 | 0 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
user_id | Integer | 是 | 用户ID | 1 |
user_coupon_id | Integer | 是 | 用户优惠券ID | 123 |
order_id | Integer | 是 | 订单ID | 456 |
amount | Decimal | 是 | 订单金额 | 150.00 |
响应示例
用户端台桌相关
响应示例
响应示例
支付中心接口
本系统封装了小诺支付平台的接口,为客户端(小程序、APP等)提供统一的支付接口。
客户端只需调用本系统的接口即可完成支付,无需直接对接第三方支付平台。
特点:
- 统一的接口规范,便于客户端开发
- 支持微信支付、支付宝支付
- 自动处理订单状态和支付记录
- 支持多种支付场景:H5、小程序、APP等
- 完整的退款功能
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
order_id | Integer | 是 | 订单ID | 123 |
pay_type | String | 是 | 支付类型:wechat(微信) | alipay(支付宝) | |
method | String | 否 | 接口类型:web | jump | jsapi | app | scan | applet | jsapi |
device | String | 否 | 设备类型:pc | mobile | qq | wechat | alipay | mobile |
openid | String | 否 | 用户openid(JSAPI支付必传) | oUpF8uMuAJO_M2pxb1Q9zNjWeS6o |
appid | String | 否 | 公众号AppId(JSAPI支付必传) | wx8888888888888888 |
auth_code | String | 否 | 付款码(付款码支付必传) | 120061098828009406 |
return_url | String | 否 | 支付成功返回地址 | https://example.com/success |
method参数说明
值 | 说明 | 返回类型 |
---|---|---|
web | 通用网页支付(自动判断返回类型) | 跳转url/二维码/小程序url |
jump | 跳转支付 | 仅返回跳转url |
jsapi | JSAPI支付(小程序内支付) | 返回JSAPI参数 |
app | APP支付 | APP支付参数或拉起小程序参数 |
scan | 付款码支付 | 支付成功返回订单信息 |
applet | 小程序支付 | 小程序插件参数或跳转参数 |
响应示例(JSAPI支付)
响应示例(二维码支付)
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
order_id | Integer | 是 | 订单ID | 123 |
pay_type | String | 是 | 支付类型:wechat | alipay | |
return_url | String | 否 | 支付成功返回地址 | https://example.com/success |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
order_no | String | 是 | 支付单号 | PAY20250115123456789012 |
响应示例
支付状态说明
状态值 | 说明 |
---|---|
1 | 待支付 |
2 | 支付成功 |
3 | 支付失败 |
4 | 已退款 |
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
payment_no | String | 是 | 支付单号 | PAY20250115123456789012 |
refund_amount | Decimal | 是 | 退款金额(不能大于支付金额) | 88.00 |
refund_reason | String | 否 | 退款原因(最多200字) | 用户申请退款 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
out_refund_no | String | 是 | 商户退款单号 | RF20250115143920123456 |
响应示例
响应示例
注意:此接口由第三方支付平台自动调用,客户端无需调用。
支付成功后,系统会自动:
- 更新支付记录状态为"支付成功"
- 更新订单状态为"已支付"
- 记录交易流水
- 更新商户余额
退款管理接口
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
order_id | Integer | 是 | 订单ID | 123 |
order_type | String | 是 | 订单类型:coach_booking | coach_booking |
refund_reason | String | 是 | 退款原因 | 临时有事无法上课 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码 | 1 |
limit | Integer | 否 | 每页数量 | 20 |
status | String | 否 | 退款状态:pending|approved|rejected|processing|completed|failed | pending |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 退款申请ID | 456 |
action | String | 是 | 操作:approve|reject | approve |
admin_remark | String | 否 | 管理员备注 | 同意退款 |
响应示例
财务管理接口
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
merchant_id | Integer | 否 | 商户ID(商户端必填) | 123 |
user_id | Integer | 否 | 用户ID(用户端必填) | 456 |
transaction_type | String | 否 | 交易类型:payment|refund|commission|withdraw | payment |
start_time | String | 否 | 开始时间 | 2025-01-01 |
end_time | String | 否 | 结束时间 | 2025-01-31 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
merchant_id | Integer | 是 | 商户ID | 123 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
merchant_id | Integer | 是 | 商户ID | 123 |
withdraw_amount | Decimal | 是 | 提现金额 | 500.00 |
bank_name | String | 是 | 银行名称 | 中国工商银行 |
bank_account | String | 是 | 银行账号 | 6222xxxxxxxxxxxxxxxx |
account_name | String | 是 | 账户名称 | 张三 |
响应示例
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
merchant_id | Integer | 是 | 商户ID | 123 |
响应示例
订单管理接口
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
page | Integer | 否 | 页码,默认1 | 1 |
limit | Integer | 否 | 每页数量,默认20 | 20 |
status | String | 否 | 订单状态筛选 | completed |
payment_status | String | 否 | 支付状态筛选 | paid |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 订单ID | 123 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
order_id | Integer | 是 | 订单ID | 123 |
refund_reason | String | 是 | 退款原因 | 临时有事,无法上课 |
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
order_id | Integer | 是 | 订单ID | 123 |
cancel_reason | String | 否 | 取消原因 | 时间冲突 |
响应示例
管理员接口
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
id | Integer | 是 | 退款申请ID | 789 |
action | String | 是 | 操作:approve-同意,reject-拒绝 | approve |
admin_remark | String | 否 | 管理员备注 | 符合退款条件 |
响应示例
响应示例
响应示例
系统配置接口
响应示例
请求参数
参数名 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
configs | Array | 是 | 配置数组 | 见下方示例 |
请求示例
响应示例
更新日志
记录系统API接口的重要更新和功能变更。
智能重新提交 | 被驳回的商家申请可以重新提交,系统自动更新现有记录 |
审核状态管理 | 新增verify_status字段,支持待审核(0)、通过(1)、驳回(2)三种状态 |
驳回原因记录 | 新增verify_remark字段,记录审核驳回的具体原因 |
文件上传支持 | 支持商家头像(avatar)和店铺介绍图片(shop_images)上传 |
验证码登录 | 新增商家验证码登录接口,支持多种登录方式 |
/api/merchant/auth/register | 增加智能重新提交逻辑,支持avatar和shop_images参数 |
/api/merchant/auth/login | 增加审核状态检查,未通过审核无法登录 |
/api/merchant/auth/loginWithCode | 新增验证码登录接口,同样包含审核状态检查 |
/api/merchant/auth/info | 返回数据增加verify_status、verify_remark、avatar、shop_images字段 |
merchants表 | 新增verify_status、verify_remark、avatar、shop_images四个字段 |
注册防重复 | 同一手机号在待审核或已通过状态下不允许重复注册 |
登录权限控制 | 只有审核通过的商家才能正常登录系统 |
错误信息优化 | 提供更详细的错误提示和状态说明 |
用户系统 | 用户注册、登录、信息管理 |
商家系统 | 商家注册、台桌管理、教练管理 |
教练系统 | 教练认证、订单管理、收益统计 |
预订系统 | 台桌预订、教练预约、支付结算 |
通用功能 | 文件上传、短信服务、地区数据 |