class User(Table): id = Column(DataTypes.integer, pk=True) enabled = Column(DataTypes.smallint, default=0) userName = Column(DataTypes.varchar(60), unique=True) email = Column(DataTypes.varchar(60), unique=True) emailVerified = Column(DataTypes.smallint, default=0) password = Column(DataTypes.varchar(60)) profilePicture = Column(DataTypes.varchar(60))
class AssetTag(Table): """Junction Table: Asset & Yag""" id = Column(DataTypes.integer, pk=True) assetId = Column(DataTypes.integer, fk=(Asset, 'id')) tagId = Column(DataTypes.integer, fk=(Tag, 'id'))
class AssetType(Table): id = Column(DataTypes.integer, pk=True) name = Column(DataTypes.varchar(24))
class Tag(Table): id = Column(DataTypes.integer, pk=True) groupId = Column(DataTypes.integer, fk=(TagGroup, 'id'), default=1) name = Column(DataTypes.varchar(60)) color = Column(DataTypes.char(8))
class TagGroup(Table): id = Column(DataTypes.integer, pk=True) name = Column(DataTypes.varchar(60)) color = Column(DataTypes.char(6))
class AssetsMesh(Table): id = Column(DataTypes.integer, pk=True) assetId = Column(DataTypes.integer, fk=(Asset, 'id'), default=1) model3dId = Column(DataTypes.integer, fk=(Mesh, 'id'), default=1)
class Mesh(Table): id = Column(DataTypes.integer, pk=True) assetId = Column(DataTypes.integer, fk=(AssetType, 'id'), default=1)
class AssetTexture(Table): id = Column(DataTypes.integer, pk=True) assetId = Column(DataTypes.integer, fk=(Asset, 'id'), default=1) textureId = Column(DataTypes.integer, fk=(Texture, 'id'), default=1)
class Texture(Table): id = Column(DataTypes.integer, pk=True) format = Column(DataTypes.integer, fk=(TextureFormat, 'id'), default=1) resolutionX = Column(DataTypes.smallint, default=1024) resolutionY = Column(DataTypes.smallint, default=1024)
class TextureFormat(Table): id = Column(DataTypes.integer, pk=True) name = Column(DataTypes.char(3))
class Asset(Table): id = Column(DataTypes.integer, pk=True) name = Column(DataTypes.varchar(60)) assetTypeid = Column(DataTypes.integer, fk=(AssetType, 'id'), default=1)