99 lines
2.1 KiB
Go
99 lines
2.1 KiB
Go
// Copyright 2021 Liuxiangchao iwind.liu@gmail.com. All rights reserved.
|
|
|
|
package utils
|
|
|
|
type ComponentCode = string
|
|
|
|
const (
|
|
ComponentCodeUser ComponentCode = "user"
|
|
ComponentCodeScheduling ComponentCode = "scheduling"
|
|
ComponentCodeMonitor ComponentCode = "monitor"
|
|
ComponentCodeLog ComponentCode = "log"
|
|
ComponentCodeReporter ComponentCode = "reporter"
|
|
ComponentCodePlan ComponentCode = "plan"
|
|
ComponentCodeFinance ComponentCode = "finance"
|
|
ComponentCodeNS ComponentCode = "ns"
|
|
ComponentCodeL2Node ComponentCode = "l2node"
|
|
ComponentCodeTicket ComponentCode = "ticket"
|
|
ComponentCodeAntiDDoS ComponentCode = "antiDDoS"
|
|
ComponentCodeCloudNative ComponentCode = "cloudNative"
|
|
)
|
|
|
|
type Edition = string
|
|
|
|
const (
|
|
EditionBasic Edition = "basic" // 个人商业版
|
|
EditionPro Edition = "pro" // 专业版
|
|
EditionEnt Edition = "ent" // 企业版
|
|
EditionMax Edition = "max" // [待命名]
|
|
EditionUltra Edition = "ultra" // 旗舰版
|
|
)
|
|
|
|
type ComponentDefinition struct {
|
|
Name string `json:"name"`
|
|
Code ComponentCode `json:"code"`
|
|
Description string `json:"description"`
|
|
}
|
|
|
|
func FindAllComponents() []*ComponentDefinition {
|
|
return []*ComponentDefinition{
|
|
{
|
|
Name: "多租户",
|
|
Code: ComponentCodeUser,
|
|
},
|
|
{
|
|
Name: "智能调度",
|
|
Code: ComponentCodeScheduling,
|
|
},
|
|
{
|
|
Name: "监控",
|
|
Code: ComponentCodeMonitor,
|
|
},
|
|
{
|
|
Name: "日志",
|
|
Code: ComponentCodeLog,
|
|
},
|
|
{
|
|
Name: "区域监控",
|
|
Code: ComponentCodeReporter,
|
|
},
|
|
{
|
|
Name: "套餐",
|
|
Code: ComponentCodePlan,
|
|
},
|
|
{
|
|
Name: "财务",
|
|
Code: ComponentCodeFinance,
|
|
},
|
|
{
|
|
Name: "智能DNS",
|
|
Code: ComponentCodeNS,
|
|
},
|
|
{
|
|
Name: "L2节点",
|
|
Code: ComponentCodeL2Node,
|
|
},
|
|
{
|
|
Name: "工单系统",
|
|
Code: ComponentCodeTicket,
|
|
},
|
|
{
|
|
Name: "高防IP",
|
|
Code: ComponentCodeAntiDDoS,
|
|
},
|
|
/**{
|
|
Name: "云原生部署",
|
|
Code: ComponentCodeCloudNative,
|
|
},**/
|
|
}
|
|
}
|
|
|
|
func CheckComponent(code string) bool {
|
|
for _, c := range FindAllComponents() {
|
|
if c.Code == code {
|
|
return true
|
|
}
|
|
}
|
|
return false
|
|
}
|