feat: addon.is_enabled
This commit is contained in:
32
alembic/versions/cc6625f7dd7f_addon_is_enabled.py
Normal file
32
alembic/versions/cc6625f7dd7f_addon_is_enabled.py
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
"""+addon.is_enabled
|
||||||
|
|
||||||
|
Revision ID: cc6625f7dd7f
|
||||||
|
Revises: f4ece5936e3d
|
||||||
|
Create Date: 2026-08-17 21:39:00.054081
|
||||||
|
|
||||||
|
"""
|
||||||
|
from typing import Sequence, Union
|
||||||
|
|
||||||
|
from alembic import op
|
||||||
|
import sqlalchemy as sa
|
||||||
|
|
||||||
|
|
||||||
|
# revision identifiers, used by Alembic.
|
||||||
|
revision: str = 'cc6625f7dd7f'
|
||||||
|
down_revision: Union[str, Sequence[str], None] = 'f4ece5936e3d'
|
||||||
|
branch_labels: Union[str, Sequence[str], None] = None
|
||||||
|
depends_on: Union[str, Sequence[str], None] = None
|
||||||
|
|
||||||
|
|
||||||
|
def upgrade() -> None:
|
||||||
|
"""Upgrade schema."""
|
||||||
|
# ### commands auto generated by Alembic - please adjust! ###
|
||||||
|
op.add_column('addons', sa.Column('is_enabled', sa.BOOLEAN(), nullable=True))
|
||||||
|
# ### end Alembic commands ###
|
||||||
|
|
||||||
|
|
||||||
|
def downgrade() -> None:
|
||||||
|
"""Downgrade schema."""
|
||||||
|
# ### commands auto generated by Alembic - please adjust! ###
|
||||||
|
op.drop_column('addons', 'is_enabled')
|
||||||
|
# ### end Alembic commands ###
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
from sqlalchemy import FLOAT, INTEGER, TEXT
|
from sqlalchemy import BOOLEAN, FLOAT, INTEGER, TEXT
|
||||||
from sqlalchemy.orm import Mapped, mapped_column
|
from sqlalchemy.orm import Mapped, mapped_column
|
||||||
|
|
||||||
from db.base import Base
|
from db.base import Base
|
||||||
@@ -11,3 +11,4 @@ class Addon(Base):
|
|||||||
name: Mapped[str] = mapped_column(TEXT, nullable=False, unique=False)
|
name: Mapped[str] = mapped_column(TEXT, nullable=False, unique=False)
|
||||||
price: Mapped[float] = mapped_column(FLOAT, nullable=False)
|
price: Mapped[float] = mapped_column(FLOAT, nullable=False)
|
||||||
free_threshold: Mapped[int] = mapped_column(INTEGER, default=-1)
|
free_threshold: Mapped[int] = mapped_column(INTEGER, default=-1)
|
||||||
|
is_enabled: Mapped[bool] = mapped_column(BOOLEAN, default=False, nullable=True)
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ class AddonData(BaseModel):
|
|||||||
name: str
|
name: str
|
||||||
price: float
|
price: float
|
||||||
free_threshold: int
|
free_threshold: int
|
||||||
|
is_enabled: bool
|
||||||
|
|
||||||
|
|
||||||
class PricingPlans(BaseModel):
|
class PricingPlans(BaseModel):
|
||||||
|
|||||||
@@ -11,7 +11,13 @@ async def get_pricing_model(addons_repo: AddonsRepository, pricing_repo: Pricing
|
|||||||
|
|
||||||
addons = await addons_repo.get_all()
|
addons = await addons_repo.get_all()
|
||||||
addons_data = [
|
addons_data = [
|
||||||
AddonData(id=a.id, name=a.name, price=a.price, free_threshold=a.free_threshold)
|
AddonData(
|
||||||
|
id=a.id,
|
||||||
|
name=a.name,
|
||||||
|
price=a.price,
|
||||||
|
free_threshold=a.free_threshold,
|
||||||
|
is_enabled=a.is_enabled,
|
||||||
|
)
|
||||||
for a in addons
|
for a in addons
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user