You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
md5file/routes/container.js

115 lines
3.4 KiB

const router = require('koa-router')()
// 全局路由
router.prefix('/container')
router.get('/', async (ctx, next) => {
const arg = ctx.request.query
if (!Object.keys(arg).includes('menuId')) {
ctx.body = {
data: {},
state: false,
message: '缺少MenuId'
}
return
}
const [rows, fields] = await global.SQL.execute('SELECT * FROM `container` WHERE `isdelete` = 0 AND `menuId` = ?', [arg.menuId]);
ctx.body = {
data: rows,
state: true,
message: '获取内容成功'
}
})
router.get('/getPage', async (ctx, next) => {
const arg = ctx.request.query
if (!Object.keys(arg).includes('route')) {
ctx.body = {
data: {},
state: false,
message: '缺少Route'
}
return
}
const [oldRows, oldFields] = await global.SQL.execute('SELECT * FROM `menu` WHERE `isdelete` = 0 AND `route` = ?', [arg.route]);
console.log(oldRows)
if(oldRows.length == 0){
ctx.body = {
data: {},
state: false,
message: '未找到页面'
}
return
}
const [rows, fields] = await global.SQL.execute('SELECT * FROM `container` WHERE `isdelete` = 0 AND `menuId` = ?', [oldRows[0].id]);
ctx.body = {
data: rows,
state: true,
message: '获取内容成功'
}
})
router.delete('/', async (ctx, next) => {
const arg = ctx.request.query
console.log(arg)
if (!Object.keys(arg).includes('id')) {
ctx.body = {
data: {},
state: false,
message: '缺少id'
}
return
}
const [rows, fields] = await global.SQL.execute('UPDATE container SET isdelete = 1 WHERE `id` = ?', [arg.id]);
ctx.body = {
data: rows,
state: true,
message: '删除内容成功'
}
})
router.put('/', async (ctx, next) => {
const arg = ctx.request.body
const field = ['id', 'name', 'rank', 'config', 'body']
const noField = []
field.map(item => {
if (!Object.keys(arg).includes(item)) noField.push(item)
})
if (noField.length != 0) {
ctx.body = {
data: {},
state: false,
message: '缺少' + noField
}
return
}
const [rows, fields] = await global.SQL.execute('UPDATE container SET name = ? , rank = ? , config = ? , body = ? WHERE id = ?', [arg.name, arg.rank, arg.config, arg.body, Number(arg.id)]);
ctx.body = ctx.body = {
data: rows,
state: true,
message: '更新成功'
}
})
router.post('/createContainer', async (ctx, next) => {
const arg = ctx.request.body
const field = ['menuId', 'name', 'rank', 'config', 'body']
const noField = []
field.map(item => {
if (!Object.keys(arg).includes(item)) noField.push(item)
})
if (noField.length != 0) {
ctx.body = {
data: {},
state: false,
message: '缺少' + noField
}
return
}
const createTime = new Date().getTime()
const [rows, fields] = await global.SQL.execute('INSERT INTO container (menuid, name, rank, config, body, createTime) VALUES (?, ?, ?, ?, ?, ?)', [arg.menuId, arg.name, arg.rank, arg.config, arg.body, createTime]);
ctx.body ={
data: rows,
state: true,
message: '创建成功'
}
})
module.exports = router