43 lines
803 B
Go
43 lines
803 B
Go
package resource
|
|
|
|
import (
|
|
context "context"
|
|
|
|
"github.com/infraboard/mcube/v2/exception"
|
|
"github.com/infraboard/mcube/v2/ioc"
|
|
"github.com/infraboard/mcube/v2/ioc/config/validator"
|
|
)
|
|
|
|
const (
|
|
AppName = "resource"
|
|
)
|
|
|
|
func GetService() Service {
|
|
return ioc.Controller().Get(AppName).(Service)
|
|
}
|
|
|
|
type Service interface {
|
|
// 需要对外暴露为rpc的
|
|
RpcServer
|
|
// 删除
|
|
DeleteResource(context.Context, *DeleteResourceRequest) error
|
|
}
|
|
|
|
func NewDeleteResourceRequest() *DeleteResourceRequest {
|
|
return &DeleteResourceRequest{}
|
|
}
|
|
|
|
// 支持多个
|
|
type DeleteResourceRequest struct {
|
|
ResourceIds []string `json:"resource_ids"`
|
|
}
|
|
|
|
func (s *Resource) Validate() error {
|
|
err := validator.Validate(s)
|
|
if err != nil {
|
|
return exception.NewBadRequest("参数校验失败, %s", err)
|
|
}
|
|
|
|
return nil
|
|
}
|