import Mock from 'mockjs'; import moment from 'moment'; import _ from 'lodash'; const defaultDateFormat = 'YYYY-MM-DD'; const defaultTimeFormat = 'HH:mm:ss'; const defaultDateTimeFormat = `${defaultDateFormat} ${defaultTimeFormat}`; const Random = Mock.Random; export function getTasks() { const states = ['状态1', '状态2', '状态3', '状态4', '状态5', '状态5']; const start = Random.natural(0, 100); const end = Random.natural(start + 5, start + 20); const progresses = Random.range(start, end).map(idx => ({ id: idx, name: `流程${idx}`, })); const tasks = _.flatMap(progresses, (progress) => { const s = Random.natural(0, 100); const e = Random.natural(start + 5, start + 20); return Random.range(s, e).map((idx) => { const dateOffset = { days: Random.natural(0, 60), hours: Random.natural(0, 23), minutes: Random.natural(0, 59), seconds: Random.natural(0, 59), milliseconds: Random.natural(0, 999), }; const deadLineOffset = { days: Random.natural(0, 180), hours: Random.natural(0, 23), minutes: Random.natural(0, 59), seconds: Random.natural(0, 59), milliseconds: Random.natural(0, 999), }; const date = moment().subtract(dateOffset); const deadline = date.add(deadLineOffset); return { pId: progress.id, pName: progress.name, nId: idx, nName: `任务${idx}`, state: Random.pick(states), date: date.format(defaultDateTimeFormat), deadline: deadline.format(defaultDateTimeFormat), }; }); }); return Random.shuffle(tasks); }