8.1 KiB
8.1 KiB
⚡⚡⚡ 立即测试 - 核心支付流程
创建时间: 2026-01-23
预计时间: 10分钟
🚀 快速开始(3步)
步骤1: 准备测试数据(2分钟)
复制以下SQL并在数据库中执行:
-- 1. 创建测试钱包
INSERT INTO wallet (user_id, balance, frozen_balance, total_recharge, total_withdraw, create_time, update_time)
VALUES (1, 500.00, 0.00, 500.00, 0.00, NOW(), NOW())
ON DUPLICATE KEY UPDATE balance = 500.00, update_time = NOW();
-- 2. 创建测试次卡
INSERT INTO time_card (user_id, card_no, card_name, card_type, price, total_hours, used_hours, remaining_hours, status, start_date, expire_date, create_time, update_time)
VALUES (1, 'TC20260123001', '标准次卡', 'standard', 200.00, 10, 0, 10, 1, CURDATE(), DATE_ADD(CURDATE(), INTERVAL 1 YEAR), NOW(), NOW());
-- 3. 创建测试套餐
INSERT INTO `package` (package_name, package_type, price, total_times, description, status, create_time, update_time)
VALUES ('基础套餐', 'basic', 300.00, 5, '5次陪伴服务', 1, NOW(), NOW())
ON DUPLICATE KEY UPDATE status = 1;
INSERT INTO user_package (user_id, package_id, package_name, total_times, used_times, remaining_times, status, purchase_time, expire_time, create_time, update_time)
VALUES (1, 1, '基础套餐', 5, 0, 5, 1, NOW(), DATE_ADD(NOW(), INTERVAL 1 YEAR), NOW(), NOW());
-- 4. 创建测试优惠券
INSERT INTO coupon (coupon_name, coupon_type, discount_amount, min_amount, total_quantity, received_quantity, used_quantity, start_time, end_time, status, create_time, update_time)
VALUES ('新用户优惠券', 'discount', 20.00, 100.00, 100, 0, 0, NOW(), DATE_ADD(NOW(), INTERVAL 1 MONTH), 1, NOW(), NOW())
ON DUPLICATE KEY UPDATE status = 1;
INSERT INTO user_coupon (user_id, coupon_id, coupon_name, coupon_type, discount_amount, min_amount, status, receive_time, expire_time, create_time, update_time)
VALUES (1, 1, '新用户优惠券', 'discount', 20.00, 100.00, 0, NOW(), DATE_ADD(NOW(), INTERVAL 1 MONTH), NOW(), NOW());
-- 5. 创建测试订单
INSERT INTO `order` (order_no, user_id, service_name, service_date, time_slot, duration, price, pay_amount, status, create_time, update_time)
VALUES ('ORD20260123001', 1, '陪伴服务', CURDATE(), '14:00-16:00', 2, 150.00, 150.00, 0, NOW(), NOW());
步骤2: 重新编译前端(3分钟)
# 方法1: 使用命令行
cd peidu/uniapp
npm run dev:mp-weixin
# 方法2: 使用HBuilderX
# 右键项目 -> 运行 -> 运行到小程序模拟器 -> 微信开发者工具
步骤3: 打开支付页面测试(5分钟)
- 打开微信开发者工具
- 在地址栏输入:
/pages/payment/index?orderId=1 - 按Enter进入支付页面
✅ 快速验证清单
页面加载检查
- 订单信息显示正常
- 支付金额显示:¥150.00
- 6种支付方式都显示
钱包支付检查
- 显示"余额:¥500.00"
- 点击可以选中
- 显示绿色边框
次卡支付检查
- 显示"1张可用"
- 点击后弹出选择器
- 显示"标准次卡 剩余10小时"
- 选择后弹窗关闭
套餐支付检查
- 显示"1个可用"
- 点击后弹出选择器
- 显示"基础套餐 剩余5次"
- 选择后弹窗关闭
优惠券检查
- 显示"1张可用"
- 点击后弹出选择器
- 显示"新用户优惠券 满100减20"
- 选择后显示"-¥20.00"
- 实付金额变为:¥130.00
支付流程检查
- 选择钱包支付
- 点击"立即支付"
- 显示"支付中..."
- 支付成功提示
- 跳转到订单列表
🔍 快速调试
如果钱包余额不显示
// 在控制台查看
console.log('钱包余额:', this.walletBalance)
// 检查网络请求
// Network标签 -> 查找 /api/wallet/balance
如果次卡不显示
-- 检查数据库
SELECT * FROM time_card WHERE user_id = 1 AND status = 1;
如果优惠券不显示
-- 检查数据库
SELECT * FROM user_coupon WHERE user_id = 1 AND status = 0;
📸 预期效果截图说明
1. 支付页面
┌─────────────────────────────┐
│ 订单信息 │
│ 订单号: ORD20260123001 │
│ 服务名称: 陪伴服务 │
│ 服务时间: 2026-01-23 14:00 │
│ 服务时长: 2小时 │
├─────────────────────────────┤
│ 支付金额: ¥150.00 │
├─────────────────────────────┤
│ 选择支付方式 │
│ │
│ 💳 微信支付 ✓ │
│ 💰 钱包支付 │
│ 余额:¥500.00 │
│ 🎟️ 次卡支付 │
│ 1张可用 │
│ 📦 套餐支付 │
│ 1个可用 │
│ 🔵 支付宝支付 │
├─────────────────────────────┤
│ 🎫 优惠券 1张可用 › │
├─────────────────────────────┤
│ 实付金额: ¥150.00 │
│ [立即支付] │
└─────────────────────────────┘
2. 选择优惠券后
┌─────────────────────────────┐
│ 🎫 优惠券 -¥20.00 › │
├─────────────────────────────┤
│ 实付金额: ¥130.00 │
│ [立即支付] │
└─────────────────────────────┘
⚡ 一键测试脚本
Windows批处理
@echo off
echo ========================================
echo 核心支付流程 - 快速测试
echo ========================================
echo.
echo [1/3] 执行SQL脚本...
mysql -u root -p peidu < test_payment_data.sql
echo SQL脚本执行完成!
echo.
echo [2/3] 重新编译前端...
cd peidu\uniapp
call npm run dev:mp-weixin
echo 前端编译完成!
echo.
echo [3/3] 打开微信开发者工具...
echo 请手动打开微信开发者工具
echo 并访问: /pages/payment/index?orderId=1
echo.
echo ========================================
echo 测试准备完成!
echo ========================================
pause
Linux/Mac脚本
#!/bin/bash
echo "========================================"
echo "核心支付流程 - 快速测试"
echo "========================================"
echo
echo "[1/3] 执行SQL脚本..."
mysql -u root -p peidu < test_payment_data.sql
echo "SQL脚本执行完成!"
echo
echo "[2/3] 重新编译前端..."
cd peidu/uniapp
npm run dev:mp-weixin
echo "前端编译完成!"
echo
echo "[3/3] 打开微信开发者工具..."
echo "请手动打开微信开发者工具"
echo "并访问: /pages/payment/index?orderId=1"
echo
echo "========================================"
echo "测试准备完成!"
echo "========================================"
🎯 成功标准
必须通过
- ✅ 所有支付方式都能显示
- ✅ 钱包余额正确显示
- ✅ 次卡/套餐数量正确显示
- ✅ 优惠券可以选择
- ✅ 实付金额计算正确
- ✅ 支付流程完整
可选通过
- ⭕ 支付成功后跳转正确
- ⭕ 数据库记录更新正确
- ⭕ 余额/次数扣减正确
📞 遇到问题?
常见问题快速解决
问题: 页面空白
解决: 检查orderId参数是否正确
问题: 余额不显示
解决: 检查SQL是否执行成功
问题: 支付失败
解决: 查看控制台错误信息
问题: 弹窗不显示
解决: 检查数据是否存在
✅ 测试完成
测试完成后,请确认:
- 所有功能正常
- 无控制台错误
- 支付流程完整
- 数据更新正确
测试时间: ___________
测试结果: ⭕ 通过 / ❌ 未通过
备注: ___________
立即开始测试! 🚀