manage.js 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252
  1. import Mock from 'mockjs2'
  2. import { builder, getQueryParameters } from '../util'
  3. const totalCount = 5701
  4. const serverList = (options) => {
  5. const parameters = getQueryParameters(options)
  6. const result = []
  7. const pageNo = parseInt(parameters.pageNo)
  8. const pageSize = parseInt(parameters.pageSize)
  9. const totalPage = Math.ceil(totalCount / pageSize)
  10. const key = (pageNo - 1) * pageSize
  11. const next = (pageNo >= totalPage ? (totalCount % pageSize) : pageSize) + 1
  12. for (let i = 1; i < next; i++) {
  13. const tmpKey = key + i
  14. result.push({
  15. key: tmpKey,
  16. id: tmpKey,
  17. no: 'No ' + tmpKey,
  18. description: '这是一段描述',
  19. callNo: Mock.mock('@integer(1, 999)'),
  20. status: Mock.mock('@integer(0, 3)'),
  21. updatedAt: Mock.mock('@datetime'),
  22. editable: false
  23. })
  24. }
  25. return builder({
  26. pageSize: pageSize,
  27. pageNo: pageNo,
  28. totalCount: totalCount,
  29. totalPage: totalPage,
  30. data: result
  31. })
  32. }
  33. const projects = () => {
  34. return builder({
  35. 'data': [{
  36. id: 1,
  37. cover: 'https://gw.alipayobjects.com/zos/rmsportal/WdGqmHpayyMjiEhcKoVE.png',
  38. title: 'Alipay',
  39. description: '那是一种内在的东西, 他们到达不了,也无法触及的',
  40. status: 1,
  41. updatedAt: '2018-07-26 00:00:00'
  42. },
  43. {
  44. id: 2,
  45. cover: 'https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png',
  46. title: 'Angular',
  47. description: '希望是一个好东西,也许是最好的,好东西是不会消亡的',
  48. status: 1,
  49. updatedAt: '2018-07-26 00:00:00'
  50. },
  51. {
  52. id: 3,
  53. cover: 'https://gw.alipayobjects.com/zos/rmsportal/dURIMkkrRFpPgTuzkwnB.png',
  54. title: 'Ant Design',
  55. description: '城镇中有那么多的酒馆,她却偏偏走进了我的酒馆',
  56. status: 1,
  57. updatedAt: '2018-07-26 00:00:00'
  58. },
  59. {
  60. id: 4,
  61. cover: 'https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png',
  62. title: 'Ant Design Pro',
  63. description: '那时候我只会想自己想要什么,从不想自己拥有什么',
  64. status: 1,
  65. updatedAt: '2018-07-26 00:00:00'
  66. },
  67. {
  68. id: 5,
  69. cover: 'https://gw.alipayobjects.com/zos/rmsportal/siCrBXXhmvTQGWPNLBow.png',
  70. title: 'Bootstrap',
  71. description: '凛冬将至',
  72. status: 1,
  73. updatedAt: '2018-07-26 00:00:00'
  74. },
  75. {
  76. id: 6,
  77. cover: 'https://gw.alipayobjects.com/zos/rmsportal/ComBAopevLwENQdKWiIn.png',
  78. title: 'Vue',
  79. description: '生命就像一盒巧克力,结果往往出人意料',
  80. status: 1,
  81. updatedAt: '2018-07-26 00:00:00'
  82. }
  83. ],
  84. 'pageSize': 10,
  85. 'pageNo': 0,
  86. 'totalPage': 6,
  87. 'totalCount': 57
  88. })
  89. }
  90. const activity = () => {
  91. return builder([{
  92. id: 1,
  93. user: {
  94. nickname: '@name',
  95. avatar: 'https://gw.alipayobjects.com/zos/rmsportal/BiazfanxmamNRoxxVxka.png'
  96. },
  97. project: {
  98. name: '白鹭酱油开发组',
  99. action: '更新',
  100. event: '番组计划'
  101. },
  102. time: '2018-08-23 14:47:00'
  103. },
  104. {
  105. id: 1,
  106. user: {
  107. nickname: '蓝莓酱',
  108. avatar: 'https://gw.alipayobjects.com/zos/rmsportal/jZUIxmJycoymBprLOUbT.png'
  109. },
  110. project: {
  111. name: '白鹭酱油开发组',
  112. action: '更新',
  113. event: '番组计划'
  114. },
  115. time: '2018-08-23 09:35:37'
  116. },
  117. {
  118. id: 1,
  119. user: {
  120. nickname: '@name',
  121. avatar: '@image(64x64)'
  122. },
  123. project: {
  124. name: '白鹭酱油开发组',
  125. action: '创建',
  126. event: '番组计划'
  127. },
  128. time: '2017-05-27 00:00:00'
  129. },
  130. {
  131. id: 1,
  132. user: {
  133. nickname: '曲丽丽',
  134. avatar: '@image(64x64)'
  135. },
  136. project: {
  137. name: '高逼格设计天团',
  138. action: '更新',
  139. event: '六月迭代'
  140. },
  141. time: '2018-08-23 14:47:00'
  142. },
  143. {
  144. id: 1,
  145. user: {
  146. nickname: '@name',
  147. avatar: '@image(64x64)'
  148. },
  149. project: {
  150. name: '高逼格设计天团',
  151. action: 'created',
  152. event: '六月迭代'
  153. },
  154. time: '2018-08-23 14:47:00'
  155. },
  156. {
  157. id: 1,
  158. user: {
  159. nickname: '曲丽丽',
  160. avatar: 'https://gw.alipayobjects.com/zos/rmsportal/BiazfanxmamNRoxxVxka.png'
  161. },
  162. project: {
  163. name: '高逼格设计天团',
  164. action: 'created',
  165. event: '六月迭代'
  166. },
  167. time: '2018-08-23 14:47:00'
  168. }
  169. ])
  170. }
  171. const teams = () => {
  172. return builder([{
  173. id: 1,
  174. name: '科学搬砖组',
  175. avatar: 'https://gw.alipayobjects.com/zos/rmsportal/BiazfanxmamNRoxxVxka.png'
  176. },
  177. {
  178. id: 2,
  179. name: '程序员日常',
  180. avatar: 'https://gw.alipayobjects.com/zos/rmsportal/cnrhVkzwxjPwAaCfPbdc.png'
  181. },
  182. {
  183. id: 1,
  184. name: '设计天团',
  185. avatar: 'https://gw.alipayobjects.com/zos/rmsportal/gaOngJwsRYRaVAuXXcmB.png'
  186. },
  187. {
  188. id: 1,
  189. name: '中二少女团',
  190. avatar: 'https://gw.alipayobjects.com/zos/rmsportal/ubnKSIfAJTxIgXOKlciN.png'
  191. },
  192. {
  193. id: 1,
  194. name: '骗你学计算机',
  195. avatar: 'https://gw.alipayobjects.com/zos/rmsportal/WhxKECPNujWoWEFNdnJE.png'
  196. }
  197. ])
  198. }
  199. const radar = () => {
  200. return builder([{
  201. item: '引用',
  202. '个人': 70,
  203. '团队': 30,
  204. '部门': 40
  205. },
  206. {
  207. item: '口碑',
  208. '个人': 60,
  209. '团队': 70,
  210. '部门': 40
  211. },
  212. {
  213. item: '产量',
  214. '个人': 50,
  215. '团队': 60,
  216. '部门': 40
  217. },
  218. {
  219. item: '贡献',
  220. '个人': 40,
  221. '团队': 50,
  222. '部门': 40
  223. },
  224. {
  225. item: '热度',
  226. '个人': 60,
  227. '团队': 70,
  228. '部门': 40
  229. },
  230. {
  231. item: '引用',
  232. '个人': 70,
  233. '团队': 50,
  234. '部门': 40
  235. }
  236. ])
  237. }
  238. Mock.mock(/\/service/, 'get', serverList)
  239. Mock.mock(/\/list\/search\/projects/, 'get', projects)
  240. Mock.mock(/\/workplace\/activity/, 'get', activity)
  241. Mock.mock(/\/workplace\/teams/, 'get', teams)
  242. Mock.mock(/\/workplace\/radar/, 'get', radar)