index.ts 4.8 KB

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