Commit a462b03f by aagusti

query from

1 parent b32f1a44
...@@ -102,7 +102,7 @@ class DefaultModel(CommonModel): ...@@ -102,7 +102,7 @@ class DefaultModel(CommonModel):
def query_from(cls, db_session=DBSession, columns=None, filters=None): def query_from(cls, db_session=DBSession, columns=None, filters=None):
query = db_session.query().select_from(cls) query = db_session.query().select_from(cls)
for c in columns: for c in columns:
query = query.add_columns(c.sqla_expr) query = query.add_columns(c)
return query return query
@classmethod @classmethod
......
...@@ -67,7 +67,7 @@ class UserResourcePermission(UserResourcePermissionMixin, Base): ...@@ -67,7 +67,7 @@ class UserResourcePermission(UserResourcePermissionMixin, Base):
pass pass
class User(UserMixin, BaseModel, CommonModel, Base): class User(UserMixin, BaseModel, DefaultModel, Base):
last_login_date = Column(DateTime(timezone=True), nullable=True) last_login_date = Column(DateTime(timezone=True), nullable=True)
registered_date = Column(DateTime(timezone=True), registered_date = Column(DateTime(timezone=True),
nullable=False, nullable=False,
...@@ -129,6 +129,11 @@ class User(UserMixin, BaseModel, CommonModel, Base): ...@@ -129,6 +129,11 @@ class User(UserMixin, BaseModel, CommonModel, Base):
def get_by_token(cls, token): def get_by_token(cls, token):
return DBSession.query(cls).filter_by(security_code=token) return DBSession.query(cls).filter_by(security_code=token)
@classmethod
def query_register(cls):
return cls.query_from(columns=[cls.email, cls.user_name, cls.registered_date,
cls.last_login_date])
# @classmethod # @classmethod
# def get_departemen_id(cls, user_id): # def get_departemen_id(cls, user_id):
...@@ -172,6 +177,9 @@ class ExternalIdentity(ExternalIdentityMixin, CommonModel, Base): ...@@ -172,6 +177,9 @@ class ExternalIdentity(ExternalIdentityMixin, CommonModel, Base):
return cls.query().filter_by(local_user_id=user.id) return cls.query().filter_by(local_user_id=user.id)
@classmethod @classmethod
@classmethod
def external(cls, user): def external(cls, user):
return cls.query_user(user).count()>0 return cls.query_user(user).count()>0
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!