89 lines
2.7 KiB
TypeScript
89 lines
2.7 KiB
TypeScript
|
|
import Mock from 'mockjs';
|
||
|
|
import setupMock, { successResponseWrap } from '@/mocks/setup';
|
||
|
|
|
||
|
|
const haveReadIds: number[] = [];
|
||
|
|
const getMessageList = () => {
|
||
|
|
return [
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
type: 'message',
|
||
|
|
title: '\u90d1\u6666\u6708',
|
||
|
|
subTitle: '\u7684\u79c1\u4fe1',
|
||
|
|
avatar:
|
||
|
|
'//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/8361eeb82904210b4f55fab888fe8416.png~tplv-uwbnlip3yd-webp.webp',
|
||
|
|
content: '\u5ba1\u6279\u8bf7\u6c42\u5df2\u53d1\u9001\uff0c\u8bf7\u67e5\u6536',
|
||
|
|
time: '\u4eca\u5929 12:30:01',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
type: 'message',
|
||
|
|
title: '\u5b81\u6ce2',
|
||
|
|
subTitle: '\u7684\u56de\u590d',
|
||
|
|
avatar:
|
||
|
|
'//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/3ee5f13fb09879ecb5185e440cef6eb9.png~tplv-uwbnlip3yd-webp.webp',
|
||
|
|
content: '\u6b64\u5904 bug \u5df2\u7ecf\u4fee\u590d',
|
||
|
|
time: '\u4eca\u5929 12:30:01',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
type: 'message',
|
||
|
|
title: '\u5b81\u6ce2',
|
||
|
|
subTitle: '\u7684\u56de\u590d',
|
||
|
|
avatar:
|
||
|
|
'//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/3ee5f13fb09879ecb5185e440cef6eb9.png~tplv-uwbnlip3yd-webp.webp',
|
||
|
|
content: '\u6b64\u5904 bug \u5df2\u7ecf\u4fee\u590d',
|
||
|
|
time: '\u4eca\u5929 12:20:01',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 4,
|
||
|
|
type: 'notice',
|
||
|
|
title: '\u7eed\u8d39\u901a\u77e5',
|
||
|
|
subTitle: '',
|
||
|
|
avatar: '',
|
||
|
|
content:
|
||
|
|
'\u60a8\u7684\u4ea7\u54c1\u4f7f\u7528\u671f\u9650\u5373\u5c06\u622a\u6b62\uff0c\u5982\u9700\u7ee7\u7eed\u4f7f\u7528\u4ea7\u54c1\u8bf7\u524d\u5f80\u8d2d\u4e70',
|
||
|
|
time: '\u4eca\u5929 12:20:01',
|
||
|
|
messageType: 3,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
type: 'notice',
|
||
|
|
title: '\u89c4\u5219\u5f00\u901a\u6210\u529f',
|
||
|
|
subTitle: '',
|
||
|
|
avatar: '',
|
||
|
|
content:
|
||
|
|
'\u5185\u5bb9\u5c4f\u853d\u89c4\u5219\u4e8e 2021-12-01 \u5f00\u901a\u6210\u529f\u5e76\u751f\u6548',
|
||
|
|
time: '\u4eca\u5929 12:20:01',
|
||
|
|
messageType: 1,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 6,
|
||
|
|
type: 'todo',
|
||
|
|
title: '\u8d28\u68c0\u961f\u5217\u53d8\u66f4',
|
||
|
|
subTitle: '',
|
||
|
|
avatar: '',
|
||
|
|
content:
|
||
|
|
'\u5185\u5bb9\u8d28\u68c0\u961f\u5217\u4e8e 2021-12-01 19:50:23 \u8fdb\u884c\u53d8\u66f4\uff0c\u8bf7\u91cd\u65b0\u63d0\u4ea4',
|
||
|
|
time: '\u4eca\u5929 12:20:01',
|
||
|
|
messageType: 0,
|
||
|
|
},
|
||
|
|
].map((item) => ({
|
||
|
|
...item,
|
||
|
|
status: haveReadIds.indexOf(item.id) === -1 ? 0 : 1,
|
||
|
|
}));
|
||
|
|
};
|
||
|
|
|
||
|
|
setupMock({
|
||
|
|
setup: () => {
|
||
|
|
Mock.mock(/\/api\/message\/list/, () => {
|
||
|
|
return successResponseWrap(getMessageList());
|
||
|
|
});
|
||
|
|
|
||
|
|
Mock.mock(/\/api\/message\/read/, (params: { body: string }) => {
|
||
|
|
const { ids } = JSON.parse(params.body);
|
||
|
|
haveReadIds.push(...(ids || []));
|
||
|
|
return successResponseWrap(true);
|
||
|
|
});
|
||
|
|
},
|
||
|
|
});
|