12 KiB
12 KiB
API文档
基础信息
- 响应格式: 所有接口都会返回统一的
Result格式
{
"code": 200, // 状态码
"msg": "", // 错误信息
"data": {} // 具体响应数据
}
成员管理
基础路径: /api/members
1. 创建成员
- 请求方式:
POST - 请求路径:
/api/members - 请求体:
Member对象
{
"userName": "用户名",
"avatar": "头像URL",
"password": "密码",
"salt": "密码盐值",
"name": "姓名",
"address": "地址",
"postcode": "邮编",
"sruNumber": "SRU编号",
"dateOfBirth": "1990-01-01",
"telNumber": "固定电话",
"mobileNumber": "手机号码",
"email": "电子邮箱"
}
- 响应: 成功返回空数据
2. 删除成员
- 请求方式:
DELETE - 请求路径:
/api/members/{id} - 路径参数:
id- 成员ID - 响应: 成功返回空数据
3. 更新成员
- 请求方式:
PUT - 请求路径:
/api/members - 请求体:
Member对象 - 响应: 成功返回空数据
4. 获取单个成员
- 请求方式:
GET - 请求路径:
/api/members/{id} - 路径参数:
id- 成员ID - 响应: 返回成员详细信息
5. 分页获取成员列表
- 请求方式:
GET - 请求路径:
/api/members/page - 请求参数:
pageNum: 页码(默认1)pageSize: 每页大小(默认10)
- 响应: 返回分页数据
6. 获取随机成员
- 请求方式:
GET - 请求路径:
/api/members/random - 响应: 返回4个随机成员的详细信息
{
"code": 200,
"msg": "",
"data": [
{
"avatar": "头像URL",
"name": "成员姓名",
"dateOfBirth": "1990-01-01",
"role": "角色名称",
"sruNumber": "SRU编号",
"email": "电子邮箱"
}
]
}
球员管理
基础路径: /api/players
1. 创建球员
- 请求方式:
POST - 请求路径:
/api/players - 请求体:
Player对象
{
"memberId": "成员ID",
"teamId": "团队ID",
"position": "位置",
"teamNumber": "队内编号",
"height": 180,
"weight": 75,
"guardian1Name": "监护人1姓名",
"guardian1Relationship": "与监护人1关系",
"guardian1Address": "监护人1地址",
"guardian1Tel": "监护人1电话",
"guardian2Name": "监护人2姓名",
"guardian2Relationship": "与监护人2关系",
"guardian2Address": "监护人2地址",
"guardian2Tel": "监护人2电话",
"doctorName": "医生姓名",
"doctorTel": "医生电话",
"doctorAddress": "医生地址",
"knownHealthIssues": "已知健康问题"
}
- 响应: 成功返回空数据
2. 删除球员
- 请求方式:
DELETE - 请求路径:
/api/players/{id} - 路径参数:
id- 球员ID - 响应: 成功返回空数据
3. 更新球员
- 请求方式:
PUT - 请求路径:
/api/players - 请求体:
Player对象 - 响应: 成功返回空数据
4. 获取单个球员
- 请求方式:
GET - 请求路径:
/api/players/{id} - 路径参数:
id- 球员ID - 响应: 返回球员详细信息
5. 分页获取球员列表
- 请求方式:
GET - 请求路径:
/api/players/page - 请求参数:
pageNum: 页码(默认1)pageSize: 每页大小(默认10)
- 响应: 返回分页数据,包含以下字段:
{
"code": 200,
"msg": "",
"data": {
"records": [
{
"id": "球员ID",
"position": "位置",
"teamNumber": "队内编号",
"height": 180,
"weight": 75,
"createTime": "2024-04-10T16:30:00",
"name": "姓名",
"avatar": "头像URL",
"sruNumber": "SRU编号",
"dateOfBirth": "1990-01-01",
"email": "电子邮箱",
"telNumber": "固定电话",
"mobileNumber": "手机号码",
"guardian1Name": "监护人1姓名",
"guardian1Tel": "监护人1电话",
"guardian2Name": "监护人2姓名",
"guardian2Tel": "监护人2电话",
"doctorName": "医生姓名",
"doctorTel": "医生电话",
"knownHealthIssues": "已知健康问题",
"teamName": "队伍名称"
}
],
"total": 100,
"size": 10,
"current": 1
}
}
6. 按团队分页获取球员列表
- 请求方式:
GET - 请求路径:
/api/players/page/team/{teamId} - 路径参数:
teamId- 团队ID - 请求参数:
pageNum: 页码(默认1)pageSize: 每页大小(默认10)
- 响应: 返回分页数据
7. 获取随机球员
- 请求方式:
GET - 请求路径:
/api/players/random - 响应: 返回3个随机球员的详细信息
{
"code": 200,
"msg": "",
"data": [
{
"name": "球员姓名",
"avatar": "头像URL",
"teamName": "队伍名称",
"position": "位置",
"teamNumber": "队内编号",
"height": 180,
"weight": 75,
"createTime": "2024-04-10T16:30:00",
"passingStandard": 5,
"passingSpin": 5,
"passingPop": 5,
"tacklingFront": 5,
"tacklingRear": 5,
"tacklingSide": 5,
"tacklingScrabble": 5,
"kickingDrop": 5,
"kickingPunt": 5,
"kickingGrubber": 5,
"kickingGoal": 5
}
]
}
球员技能档案管理
基础路径: /api/player-skills
1. 创建技能档案
- 请求方式:
POST - 请求路径:
/api/player-skills - 请求体:
PlayerSkillProfile对象
{
"playerId": "球员ID",
"passingStandard": 5,
"passingStandardComment": "标准传球评价",
"passingSpin": 5,
"passingSpinComment": "旋转传球评价",
"passingPop": 5,
"passingPopComment": "快速传球评价",
"tacklingFront": 5,
"tacklingFrontComment": "正面铲球评价",
"tacklingRear": 5,
"tacklingRearComment": "背后铲球评价",
"tacklingSide": 5,
"tacklingSideComment": "侧面铲球评价",
"tacklingScrabble": 5,
"tacklingScrabbleComment": "争抢铲球评价",
"kickingDrop": 5,
"kickingDropComment": "落地踢球评价",
"kickingPunt": 5,
"kickingPuntComment": "踢远球评价",
"kickingGrubber": 5,
"kickingGrubberComment": "滚地踢球评价",
"kickingGoal": 5,
"kickingGoalComment": "射门评价"
}
- 响应: 成功返回空数据
2. 删除技能档案
- 请求方式:
DELETE - 请求路径:
/api/player-skills/{id} - 路径参数:
id- 技能档案ID - 响应: 成功返回空数据
3. 更新技能档案
- 请求方式:
PUT - 请求路径:
/api/player-skills - 请求体:
PlayerSkillProfile对象 - 响应: 成功返回空数据
4. 获取单个技能档案
- 请求方式:
GET - 请求路径:
/api/player-skills/{id} - 路径参数:
id- 技能档案ID - 响应: 返回技能档案详细信息
5. 获取球员的技能档案
- 请求方式:
GET - 请求路径:
/api/player-skills/player/{playerId} - 路径参数:
playerId- 球员ID - 响应: 返回技能档案详细信息
6. 分页获取技能档案列表
- 请求方式:
GET - 请求路径:
/api/player-skills/page - 请求参数:
pageNum: 页码(默认1)pageSize: 每页大小(默认10)
- 响应: 返回分页数据
公告管理
基础路径: /api/announcements
1. 创建公告
- 请求方式:
POST - 请求路径:
/api/announcements - 请求体:
Announcement对象
{
"title": "公告标题",
"content": "公告内容",
"time": "2024-03-21T10:00:00"
}
- 响应:
{
"code": 200,
"msg": "",
"data": null
}
2. 删除公告
- 请求方式:
DELETE - 请求路径:
/api/announcements/{id} - 路径参数:
id- 公告ID - 响应:
{
"code": 200,
"msg": "",
"data": null
}
3. 更新公告
- 请求方式:
PUT - 请求路径:
/api/announcements - 请求体:
Announcement对象
{
"id": "公告ID",
"title": "公告标题",
"content": "公告内容",
"time": "2024-03-21T10:00:00"
}
- 响应:
{
"code": 200,
"msg": "",
"data": null
}
4. 获取单个公告
- 请求方式:
GET - 请求路径:
/api/announcements/{id} - 路径参数:
id- 公告ID - 响应:
{
"code": 200,
"msg": "",
"data": {
"id": "公告ID",
"title": "公告标题",
"content": "公告内容",
"time": "2024-03-21T10:00:00"
}
}
5. 获取最新公告
- 请求方式:
GET - 请求路径:
/api/announcements/latest - 响应:
{
"code": 200,
"msg": "",
"data": {
"id": "公告ID",
"title": "公告标题",
"content": "公告内容",
"time": "2024-03-21T10:00:00"
}
}
广告模块
1. 创建广告
- 请求方式:
POST - 请求路径:
/ad - 请求体:
{
"title": "广告标题",
"img": "图片URL",
"sort": 1 // 排序序号
}
- 响应:
{
"code": 200,
"msg": "",
"data": null
}
2. 修改广告
- 请求方式:
PUT - 请求路径:
/ad - 请求体:
{
"id": "广告ID",
"title": "广告标题",
"img": "图片URL",
"sort": 1
}
- 响应:
{
"code": 200,
"msg": "",
"data": null
}
3. 删除广告
- 请求方式:
DELETE - 请求路径:
/ad/{id} - 路径参数:
id- 广告ID - 响应:
{
"code": 200,
"msg": "",
"data": null
}
4. 获取单个广告
- 请求方式:
GET - 请求路径:
/ad/{id} - 路径参数:
id- 广告ID - 响应:
{
"code": 200,
"msg": "",
"data": {
"id": "广告ID",
"title": "广告标题",
"img": "图片URL",
"sort": 1
}
}
5. 获取广告列表
- 请求方式:
GET - 请求路径:
/ad - 响应:
{
"code": 200,
"msg": "",
"data": [
{
"id": "广告ID",
"title": "广告标题",
"img": "图片URL",
"sort": 1
}
]
}
队伍模块
基础路径: /api/teams
1. 创建队伍
- 请求方式:
POST - 请求路径:
/api/teams - 请求体:
Team对象 - 响应: 成功返回空数据
2. 删除队伍
- 请求方式:
DELETE - 请求路径:
/api/teams/{id} - 路径参数:
id- 队伍ID - 响应: 成功返回空数据
3. 更新队伍
- 请求方式:
PUT - 请求路径:
/api/teams - 请求体:
Team对象 - 响应: 成功返回空数据
4. 获取单个队伍
- 请求方式:
GET - 请求路径:
/api/teams/{id} - 路径参数:
id- 队伍ID - 响应: 返回队伍详细信息
5. 分页获取队伍列表
- 请求方式:
GET - 请求路径:
/api/teams/page - 请求参数:
pageNum: 页码(默认1)pageSize: 每页大小(默认10)
- 响应: 返回分页数据
比赛模块
基础路径: /api/matches
1. 创建比赛
- 请求方式:
POST - 请求路径:
/api/matches - 请求体:
Match对象 - 响应: 成功返回空数据
2. 删除比赛
- 请求方式:
DELETE - 请求路径:
/api/matches/{id} - 路径参数:
id- 比赛ID - 响应: 成功返回空数据
3. 更新比赛
- 请求方式:
PUT - 请求路径:
/api/matches - 请求体:
Match对象 - 响应: 成功返回空数据
4. 获取单个比赛
- 请求方式:
GET - 请求路径:
/api/matches/{id} - 路径参数:
id- 比赛ID - 响应: 返回包含队伍信息的比赛详细信息
5. 分页获取比赛列表
- 请求方式:
GET - 请求路径:
/api/matches/page - 请求参数:
pageNum: 页码(默认1)pageSize: 每页大小(默认10)teamId: 队伍ID(可选)
- 响应: 返回包含队伍信息的分页数据