syntaxwebsite/app/models/giftcard_key.py

32 lines
933 B
Python

from app.extensions import db
from app.enums.GiftcardType import GiftcardType
from datetime import datetime
class GiftcardKey(db.Model):
id = db.Column(db.BigInteger, primary_key=True)
key = db.Column(db.String(255), nullable=False)
type = db.Column(db.Enum(GiftcardType), nullable=False)
value = db.Column(db.BigInteger, nullable=True)
created_at = db.Column(db.DateTime, nullable=False)
redeemed_at = db.Column(db.DateTime, nullable=True)
redeemed_by = db.Column(db.BigInteger, nullable=True)
def __init__(
self,
key: str,
type: GiftcardType,
value: int = None,
created_at: datetime = None,
):
if created_at is None:
created_at = datetime.utcnow()
self.key = key
self.type = type
self.value = value
self.created_at = created_at
def __repr__(self):
return f'<GiftcardKey {self.id}>'