40 lines
1.3 KiB
Python
40 lines
1.3 KiB
Python
"""业务枚举。值写入数据库字符串列(native_enum=False,跨 SQLite/PG 一致)。"""
|
|
from __future__ import annotations
|
|
|
|
import enum
|
|
|
|
|
|
class Stage(str, enum.Enum):
|
|
collected = "collected" # 插件刚上传,只有素材与原文
|
|
editing = "editing" # 用户正在编辑
|
|
ready = "ready" # 必填项齐全,可发布
|
|
publishing = "publishing" # 已提交 ImportProductsV3,等待轮询
|
|
published = "published" # 轮询 imported 成功
|
|
failed = "failed" # 轮询返回 errors / 校验失败
|
|
archived = "archived" # 手动归档(软删)
|
|
|
|
|
|
class AssetStatus(str, enum.Enum):
|
|
pending = "pending" # 已入库,等待下载
|
|
downloading = "downloading" # 正在下载源图
|
|
uploaded = "uploaded" # 已转存(本地/七牛)
|
|
failed = "failed" # 下载或转存失败
|
|
|
|
|
|
class PublishStatus(str, enum.Enum):
|
|
pending = "pending"
|
|
processing = "processing"
|
|
moderation = "moderation"
|
|
imported = "imported"
|
|
failed = "failed"
|
|
|
|
|
|
class ShopStatus(str, enum.Enum):
|
|
active = "active"
|
|
invalid = "invalid" # 连通性校验失败
|
|
disabled = "disabled"
|
|
|
|
|
|
# 图片分组(对齐契约 _images)
|
|
IMAGE_GROUPS = ("main", "sku", "detail", "video", "param", "generated")
|