diff --git a/migrations/models/14_20260128140817_add_placement_post_status.py b/migrations/models/14_20260128140817_add_placement_post_status.py deleted file mode 100644 index d77059a..0000000 --- a/migrations/models/14_20260128140817_add_placement_post_status.py +++ /dev/null @@ -1,17 +0,0 @@ -# ruff: noqa -# mypy: ignore-errors -from tortoise import BaseDBAsyncClient - -RUN_IN_TRANSACTION = True - - -async def upgrade(db: BaseDBAsyncClient) -> str: - return """ - ALTER TABLE "placement_post" ADD "status" VARCHAR(64) NOT NULL DEFAULT 'Без статуса'; - """ - - -async def downgrade(db: BaseDBAsyncClient) -> str: - return """ - ALTER TABLE "placement_post" DROP COLUMN "status"; - """ diff --git a/migrations/models/14_20260128182443_update.py b/migrations/models/14_20260128182443_update.py new file mode 100644 index 0000000..9ccfe0e --- /dev/null +++ b/migrations/models/14_20260128182443_update.py @@ -0,0 +1,105 @@ +from tortoise import BaseDBAsyncClient + +RUN_IN_TRANSACTION = True + + +async def upgrade(db: BaseDBAsyncClient) -> str: + return """ + ALTER TABLE "channel" ADD "is_accessible" BOOL NOT NULL DEFAULT True; + ALTER TABLE "placement_post" ADD "status" VARCHAR(64) NOT NULL DEFAULT 'Без статуса'; + COMMENT ON COLUMN "placement_post"."status" IS 'NO_STATUS: Без статуса\nSEND_POST: Отправить пост\nPOST_APPROVAL: Согласование поста\nWAITING_SCHEDULE: Ожидание отложки\nSCHEDULED: Запланирован\nPOST_PUBLISHED: Пост вышел\nCOMPLETED_DELETED: Размещение отработало - пост удалён\nCOMPLETED_NOT_DELETED: Размещение отработало - пост не удалён\nCHECK_DELETED_EARLY: Проверить - пост удалён раньше срока\nCHECK_NOT_PUBLISHED: Проверить - пост не вышел\nCHECK_COMPLETED: Размещение отработало';""" + + +async def downgrade(db: BaseDBAsyncClient) -> str: + return """ + ALTER TABLE "channel" DROP COLUMN "is_accessible"; + ALTER TABLE "placement_post" DROP COLUMN "status";""" + + +MODELS_STATE = ( + "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" +) diff --git a/src/domain/channel.py b/src/domain/channel.py index 81b6e04..0faa491 100644 --- a/src/domain/channel.py +++ b/src/domain/channel.py @@ -11,6 +11,7 @@ class Channel(TimestampedModel): access_hash = fields.BigIntField(null=True) pts = fields.IntField(null=True) invite_link = fields.CharField(max_length=1024, null=True) + is_accessible = fields.BooleanField(default=True) class Meta: table = 'channel'