Skip to content

项目控制台30天计划入口修复

问题描述

用户反馈的问题:

  1. 在"蓝图生成"的30天计划页面,点击开始第一天计划
  2. 会跳转到具体项目页,上端部分有30天计划入口(正常)
  3. 但是从主页面重新进入项目页后,30天计划入口就消失了

问题原因

根本原因

StrategyOverview 组件(30天计划入口)被放在了"计划" Tab 内部,而项目页面默认显示的是"内容" Tab。

代码分析

javascript
// ProjectConsole.vue 第 260 行
const activeTab = ref('content')  // 默认显示"内容" Tab

// StrategyOverview 在第 116-145 行,位于 "plan" Tab 内
<el-tab-pane name="plan">
  <StrategyOverview />
</el-tab-pane>

因此:

  • ✅ 从30天计划跳转过来时:可能会通过路由参数激活 "plan" Tab,显示正常
  • ❌ 从主页直接进入项目页:默认显示 "content" Tab,看不到30天计划入口

解决方案

方案选择

考虑了以下几种方案:

  1. 方案一(已采用):将 StrategyOverview 移到顶部,始终显示

    • 优点:30天计划作为重要功能,始终可见,用户体验最好
    • 优点:不依赖 Tab 切换,更直观
    • 缺点:页面内容略多
  2. ❌ 方案二:检测路由参数,动态切换 Tab

    • 缺点:只解决了跳转场景,从主页进入仍看不到
    • 缺点:体验不一致
  3. ❌ 方案三:在所有 Tab 中显示快捷入口

    • 缺点:重复显示,浪费空间
    • 缺点:不够优雅

实施方案

1. 移动 StrategyOverview 到顶部

修改前

vue
<el-tabs v-model="activeTab">
  <el-tab-pane name="plan">
    <StrategyOverview />  <!-- 隐藏在 Tab 内 -->
  </el-tab-pane>
</el-tabs>

修改后

vue
<!-- 核心指标区 -->
<div class="core-metrics">
  <ProjectDashboard />
  <DiagnosisSummaryCard />
</div>

<!-- 30天计划入口 - 始终显示 -->
<StrategyOverview />

<el-tabs v-model="activeTab">
  <!-- 其他 Tab 内容 -->
</el-tabs>

2. 更新平台名称显示

同时优化了30天计划任务横幅中的平台名称显示:

修改前

vue
<el-tag>{{ strategyTask.platform?.toUpperCase() }}</el-tag>
<!-- 显示:DOUYIN -->

修改后

vue
<div class="platform-badge" :class="`platform-${strategyTask.platform}`">
  <span>{{ getPlatformIcon(strategyTask.platform) }}</span>
  <span>{{ getPlatformName(strategyTask.platform) }}</span>
</div>
<!-- 显示:📱 抖音 -->

3. 添加样式优化

scss
// 蓝图概览卡片 - 添加入场动画
.strategy-overview-card {
  margin-bottom: 24px;
  animation: slideIn 0.4s ease-out;
}

@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

// 平台徽章样式
.platform-badge {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 13px;
  
  &.platform-douyin {
    background: linear-gradient(135deg, #000000, #333333);
    color: white;
  }
  
  &.platform-xiaohongshu {
    background: linear-gradient(135deg, #ff2442, #ff4d5f);
    color: white;
  }
  // ... 其他平台
}

修改的文件

  1. frontend/src/views/ProjectConsole.vue
    • StrategyOverview 从 "plan" Tab 移到顶部
    • 更新30天计划任务横幅的平台显示
    • 导入 platformMapper 工具函数
    • 添加相关样式

效果对比

修改前

项目控制台(默认显示"内容" Tab)
┌────────────────────────────────┐
│ 项目选择器              [设置] │
├────────────────────────────────┤
│ 仪表盘        |  诊断摘要      │
├────────────────────────────────┤
│ [内容] [栏目] [数据] [计划]    │  ← 默认在"内容" Tab
├────────────────────────────────┤
│ 内容日历                       │
│ ...                            │
│                                │
│ (30天计划入口在"计划" Tab中,  │
│   看不到!)                    │
└────────────────────────────────┘

修改后

项目控制台(任何 Tab 都能看到30天计划)
┌────────────────────────────────┐
│ 项目选择器              [设置] │
├────────────────────────────────┤
│ 仪表盘        |  诊断摘要      │
├────────────────────────────────┤
│ ╔══════════════════════════╗  │
│ ║ 📅 本周任务              ║  │  ← 始终显示!
│ ║                          ║  │
│ ║ [查看完整计划]           ║  │
│ ╚══════════════════════════╝  │
├────────────────────────────────┤
│ [内容] [栏目] [数据] [计划]    │
├────────────────────────────────┤
│ (Tab 内容)                   │
└────────────────────────────────┘

用户体验改进

改进点

  1. 一致性

    • 无论从哪里进入项目页,30天计划入口都能看到
    • 不依赖于当前激活的 Tab
  2. 可发现性

    • 30天计划作为重要功能,放在显眼位置
    • 新用户更容易发现这个功能
  3. 快捷性

    • 不需要切换到特定 Tab 才能访问
    • 减少用户操作步骤
  4. 视觉统一

    • 平台名称统一显示为中文
    • 带图标的品牌色徽章更直观

智能显示逻辑

StrategyOverview 组件本身有智能判断:

vue
<!-- 有蓝图时:显示本周任务摘要 -->
<template v-if="hasBlueprint">
  <!-- 显示30天计划进度和快捷入口 -->
</template>

<!-- 无蓝图时:引导用户完成账号定制 -->
<template v-else>
  <div class="empty-blueprint">
    <h3>还没有执行计划</h3>
    <p>完成账号定制,AI 将为你生成30天专属计划</p>
    <el-button @click="goToAccountSetup">
      开始账号定制(3分钟)
    </el-button>
  </div>
</template>

因此:

  • 有蓝图:显示进度和快捷入口,非常有用
  • 无蓝图:引导用户完成账号定制,也很有价值

测试清单

  • [x] 从主页进入项目页,能看到30天计划入口
  • [x] 从30天计划跳转到项目页,能看到30天计划入口
  • [x] 切换不同 Tab,30天计划入口保持可见
  • [x] 有蓝图时,显示正确的进度信息
  • [x] 无蓝图时,显示引导信息
  • [x] 30天计划任务横幅显示中文平台名称
  • [x] 平台徽章显示正确的品牌色
  • [x] 移动端布局正常
  • [x] 入场动画流畅

相关文件

  • frontend/src/views/ProjectConsole.vue - 项目控制台主文件
  • frontend/src/components/project/StrategyOverview.vue - 30天计划概览组件
  • frontend/src/utils/platformMapper.js - 平台映射工具

后续优化建议

  1. 持久化用户偏好

    • 记住用户最后访问的 Tab
    • 智能预测用户可能需要的功能
  2. 更多快捷入口

    • 在其他位置也提供30天计划的快捷访问
    • 例如:悬浮按钮、快捷键等
  3. 进度提醒

    • 当有未完成的今日任务时,显示更明显的提示
    • 推送通知或邮件提醒
  4. 数据可视化

    • 在30天计划概览中增加更多可视化图表
    • 展示历史完成趋势

修复日期:2025-12-13
影响范围:项目控制台页面
优先级:高(影响核心功能可用性)
状态:✅ 已完成

© 2024-2025 趣美丽 QuMeiLi · Powered by 刻流星引擎 KeLiuXing