149 lines
4.5 KiB
Markdown
149 lines
4.5 KiB
Markdown
|
|
# 立即修复后台统计数据显示问题
|
|||
|
|
|
|||
|
|
## 当前状态
|
|||
|
|
- ✅ 后端代码已修改(添加totalLikeCount统计)
|
|||
|
|
- ✅ 前端代码已修改(显示被点赞数)
|
|||
|
|
- ❌ 后端服务未重新部署(导致修改未生效)
|
|||
|
|
|
|||
|
|
## 快速修复步骤
|
|||
|
|
|
|||
|
|
### 第1步:验证数据库有数据(可选)
|
|||
|
|
```bash
|
|||
|
|
# 连接到数据库
|
|||
|
|
mysql -h 1.15.149.240 -u root -p zhibo
|
|||
|
|
|
|||
|
|
# 运行以下查询
|
|||
|
|
SELECT
|
|||
|
|
u.uid,
|
|||
|
|
u.nickname,
|
|||
|
|
(SELECT COUNT(*) FROM eb_follow_record f WHERE f.followed_id = u.uid AND f.follow_status IN ('1', '关注') AND f.is_deleted = 0) as fansCount,
|
|||
|
|
(SELECT COUNT(*) FROM eb_live_room r WHERE r.uid = u.uid) as roomCount,
|
|||
|
|
(SELECT COALESCE(SUM(r.like_count), 0) FROM eb_live_room r WHERE r.uid = u.uid) as totalLikeCount
|
|||
|
|
FROM eb_user u
|
|||
|
|
WHERE u.is_streamer = 1;
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
如果看到数据不是0,说明数据库中有数据,只是后端服务没有更新。
|
|||
|
|
|
|||
|
|
### 第2步:重新编译后端(在本地执行)
|
|||
|
|
```bash
|
|||
|
|
cd Zhibo\zhibo-h
|
|||
|
|
mvn clean package -DskipTests
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
等待编译完成,确认生成了新的jar包:
|
|||
|
|
- 文件位置:`Zhibo\zhibo-h\crmeb-admin\target\crmeb-admin.jar`
|
|||
|
|
|
|||
|
|
### 第3步:部署到服务器
|
|||
|
|
|
|||
|
|
#### 方法A:使用自动脚本(推荐)
|
|||
|
|
直接运行:
|
|||
|
|
```bash
|
|||
|
|
deploy-backend-streamer-fix.bat
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 方法B:手动部署
|
|||
|
|
```bash
|
|||
|
|
# 1. 停止服务
|
|||
|
|
ssh root@1.15.149.240 "cd /root/zhibo && docker-compose stop crmeb-admin"
|
|||
|
|
|
|||
|
|
# 2. 备份旧jar包(可选)
|
|||
|
|
ssh root@1.15.149.240 "cp /root/zhibo/crmeb-admin.jar /root/zhibo/crmeb-admin.jar.backup"
|
|||
|
|
|
|||
|
|
# 3. 上传新jar包
|
|||
|
|
scp Zhibo\zhibo-h\crmeb-admin\target\crmeb-admin.jar root@1.15.149.240:/root/zhibo/
|
|||
|
|
|
|||
|
|
# 4. 启动服务
|
|||
|
|
ssh root@1.15.149.240 "cd /root/zhibo && docker-compose up -d crmeb-admin"
|
|||
|
|
|
|||
|
|
# 5. 查看日志确认启动成功
|
|||
|
|
ssh root@1.15.149.240 "docker logs -f crmeb-admin"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
看到类似 "Started CrmebAdminApplication" 的日志说明启动成功,按Ctrl+C退出日志查看。
|
|||
|
|
|
|||
|
|
### 第4步:验证修复
|
|||
|
|
1. 等待30秒让服务完全启动
|
|||
|
|
2. 打开浏览器,访问后台管理页面
|
|||
|
|
3. 按 `Ctrl+Shift+Delete` 清除缓存
|
|||
|
|
4. 按 `Ctrl+F5` 强制刷新页面
|
|||
|
|
5. 进入"主播管理"页面
|
|||
|
|
6. 查看主播列表,确认以下数据正确显示:
|
|||
|
|
- 粉丝数(应该与APP端一致)
|
|||
|
|
- 直播间数
|
|||
|
|
- 被点赞数(应该与APP端一致)
|
|||
|
|
- 本月直播次数
|
|||
|
|
|
|||
|
|
## 预期结果
|
|||
|
|
|
|||
|
|
修复后,后台管理页面应该显示:
|
|||
|
|
|
|||
|
|
| 主播信息 | 主播等级 | 粉丝数 | 直播间数 | 被点赞数 | 本月直播 | 认证时间 | 状态 |
|
|||
|
|
|---------|---------|--------|---------|---------|---------|---------|------|
|
|||
|
|
| 主播A | 初级 | 5 | 2 | 150 | 1次 | 2025-01-01 | 正常 |
|
|||
|
|
| 主播B | 中级 | 10 | 3 | 300 | 2次 | 2025-01-02 | 正常 |
|
|||
|
|
|
|||
|
|
**注意:**
|
|||
|
|
- "被点赞数"列显示的是主播所有直播间的点赞数总和
|
|||
|
|
- 数据应该与APP端的"主播中心"页面显示的数据一致
|
|||
|
|
|
|||
|
|
## 如果还是显示0
|
|||
|
|
|
|||
|
|
### 检查1:确认服务已重启
|
|||
|
|
```bash
|
|||
|
|
ssh root@1.15.149.240 "docker ps | grep crmeb-admin"
|
|||
|
|
```
|
|||
|
|
应该看到容器正在运行,且启动时间是最近的。
|
|||
|
|
|
|||
|
|
### 检查2:查看服务日志
|
|||
|
|
```bash
|
|||
|
|
ssh root@1.15.149.240 "docker logs crmeb-admin | tail -100"
|
|||
|
|
```
|
|||
|
|
查看是否有错误信息。
|
|||
|
|
|
|||
|
|
### 检查3:测试API直接返回
|
|||
|
|
```bash
|
|||
|
|
# 需要先登录获取token,然后:
|
|||
|
|
curl -X GET "http://1.15.149.240:8080/api/admin/streamer/list?page=1&limit=10" \
|
|||
|
|
-H "Authorization: Bearer YOUR_TOKEN" \
|
|||
|
|
-H "Content-Type: application/json"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
查看返回的JSON中是否包含 `totalLikeCount` 字段。
|
|||
|
|
|
|||
|
|
### 检查4:确认前端已更新
|
|||
|
|
打开浏览器开发者工具(F12),查看Network标签:
|
|||
|
|
1. 刷新页面
|
|||
|
|
2. 找到 `/api/admin/streamer/list` 请求
|
|||
|
|
3. 查看Response,确认返回的数据中包含 `totalLikeCount` 字段
|
|||
|
|
|
|||
|
|
如果Response中有数据但页面不显示,说明是前端缓存问题,需要:
|
|||
|
|
1. 清除浏览器缓存
|
|||
|
|
2. 重新构建前端(如果前端也有修改)
|
|||
|
|
|
|||
|
|
## 前端重新构建(如果需要)
|
|||
|
|
|
|||
|
|
如果前端代码也有修改,需要重新构建前端:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd Zhibo\admin
|
|||
|
|
npm run build:prod
|
|||
|
|
|
|||
|
|
# 上传到服务器
|
|||
|
|
scp -r dist/* root@1.15.149.240:/root/zhibo/admin/
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 联系支持
|
|||
|
|
|
|||
|
|
如果按照以上步骤操作后问题仍未解决,请提供以下信息:
|
|||
|
|
1. 数据库查询结果(第1步)
|
|||
|
|
2. 后端服务日志
|
|||
|
|
3. 浏览器Network标签中的API响应
|
|||
|
|
4. 浏览器Console中的错误信息
|
|||
|
|
|
|||
|
|
## 相关文件
|
|||
|
|
- 详细修复指南:`后台主播统计数据修复指南.md`
|
|||
|
|
- 诊断SQL脚本:`diagnose_streamer_stats_detail.sql`
|
|||
|
|
- 部署脚本:`deploy-backend-streamer-fix.bat`
|
|||
|
|
- API测试脚本:`test_streamer_api.bat`
|