112 lines
2.5 KiB
TypeScript
112 lines
2.5 KiB
TypeScript
import { MockMethod, Recordable } from 'vite-plugin-mock'
|
|
import { resultPageSuccess, resultSuccess } from './_util'
|
|
import * as Mock from 'mockjs'
|
|
|
|
export default [
|
|
{
|
|
url: '/api/v1/roles',
|
|
method: 'get',
|
|
response: () => {
|
|
return resultSuccess([
|
|
{
|
|
id: 1,
|
|
name: '超级管理员',
|
|
description: '超级管理员',
|
|
createdAt: 1682329920,
|
|
updatedAt: 1682329920
|
|
},
|
|
{
|
|
id: 2,
|
|
name: '操作工',
|
|
description: '',
|
|
createdAt: 1682329920,
|
|
updatedAt: 1682329920
|
|
}
|
|
])
|
|
}
|
|
},
|
|
{
|
|
url: /\/api\/v1\/roles\/(.*)\/users/,
|
|
method: 'get',
|
|
response: (opt: { url: Recordable; query: Recordable }) => {
|
|
const limit = Number(opt.query['limit'])
|
|
const list = []
|
|
for (let i = 0; i < limit; i++) {
|
|
const record = Mock.mock({
|
|
'id|+1': 1000001,
|
|
'userId|+1': '@/name',
|
|
'name|+1': '@/cname',
|
|
mobile: /1[0-9]{10}/,
|
|
'gender|1-2': 0,
|
|
avatar: "@image('100x100', '@/color', '#FFF', 'png', '')",
|
|
position: '操作工',
|
|
bizMail: '@/email',
|
|
mainDepartment: 2,
|
|
roles: [
|
|
{
|
|
id: 1,
|
|
name: '管理员'
|
|
}
|
|
],
|
|
departments: [
|
|
{
|
|
id: 1,
|
|
name: '研发'
|
|
}
|
|
],
|
|
lastLoginAt: 1682172226,
|
|
lastLoginIp: '[::1]:6536',
|
|
disabledAt: 0,
|
|
createdAt: 1680884142,
|
|
updatedAt: 1682172226
|
|
})
|
|
list.push(record)
|
|
}
|
|
|
|
return resultPageSuccess({
|
|
page: Number(opt.query['page']),
|
|
limit: Number(opt.query['limit']),
|
|
total: 32,
|
|
data: list
|
|
})
|
|
}
|
|
},
|
|
{
|
|
url: /\/api\/v1\/roles\/\d+\/permissions/,
|
|
method: 'get',
|
|
response: () => {
|
|
return resultPageSuccess({
|
|
data: [1, 2, 101, 201, 202]
|
|
})
|
|
}
|
|
},
|
|
{
|
|
url: /\/api\/v1\/roles\/\d+\/permissions/,
|
|
method: 'put',
|
|
response: () => {
|
|
return resultPageSuccess(null)
|
|
}
|
|
},
|
|
{
|
|
url: /\/api\/v1\/roles\/\d+/,
|
|
method: 'delete',
|
|
response: () => {
|
|
return resultSuccess(null)
|
|
}
|
|
},
|
|
{
|
|
url: '/api/v1/roles',
|
|
method: 'post',
|
|
response: () => {
|
|
return resultSuccess(null)
|
|
}
|
|
},
|
|
{
|
|
url: /\/api\/v1\/roles\/\d+\/users/,
|
|
method: 'post',
|
|
response: () => {
|
|
return resultSuccess(null)
|
|
}
|
|
}
|
|
] as MockMethod[]
|