index.mock.ts 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. const delay = 1000
  2. const List: {
  3. username: string
  4. password: string
  5. role: string
  6. roleId: string
  7. permissions: string | string[]
  8. }[] = [
  9. {
  10. username: 'admin',
  11. password: 'admin',
  12. role: 'admin',
  13. roleId: '1',
  14. permissions: ['*.*.*']
  15. },
  16. {
  17. username: 'test',
  18. password: 'test',
  19. role: 'test',
  20. roleId: '2',
  21. permissions: ['example:dialog:create', 'example:dialog:delete']
  22. }
  23. ]
  24. export default [
  25. // 列表接口
  26. {
  27. url: '/mock/user/list',
  28. method: 'GET',
  29. body: ({ query }) => {
  30. const { username, pageIndex, pageSize } = query
  31. const mockList = List.filter((item) => {
  32. if (username && item.username.indexOf(username) < 0) return false
  33. return true
  34. })
  35. const pageList = mockList.filter(
  36. (_, index) => index < pageSize * pageIndex && index >= pageSize * (pageIndex - 1)
  37. )
  38. return {
  39. code: 0,
  40. data: {
  41. total: mockList.length,
  42. list: pageList
  43. }
  44. }
  45. }
  46. },
  47. // 登录接口
  48. {
  49. url: '/mock/user/login',
  50. method: 'POST',
  51. delay,
  52. body: ({ body }) => {
  53. const data = body
  54. let hasUser = false
  55. for (const user of List) {
  56. if (user.username === data.username && user.password === data.password) {
  57. hasUser = true
  58. return {
  59. code: 0,
  60. data: user
  61. }
  62. }
  63. }
  64. if (!hasUser) {
  65. return {
  66. code: 500,
  67. message: '账号或密码错误'
  68. }
  69. }
  70. }
  71. },
  72. // 退出接口
  73. {
  74. url: '/mock/user/loginOut',
  75. method: 'GET',
  76. delay,
  77. body: () => {
  78. return {
  79. code: 0,
  80. data: null
  81. }
  82. }
  83. }
  84. ]