models.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. # Database Models
  2. from . import db # that SQLAlchemy Object in __init__.py
  3. from flask_login import UserMixin
  4. from sqlalchemy.sql import func
  5. class User(db.Model, UserMixin): # User Database
  6. id = db.Column(db.Integer, primary_key=True)
  7. email = db.Column(db.String(150), unique=True)
  8. password = db.Column(db.String(150))
  9. username = db.Column(db.String(150))
  10. profile_image = db.Column(db.String(150))
  11. class TX(db.Model):
  12. id = db.Column(db.Integer, primary_key=True)
  13. filehash = db.Column(db.String(64)) # sha256 hash
  14. datetime = db.Column(db.DateTime(timezone=True))
  15. source_id = db.Column(db.Integer)
  16. destination_id = db.Column(db.Integer)
  17. price = db.Column(db.Float)
  18. txhash = db.Column(db.String(64))
  19. class Hashchain(db.Model):
  20. id = db.Column(db.Integer, primary_key=True)
  21. blockhash = db.Column(db.String(64))
  22. class Art(db.Model):
  23. id = db.Column(db.Integer, primary_key=True)
  24. name = db.Column(db.String(200))
  25. description = db.Column(db.String(200))
  26. filehash = db.Column(db.String(64)) # sha256 hash
  27. owner = db.Column(db.Integer)
  28. creator = db.Column(db.Integer)
  29. dname = db.Column(db.String(20))
  30. class List(db.Model):
  31. id = db.Column(db.Integer, primary_key=True)
  32. filehash = db.Column(db.String(64)) # sha256 hash
  33. seller = db.Column(db.Integer)
  34. min_price = db.Column(db.Float)
  35. out_price = db.Column(db.Float)
  36. timeout = db.Column(db.String(20))
  37. list_date = db.Column(db.DateTime(timezone=True), default=func.now())
  38. class Bids(db.Model):
  39. id = db.Column(db.Integer, primary_key=True)
  40. filehash = db.Column(db.String(64)) # sha256 hash
  41. buyer = db.Column(db.Integer)
  42. bid_price = db.Column(db.Float)
  43. bid_date = db.Column(db.DateTime(timezone=True), default=func.now())