blob: 01fc0aed4d99f91e8818b4cbea02b26f503edf2d [file] [log] [blame]
import Mock from 'mockjs'
import { param2Obj } from '@/utils'
const clsList = Mock.mock({
'list|26': [{
'id': '@increment',
'nj|1': ['6', '7', '8'],
'njmc|1': ['2017', '2018', '2019'],
'yx|1-26': 26,
'yxmc': '@cword(6, 15)',
'zy|27-375': 375,
'zymc': '@cword(3, 5)',
'bjdm': '@word(5)',
'bjmc': '@cword(6, 10)',
'sfky|1': ['1', '0'],
'sfkymc|1': ['可用', '不可用']
}]
}).list
export default{
getList: config => {
const { yx, zy, bjmc, nj, bjdm, sfky, pageIndex = 1, pageSize = 20 } = param2Obj(config.url)
const mockList = clsList.filter(item => {
if (yx && item.yx + '' !== yx + '') return false
if (zy && item.zy !== zy) return false
if (bjmc && item.bjmc !== bjmc) return false
if (nj && item.nj !== nj) return false
if (bjdm && item.bjdm !== bjdm) return false
if (sfky && item.sfky !== sfky) return false
return true
})
const pageList = mockList.filter((item, index) => index < pageSize * pageIndex && index >= pageSize * (pageIndex - 1))
return {
items: pageList,
recordCount: mockList.length,
code: 200
}
},
getAllList: config => {
return {
items: clsList,
code: 200
}
},
getItem: config => {
const { id } = param2Obj(config.url)
const mockList = clsList.filter(item => item.id + '' === id + '')
return {
data: mockList.length > 0 ? mockList[0] : null,
code: 200
}
},
createData: config => {
const cls = JSON.parse(config.body)
if (!cls.id) {
cls.id = '' + parseInt(Math.random() * 100) + 1024 // mock a id
clsList.unshift(cls)
} else {
for (let i = 0; i < clsList.length; i++) {
if (clsList[i].id + '' === cls.id + '') {
clsList.splice(i, 1, cls)
break
}
}
}
return {
item: cls,
code: 200
}
},
deleteData: config => {
const cls = JSON.parse(config.body)
let index = -1
for (let i = 0; i < clsList.length; i++) {
if (clsList[i].id + '' === cls.id + '') {
index = i
break
}
}
if (index > -1) {
clsList.splice(index, 1)
}
return {
code: 200
}
}
}