feat(content): 发布体系 大/小图 + 公开 + 园区端发布
- 迁移0018:content_items 加 card_mode/is_public/source/tenant_id
- ContentRepository:_to_dict/create/update 含新字段;list 加 public_only/tenant_id 过滤
- /opc/content 仅 published+公开;/opc/content/{id} 非公开→404
- 园区端 POST /park/api/content:发布人强制=园区名、source=carrier、tenant=本园、is_public 默认false(仅大屏)、card_mode默认small
- 园区端 GET /park/api/content:本园区内容(含未公开)供大屏
- schemas 补 card_mode/is_public
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
"""资讯发布体系:card_mode/is_public/source/tenant_id
|
||||
|
||||
Revision ID: 0018_content_publish
|
||||
Revises: 0017_content_detail
|
||||
Create Date: 2026-08-27
|
||||
"""
|
||||
from __future__ import annotations
|
||||
|
||||
import sqlalchemy as sa
|
||||
from alembic import op
|
||||
|
||||
revision = "0018_content_publish"
|
||||
down_revision = "0017_content_detail"
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade() -> None:
|
||||
op.add_column("content_items", sa.Column("card_mode", sa.String(), nullable=False, server_default="big"))
|
||||
op.add_column("content_items", sa.Column("is_public", sa.Boolean(), nullable=False, server_default="1"))
|
||||
op.add_column("content_items", sa.Column("source", sa.String(), nullable=False, server_default="operator"))
|
||||
op.add_column("content_items", sa.Column("tenant_id", sa.String(), nullable=False, server_default=""))
|
||||
|
||||
|
||||
def downgrade() -> None:
|
||||
op.drop_column("content_items", "tenant_id")
|
||||
op.drop_column("content_items", "source")
|
||||
op.drop_column("content_items", "is_public")
|
||||
op.drop_column("content_items", "card_mode")
|
||||
Reference in New Issue
Block a user