blob: fe9b9776c54c3beab4076d5666d43285db778bd2 [file] [log] [blame]
huibing.xie1f1606f2018-08-20 15:46:55 +08001import Mock from 'mockjs'
2import { param2Obj } from '@/utils'
3
4const majorList = Mock.mock({
5 'list|350': [{
6 'id': '@increment',
7 'zydm': '000@id',
8 'zymc': '@cword(6, 15)',
9 'sfky|1': ['可用', '不可用'],
10 'sfkycode|1': ['1', '0'],
11 'ssyx|1': ['教育学院', '经管学院', '人文学院', '数学学院', '计算机学院', '电子学院', '电气学院', '生命科学院'],
12 'ssyxid|1': ['1', '2', '3', '4', '5', '6', '7', '8'],
13 'sszygb|1': ['计算机', '哲学']
14 }]
15}).list
16
17export default{
18 getList: config => {
19 const { zydm, zymc, sfky, ssyx, pageIndex = 1, pageSize = 20 } = param2Obj(config.url)
20 const mockList = majorList.filter(item => {
21 if (zydm && item.zydm !== zydm) return false
22 if (zymc && item.zymc !== zymc) return false
23 if (sfky && item.sfkycode !== sfky) return false
24 if (ssyx && item.ssyxid !== ssyx) return false
25 return true
26 })
27
28 const pageList = mockList.filter((item, index) => index < pageSize * pageIndex && index >= pageSize * (pageIndex - 1))
29 return {
30 items: pageList,
31 recordCount: mockList.length,
32 code: 200
33 }
34 },
35 getZyListByYx: config => {
36 const { yx } = param2Obj(config.url)
37 const mockList = majorList.filter(item => item.ssyxid === yx)
38
39 return {
40 list: mockList,
41 code: 200
42 }
43 },
44 getItem: config => {
45 const { id } = param2Obj(config.url)
46 const mockList = majorList.filter(item => item.id + '' === id + '')
47 return {
48 data: mockList.length > 0 ? mockList[0] : null,
49 code: 200
50 }
51 },
52 createData: config => {
53 const major = JSON.parse(config.body)
54 if (!major.id) {
55 major.id = '' + parseInt(Math.random() * 100) + 1024 // mock a id
56 majorList.unshift(major)
57 } else {
58 for (let i = 0; i < majorList.length; i++) {
59 if (majorList[i].id + '' === major.id + '') {
60 majorList.splice(i, 1, major)
61 break
62 }
63 }
64 }
65 return {
66 item: major,
67 code: 200
68 }
69 },
70 deleteData: config => {
71 const major = JSON.parse(config.body)
72 let index = -1
73 for (let i = 0; i < majorList.length; i++) {
74 if (majorList[i].id + '' === major.id + '') {
75 index = i
76 break
77 }
78 }
79 if (index > -1) {
80 majorList.splice(index, 1)
81 }
82 return {
83 code: 200
84 }
85 }
86}