import Mock from 'mockjs'; function param2Obj(url) { const search = url.split('?')[1] if (!search) { return {} } return JSON.parse('{"' + decodeURIComponent(search).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g, '":"') + '"}') } let List = [] const count = 60 for (let i = 0; i < count; i++) { List.push(Mock.mock({ id: Mock.Random.guid(), RuleName: Mock.Random.csentence(5), opentime: Mock.Random.date('HH:mm'), closetime: Mock.Random.date('HH:mm'), // IsVali: Mock.Random.integer(0, 1), OpenDays: "1,2,3,4,5,6,7", OpenDay: [1, 2, 3, 4, 5, 6, 7], OpenDaysDesc: '星期日,星期二,星期三,星期一', OpenWeeks: Mock.Random.range(1, 20).toString(), remarks: Mock.Random.cparagraph(1), cleantime: Mock.mock('@boolean') })) } export default { /** * 获取列表 * 要带参数 RuleName, pageNum, pageSize; RuleName, pageNum,pageSize有默认值。 * @param name, pageNum, pageSize * @return {{code: number, count: number, data: *[]}} */ getUserList: config => { const { RuleName, pageNum = 1, pageSize = 10 } = param2Obj(config.url) const mockList = List.filter(user => { if (RuleName && user.RuleName.indexOf(RuleName) === -1) return false return true }) const pageList = mockList.filter((item, index) => index < pageSize * pageNum && index >= pageSize * (pageNum - 1)) return { Total: mockList.length, Message: { Code: 200, Inform: "成功" }, Data: pageList } }, gettreeedit: config => { //tree详情 const { id } = param2Obj(config.url) if (!id) { return { code: -999, message: '参数不正确' } } else { let obj = List.find(u => u.id == id) return { Data: { id: obj.id, str: '14,6,7,9,11,16,12,13' }, Message: { Code: 200, Inform: "成功" }, } } }, getedit: config => { //详情 const { id } = param2Obj(config.url) if (!id) { return { code: -999, message: '参数不正确' } } else { let obj = List.find(u => u.id == id) return { Data: obj, Message: { Code: 200, Inform: "成功" }, } } }, /** * 增加用户 * @param name, addr, age, birth, sex * @return {{code: number, data: {message: string}}} */ createUser: config => { const { RuleName, // 规则名称 OpenDays, // 一周开放日(英文逗号分隔:1-7,0为不限制) OpenWeeks, // 开放周次(英文逗号分隔:1,3,7,0为不限制) opentime, closetime, cleantime, Notes, // 备注说明 } = param2Obj(config.url) // List.push({ // id: Mock.Random.guid(), // RuleName: RulesName, // ontime: opentime, // closetime: closetime, // OpenDay: OpenDays, // OpenDaysDesc: '星期日,星期二,星期三,星期一', // OpenWeeks: OpenWeeks, // remarks: Notes, // cleantime: cleantime == '2' ? false : true // }) let sum = { id: Mock.Random.guid(), RuleName: RuleName, opentime: opentime, closetime: closetime, OpenDays: OpenDays, OpenDay: OpenDays, OpenDaysDesc: '星期日,星期二,星期三,星期一', OpenWeeks: OpenWeeks, remarks: Notes, cleantime: cleantime == '2' ? false : true }; List.unshift(sum) return { Message: { Code: 200, Inform: "成功" }, } }, /** * 删除用户 * @param id * @return {*} */ deleteUser: config => { const { id } = param2Obj(config.url) if (!id) { return { code: -999, message: '参数不正确' } } else { List = List.filter(u => u.id !== id) return { Message: { Code: 200, Inform: "成功" }, } } }, /** * 批量删除 * @param config * @return {{code: number, data: {message: string}}} */ batchremove: config => { let { ids } = param2Obj(config.url) ids = ids.split(',') List = List.filter(u => !ids.includes(u.id)) return { code: 20000, data: { message: '批量删除成功' } } }, /** * 修改用户 * @param id, name, addr, age, birth, sex * @return {{code: number, data: {message: string}}} */ updateUser: config => { const { id, name, addr, age, birth, sex } = param2Obj(config.url) const sex_num = parseInt(sex) List.some(u => { if (u.id === id) { u.name = name u.addr = addr u.age = age u.birth = birth u.sex = sex_num return true } }) return { Message: { Code: 200, Inform: "成功" }, } } }