164 lines
4.9 KiB
Python
164 lines
4.9 KiB
Python
from __future__ import annotations
|
|
|
|
from enum import StrEnum
|
|
|
|
|
|
|
|
|
|
class LogEventStatusEnum(StrEnum):
|
|
"""通用日志事件状态。"""
|
|
|
|
PENDING = "pending"
|
|
STARTED = "started"
|
|
SUBMITTED = "submitted"
|
|
SUCCESS = "success"
|
|
FAILED = "failed"
|
|
REJECTED = "rejected"
|
|
SKIPPED = "skipped"
|
|
WARNING = "warning"
|
|
|
|
|
|
class LogSourceEnum(StrEnum):
|
|
"""通用日志来源。"""
|
|
|
|
API = "api"
|
|
SERVICE = "service"
|
|
CELERY = "celery"
|
|
RECOVERY = "recovery"
|
|
REMOTE_API = "remote_api"
|
|
CLI = "cli"
|
|
|
|
class ModuleGenerationFlowVersionEnum(StrEnum):
|
|
"""模块生成项目流程版本。"""
|
|
|
|
V1 = "v1"
|
|
V2 = "v2"
|
|
|
|
|
|
class ModuleProjectStatusEnum(StrEnum):
|
|
"""通用模块项目状态。"""
|
|
|
|
PENDING = "pending"
|
|
WAITING_USER = "waiting_user"
|
|
PROCESSING = "processing"
|
|
COMPLETED = "completed"
|
|
FAILED = "failed"
|
|
CANCELLED = "cancelled"
|
|
|
|
|
|
class ModuleStepStatusEnum(StrEnum):
|
|
"""通用模块子任务状态。"""
|
|
|
|
PENDING = "pending"
|
|
WAITING_USER = "waiting_user"
|
|
PROCESSING = "processing"
|
|
COMPLETED = "completed"
|
|
FAILED = "failed"
|
|
CANCELLED = "cancelled"
|
|
|
|
|
|
class ModuleEventTypeEnum(StrEnum):
|
|
"""通用模块事件类型。"""
|
|
|
|
PROJECT_CREATED = "PROJECT_CREATED"
|
|
PROJECT_DELETED = "PROJECT_DELETED"
|
|
STEP_CREATED = "STEP_CREATED"
|
|
STEP_UPDATED = "STEP_UPDATED"
|
|
SOFT_DELETE_STEPS = "SOFT_DELETE_STEPS"
|
|
IMAGE_PROMPT_SUBMITTED = "IMAGE_PROMPT_SUBMITTED"
|
|
IMAGE_PROMPT_SUCCESS = "IMAGE_PROMPT_SUCCESS"
|
|
IMAGE_PROMPT_FAILED = "IMAGE_PROMPT_FAILED"
|
|
IMAGE_GENERATE_SUBMITTED = "IMAGE_GENERATE_SUBMITTED"
|
|
IMAGE_GENERATE_SUCCESS = "IMAGE_GENERATE_SUCCESS"
|
|
VIDEO_PROMPT_SUBMITTED = "VIDEO_PROMPT_SUBMITTED"
|
|
VIDEO_PROMPT_SUCCESS = "VIDEO_PROMPT_SUCCESS"
|
|
VIDEO_PROMPT_FAILED = "VIDEO_PROMPT_FAILED"
|
|
VIDEO_GENERATE_SUBMITTED = "VIDEO_GENERATE_SUBMITTED"
|
|
VIDEO_GENERATE_SUCCESS = "VIDEO_GENERATE_SUCCESS"
|
|
CHAT_TASK_FAILED = "CHAT_TASK_FAILED"
|
|
CHAT_TASK_CANCELLED = "CHAT_TASK_CANCELLED"
|
|
MEDIA_REFUND = "MEDIA_REFUND"
|
|
PROMPT_BILLING_SUCCESS = "PROMPT_BILLING_SUCCESS"
|
|
PROMPT_BILLING_FAILED = "PROMPT_BILLING_FAILED"
|
|
V1_CREATE_BLOCKED = "V1_CREATE_BLOCKED"
|
|
FLOW_VERSION_MISMATCH = "FLOW_VERSION_MISMATCH"
|
|
V2_PROJECT_CREATED = "V2_PROJECT_CREATED"
|
|
V2_VIDEO_PROMPT_AUTO_CREATED = "V2_VIDEO_PROMPT_AUTO_CREATED"
|
|
V2_VIDEO_PROMPT_REGENERATED = "V2_VIDEO_PROMPT_REGENERATED"
|
|
V2_VIDEO_PROMPT_DISPATCHED = "V2_VIDEO_PROMPT_DISPATCHED"
|
|
V2_VIDEO_PROMPT_REGISTRY_FAILED = "V2_VIDEO_PROMPT_REGISTRY_FAILED"
|
|
V2_VIDEO_PROMPT_DISPATCH_FAILED = "V2_VIDEO_PROMPT_DISPATCH_FAILED"
|
|
STEP_SUPERSEDED = "STEP_SUPERSEDED"
|
|
STALE_STEP_RESULT_DISCARDED = "STALE_STEP_RESULT_DISCARDED"
|
|
GENERATION_REFERENCE_OPTION_SAVED = "GENERATION_REFERENCE_OPTION_SAVED"
|
|
GENERATION_REFERENCE_INCLUDED = "GENERATION_REFERENCE_INCLUDED"
|
|
GENERATION_REFERENCE_EXCLUDED = "GENERATION_REFERENCE_EXCLUDED"
|
|
|
|
|
|
class ModulePromptTypeEnum(StrEnum):
|
|
"""通用模块提词结果类型。"""
|
|
|
|
IMAGE_PROMPT = "image_prompt"
|
|
VIDEO_PROMPT = "video_prompt"
|
|
|
|
|
|
# 视频提词 Schema 管理后台配置
|
|
VIDEO_SCHEMA_CONFIG_KEY = "video_prompt_schema_config"
|
|
VIDEO_SCHEMA_CONFIG_DESCRIPTION = "视频提词 Schema 管理后台配置"
|
|
VIDEO_SCHEMA_CONFIG_VERSION = "video_prompt_schema_config_v1"
|
|
VIDEO_SCHEMA_CONFIG_DEFAULT_SOURCE = "default"
|
|
VIDEO_SCHEMA_CONFIG_DATABASE_SOURCE = "database"
|
|
|
|
# 仅用于管理后台配置项和用户可编辑字段校验;AI 生成结果与最终视频 prompt 不做自动裁剪。
|
|
VIDEO_SCHEMA_CONFIG_KEY_MAX_LEN = 64
|
|
VIDEO_SCHEMA_CONFIG_LABEL_MAX_LEN = 64
|
|
VIDEO_SCHEMA_CONFIG_DESC_MAX_LEN = 300
|
|
VIDEO_SCHEMA_EDITABLE_TEXT_MAX_LEN = 1000
|
|
VIDEO_SCHEMA_FLOW_CONTENT_MAX_LEN = 800
|
|
VIDEO_SCHEMA_TIME_STAGE_MAX_LEN = 64
|
|
VIDEO_SCHEMA_TIME_DESC_MAX_LEN = 300
|
|
VIDEO_SCHEMA_MAX_SECTION_COUNT = 40
|
|
VIDEO_SCHEMA_MAX_FIELD_COUNT_PER_SECTION = 80
|
|
VIDEO_SCHEMA_MAX_TIME_RULE_COUNT = 30
|
|
VIDEO_SCHEMA_MAX_SEGMENT_COUNT_PER_RULE = 12
|
|
|
|
|
|
MIN_GENERATION_COUNT = 1
|
|
MAX_GENERATION_COUNT = 5
|
|
|
|
|
|
|
|
class BillingBlockEventEnum(StrEnum):
|
|
"""通用账务拦截日志事件。"""
|
|
|
|
INSUFFICIENT_CREDITS = "BILLING_BLOCKED_INSUFFICIENT_CREDITS"
|
|
NEGATIVE_BALANCE = "BILLING_BLOCKED_NEGATIVE_BALANCE"
|
|
|
|
|
|
class PaymentOrderSourceEnum(StrEnum):
|
|
"""订单来源。"""
|
|
|
|
ONLINE_PAYMENT = "online_payment"
|
|
ADMIN_OFFLINE = "admin_offline"
|
|
|
|
|
|
PAYMENT_ORDER_SOURCE_LABELS = {
|
|
PaymentOrderSourceEnum.ONLINE_PAYMENT.value: "线上支付",
|
|
PaymentOrderSourceEnum.ADMIN_OFFLINE.value: "后台线下成交",
|
|
}
|
|
|
|
|
|
class OfflinePaymentMethodEnum(StrEnum):
|
|
"""后台线下收款方式。"""
|
|
|
|
BANK_TRANSFER = "bank_transfer"
|
|
CASH = "cash"
|
|
OTHER = "other"
|
|
|
|
|
|
OFFLINE_PAYMENT_METHOD_LABELS = {
|
|
OfflinePaymentMethodEnum.BANK_TRANSFER.value: "银行转账",
|
|
OfflinePaymentMethodEnum.CASH.value: "现金",
|
|
OfflinePaymentMethodEnum.OTHER.value: "其他-线下收款",
|
|
}
|