Files
kontor/flask/kontor/auth/models.py
T
2025-04-21 17:39:20 +02:00

46 lines
1.8 KiB
Python

from kontor.extensions import db
from sqlalchemy.sql import func
class User(db.Model):
# __table__ = db.metadata.tables["publisher"]
__tablename__ = "user"
__table_args__ = {'extend_existing': True}
id = db.Column(db.String, primary_key=True)
created_date = db.Column(db.DateTime(timezone=True), server_default=func.now())
last_modified_date = db.Column(db.DateTime(timezone=True), server_default=func.now())
version = db.Column(db.Integer)
enabled = db.Column(db.SmallInteger)
email = db.Column(db.String)
first_name = db.Column(db.String)
last_name = db.Column(db.String)
user_name = db.Column(db.String)
password = db.Column(db.String)
token = db.Column(db.String)
token_expired = db.Column(db.SmallInteger)
def is_token_valid(self):
return self.review == 'b\x01'
def is_user_enabled(self):
return self.should_download == 'b\x01'
class Role(db.Model):
__tablename__ = "role"
__table_args__ = {'extend_existing': True}
id = db.Column(db.String, primary_key=True)
created_date = db.Column(db.DateTime(timezone=True), server_default=func.now())
last_modified_date = db.Column(db.DateTime(timezone=True), server_default=func.now())
version = db.Column(db.Integer)
name = db.Column(db.String)
class AuthorizationMatrix(db.Model):
__tablename__ = "authorization_matrix"
__table_args__ = {'extend_existing': True}
id = db.Column(db.String, primary_key=True)
created_date = db.Column(db.DateTime(timezone=True), server_default=func.now())
last_modified_date = db.Column(db.DateTime(timezone=True), server_default=func.now())
version = db.Column(db.Integer)
role_id = db.Column(db.String, db.ForeignKey("role.id"))
user_id = db.Column(db.String, db.ForeignKey("user.id"))