index.ts 4.5 KB

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