models.py 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. from flask_app import db
  2. JOB_PENDING = 0
  3. JOB_STARTED = 1
  4. JOB_FAILED = 2
  5. JOB_FINISHED = 3
  6. JOB_DELETED = 4
  7. class Job(db.Model):
  8. id = db.Column(db.Integer, primary_key=True)
  9. task_uuid = db.Column(db.String(36), index=True, unique=True)
  10. created = db.Column(db.DateTime)
  11. finished = db.Column(db.DateTime)
  12. deleted = db.Column(db.DateTime)
  13. expires = db.Column(db.DateTime)
  14. uniqid = db.Column(db.String(10), index=True, unique=True)
  15. email = db.Column(db.String(120))
  16. mp3_name = db.Column(db.String(255), default="")
  17. pic_name = db.Column(db.String(255), default="")
  18. vid_name = db.Column(db.String(255), default="")
  19. vid_size = db.Column(db.Integer, default=0)
  20. state = db.Column(db.SmallInteger, default=JOB_PENDING)
  21. download_count = db.Column(db.Integer, default=0)
  22. def __repr__(self):
  23. return '<Job %r>' % (self.uniqid)
  24. class Stat(db.Model):
  25. id = db.Column(db.Integer, primary_key=True)
  26. name = db.Column(db.String(36), index=True, unique=True)
  27. value = db.Column(db.String(255), default="")
  28. def __repr__(self):
  29. return '<Stats %r>' % (self.id)