新增菜单和角色关联接口

This commit is contained in:
2025-06-04 08:56:08 +08:00
parent fedcd288e8
commit 00b889cfcc
25 changed files with 729 additions and 0 deletions

View File

@ -0,0 +1,5 @@
// =================================================================================
// This is auto-generated by GoFrame CLI tool only once. Fill this file as you wish.
// =================================================================================
package menu

View File

@ -0,0 +1,15 @@
// =================================================================================
// This is auto-generated by GoFrame CLI tool only once. Fill this file as you wish.
// =================================================================================
package menu
import (
"server/api/menu"
)
type ControllerV1 struct{}
func NewV1() menu.IMenuV1 {
return &ControllerV1{}
}

View File

@ -0,0 +1,17 @@
package menu
import (
"context"
"server/internal/model"
"server/internal/service"
"server/api/menu/v1"
)
func (c *ControllerV1) BatchDelete(ctx context.Context, req *v1.BatchDeleteReq) (res *v1.BatchDeleteRes, err error) {
out, err := service.Menu().BatchDelete(ctx, &model.BatchDeleteIn{Ids: req.Ids})
if err != nil {
return nil, err
}
return &v1.BatchDeleteRes{Ids: out.Ids}, nil
}

View File

@ -0,0 +1,29 @@
package menu
import (
"context"
"server/internal/model"
"server/internal/service"
"server/api/menu/v1"
)
func (c *ControllerV1) Create(ctx context.Context, req *v1.CreateReq) (res *v1.CreateRes, err error) {
out, err := service.Menu().Create(ctx, &model.MenuCreateInput{
Component: req.Component,
Hidden: req.Hidden,
Icon: req.Icon,
Name: req.Name,
ParentId: req.ParentId,
Path: req.Path,
Sort: req.Sort,
Status: req.Status,
Type: req.Type,
})
if err != nil {
return nil, err
}
return &v1.CreateRes{
Id: out.Id,
}, nil
}

View File

@ -0,0 +1,17 @@
package menu
import (
"context"
"server/internal/model"
"server/internal/service"
"server/api/menu/v1"
)
func (c *ControllerV1) Delete(ctx context.Context, req *v1.DeleteReq) (res *v1.DeleteRes, err error) {
out, err := service.Menu().Delete(ctx, &model.MenuDeleteInput{Id: req.Id})
if err != nil {
return nil, err
}
return &v1.DeleteRes{Success: out.Success}, nil
}

View File

@ -0,0 +1,20 @@
package menu
import (
"context"
"server/internal/model"
"server/internal/service"
"server/api/menu/v1"
)
func (c *ControllerV1) List(ctx context.Context, req *v1.ListReq) (res *v1.ListRes, err error) {
out, err := service.Menu().List(ctx, &model.MenuListInput{Page: req.Page, Size: req.Size, Status: req.Status})
if err != nil {
return nil, err
}
return &v1.ListRes{
List: out.List,
Total: out.Total,
}, nil
}

View File

@ -0,0 +1,30 @@
package menu
import (
"context"
"server/internal/model"
"server/internal/service"
"server/api/menu/v1"
)
func (c *ControllerV1) Update(ctx context.Context, req *v1.UpdateReq) (res *v1.UpdateRes, err error) {
out, err := service.Menu().Update(ctx, &model.MenuUpdateInput{
Id: req.Id,
Component: req.Component,
Hidden: req.Hidden,
Icon: req.Icon,
Name: req.Name,
ParentId: req.ParentId,
Path: req.Path,
Sort: req.Sort,
Status: req.Status,
Type: req.Type,
})
if err != nil {
return nil, err
}
return &v1.UpdateRes{
Success: out.Success,
}, nil
}

View File

@ -0,0 +1,5 @@
// =================================================================================
// This is auto-generated by GoFrame CLI tool only once. Fill this file as you wish.
// =================================================================================
package roleMenu

View File

@ -0,0 +1,15 @@
// =================================================================================
// This is auto-generated by GoFrame CLI tool only once. Fill this file as you wish.
// =================================================================================
package roleMenu
import (
"server/api/roleMenu"
)
type ControllerV1 struct{}
func NewV1() roleMenu.IRoleMenuV1 {
return &ControllerV1{}
}

View File

@ -0,0 +1,20 @@
package roleMenu
import (
"context"
"server/internal/model"
"server/internal/service"
"server/api/roleMenu/v1"
)
func (c *ControllerV1) List(ctx context.Context, req *v1.ListReq) (res *v1.ListRes, err error) {
list, err := service.RoleMenu().List(ctx, &model.RoleMenuListInput{RoleId: req.RoleId})
if err != nil {
return nil, err
}
return &v1.ListRes{
List: list.List,
Total: list.Total,
}, nil
}

View File

@ -0,0 +1,20 @@
package roleMenu
import (
"context"
"server/internal/model"
"server/internal/service"
"server/api/roleMenu/v1"
)
func (c *ControllerV1) SaveRoleMenu(ctx context.Context, req *v1.SaveRoleMenuReq) (res *v1.SaveRoleMenuRes, err error) {
out, err := service.RoleMenu().Save(ctx, &model.RoleMenuSaveInput{RoleId: req.RoleId, MenuIds: req.MenuIds})
if err != nil {
return nil, err
}
return &v1.SaveRoleMenuRes{
Success: out.Success,
}, nil
}