Fix model

This commit is contained in:
CHIEFSOFT\ameye
2025-07-21 21:54:11 -04:00
parent 2d0898e61b
commit d545e689fd
6 changed files with 29 additions and 10 deletions
+3
View File
@@ -32,6 +32,9 @@ class BaseService:
"last_name": lastname,
"pending_id": pending_id,
}
logger.info(f"Send Email DATA ***** {pending_member}")
jwt_part = jwt.encode(
{"user": pending_member, 'exp': datetime.datetime.utcnow() + datetime.timedelta(minutes=3330)},
BaseService.JWT_SECRET_KEY, algorithm='HS256'
+1 -1
View File
@@ -37,7 +37,7 @@ class LoginService(BaseService):
reset_data = PasswordReset.create_reset(username=username)
BaseService.send_resetpass_mail(member.email, member.uid, member.id, "FF","LL") #pending_uid, pending_id, firstname, lastname
BaseService.send_resetpass_mail(member.email, str(member.uid), member.id, "FF","LL") #pending_uid, pending_id, firstname, lastname
response_data = {
+3 -4
View File
@@ -1,12 +1,10 @@
from flask import jsonify
from app.utils.logger import logger
from app.api.services.base_service import BaseService
from app.models.transaction import Transaction
from app.models.loan import Loan
from sqlalchemy import func, desc
from datetime import datetime, timedelta, timezone
from app.extensions import db
from app.api.enums.transaction_type import TransactionType
from app.models import MembersProducts, Products, Members, ProductsDetails, ProductsDetails, ProvisionActions
class OfficeDashboardService(BaseService):
@@ -101,8 +99,9 @@ class OfficeDashboardService(BaseService):
# },
# "recent_transactions": recent_transactions_data
# }
subscription = MembersProducts.get_dash_recent_subscription(15)
dashboard_data = {
"loans": {
"currency": "Naira",
"currency_text": "\u20a6",
+1 -1
View File
@@ -25,7 +25,7 @@ class Members(db.Model):
def to_dict(self):
return {
"id": self.id,
"uid": self.uid,
"uid": str(self.uid),
"username": self.account_id,
"account_id": self.username,
"password": self.password,
+7
View File
@@ -49,6 +49,13 @@ class MembersProducts(db.Model):
return None
return member_products
@classmethod
def get_dash_recent_subscription(cls, limit):
member_product = cls.query.limit(limit).all()
if not member_product:
return None
return member_product
@classmethod
def get_member_product_by_product_member_id(cls, member_id, product_id):
member_product = cls.query.filter_by(member_id=str(member_id), product_id=str(product_id)).first()
+14 -4
View File
@@ -10,7 +10,7 @@ from app.utils.logger import logger
class PasswordReset(db.Model):
__tablename__ = 'password_reset'
id = db.Column(db.String, primary_key=True)
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
uid = db.Column(db.String(150), nullable=False)
username = db.Column(db.String(35), nullable=False)
status = db.Column(db.Integer, nullable=True, default=0)
@@ -30,11 +30,21 @@ class PasswordReset(db.Model):
@classmethod
def create_reset(cls, username):
logger.info(f"Enter to reset the password********** "+username)
uid_val = str(uuid.uuid4())
logger.info(f"Enter to reset the password UID ***** "+uid_val)
data1 ={
'uid' :uid_val,
'username' : username,
'status' : 0,
'added' : datetime.now(timezone.utc),
'updated' : datetime.now(timezone.utc)
}
logger.info(f"Enter to reset the password DATA ***** {data1}")
pass_reset = cls(
uid=str(uuid.uuid4()),
uid=uid_val,
username=username,
status=0,
added=datetime.now(timezone.utc),
updated=datetime.now(timezone.utc)
)
@@ -42,7 +52,7 @@ class PasswordReset(db.Model):
logger.info(f"About to reset the password**********")
try:
db.session.add(pass_reset)
# db.session.flush()
db.session.flush()
logger.info(f"After Insert to reset the password**********")
except IntegrityError as err:
raise ValueError(f"****** ERROR Database integrity error: {err}")