@ -43,12 +43,50 @@ router.put('/updateMenu', async (ctx, next) => {
return
}
const [ rows , fields ] = await global . SQL . execute ( 'UPDATE menu SET name = ? , rank = ? , remarks = ? , route = ?, icon = ? WHERE id = ?' , [ arg . name , arg . rank , arg . remarks , arg . route , arg . icon , Number ( arg . id ) ] ) ;
ctx . body = ctx . body = {
ctx . body = {
data : rows ,
state : true ,
message : '更新成功'
}
} )
router . put ( '/changeMenuItemRank' , async ( ctx , next ) => {
const arg = ctx . request . body ;
const field = [ 'rankArr' ]
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
}
arg . rankArr = JSON . parse ( arg . rankArr )
const a = arg . rankArr . map ( item => {
return ` WHEN ${ item . id } THEN ${ item . rank } `
} ) . join ( ' ' )
const b = arg . rankArr . map ( item => item . id )
const SQL = ` UPDATE menu SET rank = CASE id ${ a } END WHERE id IN ( ${ b } ) `
// console.log(SQL)
try {
const [ rows , fields ] = await global . SQL . execute ( SQL ) ;
ctx . body = {
data : rows ,
state : true ,
message : '更新成功'
}
} catch ( e ) {
console . error ( e )
}
} )
router . post ( '/createMneuItem' , async ( ctx , next ) => {
const arg = ctx . request . body ;
const field = [ 'name' , 'route' , 'rank' , 'remarks' , 'father' , 'icon' ]