package controller import ( "context" "easygoadmin/api/v1" "easygoadmin/internal/service" ) // ============================== 角色控制器 ============================== // CRole 角色控制器 // 薄层控制器,仅负责参数透传,业务逻辑由 service.Role() 处理 type CRole struct{} // Page 角色分页 // 按查询条件分页返回角色列表 func (c *CRole) Page(ctx context.Context, req *v1.RolePageReq) (res *v1.RolePageRes, err error) { return service.Role().Page(ctx, req) } // List 角色列表 // 按关键词返回角色精简列表 func (c *CRole) List(ctx context.Context, req *v1.RoleListReq) (res v1.RoleListRes, err error) { return service.Role().List(ctx, req) } // Detail 角色详情 // 按角色ID查询详情 func (c *CRole) Detail(ctx context.Context, req *v1.RoleDetailReq) (res *v1.RoleDetailRes, err error) { return service.Role().Detail(ctx, req) } // Add 新增角色 // 新增成功后返回新记录ID func (c *CRole) Add(ctx context.Context, req *v1.RoleAddReq) (res *v1.IdRes, err error) { return service.Role().Add(ctx, req) } // Update 修改角色 // 按角色ID更新记录 func (c *CRole) Update(ctx context.Context, req *v1.RoleUpdateReq) (res *v1.RoleUpdateRes, err error) { return service.Role().Update(ctx, req) } // Delete 删除角色 // 按角色ID删除单条记录 func (c *CRole) Delete(ctx context.Context, req *v1.RoleDeleteReq) (res *v1.RoleDeleteRes, err error) { return service.Role().Delete(ctx, req) } // BatchDelete 批量删除角色 // 按角色ID列表批量删除记录 func (c *CRole) BatchDelete(ctx context.Context, req *v1.RoleBatchDeleteReq) (res *v1.RoleBatchDeleteRes, err error) { return service.Role().BatchDelete(ctx, req) } // MenuList 角色菜单勾选列表 // 返回菜单平铺列表并附带勾选状态,供权限配置使用 func (c *CRole) MenuList(ctx context.Context, req *v1.RoleMenuListReq) (res v1.RoleMenuListRes, err error) { return service.Role().MenuList(ctx, req) } // SavePermission 保存角色菜单权限 // 按角色ID保存其可访问的菜单ID列表 func (c *CRole) SavePermission(ctx context.Context, req *v1.RoleSavePermissionReq) (res *v1.RoleSavePermissionRes, err error) { return service.Role().SavePermission(ctx, req) }