feat(admin): 方案A—消息铃铛接真实待办聚合 + 清理空壳接口与空卡片

【消息铃铛(真实数据)】
- POST /api/message/list 改为待办聚合:待接单订单/待审核大神/待审核提现/待处理举报/待仲裁工单(复用 getDashboardTodos + 新增 pendingOrdersCount)
- POST /api/message/read 持久化已读:新表 admin_message_reads 记录"已读时的数量",待办数量增加会重新变未读
- 两个接口均加 requireAdmin(待办数量属运营数据,不再匿名可见)

【删除空壳/死接口(前端已无调用方)】
- /api/user/save-info、/api/chat/list、/api/user/my-team/list、/api/user/latest-activity、/api/user/my-project/list

【后台页面清理】
- 「用户与个人中心 → 管理员资料」移除 我的项目/最近动态/我的团队/站内通知 四张空卡(保留真实的管理员资料头部)
- 删除对应 4 个组件;api/user-center.ts 移除 queryMyProjectList/queryMyTeamList/queryLatestActivity/saveUserInfo;api/message.ts 移除 queryChatList

【验证】
- 新增 admin-todo-bell.spec.ts;更新 admin-demo-data-cleanup.spec.ts
- 全量 101 套件 / 690 用例全绿;冒烟 8/8(未登录50008、待办数量、已读、新增后重新未读)
- 后台 pnpm build 通过
这个提交包含在:
xcbyy
2026-10-20 15:52:04 +08:00
父节点 05815b4708
当前提交 f3ea26d161
共有 16 个文件被更改,包括 250 次插入 和 455 次删除

查看文件

@@ -45,7 +45,7 @@
<image class="tab-svg" :src="ICONS.bolt" mode="aspectFit" />
<text class="tab-t">即刻出发</text>
</view>
<text class="tab-d">付款后立即连麦开黑</text>
<text class="tab-d">付款后立即开黑履约</text>
</view>
<view
class="time-tab btn-active"

查看文件

@@ -547,11 +547,9 @@ const payOrder = async (id) => {
const contactExpert = (name) => {
uni.showActionSheet({
itemList: [`呼叫进入【${name}】专属开黑连麦`, `复制【${name}】陪玩开黑房间号`, '联系 7x24h 官方电竞客服'],
itemList: [`复制【${name}】陪玩开黑房间号`, '联系 7x24h 官方电竞客服'],
success: (res) => {
if (res.tapIndex === 0) {
uni.showToast({ title: `已呼叫大神【${name}】连麦`, icon: 'success' });
} else if (res.tapIndex === 1) {
uni.setClipboardData({
data: `PW-${Math.floor(100000 + Math.random() * 900000)}`,
success: () => {
@@ -559,7 +557,29 @@ const contactExpert = (name) => {
}
});
} else {
uni.showToast({ title: '正在连接 7x24h 官方客服', icon: 'none' });
uni.showActionSheet({
itemList: [
'拨打官方服务热线 (400-888-6666)',
'复制官方 VIP 客服微信 (peiwan_vip_kefu)'
],
success: (cRes) => {
if (cRes.tapIndex === 0) {
uni.makePhoneCall({
phoneNumber: '4008886666',
fail: () => {
uni.showToast({ title: '服务热线: 400-888-6666', icon: 'none' });
}
});
} else if (cRes.tapIndex === 1) {
uni.setClipboardData({
data: 'peiwan_vip_kefu',
success: () => {
uni.showToast({ title: '官方客服微信号已复制', icon: 'success' });
}
});
}
}
});
}
}
});