Esempio n. 1
0
class User(db.Model):
    __tablename__ = 'user'

    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(24), unique=True, nullable=False)
    nickname = db.Column(db.String(24))
    location = db.Column(db.String)
    password = db.Column(db.String(160), nullable=False)
    recovery_token = db.Column(db.String(160))
    email = db.Column(db.String(64), nullable=False)
    notes = db.Column(db.Text)
    coins = db.Column(db.Integer)
    stardust = db.Column(db.Integer)
    buddy_pokemon_id = db.Column(db.Integer, db.ForeignKey('user_pokemon.id'))
    bag_size = db.Column(db.Integer)
    pokemon_storage_size = db.Column(db.Integer)
    team_id = db.Column(db.Integer, db.ForeignKey('team.id'))
    created = db.Column(db.TIMESTAMP(timezone=True), server_default=db.func.now())
    last_modified = db.Column(db.TIMESTAMP(timezone=True), onupdate=db.func.now())

    pokemon = db.relationship('UserPokemon', primaryjoin='User.id==UserPokemon.user_id')
    team = db.relationship('Team')

    def __repr__(self):
        return repr_gen(self, ['username', 'nickname', 'location', 'email', 'notes', 'coins', 'stardust',
                               'buddy_pokemon_id', 'bag_size', 'pokemon_storage_size', 'team_id', 'created',
                               'last_modified'])
Esempio n. 2
0
class Item(ContentModel):
    section_id = db.Column(db.Integer, db.ForeignKey('section.id'))
    created_by = db.Column(db.Integer, db.ForeignKey('user.id'))
    modified_by = db.Column(db.Integer, db.ForeignKey('user.id'))
    restaurant_id = db.Column(db.Integer, db.ForeignKey('restaurant.id'))
    image_url = db.Column(db.String(140))
    price = db.Column(db.Float, nullable=False)

    def __repr__(self):
        return '<Item {}>'.format(self.title)

    @classmethod
    def find_by_section_id(cls, section_id):
        result = cls.query.filter(cls.section_id == section_id)
        if result.count() > 0:
            return result
        return []

    def serializable(self):
        return {
            'id': self.id,
            'title': self.title,
            'price': self.price,
            'image_url': self.image_url
        }
Esempio n. 3
0
class Comment(SurrogatePK, Model, ModelSerializer):
    """Comment model"""

    __tablename__ = 'comment'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    uuid = db.Column(db.String)
    text = db.Column(db.String)
    user_uuid = db.Column(db.Integer, db.ForeignKey('users.id'), index=True)
    location_uuid = db.Column(db.Integer,
                              db.ForeignKey('hammock_location.id'),
                              index=True)

    date_created = db.Column(db.DateTime, default=datetime.datetime.utcnow)

    def __init__(self, text=None, user_uuid=None, location_uuid=None):
        """Define what will be loaded up on model instantiation here"""

        self.uuid = gen_uuid()
        self.text = text
        self.user_uuid = user_uuid
        self.location_uuid = location_uuid

    def __repr__(self):
        return '<Comment {}:{}>'.format(self.uuid, self.text)
Esempio n. 4
0
class UserLike(db.Model):
    __tablename__ = 'user_like'

    like_id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey('users.user_id'))
    comment_id = db.Column(db.Integer,
                           db.ForeignKey('community_comments.comment_id'))
    like_value = db.Column(db.Integer)
Esempio n. 5
0
class PokemonAttack(db.Model):
    __tablename__ = 'pokemon_attack'

    pokemon_id = db.Column(db.Integer, db.ForeignKey('pokemon.id'), primary_key=True)
    attack_id = db.Column(db.Integer, db.ForeignKey('attack.id'), primary_key=True)

    def __repr__(self):
        return repr_gen(self, ['pokemon_id', 'attack_id'])
Esempio n. 6
0
class Evaluation(db.Model):
    __tablename__ = 'evaluations'

    evaluation_id = db.Column(db.Integer, primary_key=True)
    comprehension_rating = db.Column(db.Integer)
    quality_rating = db.Column(db.Integer)
    user_id = db.Column(db.Integer, db.ForeignKey('users.user_id'))
    graph_ref = db.Column(db.String(100), db.ForeignKey('documents.graph_ref'))
Esempio n. 7
0
class PokemonEgg(db.Model):
    __tablename__ = 'pokemon_egg'

    pokemon_id = db.Column(db.Integer, db.ForeignKey('pokemon.id'), primary_key=True)
    egg_id = db.Column(db.Integer, db.ForeignKey('egg.id'), primary_key=True)

    def __repr__(self):
        return repr_gen(self, ['pokemon_id', 'egg_id'])
Esempio n. 8
0
class UserPokemonAppraisalIv(db.Model):
    __tablename__ = 'user_pokemon_appraisal_iv'

    user_pokemon_id = db.Column(db.Integer, db.ForeignKey('user_pokemon.id'), primary_key=True)
    appraisal_iv_id = db.Column(db.Integer, db.ForeignKey('appraisal_iv.id'), primary_key=True)

    def __repr__(self):
        return repr_gen(self, ['user_pokemon_id', 'appraisal_iv_id'])
Esempio n. 9
0
class PokemonType(db.Model):
    __tablename__ = 'pokemon_type'

    pokemon_id = db.Column(db.Integer, db.ForeignKey('pokemon.id'), primary_key=True)
    type_id = db.Column(db.Integer, db.ForeignKey('type.id'), primary_key=True)

    def __repr__(self):
        return repr_gen(self, ['pokemon_id', 'type_id'])
Esempio n. 10
0
class PokemonEvolution(db.Model):
    __tablename__ = 'pokemon_evolution'

    from_pokemon_id = db.Column(db.Integer, db.ForeignKey('pokemon.id'), primary_key=True)
    to_pokemon_id = db.Column(db.Integer, db.ForeignKey('pokemon.id'), primary_key=True)
    candy = db.Column(db.Integer, nullable=False)

    def __repr__(self):
        return repr_gen(self, ['from_pokemon_id', 'to_pokemon_id', 'candy'])
Esempio n. 11
0
class UserItem(db.Model):
    __tablename__ = 'user_item'

    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), primary_key=True)
    item_id = db.Column(db.Integer, db.ForeignKey('item.id'), primary_key=True)
    count = db.Column(db.Integer, nullable=False)

    def __repr__(self):
        return repr_gen(self, ['user_id', 'item_id', 'count'])
Esempio n. 12
0
class UserCandy(db.Model):
    __tablename__ = 'user_candy'

    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), primary_key=True)
    pokemon_id = db.Column(db.Integer, db.ForeignKey('pokemon.id'), primary_key=True)
    count = db.Column(db.Integer)

    def __repr__(self):
        return repr_gen(self, ['user_id', 'pokemon_id', 'count'])
Esempio n. 13
0
class UserEgg(db.Model):
    __tablename__ = 'user_egg'

    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), primary_key=True)
    egg_id = db.Column(db.Integer, db.ForeignKey('egg.id'), primary_key=True)
    count = db.Column(db.Integer)

    def __repr__(self):
        return repr_gen(self, ['user_id', 'egg_id'])
Esempio n. 14
0
class TypeEffectiveness(db.Model):
    __tablename__ = 'type_effectiveness'

    from_type_id = db.Column(db.Integer, db.ForeignKey('type.id'), primary_key=True)
    to_type_id = db.Column(db.Integer, db.ForeignKey('type.id'), primary_key=True)
    effectiveness_id = db.Column(db.Integer, db.ForeignKey('effectiveness.id'), primary_key=True)

    def __repr__(self):
        return repr_gen(self, ['from_type_id', 'to_type_id', 'effectiveness_id'])
Esempio n. 15
0
class MedalLevelRequirement(db.Model):
    __tablename__ = 'medal_level_requirement'

    medal_id = db.Column(db.Integer, db.ForeignKey('medal.id'), primary_key=True)
    medal_level_id = db.Column(db.Integer, db.ForeignKey('medal_level.id'), primary_key=True)
    count = db.Column(db.Integer, nullable=False)

    def __repr__(self):
        return repr_gen(self, ['medal_id', 'medal_level_id', 'count'])
Esempio n. 16
0
class TeamAppraisalSize(db.Model):
    __tablename__ = 'team_appraisal_size'

    team_id = db.Column(db.Integer, db.ForeignKey('team.id'), primary_key=True)
    appraisal_size_id = db.Column(db.Integer, db.ForeignKey('appraisal_size.id'), primary_key=True)
    dialog = db.Column(db.Text, nullable=False)

    def __repr__(self):
        return repr_gen(self, ['team_id', 'appraisal_size_id', 'dialog'])
Esempio n. 17
0
class UserMedal(db.Model):
    __tablename__ = 'user_medal'

    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), primary_key=True)
    medal_id = db.Column(db.Integer, db.ForeignKey('medal.id'), primary_key=True)
    medal_level_id = db.Column(db.Integer, db.ForeignKey('medal_level.id'), nullable=False)
    count = db.Column(db.Integer, nullable=False)

    def __repr__(self):
        return repr_gen(self, ['user_id', 'medal_id', 'medal_level_id', 'count'])
class StationeryRequisitionDetails(db.Model):

    __tablename__ = "stationery_requisition_details"

    id = db.Column(db.Integer, primary_key=True, nullable=False)
    order_id = db.Column(db.Integer,
                         db.ForeignKey("stationery_requisitions.id"))
    item = db.Column(db.Integer, db.ForeignKey("stationery.id"))
    quantity = db.Column(db.Float, nullable=False)
    purpose = db.Column(db.String, nullable=True)
class StationeryRequisition(db.Model):

    __tablename__ = "stationery_requisitions"

    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey("users.id"), nullable=False)
    order_date = db.Column(db.DateTime, nullable=False)
    authorized_by = db.Column(db.ForeignKey("users.id"), nullable=False)
    approved_by = db.Column(db.ForeignKey("users.id"), nullable=False)
    issued_by = db.Column(db.ForeignKey("users.id"), nullable=False)
Esempio n. 20
0
class CommunityComment(db.Model):
    __tablename__ = 'community_comments'

    comment_id = db.Column(db.Integer, primary_key=True)
    comment = db.Column(db.String(300), nullable=False)
    like_count = db.Column(db.Integer, nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey('users.user_id'))
    question_id = db.Column(db.Integer,
                            db.ForeignKey('community_questions.question_id'))
    date = db.Column(db.DateTime, default=datetime.datetime.utcnow)

    def addLike(self, like):
        self.like_count += like
Esempio n. 21
0
class Section(ContentModel):
    created_by = db.Column(db.Integer, db.ForeignKey('user.id'))
    modified_by = db.Column(db.Integer, db.ForeignKey('user.id'))
    restaurant_id = db.Column(db.Integer, db.ForeignKey('restaurant.id'))

    def __repr__(self):
        return '<Section {}>'.format(self.title)

    @classmethod
    def find_by_restaurant_id(cls, restaurant_id):
        result = cls.query.filter(cls.restaurant_id == restaurant_id)
        if result.count() > 0:
            return result
        return []
Esempio n. 22
0
class Comment(Model):
    """
    This model represents a comment on a given note
    """

    __tablename__ = "comment"

    id = Column(db.Integer, primary_key=True)
    story_id = Column(db.String(128))
    user_id = Column(db.Integer, db.ForeignKey("user.id"))
    content = Column(db.Integer)

    def __init__(self, story_id, user_id, content):
        self.story_id = story_id
        self.user_id = user_id
        self.content = content

    @classmethod
    def fetch_user_comments(cls, user_id):
        return cls.query.filter_by(user_id=user_id).all()

    @classmethod
    def fetch_post_comments(cls, post_id):
        return cls.query.filter_by(post_id=post_id).all()

    def save(self):
        """
        Save a comment to the database.
        """
        db.session.add(self)
        db.session.commit()
Esempio n. 23
0
class PlayerStat(db.Model):
    __tablename__ = 'player_stats'

    id = db.Column(db.Integer, primary_key=True)
    stat_id = db.Column(db.Integer, db.ForeignKey('stats.id'), nullable=False)
    player_id = db.Column(db.Integer,
                          db.ForeignKey('players.id'),
                          nullable=False)
    career = db.Column(db.DECIMAL)
    recent = db.Column(db.DECIMAL)

    def __init__(self, stat_id, player_id, career, recent):
        self.stat_id = stat_id
        self.player_id = player_id
        self.career = career
        self.recent = recent
Esempio n. 24
0
class ScholarQuestion(db.Model):
    __tablename__ = 'scholar_questions'

    question_id = db.Column(db.Integer, primary_key=True)
    question = db.Column(db.String(1000), nullable=False)
    answer = db.Column(db.String(1000))
    user_id = db.Column(db.Integer, db.ForeignKey('users.user_id'))
Esempio n. 25
0
class Pokemon(db.Model):
    __tablename__ = 'pokemon'

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(24), unique=True, nullable=False)
    description = db.Column(db.Text, nullable=False)
    height = db.Column(db.Numeric(5, 2))
    weight = db.Column(db.Numeric(5, 2))
    category_id = db.Column(db.Integer, db.ForeignKey('category.id'), nullable=False)
    stamina = db.Column(db.Integer, nullable=False)
    attack = db.Column(db.Integer, nullable=False)
    defense = db.Column(db.Integer, nullable=False)
    cp_gain = db.Column(db.Numeric(5, 2), nullable=False)
    cp_max = db.Column(db.Integer, nullable=False)
    buddy_distance = db.Column(db.Numeric(5, 2), nullable=False)

    fast_attacks = db.relationship('Attack', secondary='pokemon_attack',
                                   primaryjoin='and_(Pokemon.id==PokemonAttack.pokemon_id, '
                                               'Attack.attack_speed_id==1)')
    charge_attacks = db.relationship('Attack', secondary='pokemon_attack',
                                     primaryjoin='and_(Pokemon.id==PokemonAttack.pokemon_id, '
                                                 'Attack.attack_speed_id==2)')
    category = db.relationship('Category')
    egg = db.relationship('Egg', secondary='pokemon_egg', back_populates='pokemon')
    evolves_to = db.relationship('Pokemon', secondary='pokemon_evolution', back_populates='evolves_from',
                                 primaryjoin='Pokemon.id==PokemonEvolution.from_pokemon_id',
                                 secondaryjoin='Pokemon.id==PokemonEvolution.to_pokemon_id')
    evolves_from = db.relationship('Pokemon', secondary='pokemon_evolution', back_populates='evolves_to',
                                   primaryjoin='Pokemon.id==PokemonEvolution.to_pokemon_id',
                                   secondaryjoin='Pokemon.id==PokemonEvolution.from_pokemon_id')
    types = db.relationship('Type', secondary='pokemon_type', back_populates='pokemon')

    def __repr__(self):
        return repr_gen(self, ['name', 'description', 'height', 'weight', 'category_id',
                               'stamina', 'attack', 'defense', 'cp_gain', 'cp_max', 'buddy_distance'])
Esempio n. 26
0
class Vote(Model):
    """
    This model holds information about a votes casted by user on stories
    """

    __tablename__ = "vote"

    id = Column(db.Integer, primary_key=True)
    story_id = Column(db.String(128))
    user_id = Column(db.Integer, db.ForeignKey("user.id"))
    value = Column(db.Integer)

    def __init__(self, story_id, user_id, value):
        self.story_id = story_id
        self.user_id = user_id
        self.value = value

    @classmethod
    def fetch_user_votes(cls, user_id):
        return cls.query.filter_by(user_id=user_id).all()

    def save(self):
        """
        Save a user to the database.
        This includes creating a new user and editing one.
        """
        db.session.add(self)
        db.session.commit()
Esempio n. 27
0
class Attack(db.Model):
    __tablename__ = 'attack'

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(24), unique=True, nullable=False)
    description = db.Column(db.Text, nullable=False)
    type_id = db.Column(db.Integer, db.ForeignKey('type.id'), nullable=False)
    power = db.Column(db.Integer, nullable=False)
    energy = db.Column(db.Integer, nullable=False)
    cooldown_time = db.Column(db.Numeric(5, 2), nullable=False)
    attack_speed_id = db.Column(db.Integer, db.ForeignKey('attack_speed.id'), nullable=False)

    pokemon = db.relationship('Pokemon', secondary='pokemon_attack', back_populates='attacks')
    speed = db.relationship('AttackSpeed', back_populates='attacks')
    type = db.relationship('Type')

    def __repr__(self):
        return repr_gen(self, ['name', 'description', 'type_id', 'power', 'energy', 'cooldown_time', 'attack_speed_id'])
Esempio n. 28
0
class UserLog(db.Model):
    __tablename__ = 'user_log'

    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
    notes = db.Column(db.Text, nullable=False)
    created = db.Column(db.TIMESTAMP(timezone=True), server_default=db.func.now())
    last_modified = db.Column(db.TIMESTAMP(timezone=True), onupdate=db.func.now())

    def __repr__(self):
        return repr_gen(self, ['user_id', 'notes', 'date', 'created', 'last_modified'])
Esempio n. 29
0
class StudentClassSchedule(db.Model):
    """tbd"""

    __tablename__ = "student_class_schedule"

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    student_id = db.Column(db.Integer, db.ForeignKey('student.id'), nullable=False)
    class_schedule_id = db.Column(db.Integer, db.ForeignKey('class_schedule.id'), nullable=False)

    # define a relationship to Student
    student = db.relationship("Student",
                           backref=db.backref("student_class_schedule", order_by=id))

    # define a relationship to Class Schedule
    class_schedule = db.relationship("ClassSchedule",
                           backref=db.backref("student_class_schedule", order_by=id))

    def __repr__(self):
        """Provide helpful representation when printed."""
        return "<StudentClassSchedule student_id = {} class_schedule_id = {}>".format(self.student_id, self.class_schedule_id)
Esempio n. 30
0
class Player(db.Model):
    __tablename__ = 'players'

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(120), nullable=False)
    position = db.Column(db.String(30))
    team_id = db.Column(db.Integer, db.ForeignKey('teams.id'))

    def __init__(self, name, position, team_id):
        self.name = name
        self.position = position
        self.team_id = team_id