fix: 修复界面显示问题,优化文案

🎨 界面修复:
- 修复章节列表锁图标和标题错位(用简单符号替代emoji)
- 修复匹配页今日剩余图标和文字对齐
- 删除匹配页底部'每天3次免费匹配'提示

✏️ 文案优化:
- '分享赚钱' → '立即推广'
- '分享给好友' → '推荐好友,共同成长'
- '好友购买你获得90%佣金' → '邀请好友加入,享90%推广收益'

📄 文档更新:
- 更新需求方案文档v1.1
- 添加上线检查清单
- 完善API接口文档
This commit is contained in:
卡若
2026-01-23 17:37:40 +08:00
parent 7ff181f743
commit d42652c51b
6 changed files with 214 additions and 380 deletions

View File

@@ -67,19 +67,14 @@
<block wx:for="{{chapter.sections}}" wx:key="id" wx:for-item="section"> <block wx:for="{{chapter.sections}}" wx:key="id" wx:for-item="section">
<view class="section-item" bindtap="goToRead" data-id="{{section.id}}"> <view class="section-item" bindtap="goToRead" data-id="{{section.id}}">
<view class="section-left"> <view class="section-left">
<view class="section-icon {{section.isFree || hasFullBook || purchasedSections.indexOf(section.id) > -1 ? 'icon-unlocked' : 'icon-locked'}}"> <text class="section-lock {{section.isFree || hasFullBook || purchasedSections.indexOf(section.id) > -1 ? 'lock-open' : 'lock-closed'}}">{{section.isFree || hasFullBook || purchasedSections.indexOf(section.id) > -1 ? '○' : '●'}}</text>
<text wx:if="{{section.isFree || hasFullBook || purchasedSections.indexOf(section.id) > -1}}">🔓</text> <text class="section-title {{section.isFree || hasFullBook || purchasedSections.indexOf(section.id) > -1 ? '' : 'text-muted'}}">{{section.id}} {{section.title}}</text>
<text wx:else>🔒</text>
</view>
<text class="section-title {{section.isFree || hasFullBook || purchasedSections.indexOf(section.id) > -1 ? '' : 'text-muted'}}">
{{section.id}} {{section.title}}
</text>
</view> </view>
<view class="section-right"> <view class="section-right">
<text wx:if="{{section.isFree}}" class="tag tag-free">免费</text> <text wx:if="{{section.isFree}}" class="tag tag-free">免费</text>
<text wx:elif="{{hasFullBook || purchasedSections.indexOf(section.id) > -1}}" class="text-brand text-xs">已购</text> <text wx:elif="{{hasFullBook || purchasedSections.indexOf(section.id) > -1}}" class="tag tag-purchased">已购</text>
<text wx:else class="text-muted text-xs">¥{{section.price}}</text> <text wx:else class="section-price">¥{{section.price}}</text>
<text class="section-arrow"></text> <text class="section-arrow"></text>
</view> </view>
</view> </view>
</block> </block>

View File

@@ -335,37 +335,43 @@
min-width: 0; min-width: 0;
} }
.section-icon { /* 小节锁图标 */
width: 36rpx; .section-lock {
height: 36rpx; width: 32rpx;
min-width: 36rpx; min-width: 32rpx;
font-size: 28rpx; font-size: 24rpx;
text-align: center;
flex-shrink: 0; flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
line-height: 1;
} }
.icon-unlocked { .lock-open {
color: #00CED1; color: #00CED1;
} }
.icon-locked { .lock-closed {
color: rgba(255, 255, 255, 0.4); color: rgba(255, 255, 255, 0.3);
} }
/* 小节标题 */
.section-title { .section-title {
font-size: 26rpx; font-size: 26rpx;
color: #ffffff; color: #ffffff;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap; white-space: nowrap;
line-height: 36rpx;
flex: 1; flex: 1;
height: 36rpx; }
display: flex;
align-items: center; /* 小节价格 */
.section-price {
font-size: 24rpx;
color: rgba(255, 255, 255, 0.5);
}
/* 已购标签 */
.tag-purchased {
background: rgba(0, 206, 209, 0.15);
color: #00CED1;
} }
.section-right { .section-right {

View File

@@ -63,11 +63,6 @@
当前模式: <text class="text-brand">{{currentTypeLabel}}</text> 当前模式: <text class="text-brand">{{currentTypeLabel}}</text>
</view> </view>
<!-- 免费次数提示 -->
<view class="free-tip" wx:if="{{!hasFullBook}}">
每天{{totalMatchesAllowed}}次免费匹配,用完可付费购买
</view>
<!-- 分隔线 --> <!-- 分隔线 -->
<view class="divider"></view> <view class="divider"></view>

View File

@@ -55,10 +55,11 @@
/* ===== 匹配次数条 ===== */ /* ===== 匹配次数条 ===== */
.match-count-bar { .match-count-bar {
display: flex; display: flex;
flex-direction: row;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
margin: 24rpx 32rpx; margin: 24rpx 32rpx;
padding: 24rpx; padding: 24rpx 32rpx;
background: #1c1c1e; background: #1c1c1e;
border-radius: 24rpx; border-radius: 24rpx;
border: 2rpx solid rgba(255, 255, 255, 0.05); border: 2rpx solid rgba(255, 255, 255, 0.05);
@@ -66,18 +67,38 @@
.count-left { .count-left {
display: flex; display: flex;
flex-direction: row;
align-items: center; align-items: center;
gap: 16rpx; gap: 12rpx;
} }
.count-icon { .count-icon {
font-size: 32rpx; font-size: 28rpx;
width: 32rpx;
text-align: center;
} }
.count-icon.icon-warning { .count-icon.icon-warning {
color: #FFD700; color: #FFD700;
} }
.count-text {
font-size: 28rpx;
color: rgba(255, 255, 255, 0.7);
}
.count-right {
display: flex;
flex-direction: row;
align-items: center;
gap: 16rpx;
}
.count-value {
font-size: 32rpx;
font-weight: 600;
}
.count-text { .count-text {
font-size: 26rpx; font-size: 26rpx;
color: rgba(255, 255, 255, 0.7); color: rgba(255, 255, 255, 0.7);

View File

@@ -80,13 +80,13 @@
</view> </view>
</view> </view>
<!-- 分享提示 --> <!-- 推广提示 -->
<view class="share-tip" bindtap="showShare"> <view class="share-tip" bindtap="showShare">
<view class="tip-content"> <view class="tip-content">
<text class="tip-title">觉得不错?分享给好友</text> <text class="tip-title">推荐好友,共同成长</text>
<text class="tip-desc">好友购买你获得90%佣金</text> <text class="tip-desc">邀请好友加入享90%推广收益</text>
</view> </view>
<view class="tip-btn">分享赚钱</view> <view class="tip-btn">立即推广</view>
</view> </view>
</view> </view>
</view> </view>
@@ -136,7 +136,7 @@
</view> </view>
</view> </view>
<text class="paywall-tip">分享给好友购买你可获得90%佣金</text> <text class="paywall-tip">邀请好友加入享90%推广收益</text>
</view> </view>
</view> </view>
</view> </view>

View File

@@ -1,8 +1,9 @@
# 小程序改造 TDD需求方案 v1.0 # 小程序改造 TDD需求方案 v1.1
**创建日期**2026年1月23日 **创建日期**2026年1月23日
**更新日期**2026年1月23日
**创建人**卡若AI **创建人**卡若AI
**状态**开发 **状态**:开发
--- ---
@@ -12,7 +13,7 @@
**核心闭环** **核心闭环**
``` ```
用户打开小程序 → 搜索/浏览内容 → 阅读(进度同步)→ 付费购买 → 分销推广 → 自动提现 用户打开小程序 → 微信登录 → 浏览内容 → 付费购买 → 推广获益 → 自动提现
匹配合伙人 → 查看档案/认证 → 建立合作 匹配合伙人 → 查看档案/认证 → 建立合作
``` ```
@@ -25,378 +26,194 @@
|:---|:---| |:---|:---|
| **项目名称** | 一场Soul的创业实验 - 小程序改造 | | **项目名称** | 一场Soul的创业实验 - 小程序改造 |
| **项目阶段** | 已上线,功能迭代 | | **项目阶段** | 已上线,功能迭代 |
| **核心目标** | 交互体验优化 + 功能增强 | | **核心目标** | 交互体验优化 + 支付分销上线 |
| **验收人** | 卡若 | | **验收人** | 卡若 |
| **代码位置** | `/Users/karuo/Documents/开发/3、自营项目/一场soul的创业实验/miniprogram/` | | **代码位置** | `/Users/karuo/Documents/开发/3、自营项目/一场soul的创业实验/miniprogram/` |
| **数据库** | 腾讯云MySQL56b4c23f6853c.gz.cdb.myqcloud.com:14413 |
| **域名** | https://soul.quwanzhi.com |
### 当前问题 ### 当前问题(已修复)
| 问题类型 | 具体表现 | | 问题类型 | 具体表现 | 修复状态 |
|:---|:---|:---|
| 登录流程 | 未登录时显示过多功能,干扰用户 | ✅ 已修复 |
| 支付流程 | 需要反复登录才能支付 | ✅ 已修复 |
| 章节显示 | 锁图标和标题错位 | ✅ 已修复 |
| 匹配页面 | 图标和文字对齐问题 | ✅ 已修复 |
| 文案问题 | "分享赚钱"不够高大上 | ✅ 已修复 |
| 数据库 | 使用本地数据库 | ✅ 切换腾讯云 |
---
## 三、已完成功能清单
### 3.1 界面优化
| 模块 | 功能点 | 状态 |
|:---|:---|:---|
| **我的页面** | 未登录只显示登录按钮 | ✅ |
| **章节列表** | 简化锁图标,修复对齐 | ✅ |
| **匹配页面** | 修复次数栏图标对齐 | ✅ |
| **匹配页面** | 删除底部免费次数提示 | ✅ |
| **阅读页面** | 文案优化(推广收益) | ✅ |
### 3.2 支付功能
| 模块 | 功能点 | 状态 |
|:---|:---|:---|
| **微信支付** | 小程序直接调起微信支付 | ✅ |
| **重复购买检测** | 避免重复支付同一章节 | ✅ |
| **静默获取openId** | 已登录用户无需重复登录 | ✅ |
| **测试模式** | 支付服务不可用时可测试 | ✅ |
### 3.3 分销功能
| 模块 | 功能点 | 状态 |
|:---|:---|:---|
| **推广中心** | 显示收益、绑定用户列表 | ✅ |
| **邀请码** | 自动生成专属邀请码 | ✅ |
| **绑定关系** | H5/小程序统一绑定 | ✅ |
| **推广API** | `/api/referral/data` 接口 | ✅ |
### 3.4 后台管理
| 模块 | 功能点 | 状态 |
|:---|:---|:---|
| **章节管理** | `/admin/chapters` 管理页面 | ✅ |
| **价格设置** | 可修改章节价格 | ✅ |
| **免费设置** | 可设置章节免费状态 | ✅ |
| **匹配配置** | `/api/match/config` 接口 | ✅ |
### 3.5 数据库
| 模块 | 表名 | 状态 |
|:---|:---|:---|
| **用户表** | users | ✅ |
| **订单表** | orders | ✅ |
| **推广关系** | referral_bindings | ✅ |
| **匹配记录** | match_records | ✅ |
| **系统配置** | system_config | ✅ |
---
## 四、上线检查清单
### 4.1 小程序配置
- [ ] AppID配置正确`wxb8bbb2b10dec74aa`
- [ ] 域名白名单:`soul.quwanzhi.com`
- [ ] 支付功能开通
- [ ] 提交审核
### 4.2 服务端配置
- [ ] 腾讯云数据库连接正常
- [ ] 微信支付证书配置
- [ ] API接口全部可用
- [ ] SSL证书有效
### 4.3 支付配置
| 配置项 | 值 |
|:---|:---| |:---|:---|
| 交互不顺畅 | 登录/支付流程分散,代码重复,体验不一致 | | 小程序AppID | wxb8bbb2b10dec74aa |
| 导航混乱 | switchTab/navigateTo混用用户易迷路 | | 商户号 | 1318592501 |
| 功能缺失 | 无搜索、无进度同步、无自动提现、合伙人匹配弱 | | API密钥 | wx3e31b068be59ddc131b068be59ddc2 |
| 数据不同步 | 购买后需手动刷新才能看到状态变化 | | 回调地址 | https://soul.quwanzhi.com/api/miniprogram/pay/notify |
--- ---
## 三、功能范围 ## 五、API接口清单
### 3.1 核心功能(本期开发) ### 5.1 小程序专用接口
| 模块 | 功能点 | 优先级 | 工作量预估 | | 接口 | 方法 | 说明 |
|:---|:---|:---|:---| |:---|:---|:---|
| **全站搜索** | 搜索章节标题、内容、合伙人 | P0 | 中 | | `/api/miniprogram/login` | POST | 微信登录获取openId |
| **阅读进度同步** | 小程序↔网页端同步,多设备同步 | P0 | 中 | | `/api/miniprogram/pay` | POST | 创建支付订单 |
| **自动提现** | 分销收益达阈值自动提现 | P1 | 高 | | `/api/miniprogram/pay/notify` | POST | 支付回调 |
| **合伙人档案** | 合伙人详细档案、认证体系 | P1 | 高 |
| **登录流程统一** | 全局登录组件,状态管理优化 | P0 | 低 |
| **支付流程简化** | 抽离支付模块,统一调用接口 | P0 | 中 |
| **导航结构优化** | 增加TabBar页面统一跳转规则 | P1 | 中 |
| **数据实时同步** | 购买/操作后实时更新UI | P0 | 低 |
### 3.2 本期不做 ### 5.2 通用接口
| 功能 | 原因 | | 接口 | 方法 | 说明 |
|:---|:---|:---|
| `/api/referral/data` | GET/POST | 推广数据/绑定关系 |
| `/api/match/config` | GET/POST | 匹配规则配置 |
| `/api/admin/chapters` | GET/POST | 章节管理 |
| `/api/db/init` | POST | 数据库初始化 |
| `/api/db/chapters` | GET | 章节内容 |
---
## 六、文案规范
### 6.1 推广相关
| 原文案 | 优化后 |
|:---|:---| |:---|:---|
| 听书/TTS朗读 | 需要额外音频资源和API优先级低 | | 分享赚钱 | 立即推广 |
| 批注/划线/笔记 | 开发量大,后续版本考虑 | | 分享给好友 | 推荐好友,共同成长 |
| 拼团/砍价 | 营销功能复杂,当前分销模式已够用 | | 好友购买你获得90%佣金 | 邀请好友加入享90%推广收益 |
| 聊天/私信 | 需要IM基础设施成本高 |
| 离线阅读 | 小程序限制,技术复杂度高 |
--- ### 6.2 匹配相关
## 四、功能详细设计 | 位置 | 文案 |
### 4.1 全站搜索
**用户场景**:用户想快速找到某个话题、某个案例、或某个合伙人。
**搜索范围**
- 章节标题62个章节
- 章节内容(全文索引)
- 合伙人(昵称、行业、标签)
**交互设计**
```
首页顶部搜索入口 → 搜索页(独立页面)
输入关键词
Tab切换全部 | 章节 | 合伙人
点击结果跳转
```
**技术方案**
- 前端:新增 `/pages/search/search` 页面
- 后端:新增 `/api/search` 接口,支持分页
- 数据库:章节内容建立全文索引,合伙人表增加搜索字段
---
### 4.2 阅读进度同步
**用户场景**用户在手机小程序看到第3章换到电脑网页端继续看能自动跳到上次位置。
**同步维度**
- 当前阅读章节ID
- 章节内阅读位置scrollTop百分比
- 最后阅读时间
**同步策略**
```
阅读时 → 每30秒或翻页时上报进度
打开时 → 拉取最新进度 → 提示"继续上次阅读?"
```
**技术方案**
- 前端阅读页增加进度上报逻辑onHide/onUnload时同步
- 后端:新增 `/api/reading-progress` 接口GET/POST
- 数据库:新增 `reading_progress`
**数据结构**
```sql
CREATE TABLE reading_progress (
id INT PRIMARY KEY AUTO_INCREMENT,
user_id VARCHAR(64) NOT NULL,
section_id VARCHAR(32) NOT NULL,
scroll_percent DECIMAL(5,2) DEFAULT 0,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
UNIQUE KEY uk_user_section (user_id, section_id)
);
```
---
### 4.3 自动提现
**用户场景**分销用户累积佣金达到100元系统自动打款到微信零钱。
**业务规则**
| 规则 | 说明 |
|:---|:---| |:---|:---|
| 提现阈值 | 默认100元可后台配置 | | 匹配次数 | 今日剩余 X次 |
| 提现时间 | 每日凌晨2点检查并执行 | | 购买次数 | ¥1购买1次 |
| 提现方式 | 微信企业付款到零钱 | | 当前模式 | 当前模式: 创业合伙 |
| 手续费 | 平台承担 |
| 失败处理 | 记录日志,人工处理 |
**交互设计**
```
个人中心 → 推广中心 → 收益明细
显示"自动提现已开启"
显示"满100元自动到账"
提现记录列表
```
**技术方案**
- 前端:推广中心页面增加自动提现开关和记录
- 后端:
- 新增 `/api/withdrawal/auto-config` 接口(配置)
- 新增 `/api/withdrawal/records` 接口(记录)
- 新增定时任务(每日检查并执行提现)
- 微信支付使用企业付款到零钱API
--- ---
### 4.4 合伙人档案/认证 ## 七、测试用例
**用户场景**:用户想找靠谱的合伙人,需要看到对方的详细背景和资质认证。 ### 7.1 登录流程
**档案字段** | 用例 | 操作 | 期望结果 |
| 字段 | 类型 | 说明 |
|:---|:---|:---| |:---|:---|:---|
| 基础信息 | 必填 | 昵称、头像、一句话介绍 | | 未登录访问"我的" | 打开小程序进入"我的"页面 | 只显示登录按钮,不显示其他功能 |
| 行业领域 | 必填 | 电商/内容/传统行业/技术/其他 | | 微信登录 | 点击微信登录按钮 | 调起微信授权,登录成功 |
| 所在城市 | 必填 | 省市选择 | | 登录后显示 | 登录成功 | 显示用户信息和完整功能菜单 |
| 资源标签 | 多选 | 流量/供应链/资金/技术/人脉 |
| 需求标签 | 多选 | 找流量/找供应链/找资金/找技术/找合伙人 |
| 详细介绍 | 选填 | 200字以内 |
| 联系方式 | 认证后可见 | 微信号 |
**认证体系** ### 7.2 支付流程
| 认证等级 | 条件 | 权益 |
| 用例 | 操作 | 期望结果 |
|:---|:---|:---| |:---|:---|:---|
| 未认证 | 默认 | 只能看基础信息 | | 购买章节 | 点击"购买本章" | 直接调起微信支付 |
| 手机认证 | 绑定手机号 | 可查看他人手机认证信息 | | 重复购买 | 已购章节再次点击购买 | 提示"已购买过此章节" |
| 实名认证 | 提交身份证 | 显示"已实名"标识,可查看微信号 | | 支付成功 | 完成支付 | 立即更新购买状态,可阅读 |
| 付费认证 | 购买全书 | 显示"书友"标识,优先匹配 |
**交互设计** ### 7.3 推广流程
```
匹配页 → 合伙人列表(卡片式)
点击查看档案
档案详情页
未认证提示 → 去认证 → 认证流程
```
**技术方案** | 用例 | 操作 | 期望结果 |
- 前端:
- 改造 `/pages/match/match` 为合伙人列表
- 新增 `/pages/partner-profile/partner-profile` 档案详情页
- 新增 `/pages/partner-edit/partner-edit` 档案编辑页
- 后端:
- 新增 `/api/partner/list` 接口(列表+筛选)
- 新增 `/api/partner/profile` 接口(详情)
- 新增 `/api/partner/update` 接口(更新档案)
- 新增 `/api/partner/verify` 接口(认证)
- 数据库:新增 `partner_profile`
---
### 4.5 交互优化
#### 4.5.1 登录流程统一
**当前问题**
- 首页、阅读页、我的页面各自实现登录弹窗
- 代码重复,样式不一致
**改造方案**
```
1. 新建全局登录组件 /components/global-login/
2. app.js 增加全局登录方法 app.showLogin()
3. 各页面调用 app.showLogin() 即可
4. 登录成功后通过事件广播通知各页面刷新
```
#### 4.5.2 支付流程简化
**当前问题**
- 阅读页 `read.js` 支付相关代码300+行
- 真实支付和模拟支付逻辑混杂
**改造方案**
```
1. 新建支付工具 /utils/payment.js已有需重构
2. 封装统一支付方法:
- payment.paySection(sectionId) 购买章节
- payment.payFullBook() 购买全书
3. 内部处理所有逻辑(创建订单、调起支付、更新状态)
4. 各页面只需一行调用
```
#### 4.5.3 导航结构优化
**当前TabBar**:首页 | 匹配 | 我的3个
**优化后TabBar**:首页 | 目录 | 搜索 | 合伙人 | 我的5个
**页面层级规则**
| 类型 | 页面 | 跳转方式 |
|:---|:---|:---| |:---|:---|:---|
| TabBar页 | 首页、目录、搜索、合伙人、我的 | `wx.switchTab` | | 查看推广中心 | 点击推广中心 | 显示收益、绑定用户列表 |
| 二级页 | 阅读、档案详情、推广中心、设置 | `wx.navigateTo` | | 复制邀请链接 | 点击复制链接 | 链接包含专属邀请码 |
| 弹窗 | 登录、支付确认、分享 | 组件弹窗 | | 分享文案 | 点击分享到朋友圈 | 复制推广文案 |
#### 4.5.4 数据实时同步
**改造方案**
```
1. 使用全局状态管理(基于 app.globalData + 事件机制)
2. 关键操作后广播事件:
- 登录成功 → 'login-success'
- 购买成功 → 'purchase-success'
- 进度更新 → 'progress-update'
3. 各页面监听事件自动刷新UI
```
--- ---
## 五、技术约束 ## 八、下一步计划
| 维度 | 约束 | ### 待开发功能
|:---|:---|
| **小程序框架** | 微信原生小程序不使用uni-app/Taro |
| **后端框架** | Next.js API Routes |
| **数据库** | MySQL已有实例 |
| **部署环境** | 宝塔面板 + GitHub Webhook自动部署 |
| **微信支付** | 已对接,企业付款需单独申请 |
--- | 功能 | 优先级 | 说明 |
## 六、异常处理规则
| 异常场景 | 处理方式 |
|:---|:---|
| 搜索无结果 | 显示"暂无相关内容",推荐热门章节 |
| 进度同步失败 | 本地缓存,下次启动重试 |
| 自动提现失败 | 记录日志,标记待人工处理,通知用户 |
| 合伙人认证失败 | 显示失败原因,引导重新提交 |
| 网络异常 | 统一显示"网络异常,请重试",支持重试 |
| 登录态过期 | 自动刷新token失败则弹出登录框 |
---
## 七、测试用例清单
### 7.1 全站搜索
| 用例ID | 场景 | 输入 | 期望输出 |
|:---|:---|:---|:---|
| S01 | 搜索章节标题 | "电动车" | 返回1.1章节 |
| S02 | 搜索章节内容 | "私域银行" | 返回包含该词的章节列表 |
| S03 | 搜索合伙人 | "电商" | 返回行业为电商的合伙人 |
| S04 | 空关键词搜索 | "" | 显示热门推荐 |
| S05 | 无结果搜索 | "xyz123" | 显示"暂无相关内容" |
### 7.2 阅读进度同步
| 用例ID | 场景 | 操作 | 期望结果 |
|:---|:---|:---|:---|
| R01 | 进度上报 | 阅读到50%位置 | 服务端记录scroll_percent=50 |
| R02 | 进度恢复 | 重新打开章节 | 自动滚动到50%位置 |
| R03 | 跨设备同步 | 手机读到3章电脑打开 | 电脑显示"继续阅读第3章" |
| R04 | 网络断开 | 离线阅读 | 本地缓存进度,联网后同步 |
### 7.3 自动提现
| 用例ID | 场景 | 条件 | 期望结果 |
|:---|:---|:---|:---|
| W01 | 达到阈值 | 余额=100元 | 凌晨自动提现到微信 |
| W02 | 未达阈值 | 余额=50元 | 不触发提现 |
| W03 | 提现失败 | 微信接口异常 | 记录失败日志,通知管理员 |
| W04 | 关闭自动提现 | 用户手动关闭 | 不触发自动提现 |
### 7.4 合伙人档案
| 用例ID | 场景 | 操作 | 期望结果 |
|:---|:---|:---|:---|
| P01 | 创建档案 | 填写必填字段并保存 | 档案创建成功,显示在列表 |
| P02 | 查看档案 | 点击合伙人卡片 | 跳转档案详情页 |
| P03 | 未认证查看 | 未认证用户查看他人微信 | 提示"认证后可查看" |
| P04 | 筛选合伙人 | 选择"电商"+"找流量" | 只显示符合条件的合伙人 |
### 7.5 交互优化
| 用例ID | 场景 | 操作 | 期望结果 |
|:---|:---|:---|:---|
| U01 | 全局登录 | 任意页面点击需登录功能 | 弹出统一登录框 |
| U02 | 登录后刷新 | 登录成功 | 当前页面自动刷新用户状态 |
| U03 | 购买后更新 | 购买章节成功 | 立即显示"已购买",无需刷新 |
| U04 | TabBar切换 | 点击目录Tab | 切换到目录页,选中状态正确 |
---
## 八、验收标准
| 验收项 | 标准 | 验收人 |
|:---|:---|:---| |:---|:---|:---|
| 功能完整 | 全部P0功能可用P1功能90%可用 | 卡若 | | 全站搜索 | P1 | 搜索章节标题和内容 |
| 交互流畅 | 页面切换无卡顿,操作响应<500ms | 卡若 | | 阅读进度同步 | P1 | 小程序↔网页端同步 |
| 数据准确 | 进度同步准确提现金额正确 | 卡若 | | 自动提现 | P2 | 满100元自动提现 |
| 无严重Bug | 不影响核心流程的使用 | 卡若 | | 合伙人档案 | P2 | 详细档案和认证体系 |
| 代码规范 | 符合现有项目规范有必要注释 | 卡若 |
### 本期目标
1. ✅ 支付功能可用
2. ✅ 分销功能可用
3. ✅ 界面优化完成
4. ⏳ 提交小程序审核上线
--- ---
## 九、开发任务优先级 **方案版本**v1.1
### 第一阶段交互优化P0
| 序号 | 任务 | 预估工作量 |
|:---|:---|:---|
| 1 | 全局登录组件封装 | 0.5天 |
| 2 | 支付模块重构 | 1天 |
| 3 | 数据实时同步机制 | 0.5天 |
| 4 | 阅读进度同步前后端 | 1天 |
### 第二阶段功能增强P0-P1
| 序号 | 任务 | 预估工作量 |
|:---|:---|:---|
| 5 | 全站搜索前后端 | 1.5天 |
| 6 | 导航结构调整5个Tab | 1天 |
| 7 | 合伙人档案系统前后端 | 2天 |
| 8 | 自动提现功能前后端 | 1.5天 |
### 第三阶段:测试与优化
| 序号 | 任务 | 预估工作量 |
|:---|:---|:---|
| 9 | 全流程测试 | 1天 |
| 10 | Bug修复与优化 | 1天 |
**总计预估**约11天
---
## 十、下一步行动
1. **确认本方案**如有调整请反馈
2. **创建开发分支**`feature/miniprogram-v2`
3. **按优先级开发**先完成第一阶段交互优化
4. **每日更新进度**更新到项目推进表
---
**方案版本**v1.0
**创建时间**2026-01-23 **创建时间**2026-01-23
**下次评审**开发完成后 **更新时间**2026-01-23
**下次评审**:上线后