class Stata(db.Model): __tablename__ = 'stata' stata_id = db.Column(db.Integer, primary_key=True) mc = db.Column(db.Integer) kills = db.Column(db.Integer) deaths = db.Column(db.Integer) cbills = db.Column(db.Integer) exp_points = db.Column(db.Integer) wins = db.Column(db.Integer) losses = db.Column(db.Integer) timestamp = db.Column(db.DateTime, default=datetime.datetime.utcnow()) user_id = db.Column(db.Integer, db.ForeignKey('users.id')) def __init__(self, mc, kills, deaths, cbills, exp_points, wins, losses, timestamp, user_id): self.mc = mc self.kills = kills self.deaths = deaths self.cbills = cbills self.exp_points = exp_points self.wins = wins self.losses = losses self.timestamp = timestamp self.user_id = user_id def __repr__(self): return '<Post %r>' % (self.body)
class Task(db.Model): import datetime __tablename__ = "tasks" task_id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String, nullable=False) due_date = db.Column(db.Date, nullable=False) priority = db.Column(db.Integer, nullable=False) #posted_date = db.Column(db.Date, default=datetime.datetime.utcnow()) status = db.Column(db.Integer) #user_id = db.Column(db.Integer, db.ForeignKey('users.id')) #def __init__(self, name, due_date, priority, posted_date, status, user_id): def __init__(self, name, due_date, priority, status): self.name = name self.due_date = due_date self.priority = priority #self.posted_date = posted_date self.status = status #self.user_id = user_id def __repr__(self): return '<name %r>' % (self.body)
class Group(db.Model): id = db.Column(db.Integer, primary_key=True) userid = db.Column(db.Integer, db.ForeignKey('user.id')) groupname = db.Column(db.String(64), index=True) adminId = db.Column(db.Integer) def __repr__(self): return '<Group {}>'.format(self.groupname) def addMember(self, user): if not self.is_member(user): self.members.append(user) def is_member(self, user): return self.members.filter(group.c.self.userid == user.id).count() > 0 def removeMember(self, user): if self.is_member(user): self.members.remove(user) def grouppost(self): gname = self.groupname groupusers = Group.query.filter(Group.groupname == gname).all() #groupusers = groupusers.items #print(groupusers) for mem in groupusers: groupposts = Post.query.filter(mem.userid == Post.user_id) return groupposts.order_by(Post.timestamp.desc())
class companyinfo(db.Model): __tablename__ = 'companyinfo' cid = db.Column(db.CHAR(8), primary_key=True) cname = db.Column(db.VARCHAR(200), nullable=False) def __init__(self, cid, cname): self.cid = cid self.cname = cname
class User(db.Model): __tablename__ = "users" pk = db.Column(db.Integer, primary_key=True) name = db.Column(db.String, nullable=False) email = db.Column(db.String, nullable=False, unique=True) family_pk = db.Column(db.Integer, db.ForeignKey('family.pk'), nullable=True)
class Comment(db.Model): id = db.Column(db.Integer, primary_key=True) body = db.Column(db.String(140)) timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow) post_id = db.Column(db.Integer, db.ForeignKey('post.id')) us = db.Column(db.String(64), db.ForeignKey('user.username')) def __repr__(self): return '<Comment {}>'.format(self.body)
class Message(db.Model): id = db.Column(db.Integer, primary_key=True) sender = db.Column(db.String(64), db.ForeignKey('user.username')) msg = db.Column(db.String(700), index=True) reciever = db.Column(db.String(64), db.ForeignKey('user.id')) timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow) def __repr__(self): return '<Message {}>'.format(self.body)
class Email(db.Model): id = db.Column(db.Integer, primary_key=True) date = db.Column(db.DateTime, default=datetime.utcnow) # logs the datetime when email was sent(not when pushed in DB) email = db.Column(db.String, nullable=False) subject = db.Column(db.String, nullable=False) message = db.Column(db.String, nullable=False) def __repr__(self): return f"<New message on web: from: {self.email}, about: {self.subject}, message: {self.message}>"
class UserTrack(db.Model): """ All tracks for a user """ __tablename__ = 'user_track' id = db.Column(db.Integer, primary_key=True, autoincrement=True) user_id = db.Column(db.String, db.ForeignKey('users.id'), nullable=False) track_uri = db.Column(db.String, db.ForeignKey('tracks.uri'), nullable=False)
class Family(db.Model): __tablename__ = "family" pk = db.Column(db.Integer, primary_key=True) name = db.Column(db.String, nullable=False, unique=True) members = db.relationship("User", secondary=user_pkentifier, backref="family") fridge = db.relationship("Fridge", uselist=False, backref="family") grocery_lists = db.relationship("GroceryList", backref="family")
class banks(db.Model): __tablename__ = 'banks' bord = db.Column(db.Integer, primary_key=True, autoincrement=True) id = db.Column(db.CHAR(8), nullable=False) bid = db.Column(db.NVARCHAR(20), nullable=True) def __init__(self, bord, id, bid): self.bord = bord self.id = id self.bid = bid
class GroceryList(HasItems, db.Model): __tablename__ = "grocery_list" pk = db.Column(db.Integer, primary_key=True) name = db.Column(db.String, nullable=False, unique=True) family_pk = db.Column(db.Integer, db.ForeignKey('family.pk')) __table_args__ = (db.UniqueConstraint('name', 'family_pk', name='_name_family_pk'), )
class Tags(db.Model): __tablename__="tags" tag_id = db.Column('tag_id', db.Integer, primary_key=True) body = db.Column('body', db.Unicode) question_id = db.Column('question_id', db.Integer) def __repr__(self): return "Tags('{self.tag_id}')" def __init__(self, body,question_id): self.tag_id = getNextUniqueId("Tags") self.body = body self.question_id = question_id
class Way(db.Model): __tablename__ = 'ways' way_id = db.Column(db.Integer, primary_key=True) way = db.Column(db.String, nullable=False) def __init__(self, way): self.way = way def __repr__(self): return self.way
class User(db.Model): """ User Information""" __tablename__ = 'users' id = db.Column(db.String, primary_key=True) refresh_token = db.Column(db.String, nullable=False) def __repr__(self): """Provide helpful representation when printed.""" return f"<User id={self.id}>"
class Subject(db.Model): __tablename__ = 'subjects' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(50)) def __init__(self, name): self.name = name def __repr__(self): return '<Subject %r>' % self.name
class accountinfo(db.Model): __tablename__ = 'accountinfo' id = db.Column(db.CHAR(6), primary_key=True) pwd = db.Column(db.CHAR(8), nullable=False) role = db.Column(db.CHAR(4), nullable=False) company = db.Column(db.CHAR(8), nullable=False) def __init__(self, id, pwd, role, company): self.id = id self.pwd = pwd self.role = role self.company = company
class menu(db.Model): __tablename__ = 'menu' mid = db.Column(db.CHAR(4), primary_key=True) mname = db.Column(db.VARCHAR(200), nullable=False) comment = db.Column(db.VARCHAR(200), nullable=False) def __init__(self, mid, mname, comment): self.mid = mid self.mname = mname self.comment = comment def getJson(self): return {"value": self.mid, "label": self.mname, "comment": self.comment}
class Upvotes(db.Model): __tablename__="upvotes" vote_id = db.Column('vote_id', db.Integer, primary_key=True) user_id = db.Column('user_id', db.Integer) question_id = db.Column('question_id', db.Integer) answer_id = db.Column('answer_id', db.Integer) def __repr__(self): return "Upvotes('{self.vote_id}')" def __init__(self, user_id, question_id, answer_id): self.vote_id = getNextUniqueId("Upvotes") self.user_id = user_id self.question_id = question_id self.answer_id = answer_id
class Post(SearchableMixin, db.Model): __searchable__ = ['body'] id = db.Column(db.Integer, primary_key=True) body = db.Column(db.String(140)) timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow) user_id = db.Column(db.Integer, db.ForeignKey('user.id')) commentS = db.relationship('Comment', backref='POst', lazy='dynamic') #def get_comments(self): # return Comment.query.filter_by(post_id=post.id).order_by(Comment.timestamp.desc()) def __repr__(self): return '<Post {}>'.format(self.body)
class Task(db.Model): __tablename__ = 'tasks' task_id = db.Column(db.Integer, primary_key=True) task = db.Column(db.String, nullable=False) status = db.Column(db.Integer) def __init__(self, task, status): self.task = task self.status = status def __repr__(self): return '<name %r>', self.task
class Track(db.Model): """ Song Information """ __tablename__ = 'tracks' uri = db.Column(db.String, primary_key=True) id = db.Column(db.String) name = db.Column(db.String) energy = db.Column(db.Numeric(4, 3)) valence = db.Column(db.Numeric(4, 3)) users = db.relationship('User', secondary='user_track', backref='tracks') def __repr__(self): """Provide helpful representation when printed.""" return f"<Track id={self.id}>"
class Comments(db.Model): __tablename__="comments" comment_id = db.Column('comment_id', db.Integer, primary_key=True) body = db.Column('body', db.Text) user_id = db.Column('user_id', db.Integer) question_id = db.Column('question_id', db.Integer) answer_id = db.Column('answer_id', db.Integer) def __repr__(self): return "Comments('{self.comment_id}')" def __init__(self, body, user_id, question_id, answer_id): self.comment_id = getNextUniqueId("Comments") self.body = body self.user_id = user_id self.question_id = question_id self.answer_id = answer_id
class User(db.Model): __tablename__ = 'users' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String, unique=True, nullable=False) email = db.Column(db.String, unique=True, nullable=False) password = db.Column(db.String, nullable=False) def __init__(self, name=None, email=None, password=None): self.name = name self.email = email self.password = password def __repr__(self): return '<name %r>' % (self.body)
class Task(db.Model): __tablename__ = "tasks" task_id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String, nullable=False) due_date = db.Column(db.Date, nullable=False) priority = db.Column(db.Integer, nullable=False) status = db.Column(db.Integer) def __init__(self, name, due_date, priority, status): self.name = name self.due_date = due_date self.priority = priority self.status = status def __repr__(self): return '<name {0}>'.format(self.name)
class User(db.Model): __tablename__ = 'users' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String, unique=True, nullable=False) email = db.Column(db.String, unique=True, nullable=False) password = db.Column(db.String, nullable=False) tasks = db.relationship('Task', backref='poster') def __init__(self, name=None, email=None, password=None): self.name = name self.email = email self.password = password def __repr__(self): return '<User {0}>'.format(self.name)
class Users(db.Model): __tablename__="users" username = db.Column('username', db.Unicode) password = db.Column('password_hash', db.Unicode) email = db.Column('email', db.Unicode) user_id = db.Column('user_id', db.Integer, primary_key=True) reputation = db.Column('reputation', db.Integer) def __repr__(self): return "User('{self.username}')" def __init__(self, name, email, username, password): self.user_id = getNextUniqueId("Users") self.name = name self.email = email self.username = username self.password = password self.reputation = 0
class videoComment(db.Model): __tablename__ = 'videoComments' comment_id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String, nullable=False) email = db.Column(db.String, nullable=False) comment = db.Column(db.String, nullable=False) video_id = db.Column(db.Integer, db.ForeignKey('videos.video_id')) def __init__(self, name, email, comment, video_id): self.name = name self.email = email self.comment = comment self.video_id = video_id def __repr__(self): return self.comment
class Expense(db.Model): __tablename__ = "expenses" id = db.Column(db.Integer, primary_key=True) month = db.Column(db.String, nullable=False) name = db.Column(db.String, nullable=False) amount = db.Column(db.Float, nullable=False) user_id = db.Column(db.Integer, db.ForeignKey('users.id')) def __init__(self, month, name, amount, user_id): self.month = month self.name = name self.amount = amount self.user_id = user_id def __repr__(self): return '<name {0}>'.format(self.name)
class Task(db.Model): __tablename__ = "tasks" task_id = db.Column(db.Integer, primary_key=True) # will autoincrement name = db.Column(db.String, nullable=False) due_date = db.Column(db.Date, nullable=False) priority = db.Column(db.Integer, nullable=False) posted_date = db.Column(db.Date, default=datetime.datetime.utcnow()) status = db.Column(db.Integer) user_id = db.Column( db.Integer, db.ForeignKey('users.id')) # binds values frm this field to the # values found in the corresponding id field in users table def __init__(self, name, due_date, priority, posted_date, status, user_id): self.name = name self.due_date = due_date self.priority = priority self.posted_date = posted_date self.status = status self.user_id = user_id def __repr__(self): return '<name {0}>'.format(self.name)