新增修改菜单

This commit is contained in:
2023-06-27 13:38:52 +08:00
parent f414704688
commit 195942a4f5
5 changed files with 67 additions and 14 deletions
+20 -7
View File
@@ -124,7 +124,7 @@ func (r *MenuService) AddMenu(AddMenuRequest requests.AddMenu) (bool, error) {
}
// PutMenu 修改菜单
func (r *MenuService) PutMenu(PutMenuRequest requests.PutMenu) (bool, error) {
func (r *MenuService) PutMenu(requestMenuId int64, PutMenuRequest requests.PutMenu) (bool, error) {
AdminMenuDao := dao.AdminMenuDao{}
AdminMenuApiDao := dao.AdminMenuApiDao{}
AdminApiDao := dao.AdminApiDao{}
@@ -137,6 +137,12 @@ func (r *MenuService) PutMenu(PutMenuRequest requests.PutMenu) (bool, error) {
}
}
// 获取当前菜单数据
adminMenu, _ := AdminMenuDao.GetAdminMenuById(requestMenuId)
if adminMenu == nil {
return false, errors.New("菜单数据错误")
}
// 开始事务
tx := global.Db.Begin()
defer func() {
@@ -145,7 +151,7 @@ func (r *MenuService) PutMenu(PutMenuRequest requests.PutMenu) (bool, error) {
}
}()
// 新增菜单
// 修改菜单
AdminMenuModel := &model.AdminMenu{
MenuName: PutMenuRequest.MenuName,
MenuTitle: PutMenuRequest.MenuTitle,
@@ -159,10 +165,17 @@ func (r *MenuService) PutMenu(PutMenuRequest requests.PutMenu) (bool, error) {
Component: PutMenuRequest.Component,
}
adminMenu, _ := AdminMenuDao.AddAdminMenu(tx, AdminMenuModel)
if adminMenu == nil {
err := AdminMenuDao.EditAdminMenuByIdWithStruct(tx, adminMenu.MenuId, AdminMenuModel)
if err != nil {
tx.Rollback()
return false, errors.New("新增失败")
return false, errors.New("修改失败")
}
// 删除菜单关联api
err = AdminMenuApiDao.DeleteAdminRoleMenuByMenuId(tx, adminMenu.MenuId)
if err != nil {
tx.Rollback()
return false, errors.New("修改失败")
}
// 新增菜单api
@@ -172,7 +185,7 @@ func (r *MenuService) PutMenu(PutMenuRequest requests.PutMenu) (bool, error) {
adminApi, _ := AdminApiDao.GetAdminApiById(v)
if adminApi == nil {
tx.Rollback()
return false, errors.New("接口不存在")
return false, errors.New("关联接口api不存在")
}
AdminMenuApiModel := &model.AdminMenuApi{
@@ -183,7 +196,7 @@ func (r *MenuService) PutMenu(PutMenuRequest requests.PutMenu) (bool, error) {
adminMenuApi, _ := AdminMenuApiDao.AddAdminMenuApi(tx, AdminMenuApiModel)
if adminMenuApi == nil {
tx.Rollback()
return false, errors.New("新增失败")
return false, errors.New("修改失败")
}
}
}