blob: 01fc0aed4d99f91e8818b4cbea02b26f503edf2d [file] [log] [blame]
huibing.xie1f1606f2018-08-20 15:46:55 +08001import Mock from 'mockjs'
2import { param2Obj } from '@/utils'
3
4const clsList = Mock.mock({
5 'list|26': [{
6 'id': '@increment',
7 'nj|1': ['6', '7', '8'],
8 'njmc|1': ['2017', '2018', '2019'],
9 'yx|1-26': 26,
10 'yxmc': '@cword(6, 15)',
11 'zy|27-375': 375,
12 'zymc': '@cword(3, 5)',
13 'bjdm': '@word(5)',
14 'bjmc': '@cword(6, 10)',
15 'sfky|1': ['1', '0'],
16 'sfkymc|1': ['可用', '不可用']
17 }]
18}).list
19
20export default{
21 getList: config => {
22 const { yx, zy, bjmc, nj, bjdm, sfky, pageIndex = 1, pageSize = 20 } = param2Obj(config.url)
23 const mockList = clsList.filter(item => {
24 if (yx && item.yx + '' !== yx + '') return false
25 if (zy && item.zy !== zy) return false
26 if (bjmc && item.bjmc !== bjmc) return false
27 if (nj && item.nj !== nj) return false
28 if (bjdm && item.bjdm !== bjdm) return false
29 if (sfky && item.sfky !== sfky) return false
30 return true
31 })
32
33 const pageList = mockList.filter((item, index) => index < pageSize * pageIndex && index >= pageSize * (pageIndex - 1))
34 return {
35 items: pageList,
36 recordCount: mockList.length,
37 code: 200
38 }
39 },
40 getAllList: config => {
41 return {
42 items: clsList,
43 code: 200
44 }
45 },
46 getItem: config => {
47 const { id } = param2Obj(config.url)
48 const mockList = clsList.filter(item => item.id + '' === id + '')
49 return {
50 data: mockList.length > 0 ? mockList[0] : null,
51 code: 200
52 }
53 },
54 createData: config => {
55 const cls = JSON.parse(config.body)
56 if (!cls.id) {
57 cls.id = '' + parseInt(Math.random() * 100) + 1024 // mock a id
58 clsList.unshift(cls)
59 } else {
60 for (let i = 0; i < clsList.length; i++) {
61 if (clsList[i].id + '' === cls.id + '') {
62 clsList.splice(i, 1, cls)
63 break
64 }
65 }
66 }
67 return {
68 item: cls,
69 code: 200
70 }
71 },
72 deleteData: config => {
73 const cls = JSON.parse(config.body)
74 let index = -1
75 for (let i = 0; i < clsList.length; i++) {
76 if (clsList[i].id + '' === cls.id + '') {
77 index = i
78 break
79 }
80 }
81 if (index > -1) {
82 clsList.splice(index, 1)
83 }
84 return {
85 code: 200
86 }
87 }
88}