初始化项目文件
This commit is contained in:
103
api_iris/service/admin/menus.go
Normal file
103
api_iris/service/admin/menus.go
Normal file
@ -0,0 +1,103 @@
|
||||
package admin
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"github.com/kataras/iris/v12"
|
||||
"github.com/sirupsen/logrus"
|
||||
"main/database"
|
||||
"main/model"
|
||||
"main/utils"
|
||||
)
|
||||
|
||||
func getMenu(ctx iris.Context) {
|
||||
err := ctx.JSON(utils.FormatRes(iris.StatusOK, "", utils.MenuList))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func addMenu(ctx iris.Context) {
|
||||
var param model.Menus
|
||||
err := ctx.ReadJSON(¶m)
|
||||
if utils.ErrHandle(ctx, err) || utils.DataIsNil(param) {
|
||||
return
|
||||
}
|
||||
if (len(param.MenuId) != 3 && len(param.MenuId) != 5) || param.MenuId[0:3] == "000" {
|
||||
utils.ErrHandle(ctx, errors.New("菜单ID格式错误"))
|
||||
return
|
||||
}
|
||||
if checkMenuExist(param) {
|
||||
utils.ErrHandle(ctx, errors.New("菜单ID已存在"))
|
||||
return
|
||||
}
|
||||
db := database.GetInstance().GetMysqlDb()
|
||||
if err1 := db.Create(¶m).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
err = ctx.JSON(utils.FormatRes(iris.StatusOK, "", "success"))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
utils.UpdateMenuList()
|
||||
}
|
||||
|
||||
func updateMenu(ctx iris.Context) {
|
||||
var param model.Menus
|
||||
err := ctx.ReadJSON(¶m)
|
||||
if utils.ErrHandle(ctx, err) || utils.DataIsNil(param) {
|
||||
return
|
||||
}
|
||||
if (len(param.MenuId) != 3 && len(param.MenuId) != 5) || param.MenuId[0:3] == "000" {
|
||||
utils.ErrHandle(ctx, errors.New("菜单ID格式错误"))
|
||||
return
|
||||
}
|
||||
if !checkMenuIDExist(param) || checkMenuExist(param) {
|
||||
utils.ErrHandle(ctx, errors.New("菜单ID已存在"))
|
||||
return
|
||||
}
|
||||
db := database.GetInstance().GetMysqlDb()
|
||||
if err1 := db.Save(¶m).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
err = ctx.JSON(utils.FormatRes(iris.StatusOK, "", "success"))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
utils.UpdateMenuList()
|
||||
}
|
||||
|
||||
func deleteMenu(ctx iris.Context) {
|
||||
menuId := ctx.URLParam("menu_id")
|
||||
db := database.GetInstance().GetMysqlDb()
|
||||
utils.UpdateMenuList()
|
||||
for _, menu := range utils.MenuList {
|
||||
if menu.MenuId == menuId || menu.MenuId[0:3] == menuId {
|
||||
if err := db.Delete(&menu).Error; err != nil {
|
||||
logrus.Errorln("sql执行失败:", err)
|
||||
}
|
||||
}
|
||||
}
|
||||
err := ctx.JSON(utils.FormatRes(iris.StatusOK, "", "success"))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
utils.UpdateMenuList()
|
||||
}
|
||||
|
||||
func checkMenuExist(menu model.Menus) bool {
|
||||
for _, m := range utils.MenuList {
|
||||
if menu.MenuId == m.MenuId && menu.ID != m.ID {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func checkMenuIDExist(menu model.Menus) bool {
|
||||
for _, m := range utils.MenuList {
|
||||
if menu.ID == m.ID {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
Reference in New Issue
Block a user