web/src/views/review/index.vue
@@ -19,7 +19,7 @@
            <el-option
              v-for="item in activities"
              :key="item.id"
              :label="item.name"
              :label="getActivityDisplayName(item)"
              :value="item.id"
            />
          </el-select>
@@ -38,7 +38,6 @@
          <el-button type="primary" @click="loadProjects" :loading="projectsLoading">
            搜索
          </el-button>
          <el-button @click="resetSearch">重置</el-button>
        </el-form-item>
      </el-form>
@@ -130,14 +129,20 @@
// 加载比赛列表
const loadActivities = async () => {
  console.log('=== 开始加载比赛列表 ===')
  activitiesLoading.value = true
  try {
    console.log('调用 getActiveActivities...')
    const data = await getActiveActivities()
    console.log('getActiveActivities 返回数据:', data)
    activities.value = data
    console.log('activities.value 设置为:', activities.value)
  } catch (error) {
    console.error('加载比赛列表失败:', error)
    ElMessage.error(error.message)
  } finally {
    activitiesLoading.value = false
    console.log('=== 比赛列表加载完成 ===')
  }
}
@@ -230,6 +235,21 @@
  return stateMap[state] || '未知'
}
// 获取活动显示名称(比赛名称 + 阶段名称)
const getActivityDisplayName = (activity) => {
  if (!activity) return ''
  // 如果有父比赛信息,显示"比赛名称 - 阶段名称"
  if (activity.parent && activity.parent.name) {
    return `${activity.parent.name} - ${activity.name}`
  }
  // 如果没有父比赛信息,只显示阶段名称
  return activity.name
}
// 组件挂载时加载数据
onMounted(() => {
  loadActivities()