From 8fa05444df0211187c09f640c88c920899d18359 Mon Sep 17 00:00:00 2001 From: Rogee Date: Thu, 18 Dec 2025 10:53:10 +0800 Subject: [PATCH] update consts --- backend/pkg/consts/consts.go | 272 ++++++++++++++++++++++++++++++++++- 1 file changed, 267 insertions(+), 5 deletions(-) diff --git a/backend/pkg/consts/consts.go b/backend/pkg/consts/consts.go index 7ef226c..016e5ce 100644 --- a/backend/pkg/consts/consts.go +++ b/backend/pkg/consts/consts.go @@ -1,5 +1,7 @@ package consts +import "quyun/v2/app/requests" + // Format // // // swagger:enum CacheKey @@ -11,11 +13,33 @@ package consts // ENUM( user, super_admin) type Role string +// Description returns the Chinese label for the specific enum value. +func (t Role) Description() string { + switch t { + case RoleUser: + return "用户" + case RoleSuperAdmin: + return "超级管理员" + default: + return "未知角色" + } +} + +// Items returns the KV list for FE dropdowns. +func (Role) Items() []requests.KV { + values := RoleValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +} + // swagger:enum UserStatus // ENUM(pending_verify, verified, banned, ) type UserStatus string -// Description +// Description returns the Chinese label for the specific enum value. func (t UserStatus) Description() string { switch t { case UserStatusPendingVerify: @@ -29,54 +53,224 @@ func (t UserStatus) Description() string { } } +// Items returns the KV list for FE dropdowns. +func (UserStatus) Items() []requests.KV { + values := UserStatusValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +} + // tenants // swagger:enum TenantStatus // ENUM( pending_verify, verified, banned ) type TenantStatus string -// Description in chinese +// Description returns the Chinese label for the specific enum value. func (t TenantStatus) Description() string { switch t { - case "pending_verify": + case TenantStatusPendingVerify: return "待审核" - case "verified": + case TenantStatusVerified: return "已审核" - case "banned": + case TenantStatusBanned: return "已封禁" default: return "未知状态" } } +// Items returns the KV list for FE dropdowns. +func (TenantStatus) Items() []requests.KV { + values := TenantStatusValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +} + // swagger:enum TenantUserRole // ENUM( member, tenant_admin) type TenantUserRole string +// Description returns the Chinese label for the specific enum value. +func (t TenantUserRole) Description() string { + switch t { + case TenantUserRoleMember: + return "成员" + case TenantUserRoleTenantAdmin: + return "租户管理员" + default: + return "未知角色" + } +} + +// Items returns the KV list for FE dropdowns. +func (TenantUserRole) Items() []requests.KV { + values := TenantUserRoleValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +} + // media_assets // swagger:enum MediaAssetType // ENUM( video, audio, image ) type MediaAssetType string +// Description returns the Chinese label for the specific enum value. +func (t MediaAssetType) Description() string { + switch t { + case MediaAssetTypeVideo: + return "视频" + case MediaAssetTypeAudio: + return "音频" + case MediaAssetTypeImage: + return "图片" + default: + return "未知类型" + } +} + +// Items returns the KV list for FE dropdowns. +func (MediaAssetType) Items() []requests.KV { + values := MediaAssetTypeValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +} + // swagger:enum MediaAssetStatus // ENUM( uploaded, processing, ready, failed, deleted ) type MediaAssetStatus string +// Description returns the Chinese label for the specific enum value. +func (t MediaAssetStatus) Description() string { + switch t { + case MediaAssetStatusUploaded: + return "已上传" + case MediaAssetStatusProcessing: + return "处理中" + case MediaAssetStatusReady: + return "就绪" + case MediaAssetStatusFailed: + return "失败" + case MediaAssetStatusDeleted: + return "已删除" + default: + return "未知状态" + } +} + +// Items returns the KV list for FE dropdowns. +func (MediaAssetStatus) Items() []requests.KV { + values := MediaAssetStatusValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +} + // contents // swagger:enum ContentStatus // ENUM( draft, reviewing, published, unpublished, blocked ) type ContentStatus string +// Description returns the Chinese label for the specific enum value. +func (t ContentStatus) Description() string { + switch t { + case ContentStatusDraft: + return "草稿" + case ContentStatusReviewing: + return "审核中" + case ContentStatusPublished: + return "已发布" + case ContentStatusUnpublished: + return "已下架" + case ContentStatusBlocked: + return "已封禁" + default: + return "未知状态" + } +} + +// Items returns the KV list for FE dropdowns. +func (ContentStatus) Items() []requests.KV { + values := ContentStatusValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +} + // swagger:enum ContentVisibility // ENUM( public, tenant_only, private ) type ContentVisibility string +// Description returns the Chinese label for the specific enum value. +func (t ContentVisibility) Description() string { + switch t { + case ContentVisibilityPublic: + return "公开" + case ContentVisibilityTenantOnly: + return "租户可见" + case ContentVisibilityPrivate: + return "仅自己" + default: + return "未知" + } +} + +// Items returns the KV list for FE dropdowns. +func (ContentVisibility) Items() []requests.KV { + values := ContentVisibilityValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +} + // swagger:enum ContentAssetRole // ENUM( main, cover, preview ) type ContentAssetRole string +// Description returns the Chinese label for the specific enum value. +func (t ContentAssetRole) Description() string { + switch t { + case ContentAssetRoleMain: + return "正片" + case ContentAssetRoleCover: + return "封面" + case ContentAssetRolePreview: + return "试看" + default: + return "未知" + } +} + +// Items returns the KV list for FE dropdowns. +func (ContentAssetRole) Items() []requests.KV { + values := ContentAssetRoleValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +} + const ( // DefaultContentPreviewSeconds is the default preview duration in seconds when content.preview_seconds is unset/invalid. // 默认试看时长(秒):当未配置或传入非法值时使用。 @@ -89,12 +283,80 @@ const ( // ENUM( none, percent, amount ) type DiscountType string +// Description returns the Chinese label for the specific enum value. +func (t DiscountType) Description() string { + switch t { + case DiscountTypeNone: + return "无折扣" + case DiscountTypePercent: + return "百分比折扣" + case DiscountTypeAmount: + return "立减" + default: + return "未知" + } +} + +// Items returns the KV list for FE dropdowns. +func (DiscountType) Items() []requests.KV { + values := DiscountTypeValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +} + // swagger:enum Currency // ENUM( CNY ) type Currency string +// Description returns the Chinese label for the specific enum value. +func (t Currency) Description() string { + switch t { + case CurrencyCNY: + return "人民币(CNY)" + default: + return "未知币种" + } +} + +// Items returns the KV list for FE dropdowns. +func (Currency) Items() []requests.KV { + values := CurrencyValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +} + // content_access // swagger:enum ContentAccessStatus // ENUM( active, revoked, expired ) type ContentAccessStatus string + +// Description returns the Chinese label for the specific enum value. +func (t ContentAccessStatus) Description() string { + switch t { + case ContentAccessStatusActive: + return "生效" + case ContentAccessStatusRevoked: + return "已撤销" + case ContentAccessStatusExpired: + return "已过期" + default: + return "未知状态" + } +} + +// Items returns the KV list for FE dropdowns. +func (ContentAccessStatus) Items() []requests.KV { + values := ContentAccessStatusValues() + items := make([]requests.KV, 0, len(values)) + for _, v := range values { + items = append(items, requests.NewKV(string(v), v.Description())) + } + return items +}