// Code scaffolded by goctl. Safe to edit. package menu import ( "context" "fmt" "github.com/zeromicro/go-zero/core/logx" "sundynix-micro-go/app/system/api/internal/svc" "sundynix-micro-go/app/system/api/internal/types" sysModel "sundynix-micro-go/app/system/model" ) type GetMenuByRoleLogic struct { logx.Logger ctx context.Context svcCtx *svc.ServiceContext } func NewGetMenuByRoleLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetMenuByRoleLogic { return &GetMenuByRoleLogic{Logger: logx.WithContext(ctx), ctx: ctx, svcCtx: svcCtx} } func (l *GetMenuByRoleLogic) GetMenuByRole(req *types.IdReq) (resp interface{}, err error) { var role sysModel.SundynixRole if err := l.svcCtx.DB.Preload("Menus").Where("id = ?", req.Id).First(&role).Error; err != nil { return nil, fmt.Errorf("查询角色菜单失败") } return role.Menus, nil }