Ejemplo n.º 1
0
class Pending_Member(db.Model):
    __tablename__ = "pending_members"
    id = db.Column(db.Integer, primary_key=True)
    userId = db.Column(db.Integer, db.ForeignKey("users.id",
                                                 ondelete="CASCADE"))
    groupId = db.Column(db.Integer,
                        db.ForeignKey("groups.id", ondelete="CASCADE"))
    message = db.Column(db.String(100))
    type = db.Column(db.Enum('Request', 'Invite'))
Ejemplo n.º 2
0
class Budget(db.Model):
    __tablename__ = 'budgets'
    id = db.Column(db.Integer, primary_key=True)
    groupId = db.Column(db.Integer,
                        db.ForeignKey("groups.id", ondelete="CASCADE"))
    userId = db.Column(db.Integer, db.ForeignKey("users.id",
                                                 ondelete="CASCADE"))
    total = db.Column(db.Integer)

    def getBudget(id):
        return Budget.query.filter(Budget.userId == id).first()
Ejemplo n.º 3
0
class Expense(db.Model):
    __tablename__ = 'expenses'
    id = db.Column(db.Integer, primary_key=True)
    groupId = db.Column(db.Integer,
                        db.ForeignKey("groups.id", ondelete="CASCADE"))
    userId = db.Column(db.Integer, db.ForeignKey("users.id",
                                                 ondelete="CASCADE"))
    name = db.Column(db.String(30))
    cost = db.Column(db.Integer)
    payments = db.Column(db.Integer)
    type = db.Column(
        db.Enum('Rental', 'Food/Drink', 'Transportation', 'Activity'))
    splits = db.Column(db.Integer)

    def getExpenses(groupId, userId):
        return Expense.query.filter(and_(Expense.groupId == groupId),
                                    (Expense.userId == userId)).all()
Ejemplo n.º 4
0
class User_Group(db.Model):
    __tablename__ = "users_groups"
    id = db.Column(db.Integer, primary_key=True)
    userId = db.Column(db.Integer, db.ForeignKey("users.id",
                                                 ondelete="CASCADE"))
    groupId = db.Column(db.Integer,
                        db.ForeignKey("groups.id", ondelete="CASCADE"))
    type = db.Column(db.Enum('Admin', 'Member'))

    def getUserGroups(userId):
        return User_Group.query.filter(User_Group.userId == userId).all()

    def getMembers(groupId):
        return User_Group.query.filter(User_Group.groupId == groupId).all()

    def getIndividualMember(userId, groupId):
        return User_Group.query.filter(and_(User_Group.groupId == groupId),
                                       (User_Group.userId == userId))
Ejemplo n.º 5
0
class Rest_Pin(db.Model):
    __tablename__ = "restPins"
    id = db.Column(db.Integer, primary_key=True)
    groupId = db.Column(db.Integer,
                        db.ForeignKey("groups.id", ondelete="CASCADE"))
    restName = db.Column(db.String(40))
    description = db.Column(db.Text)
    link = db.Column(db.String(512))
    types = db.Column(db.Enum('Restaurant', 'Nightclub'))
    creator = db.Column(db.String(40))
Ejemplo n.º 6
0
class Activity_Pin(db.Model):
    __tablename__ = "activityPins"
    id = db.Column(db.Integer, primary_key=True)
    groupId = db.Column(db.Integer,
                        db.ForeignKey("groups.id", ondelete="CASCADE"))
    activityName = db.Column(db.String(40))
    price = db.Column(db.Integer)
    description = db.Column(db.Text)
    types = db.Column(db.Enum('Indoor', 'Outdoor'))
    link = db.Column(db.String(512))
    creator = db.Column(db.String(40))
Ejemplo n.º 7
0
class Transpo_Pin(db.Model):
    __tablename__ = "transpoPins"
    id = db.Column(db.Integer, primary_key=True)
    groupId = db.Column(db.Integer,
                        db.ForeignKey("groups.id", ondelete="CASCADE"))
    transpoName = db.Column(db.String(40))
    price = db.Column(db.Integer)
    description = db.Column(db.Text)
    types = db.Column(db.Enum('Flight', 'Train', 'Bus', 'Rental Car', 'Other'))
    link = db.Column(db.String(512))
    creator = db.Column(db.String(40))
Ejemplo n.º 8
0
class Lodging_Pin(db.Model):
    __tablename__ = "lodgingPins"
    id = db.Column(db.Integer, primary_key=True)
    groupId = db.Column(db.Integer,
                        db.ForeignKey("groups.id", ondelete="CASCADE"))
    lodgeName = db.Column(db.String(40))
    price = db.Column(db.Integer)
    rooms = db.Column(db.SMALLINT)
    description = db.Column(db.Text)
    link = db.Column(db.String(512))
    creator = db.Column(db.String(40))
Ejemplo n.º 9
0
class Chat(db.Model):
    __tablename__ = "chats"
    id = db.Column(db.Integer, primary_key=True)
    groupId = db.Column(db.Integer,
                        db.ForeignKey("groups.id", ondelete="CASCADE"))
    username = db.Column(db.String(30))
    message = db.Column(db.Text)
    date = db.Column(db.DateTime(timezone=True), server_default=func.now())

    @staticmethod
    def getChatHist(groupNum):
        return Chat.query.filter(Chat.groupId == groupNum).all()
Ejemplo n.º 10
0
class Calendar_Note(db.Model):
    __tablename__ = 'calendarNotes'
    id = db.Column(db.Integer, primary_key=True)
    groupId = db.Column(db.Integer,
                        db.ForeignKey("groups.id", ondelete="CASCADE"))
    name = db.Column(db.String(30))
    date = db.Column(db.String(40))
    time = db.Column(db.String(8))
    username = db.Column(db.String(30))
    event_length = db.Column(db.String(15))

    def getNotes(groupId):
        return Calendar_Note.query.filter(Calendar_Note.groupId == groupId)
Ejemplo n.º 11
0
class Invite_New_Account_Group(db.Model):
    __tablename__ = 'new_invite_group'
    id = db.Column(db.Integer, primary_key=True)
    groupId = db.Column(db.Integer,
                        db.ForeignKey("groups.id", ondelete="CASCADE"))
    email = db.Column(db.String(50))