index.mock.ts 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
  1. import config from '@/config/axios/config'
  2. import { toAnyString } from '@/utils'
  3. import { faker } from '@faker-js/faker'
  4. const { code } = config
  5. const departmentList: any = []
  6. const citys = ['厦门总公司', '北京分公司', '上海分公司', '福州分公司', '深圳分公司', '杭州分公司']
  7. for (let i = 0; i < 5; i++) {
  8. departmentList.push({
  9. // 部门名称
  10. departmentName: citys[i],
  11. id: toAnyString(),
  12. createTime: faker.date.anytime(),
  13. status: faker.number.int({ min: 0, max: 1 }),
  14. // 备注
  15. remark: faker.lorem.sentence(),
  16. children: [
  17. {
  18. // 部门名称
  19. departmentName: '研发部',
  20. createTime: faker.date.anytime(),
  21. // 状态
  22. status: faker.number.int({ min: 0, max: 1 }),
  23. id: toAnyString(),
  24. remark: faker.lorem.sentence()
  25. },
  26. {
  27. // 部门名称
  28. departmentName: '产品部',
  29. createTime: faker.date.anytime(),
  30. // 状态
  31. status: faker.number.int({ min: 0, max: 1 }),
  32. id: toAnyString(),
  33. remark: faker.lorem.sentence()
  34. },
  35. {
  36. // 部门名称
  37. departmentName: '运营部',
  38. createTime: faker.date.anytime(),
  39. // 状态
  40. status: faker.number.int({ min: 0, max: 1 }),
  41. id: toAnyString(),
  42. remark: faker.lorem.sentence()
  43. },
  44. {
  45. // 部门名称
  46. departmentName: '市场部',
  47. createTime: faker.date.anytime(),
  48. // 状态
  49. status: faker.number.int({ min: 0, max: 1 }),
  50. id: toAnyString(),
  51. remark: faker.lorem.sentence()
  52. },
  53. {
  54. // 部门名称
  55. departmentName: '销售部',
  56. createTime: faker.date.anytime(),
  57. // 状态
  58. status: faker.number.int({ min: 0, max: 1 }),
  59. id: toAnyString(),
  60. remark: faker.lorem.sentence()
  61. },
  62. {
  63. // 部门名称
  64. departmentName: '客服部',
  65. createTime: faker.date.anytime(),
  66. // 状态
  67. status: faker.number.int({ min: 0, max: 1 }),
  68. id: toAnyString(),
  69. remark: faker.lorem.sentence()
  70. }
  71. ]
  72. })
  73. }
  74. export default [
  75. // 列表接口
  76. {
  77. url: '/mock/department/list',
  78. method: 'GET',
  79. body: () => {
  80. return {
  81. code: code,
  82. data: {
  83. list: departmentList
  84. }
  85. }
  86. }
  87. },
  88. {
  89. url: '/mock/department/table/list',
  90. method: 'GET',
  91. body: () => {
  92. return {
  93. code: code,
  94. data: {
  95. list: departmentList,
  96. total: 5
  97. }
  98. }
  99. }
  100. },
  101. {
  102. url: '/mock/department/users',
  103. method: 'GET',
  104. delay: 1000,
  105. body: ({ query }) => {
  106. const { pageSize } = query
  107. // 根据pageSize来创建数据
  108. const mockList: any = []
  109. for (let i = 0; i < pageSize; i++) {
  110. mockList.push({
  111. // 用户名
  112. username: faker.person.firstName(),
  113. // 账号
  114. account: faker.person.lastName(),
  115. // 邮箱
  116. email: faker.internet.email(),
  117. // 创建时间
  118. createTime: faker.date.anytime(),
  119. // 用户id
  120. id: toAnyString()
  121. })
  122. }
  123. return {
  124. code: code,
  125. data: {
  126. total: 100,
  127. list: mockList
  128. }
  129. }
  130. }
  131. },
  132. // 保存接口
  133. {
  134. url: '/mock/department/user/save',
  135. method: 'POST',
  136. delay: 1000,
  137. body: () => {
  138. return {
  139. code: code,
  140. data: 'success'
  141. }
  142. }
  143. },
  144. // 删除接口
  145. {
  146. url: '/mock/department/user/delete',
  147. method: 'POST',
  148. body: ({ body }) => {
  149. const ids = body.ids
  150. if (!ids) {
  151. return {
  152. code: 500,
  153. message: '请选择需要删除的数据'
  154. }
  155. } else {
  156. return {
  157. code: code,
  158. data: 'success'
  159. }
  160. }
  161. }
  162. },
  163. // 保存接口
  164. {
  165. url: '/mock/department/save',
  166. method: 'POST',
  167. delay: 1000,
  168. body: () => {
  169. return {
  170. code: code,
  171. data: 'success'
  172. }
  173. }
  174. },
  175. // 删除接口
  176. {
  177. url: '/mock/department/delete',
  178. method: 'POST',
  179. body: ({ body }) => {
  180. const ids = body.ids
  181. if (!ids) {
  182. return {
  183. code: 500,
  184. message: '请选择需要删除的数据'
  185. }
  186. } else {
  187. return {
  188. code: code,
  189. data: 'success'
  190. }
  191. }
  192. }
  193. }
  194. ]