mock.js 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592
  1. // 引入mockjs
  2. const Mock = require('mockjs');
  3. // 获取 mock.Random 对象
  4. const Random = Mock.Random;
  5. // mock一组数据
  6. const produceNewsData = function () {
  7. let articles = [];
  8. for (let i = 0; i < 5; i++) {
  9. let newArticleObject = {
  10. title: Random.csentence(4, 5), // Random.csentence( min, max )
  11. };
  12. articles.push(newArticleObject)
  13. }
  14. return {
  15. rs: articles,
  16. code: 0,
  17. memo: ''
  18. }
  19. };
  20. // 菜单
  21. const menu = function (options) {
  22. let clmid = options.body;
  23. let navs = [{
  24. "clmid": "1",
  25. "spclmid": "0",
  26. "ordno": "0",
  27. "c_level": "2",
  28. "clmcode": "front_index",
  29. "clmname": "首页",
  30. "clmurl": "/main",
  31. "show": "1",
  32. "clicon": "home_icon"
  33. }, {
  34. "clmid": "2",
  35. "spclmid": "0",
  36. "ordno": "1",
  37. "c_level": "1",
  38. "clmcode": "index",
  39. "clmname": "常用页面",
  40. "clmurl": "",
  41. "prname": "",
  42. "en": "1",
  43. "show": "1",
  44. "grouplist": "2,5",
  45. "memo": "",
  46. "clicon": "front_icon",
  47. "childs": [{
  48. "clmid": "57",
  49. "spclmid": "0",
  50. "ordno": "0",
  51. "c_level": "2",
  52. "clmcode": "front_index",
  53. "clmname": "404",
  54. "clmurl": "/recharge",
  55. "prname": null,
  56. "en": "1",
  57. "show": "1",
  58. "grouplist": "2,5",
  59. "memo": null,
  60. "clicon": "home_icon"
  61. },
  62. {
  63. "clmid": "57",
  64. "spclmid": "0",
  65. "ordno": "0",
  66. "c_level": "2",
  67. "clmcode": "front_index",
  68. "clmname": "表格",
  69. "clmurl": "/table",
  70. "prname": null,
  71. "en": "1",
  72. "show": "1",
  73. "grouplist": "2,5",
  74. "memo": null,
  75. "clicon": "home_icon"
  76. },{
  77. "clmid": "57",
  78. "spclmid": "0",
  79. "ordno": "0",
  80. "c_level": "2",
  81. "clmcode": "pwd",
  82. "clmname": "密码修改",
  83. "clmurl": "/pwd",
  84. "prname": null,
  85. "en": "1",
  86. "show": "1",
  87. "grouplist": "2,5",
  88. "memo": null,
  89. "clicon": "home_icon"
  90. },
  91. {
  92. "clmid": "57",
  93. "spclmid": "0",
  94. "ordno": "0",
  95. "c_level": "2",
  96. "clmcode": "front_index",
  97. "clmname": "pricing",
  98. "clmurl": "/pricing",
  99. "prname": null,
  100. "en": "1",
  101. "show": "1",
  102. "grouplist": "2,5",
  103. "memo": null,
  104. "clicon": "home_icon"
  105. },
  106. {
  107. "clmid": "57",
  108. "spclmid": "0",
  109. "ordno": "0",
  110. "c_level": "2",
  111. "clmcode": "front_index",
  112. "clmname": "form",
  113. "clmurl": "/form",
  114. "prname": null,
  115. "en": "1",
  116. "show": "1",
  117. "grouplist": "2,5",
  118. "memo": null,
  119. "clicon": "home_icon"
  120. },
  121. {
  122. "clmid": "57",
  123. "spclmid": "0",
  124. "ordno": "0",
  125. "c_level": "2",
  126. "clmcode": "front_index",
  127. "clmname": "Courses",
  128. "clmurl": "/Courses",
  129. "prname": null,
  130. "en": "1",
  131. "show": "1",
  132. "grouplist": "2,5",
  133. "memo": null,
  134. "clicon": "home_icon"
  135. },
  136. {
  137. "clmid": "57",
  138. "spclmid": "0",
  139. "ordno": "0",
  140. "c_level": "2",
  141. "clmcode": "front_index",
  142. "clmname": "message",
  143. "clmurl": "/message",
  144. "prname": null,
  145. "en": "1",
  146. "show": "1",
  147. "grouplist": "2,5",
  148. "memo": null,
  149. "clicon": "home_icon"
  150. },
  151. {
  152. "clmid": "57",
  153. "spclmid": "0",
  154. "ordno": "0",
  155. "c_level": "2",
  156. "clmcode": "front_index",
  157. "clmname": "用户管理",
  158. "clmurl": "/user",
  159. "prname": null,
  160. "en": "1",
  161. "show": "1",
  162. "grouplist": "2,5",
  163. "memo": null,
  164. "clicon": "home_icon"
  165. },]
  166. }, {
  167. "clmid": "3",
  168. "spclmid": "0",
  169. "ordno": "1",
  170. "c_level": "1",
  171. "clmcode": "index",
  172. "clmname": "常用组件",
  173. "clmurl": "",
  174. "prname": "",
  175. "en": "1",
  176. "show": "1",
  177. "grouplist": "2,5",
  178. "memo": "",
  179. "clicon": "front_icon",
  180. "childs": [{
  181. "clmid": "57",
  182. "spclmid": "0",
  183. "ordno": "0",
  184. "c_level": "2",
  185. "clmcode": "front_index",
  186. "clmname": "typography",
  187. "clmurl": "/typography",
  188. "prname": null,
  189. "en": "1",
  190. "show": "1",
  191. "grouplist": "2,5",
  192. "memo": null,
  193. "clicon": "home_icon"
  194. },
  195. {
  196. "clmid": "57",
  197. "spclmid": "0",
  198. "ordno": "0",
  199. "c_level": "2",
  200. "clmcode": "front_index",
  201. "clmname": "按钮",
  202. "clmurl": "/button",
  203. "prname": null,
  204. "en": "1",
  205. "show": "1",
  206. "grouplist": "2,5",
  207. "memo": null,
  208. "clicon": "home_icon"
  209. },
  210. {
  211. "clmid": "57",
  212. "spclmid": "0",
  213. "ordno": "0",
  214. "c_level": "2",
  215. "clmcode": "front_index",
  216. "clmname": "badges",
  217. "clmurl": "/badges",
  218. "prname": null,
  219. "en": "1",
  220. "show": "1",
  221. "grouplist": "2,5",
  222. "memo": null,
  223. "clicon": "home_icon"
  224. },
  225. {
  226. "clmid": "57",
  227. "spclmid": "0",
  228. "ordno": "0",
  229. "c_level": "2",
  230. "clmcode": "front_index",
  231. "clmname": "dropdown",
  232. "clmurl": "/dropdown",
  233. "prname": null,
  234. "en": "1",
  235. "show": "1",
  236. "grouplist": "2,5",
  237. "memo": null,
  238. "clicon": "home_icon"
  239. },
  240. {
  241. "clmid": "57",
  242. "spclmid": "0",
  243. "ordno": "0",
  244. "c_level": "2",
  245. "clmcode": "front_index",
  246. "clmname": "page",
  247. "clmurl": "/page",
  248. "prname": null,
  249. "en": "1",
  250. "show": "1",
  251. "grouplist": "2,5",
  252. "memo": null,
  253. "clicon": "home_icon"
  254. },]
  255. }, {
  256. "clmid": "4",
  257. "spclmid": "0",
  258. "ordno": "1",
  259. "c_level": "1",
  260. "clmcode": "index",
  261. "clmname": "图表",
  262. "clmurl": "",
  263. "prname": "",
  264. "en": "1",
  265. "show": "1",
  266. "grouplist": "2,5",
  267. "memo": "",
  268. "clicon": "front_icon",
  269. "childs": [{
  270. "clmid": "57",
  271. "spclmid": "0",
  272. "ordno": "0",
  273. "c_level": "2",
  274. "clmcode": "front_index",
  275. "clmname": "柱状图",
  276. "clmurl": "/chart_bar",
  277. "prname": null,
  278. "en": "1",
  279. "show": "1",
  280. "grouplist": "2,5",
  281. "memo": null,
  282. "clicon": "home_icon"
  283. },
  284. {
  285. "clmid": "57",
  286. "spclmid": "0",
  287. "ordno": "0",
  288. "c_level": "2",
  289. "clmcode": "front_index",
  290. "clmname": "线图",
  291. "clmurl": "/chart_line",
  292. "prname": null,
  293. "en": "1",
  294. "show": "1",
  295. "grouplist": "2,5",
  296. "memo": null,
  297. "clicon": "home_icon"
  298. },
  299. {
  300. "clmid": "57",
  301. "spclmid": "0",
  302. "ordno": "0",
  303. "c_level": "2",
  304. "clmcode": "front_index",
  305. "clmname": "环形图",
  306. "clmurl": "/chart_dona",
  307. "prname": null,
  308. "en": "1",
  309. "show": "1",
  310. "grouplist": "2,5",
  311. "memo": null,
  312. "clicon": "home_icon"
  313. },]
  314. },
  315. {
  316. "clmid": "66",
  317. "spclmid": "0",
  318. "ordno": "19",
  319. "c_level": "1",
  320. "clmcode": "logout",
  321. "clmname": "\u9000\u51fa\u7cfb\u7edf",
  322. "clmurl": "/login",
  323. "prname": "",
  324. "en": "1",
  325. "show": "1",
  326. "grouplist": "2,3,4,5",
  327. "memo": "",
  328. "clicon": "logout_icon"
  329. }];
  330. return {
  331. rs: navs,
  332. code: 0,
  333. memo: ''
  334. }
  335. }
  336. ;
  337. // 登陆
  338. const UserLogin = function (options) {
  339. return {
  340. rs: '登陆成功',
  341. code: 0,
  342. memo: ''
  343. }
  344. };
  345. const mainInfo = function () {
  346. let data = [
  347. {
  348. User: '24,420',
  349. Clients: '96,420',
  350. Projects: '11,370',
  351. Old: '4,320',
  352. }
  353. ];
  354. return {
  355. rs: data,
  356. code: 0,
  357. memo: ''
  358. }
  359. };
  360. const mainChart = function () {
  361. let data = [
  362. {
  363. labels: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月'],
  364. firstDate: [
  365. {
  366. label: '用户数',
  367. backgroundColor: 'rgba(32,163,222,0.4)',
  368. data: [40, 39, 10, 40, 39, 30, 40, 40, 139, 51,]
  369. },
  370. {
  371. label: '洗车数',
  372. backgroundColor: 'rgba(17,146,204,0.65)',
  373. data: [32, 39, 10, 44, 39, 80, 40, 140, 22, 30,]
  374. },
  375. {
  376. label: '收入',
  377. backgroundColor: 'rgba(16,132,184,7)',
  378. data: [55, 32, 33, 40, 39, 62, 40, 20, 39, 44,]
  379. }
  380. ]
  381. }
  382. ];
  383. return {
  384. rs: data,
  385. code: 0,
  386. memo: ''
  387. }
  388. };
  389. const profitQuery = function () {
  390. let data = [
  391. {
  392. time: '2019 年 8 月',
  393. money: '21,235',
  394. tables: [
  395. {id: 2345, name: '精品洗车', amount: '62,000.00'},
  396. {id: 2134, name: '滤芯更换', amount: '23,140.00'},
  397. {id: 4131, name: '轮胎调整', amount: '300.00'},
  398. {id: 5532, name: '贴膜养护', amount: '11,332.00'},
  399. ],
  400. }
  401. ];
  402. return {
  403. rs: data,
  404. code: 0,
  405. memo: ''
  406. }
  407. };
  408. const contactQuery = function () {
  409. let data = [
  410. {
  411. cons: [
  412. {id: 2234, name: '高瑟', mail: 'gose@gmail.com', depart: '前台'},
  413. {id: 3235, name: '巴伐', mail: 'bufa@gmail.com', depart: '洗车员工'},
  414. {id: 2222, name: '金桔', mail: 'gode@gmail.com', depart: '经理'},
  415. ]
  416. }
  417. ];
  418. return {
  419. rs: data,
  420. code: 0,
  421. memo: ''
  422. }
  423. };
  424. const activeQuery = function () {
  425. let data = [
  426. {
  427. actives: [
  428. {id: 1234, past_time: '5', active: '高瑟营销1张50次洗车卡', level: '1'},
  429. {id: 1234, past_time: '15', active: '高瑟修改了登陆密码', level: '2'},
  430. {id: 1234, past_time: '30', active: '金桔营销10张50次洗车卡', level: '3'},
  431. {id: 1234, past_time: '55', active: '约翰登陆系统', level: '0'},
  432. ]
  433. }
  434. ];
  435. return {
  436. rs: data,
  437. code: 0,
  438. memo: ''
  439. }
  440. };
  441. const pricingQuery = function () {
  442. let data = [
  443. {
  444. level: '入门级',
  445. price: '19',
  446. cc: 1,
  447. stand_cc: 1,
  448. gift: 0.25,
  449. },
  450. {
  451. level: '企业级',
  452. price: '119',
  453. cc: 5,
  454. stand_cc: 3,
  455. gift: 0.25,
  456. },
  457. {
  458. level: '专家级',
  459. price: '499',
  460. cc: 30,
  461. stand_cc: 15,
  462. gift: 2.5,
  463. }
  464. ];
  465. return {
  466. rs: data,
  467. code: 0,
  468. memo: ''
  469. }
  470. };
  471. const warehouseQuery = function () {
  472. let single = {
  473. whid: 1,
  474. goodsid: 2,
  475. hdid: '1.0.0',
  476. cpuid: '1.0.0',
  477. did: '1.0.0',
  478. maketime: '2019-09-19',
  479. whtime: '2019-09-19',
  480. versionmemo: '升级了界面效果,提高了反应速度',
  481. equipnum: 3,
  482. operator: '尼古拉斯·赵四',
  483. };
  484. let data = [];
  485. for(var i = 0; i < 10; i++) {
  486. data.push(single);
  487. }
  488. return {
  489. rs: data,
  490. total: 100,
  491. code: 0,
  492. memo: ''
  493. }
  494. };
  495. const softquery = function () {
  496. let single = '';
  497. let data = [];
  498. for(var i = 0; i < 100; i++) {
  499. single = {
  500. whid: 1,
  501. goodsid: 2,
  502. hdid: '1.0.0',
  503. cpuid: '1.0.0',
  504. pcbaversion: Random.natural(10),
  505. did: '1.0.0',
  506. maketime: '2019-09-19',
  507. whtime: '2019-09-19',
  508. versionmemo: '升级了界面效果,提高了反应速度',
  509. equipnum: 3,
  510. operator: '尼古拉斯·赵四',
  511. };
  512. data.push(single);
  513. }
  514. return {
  515. rs: data,
  516. total: 100,
  517. code: 0,
  518. memo: ''
  519. }
  520. };
  521. const warehouseAdd = function () {
  522. let data = [
  523. ];
  524. return {
  525. rs: data,
  526. code: 0,
  527. memo: ''
  528. }
  529. };
  530. const opt_dept = function () {
  531. let data = [
  532. {
  533. "0":"1",
  534. "1":"|-- 设备管理系统",
  535. "2":"设备管理系统",
  536. "deptid":"1",
  537. "deptlevel":"1",
  538. "deptname":"|-- 设备管理系统"
  539. },
  540. {
  541. "0":"2",
  542. "1":" |-- xman",
  543. "2":"xman",
  544. "deptid":"2",
  545. "deptlevel":"2",
  546. "deptname":" |-- xman"
  547. },
  548. {
  549. "0":"3",
  550. "1":"  |-- Roma",
  551. "2":"Roma",
  552. "deptid":"3",
  553. "deptlevel":"3",
  554. "deptname":"  |-- Roma"
  555. }
  556. ];
  557. return {
  558. rs: data,
  559. code: 0,
  560. memo: ''
  561. }
  562. };
  563. Mock.mock('/news/index', 'post', produceNewsData);//例子
  564. Mock.mock('/?ctl=ajax&mod=index&act=menu', 'post', menu);//菜单
  565. Mock.mock('/?ctl=ajax&mod=index&act=UserLogin', 'post', UserLogin);//登陆
  566. Mock.mock('/?ctl=ajax&mod=index&act=mainInfo', 'post', mainInfo);//首页基本数据
  567. Mock.mock('/?ctl=ajax&mod=index&act=mainChart', 'post', mainChart);//首页大图数据
  568. Mock.mock('/?ctl=ajax&mod=index&act=profitQuery', 'post', profitQuery);//首页盈利数据
  569. Mock.mock('/?ctl=ajax&mod=index&act=contactQuery', 'post', contactQuery);//首页联系人数据
  570. Mock.mock('/?ctl=ajax&mod=index&act=activeQuery', 'post', activeQuery);//首页最新活动数据
  571. Mock.mock('/?ctl=ajax&mod=index&act=pricingQuery', 'post', pricingQuery);//pricing数据
  572. Mock.mock('/api/?ctl=ajax&mod=warehouse&act=warehouseQuery', 'post', warehouseQuery);// 入库查询
  573. Mock.mock('/api/?ctl=ajax&mod=warehouse&act=warehouseAdd', 'post', warehouseQuery);// 入库查询
  574. Mock.mock('/api/?ctl=ajax&mod=warehouse&act=warehouseEdit', 'post', warehouseQuery);// 入库查询
  575. Mock.mock('/api/?ctl=ajax&mod=verctrl&act=softquery', 'post', softquery);// 入库查询
  576. Mock.mock('/api/?ctl=ajax&mod=index&act=opt_dept', 'post', opt_dept);// 入库查询