user.ts 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. import { MockMethod } from 'vite-plugin-mock';
  2. import { resultError, resultSuccess, getRequestToken, requestParams } from '../_util';
  3. export function createFakeUserList() {
  4. return [
  5. {
  6. userId: '1',
  7. username: 'admin',
  8. realName: 'admin Admin',
  9. avatar: 'https://q1.qlogo.cn/g?b=qq&nk=190848757&s=640',
  10. desc: 'manager',
  11. password: '123456',
  12. token: 'fakeToken1',
  13. homePath: '/dashboard/analysis',
  14. roles: [
  15. {
  16. roleName: 'Super Admin',
  17. value: 'super',
  18. },
  19. ],
  20. },
  21. {
  22. userId: '2',
  23. username: 'test',
  24. password: '123456',
  25. realName: 'test user',
  26. avatar: 'https://q1.qlogo.cn/g?b=qq&nk=339449197&s=640',
  27. desc: 'tester',
  28. token: 'fakeToken2',
  29. homePath: '/dashboard/workbench',
  30. roles: [
  31. {
  32. roleName: 'Tester',
  33. value: 'test',
  34. },
  35. ],
  36. },
  37. {
  38. userId: '3',
  39. username: '用户17324327132',
  40. password: '123456',
  41. realName: 'test user',
  42. avatar: 'https://q1.qlogo.cn/g?b=qq&nk=339449197&s=640',
  43. desc: 'tester',
  44. token: 'fakeToken2',
  45. homePath: '/dashboard/workbench',
  46. roles: [
  47. {
  48. roleName: 'Tester',
  49. value: 'test',
  50. },
  51. ],
  52. brandList: null,
  53. canShow: null,
  54. createTime: 1604981038000,
  55. createUserId: 1,
  56. deptExpirationDate: 1727625600000,
  57. deptId: 193,
  58. deptManagerPhoneNum: null,
  59. deptName: 'hangtest',
  60. email: null,
  61. fdkkPassword: null,
  62. fdkkUser: '15915816041',
  63. isPlatformStreamer: false,
  64. mobile: '17324327132',
  65. parentDeptId: 1,
  66. parentDeptName: null,
  67. roleId: null,
  68. roleIdList: null,
  69. roleList: null,
  70. roleName: null,
  71. status: 1,
  72. },
  73. ];
  74. }
  75. const fakeCodeList: any = {
  76. '1': ['1000', '3000', '5000'],
  77. '2': ['2000', '4000', '6000'],
  78. };
  79. export default [
  80. // mock user login
  81. {
  82. url: '/zfb-api/zfb/mock/login',
  83. timeout: 200,
  84. method: 'post',
  85. response: ({ body }) => {
  86. const { username, password } = body;
  87. const checkUser = createFakeUserList().find(
  88. (item) => item.username === username && password === item.password,
  89. );
  90. if (!checkUser) {
  91. return resultError('Incorrect account or password!');
  92. }
  93. const { userId, username: _username, token, realName, desc, roles } = checkUser;
  94. return resultSuccess({
  95. roles,
  96. userId,
  97. username: _username,
  98. token,
  99. realName,
  100. desc,
  101. });
  102. },
  103. },
  104. {
  105. url: '/zfb-api/zfb/getUserInfo',
  106. method: 'get',
  107. response: (request: requestParams) => {
  108. const token = getRequestToken(request);
  109. if (!token) return resultError('Invalid token');
  110. const checkUser = createFakeUserList().find((item) => item.userId === '3');
  111. if (!checkUser) {
  112. return resultError('The corresponding user information was not obtained!');
  113. }
  114. return resultSuccess(checkUser);
  115. },
  116. },
  117. {
  118. url: '/zfb-api/zfb/getPermCode',
  119. timeout: 200,
  120. method: 'get',
  121. response: (request: requestParams) => {
  122. const token = getRequestToken(request);
  123. if (!token) return resultError('Invalid token');
  124. const checkUser = createFakeUserList().find((item) => item.token === token);
  125. if (!checkUser) {
  126. return resultError('Invalid token!');
  127. }
  128. const codeList = fakeCodeList[checkUser.userId];
  129. return resultSuccess(codeList);
  130. },
  131. },
  132. {
  133. url: '/zfb-api/zfb/logout',
  134. timeout: 200,
  135. method: 'get',
  136. response: (request: requestParams) => {
  137. const token = getRequestToken(request);
  138. if (!token) return resultError('Invalid token');
  139. const checkUser = createFakeUserList().find((item) => item.token === token);
  140. if (!checkUser) {
  141. return resultError('Invalid token!');
  142. }
  143. return resultSuccess(undefined, { message: 'Token has been destroyed' });
  144. },
  145. },
  146. ] as MockMethod[];