last login
This commit is contained in:
@@ -230,6 +230,9 @@ class LoginService(BaseService):
|
||||
"message_key": "invalid_username_or_password",
|
||||
}
|
||||
return ResponseHelper.success(data=invalid_data)
|
||||
#
|
||||
# last_login
|
||||
Members.set_member_last_login(member.uid)
|
||||
|
||||
user_data = {}
|
||||
user_data["id"] = member.id,
|
||||
|
||||
+15
-1
@@ -26,6 +26,8 @@ class Members(db.Model):
|
||||
option_name = db.Column(db.String(100), nullable=True)
|
||||
next_billing= db.Column(db.DateTime(timezone=False))
|
||||
trial_end = db.Column(db.DateTime(timezone=False))
|
||||
last_login = db.Column(db.DateTime(timezone=False), server_default=func.now(), onupdate=func.now())
|
||||
|
||||
# "account_id": self.account_id,
|
||||
def to_dict(self):
|
||||
return {
|
||||
@@ -40,6 +42,7 @@ class Members(db.Model):
|
||||
"status": self.status,
|
||||
"added": self.added.isoformat() if self.added else None,
|
||||
"updated": self.updated.isoformat() if self.updated else None,
|
||||
"last_login" : self.last_login.isoformat() if self.last_login else None,
|
||||
"email": self.email,
|
||||
"account_name": self.account_name,
|
||||
"firstname": self.firstname,
|
||||
@@ -86,6 +89,17 @@ class Members(db.Model):
|
||||
member.profile_completed = datetime.now(timezone.utc)
|
||||
return member.profile_completed
|
||||
|
||||
@classmethod
|
||||
def set_member_last_login(cls, uid):
|
||||
member = cls.query.filter_by(uid=str(uid)).first()
|
||||
|
||||
if not member:
|
||||
logger.info(f"User UID = {uid} found")
|
||||
return None
|
||||
|
||||
member.last_login = datetime.now(timezone.utc)
|
||||
return member.last_login
|
||||
|
||||
|
||||
@classmethod
|
||||
def add_member(cls, firstname, lastname, email, username,password, country, trials_days = 90):
|
||||
@@ -189,7 +203,7 @@ class Members(db.Model):
|
||||
logger.info(f"Get Recent Member Login")
|
||||
|
||||
# Order by created_at descending (newest first)
|
||||
query = query.order_by(cls.added.desc())
|
||||
query = query.order_by(cls.last_login.desc())
|
||||
query = query.limit(limit).offset(0)
|
||||
|
||||
return query.all()
|
||||
@@ -91,7 +91,7 @@ class Products(db.Model):
|
||||
"""
|
||||
Return all offers in dictionary format.
|
||||
"""
|
||||
product_list = cls.query.all()
|
||||
product_list = cls.query.order_by(cls.list_order.asc()).all()
|
||||
|
||||
if not product_list:
|
||||
raise ValueError(f"No available Products")
|
||||
|
||||
Reference in New Issue
Block a user