2025-06-15 18:10:04 +08:00
|
|
|
package application
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
|
2025-06-22 11:22:04 +08:00
|
|
|
"122.51.31.227/go-course/go18/devcloud/mcenter/apps/policy"
|
|
|
|
"github.com/infraboard/mcube/v2/http/request"
|
|
|
|
"github.com/infraboard/mcube/v2/ioc"
|
2025-06-15 18:10:04 +08:00
|
|
|
"github.com/infraboard/mcube/v2/types"
|
|
|
|
)
|
|
|
|
|
2025-06-22 11:22:04 +08:00
|
|
|
const (
|
|
|
|
APP_NAME = "application"
|
|
|
|
)
|
|
|
|
|
|
|
|
func GetService() Service {
|
|
|
|
return ioc.Controller().Get(APP_NAME).(Service)
|
|
|
|
}
|
|
|
|
|
2025-06-15 18:10:04 +08:00
|
|
|
type Service interface {
|
|
|
|
// 创建应用
|
2025-06-22 11:22:04 +08:00
|
|
|
CreateApplication(context.Context, *CreateApplicationRequest) (*Application, error)
|
2025-06-15 18:10:04 +08:00
|
|
|
// 查询应用
|
2025-06-22 11:22:04 +08:00
|
|
|
QueryApplication(context.Context, *QueryApplicationRequest) (*types.Set[*Application], error)
|
2025-06-15 18:10:04 +08:00
|
|
|
// 更新应用
|
2025-06-22 11:22:04 +08:00
|
|
|
UpdateApplication(context.Context, *UpdateApplicationRequest) (*Application, error)
|
2025-06-15 18:10:04 +08:00
|
|
|
// 删除应用
|
2025-06-22 11:22:04 +08:00
|
|
|
DeleteApplication(context.Context, *DeleteApplicationRequest) (*Application, error)
|
2025-06-15 18:10:04 +08:00
|
|
|
// 获取应用
|
2025-06-22 11:22:04 +08:00
|
|
|
DescribeApplication(context.Context, *DescribeApplicationRequest) (*Application, error)
|
2025-06-15 18:10:04 +08:00
|
|
|
}
|
|
|
|
|
2025-06-22 16:29:42 +08:00
|
|
|
func NewQueryApplicationRequest() *QueryApplicationRequest {
|
|
|
|
return &QueryApplicationRequest{
|
|
|
|
QueryApplicationRequestSpec: QueryApplicationRequestSpec{
|
|
|
|
PageRequest: request.NewDefaultPageRequest(),
|
|
|
|
},
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2025-06-15 18:10:04 +08:00
|
|
|
type QueryApplicationRequest struct {
|
2025-06-22 11:22:04 +08:00
|
|
|
policy.ResourceScope
|
|
|
|
QueryApplicationRequestSpec
|
|
|
|
}
|
|
|
|
|
|
|
|
type QueryApplicationRequestSpec struct {
|
2025-06-22 12:08:39 +08:00
|
|
|
*request.PageRequest
|
2025-06-15 18:10:04 +08:00
|
|
|
// 应用ID
|
2025-08-17 18:25:13 +08:00
|
|
|
Id string `json:"id" form:"id"`
|
2025-06-15 18:10:04 +08:00
|
|
|
// 应用名称
|
2025-08-17 18:25:13 +08:00
|
|
|
Name string `json:"name" form:"name"`
|
2025-06-22 11:22:04 +08:00
|
|
|
// 应用是否就绪
|
2025-08-17 18:25:13 +08:00
|
|
|
Ready *bool `json:"ready" form:"ready"`
|
|
|
|
// 关键字
|
|
|
|
Keywords string `json:"keywords" form:"keywords"`
|
2025-06-15 18:10:04 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
type UpdateApplicationRequest struct {
|
|
|
|
// 更新人
|
|
|
|
UpdateBy string `json:"update_by" bson:"update_by"`
|
|
|
|
DescribeApplicationRequest
|
|
|
|
CreateApplicationSpec
|
|
|
|
}
|
|
|
|
|
2025-08-17 18:25:13 +08:00
|
|
|
func NewDeleteApplicationRequest(appId string) *DeleteApplicationRequest {
|
|
|
|
return &DeleteApplicationRequest{
|
|
|
|
DescribeApplicationRequest: *NewDescribeApplicationRequest(appId),
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2025-06-15 18:10:04 +08:00
|
|
|
type DeleteApplicationRequest struct {
|
|
|
|
DescribeApplicationRequest
|
|
|
|
}
|
|
|
|
|
2025-08-17 18:25:13 +08:00
|
|
|
func NewDescribeApplicationRequest(appId string) *DescribeApplicationRequest {
|
|
|
|
return &DescribeApplicationRequest{
|
|
|
|
Id: appId,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2025-06-15 18:10:04 +08:00
|
|
|
type DescribeApplicationRequest struct {
|
2025-06-22 15:14:10 +08:00
|
|
|
policy.ResourceScope
|
2025-06-15 18:10:04 +08:00
|
|
|
// 应用ID
|
|
|
|
Id string `json:"id" bson:"_id"`
|
|
|
|
}
|