766666601e
Co-authored-by: OuYingJun1024 <1034284404@qq.com> Reviewed-on: #22 Reviewed-by: marco <marco@wonderable.ai> Co-authored-by: ouzhou <ouzhou@wonderable.ai> Co-committed-by: ouzhou <ouzhou@wonderable.ai>
54 lines
1.4 KiB
Python
54 lines
1.4 KiB
Python
"""admin 首页轮播种子 schemas。金额单位:分(前端展示 ÷100 取元)。
|
|
|
|
种子 = 生成规则:masked_user 可空(空→feed 随机合成名)、金额是 [min_cents, max_cents] 区间。
|
|
"""
|
|
from __future__ import annotations
|
|
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class OpsMarqueeSeedOut(BaseModel):
|
|
id: int
|
|
masked_user: str | None = None
|
|
min_cents: int
|
|
max_cents: int
|
|
enabled: bool
|
|
sort_order: int
|
|
created_at: str | None = None
|
|
|
|
|
|
class OpsMarqueeSeedCreate(BaseModel):
|
|
masked_user: str | None = None # 空 / 不传 → feed 随机合成脱敏名
|
|
min_cents: int
|
|
max_cents: int
|
|
enabled: bool = True
|
|
sort_order: int = 0
|
|
|
|
|
|
class OpsMarqueeSeedUpdate(BaseModel):
|
|
# masked_user:不传=不改;传空串=清空(改回随机合成);传值=固定该名
|
|
masked_user: str | None = None
|
|
min_cents: int | None = None
|
|
max_cents: int | None = None
|
|
enabled: bool | None = None
|
|
sort_order: int | None = None
|
|
|
|
|
|
class OpsMarqueeSeedBulkCreate(BaseModel):
|
|
"""批量生成 count 条自动合成名种子(冷启动铺量)。"""
|
|
count: int
|
|
min_cents: int
|
|
max_cents: int
|
|
enabled: bool = True
|
|
|
|
|
|
class OpsSavingsFeedPreviewItem(BaseModel):
|
|
masked_user: str
|
|
saved_amount_cents: int
|
|
time: str
|
|
|
|
|
|
class OpsSavingsFeedPreviewOut(BaseModel):
|
|
"""运营预览:实际混播出来的 feed(真实记录会插队,与客户端一致)。"""
|
|
items: list[OpsSavingsFeedPreviewItem]
|