1
0

one.ts 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import { MockMethod } from 'vite-plugin-mock'
  2. import Mock from 'mockjs'
  3. const mockData = Array.from({ length: 56 }, () => {
  4. return Mock.mock({
  5. id: '@id',
  6. status: '@pick(0,1)',
  7. areaCode: '@city(true) @areacode',
  8. code: '@integer(1000, 9000)',
  9. funcType: '@types',
  10. operator: '@cname',
  11. createTime: '@datetime',
  12. lastModified: '@datetime'
  13. })
  14. })
  15. const mockMethodOne: MockMethod[] = [
  16. {
  17. url: '/mock/api/one',
  18. method: 'get',
  19. timeout: 1000,
  20. response: ({ query }: { query: any }) => {
  21. const { code, areaCode, pageIndex, pageSize } = query
  22. let filterData = mockData
  23. if (areaCode) {
  24. filterData = mockData.filter((item) => {
  25. return item.areaCode == areaCode
  26. })
  27. }
  28. if (code) {
  29. filterData = mockData.filter((item) => item.code == code)
  30. }
  31. const _pageSize = Number(pageSize) ?? 20
  32. const total = filterData.length
  33. const pages = Math.ceil(total / _pageSize)
  34. const offset = (pageIndex - 1) * _pageSize
  35. const list = filterData.slice(offset, offset + _pageSize)
  36. return {
  37. code: '0',
  38. data: {
  39. pageNum: Number(pageIndex),
  40. pageSize: Number(pageSize) ?? 20,
  41. size: list.length,
  42. pages: pages,
  43. total: total,
  44. list: list
  45. }
  46. }
  47. }
  48. }
  49. ]
  50. export default mockMethodOne