提交 | 用户 | age
2f6253 1 import { MockMethod } from 'vite-plugin-mock';
9e5e63 2 import { resultError, resultSuccess, getRequestToken, requestParams } from '../_util';
2f6253 3
9e5e63 4 export function createFakeUserList() {
2f6253 5   return [
6     {
7       userId: '1',
8       username: 'vben',
e5f8ce 9       realName: 'Vben Admin',
8dd8a5 10       avatar: '',
2f6253 11       desc: 'manager',
12       password: '123456',
13       token: 'fakeToken1',
0a3683 14       homePath: '/dashboard/analysis',
589409 15       roles: [
V 16         {
17           roleName: 'Super Admin',
18           value: 'super',
19         },
20       ],
2f6253 21     },
22     {
23       userId: '2',
24       username: 'test',
25       password: '123456',
26       realName: 'test user',
8dd8a5 27       avatar: '',
2f6253 28       desc: 'tester',
29       token: 'fakeToken2',
0a3683 30       homePath: '/dashboard/workbench',
589409 31       roles: [
V 32         {
33           roleName: 'Tester',
34           value: 'test',
35         },
36       ],
2f6253 37     },
38   ];
39 }
40
41 const fakeCodeList: any = {
42   '1': ['1000', '3000', '5000'],
43
44   '2': ['2000', '4000', '6000'],
45 };
46 export default [
47   // mock user login
48   {
ed422b 49     url: '/basic-api/login',
ff2b12 50     timeout: 200,
2f6253 51     method: 'post',
52     response: ({ body }) => {
53       const { username, password } = body;
54       const checkUser = createFakeUserList().find(
56a966 55         (item) => item.username === username && password === item.password,
2f6253 56       );
57       if (!checkUser) {
58         return resultError('Incorrect account or password!');
59       }
589409 60       const { userId, username: _username, token, realName, desc, roles } = checkUser;
2f6253 61       return resultSuccess({
589409 62         roles,
2f6253 63         userId,
64         username: _username,
65         token,
66         realName,
67         desc,
68       });
69     },
70   },
71   {
9e5e63 72     url: '/basic-api/getUserInfo',
2f6253 73     method: 'get',
9e5e63 74     response: (request: requestParams) => {
N 75       const token = getRequestToken(request);
76       if (!token) return resultError('Invalid token');
77       const checkUser = createFakeUserList().find((item) => item.token === token);
2f6253 78       if (!checkUser) {
79         return resultError('The corresponding user information was not obtained!');
80       }
81       return resultSuccess(checkUser);
82     },
83   },
84   {
9e5e63 85     url: '/basic-api/getPermCode',
2f6253 86     timeout: 200,
87     method: 'get',
9e5e63 88     response: (request: requestParams) => {
N 89       const token = getRequestToken(request);
90       if (!token) return resultError('Invalid token');
91       const checkUser = createFakeUserList().find((item) => item.token === token);
92       if (!checkUser) {
93         return resultError('Invalid token!');
2f6253 94       }
9e5e63 95       const codeList = fakeCodeList[checkUser.userId];
2f6253 96
97       return resultSuccess(codeList);
98     },
99   },
e5f378 100   {
101     url: '/basic-api/logout',
102     timeout: 200,
103     method: 'get',
104     response: (request: requestParams) => {
105       const token = getRequestToken(request);
106       if (!token) return resultError('Invalid token');
107       const checkUser = createFakeUserList().find((item) => item.token === token);
108       if (!checkUser) {
109         return resultError('Invalid token!');
110       }
111       return resultSuccess(undefined, { message: 'Token has been destroyed' });
112     },
113   },
136cbb 114   {
C 115     url: '/basic-api/testRetry',
116     statusCode: 405,
117     method: 'get',
118     response: () => {
119       return resultError('Error!');
120     },
121   },
2f6253 122 ] as MockMethod[];