chore(admin): 清理后台静态演示数据(我的团队/最新动态/通知中心返回空)
- /api/user/my-team/list 不再返回硬编码团队成员,改为空数组 - /api/user/latest-activity 不再返回硬编码动态,改为空数组 - /api/message/list 不再返回硬编码站内消息,改为空数组 - 新增回归护栏 admin-demo-data-cleanup.spec.ts(81 套件/617 用例全绿)
这个提交包含在:
@@ -453,43 +453,19 @@ app.all('/api/user/my-project/list', (_req: Request, res: Response) => {
|
||||
});
|
||||
});
|
||||
|
||||
// 后台个人中心:我的团队(真实团队表尚未建立,返回空数组,不再返回静态演示成员)
|
||||
app.all('/api/user/my-team/list', (_req: Request, res: Response) => {
|
||||
res.json({
|
||||
code: 20000,
|
||||
data: [
|
||||
{
|
||||
id: 1,
|
||||
avatar: 'data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="50" fill="%23165DFF"/><text x="50" y="62" font-size="36" text-anchor="middle" fill="white" font-family="sans-serif">OP</text></svg>',
|
||||
name: '同城活动运营组',
|
||||
peopleNumber: 8
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
avatar: 'data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="50" fill="%23F53F3F"/><text x="50" y="62" font-size="36" text-anchor="middle" fill="white" font-family="sans-serif">FN</text></svg>',
|
||||
name: '财务与结算中心',
|
||||
peopleNumber: 4
|
||||
}
|
||||
]
|
||||
data: []
|
||||
});
|
||||
});
|
||||
|
||||
// 后台个人中心:最新动态(暂无审计动态数据源,返回空数组,不再返回静态演示内容)
|
||||
app.all('/api/user/latest-activity', (_req: Request, res: Response) => {
|
||||
res.json({
|
||||
code: 20000,
|
||||
data: [
|
||||
{
|
||||
id: 1,
|
||||
title: '完成了苏苏学姐的微信商户打款审核',
|
||||
description: '提现单号 TX20260928001,金额 ¥1250.00,已打款至微信商户零钱。',
|
||||
avatar: 'data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="50" fill="%2300B42A"/><text x="50" y="62" font-size="36" text-anchor="middle" fill="white" font-family="sans-serif">CW</text></svg>'
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
title: '处理了工体纯KTV争议仲裁单',
|
||||
description: '对涉事大神迟到提前离场进行举证判定,款项已全额退款用户。',
|
||||
avatar: 'data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="50" fill="%23FF7D00"/><text x="50" y="62" font-size="36" text-anchor="middle" fill="white" font-family="sans-serif">ZC</text></svg>'
|
||||
}
|
||||
]
|
||||
data: []
|
||||
});
|
||||
});
|
||||
|
||||
@@ -612,29 +588,11 @@ app.get('/api/message/subscribe-templates', async (_req: Request, res: Response)
|
||||
}
|
||||
});
|
||||
|
||||
// 通知中心列表(暂无真实站内消息数据源,返回空数组,不再返回静态演示消息)
|
||||
app.all('/api/message/list', (_req: Request, res: Response) => {
|
||||
res.json({
|
||||
code: 20000,
|
||||
data: [
|
||||
{
|
||||
id: 1,
|
||||
type: 'notice',
|
||||
title: '系统通知',
|
||||
subTitle: 'MySQL 数据库就绪',
|
||||
avatar: '',
|
||||
content: '生产级 MySQL 数据库与 10 张核心业务表已完成线上平滑就绪。',
|
||||
time: '刚刚',
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
type: 'todo',
|
||||
title: '待办预警',
|
||||
subTitle: '大神入驻待审核',
|
||||
avatar: '',
|
||||
content: '新注册大神可可奶芙、夜风沉醉提交了入驻资质申请,请及时审核。',
|
||||
time: '10分钟前',
|
||||
}
|
||||
]
|
||||
data: []
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
// 已读取AGENTS.md
|
||||
import * as fs from 'fs';
|
||||
import * as path from 'path';
|
||||
|
||||
/**
|
||||
* 第六十五批回归闸门:清理后台静态演示数据
|
||||
*/
|
||||
describe('第六十五批后台演示数据清理闸门', () => {
|
||||
const rootDir = path.resolve(__dirname, '../../');
|
||||
const indexCode = fs.readFileSync(path.join(rootDir, 'server/src/index.ts'), 'utf-8');
|
||||
|
||||
it('不再返回硬编码团队/动态/通知演示数据', () => {
|
||||
expect(indexCode).not.toContain('同城活动运营组');
|
||||
expect(indexCode).not.toContain('财务与结算中心');
|
||||
expect(indexCode).not.toContain('完成了苏苏学姐的微信商户打款审核');
|
||||
expect(indexCode).not.toContain('处理了工体纯KTV争议仲裁单');
|
||||
expect(indexCode).not.toContain('可可奶芙、夜风沉醉');
|
||||
expect(indexCode).not.toContain('MySQL 数据库就绪');
|
||||
});
|
||||
|
||||
it('相关接口返回空数组(由前端展示空态)', () => {
|
||||
for (const marker of [
|
||||
"app.all('/api/user/my-team/list'",
|
||||
"app.all('/api/user/latest-activity'",
|
||||
"app.all('/api/message/list'",
|
||||
]) {
|
||||
const start = indexCode.indexOf(marker);
|
||||
expect(start).toBeGreaterThan(-1);
|
||||
const block = indexCode.slice(start, start + 220);
|
||||
expect(block).toContain('data: []');
|
||||
}
|
||||
});
|
||||
});
|
||||
在新工单中引用
屏蔽一个用户