更新训练情况API文档

更新训练情况API

接口信息

POST/gym/member/update_training_status

请求参数

参数名 类型 必填 描述
member_id Integer 会员ID
stage_id Integer 训练阶段ID
week_number Integer 周数
status String 新的训练情况评价
access_token String 访问令牌

响应数据

成功响应(200):

{
  "message": "训练情况更新成功",
  "data": {
    "member_id": 42,
    "stage_id": 5,
    "week_number": 3,
    "status": "核心力量有明显提升"
  }
}

错误响应:

400: 缺少必要参数
{
  "error": "Missing parameters",
  "error_descrip": "缺少必要参数"
}
400: 参数格式无效
{
  "error": "Invalid parameters",
  "error_descrip": "参数格式无效"
}
403: 权限不足
{
  "error": "Permission denied",
  "error_descrip": "您没有权限修改此会员的训练情况"
}
404: 记录不存在
{
  "error": "Record not found",
  "error_descrip": "未找到对应的周度训练记录"
}

使用说明

此API用于更新会员特定周的训练情况评价。只有会员本人或其教练才能修改训练情况。

权限控制

使用流程

  1. 通过 /gym/member/training_summary API 获取会员的训练周记录摘要
  2. 从返回的 weekly_data 中获取需要修改的周的 member_idstage_idweek_number
  3. 调用此API更新训练情况
  4. 再次调用 /gym/member/training_summary API 查看更新后的结果

请求示例

POST /gym/member/update_training_status
Content-Type: application/x-www-form-urlencoded

member_id=42&stage_id=5&week_number=3&status=核心力量有明显提升&access_token=abc123

前端实现示例

JavaScript示例

// 假设已经从training_summary API获取了数据
const weeklyData = response.weekly_data;
const weekToUpdate = weeklyData[2]; // 第3周数据

// 获取更新所需的参数
const params = {
  member_id: memberId, // 会员ID
  stage_id: stageId,   // 阶段ID
  week_number: weekToUpdate.week_number, // 周数
  status: '核心力量有明显提升', // 新的训练情况评价
  access_token: accessToken
};

// 发送更新请求
fetch('/gym/member/update_training_status', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
  },
  body: new URLSearchParams(params)
})
.then(response => response.json())
.then(data => {
  if (data.message) {
    console.log('更新成功:', data.message);
    // 刷新训练周记录数据
    fetchTrainingSummary();
  } else {
    console.error('更新失败:', data.error_descrip);
  }
})
.catch(error => {
  console.error('请求错误:', error);
});