rset [pass
This commit is contained in:
@@ -18,8 +18,10 @@ from .members_actions import MembersActions
|
||||
from .members_pending import MembersPending
|
||||
from .products_details import ProductsDetails
|
||||
from .provision_actions import ProvisionActions
|
||||
from .password_reset import PasswordReset
|
||||
|
||||
|
||||
__all__ = ['Members','Customer', 'Account', 'Products',
|
||||
'MembersProducts', 'MembersActions', 'MembersPending', 'ProductsDetails', 'ProvisionActions', 'Loan', 'Transaction', 'Repayment',
|
||||
'MembersProducts', 'MembersActions', 'MembersPending', 'ProductsDetails', 'ProvisionActions', 'PasswordReset','Loan', 'Transaction', 'Repayment',
|
||||
'LoanCharge', 'Offer', 'Charge', 'RACCheck', 'LoanRepaymentSchedule',
|
||||
'TransactionOffer', 'RepaymentsData', 'Salary']
|
||||
@@ -0,0 +1,47 @@
|
||||
from datetime import datetime, timezone
|
||||
from app.extensions import db
|
||||
from app.models.charge import Charge
|
||||
from sqlalchemy.orm import relationship
|
||||
from sqlalchemy.sql import func
|
||||
from sqlalchemy.exc import IntegrityError
|
||||
import uuid
|
||||
from app.utils.logger import logger
|
||||
|
||||
class PasswordReset(db.Model):
|
||||
__tablename__ = 'password_reset'
|
||||
|
||||
id = db.Column(db.String, primary_key=True)
|
||||
uid = db.Column(db.String(150), nullable=True)
|
||||
username = db.Column(db.String, nullable=False)
|
||||
status = db.Column(db.Integer, nullable=True, default=0)
|
||||
added = db.Column(db.DateTime(timezone=True), server_default=func.now())
|
||||
updated = db.Column(db.DateTime(timezone=True), server_default=func.now(), onupdate=func.now())
|
||||
|
||||
def to_dict(self):
|
||||
return {
|
||||
"id": self.id,
|
||||
"uid": self.uid,
|
||||
"username": self.account_id,
|
||||
"status": self.status,
|
||||
"added": self.added.isoformat() if self.added else None,
|
||||
"updated": self.updated.isoformat() if self.updated else None,
|
||||
}
|
||||
|
||||
def __repr__(self):
|
||||
return f'<pPassReset {self.id} - {self.amount}>'
|
||||
|
||||
|
||||
@classmethod
|
||||
def create_reset(cls, username):
|
||||
pass_reset = cls(
|
||||
uid=str(uuid.uuid4()),
|
||||
username=username,
|
||||
created_at=datetime.now(timezone.utc),
|
||||
updated_at=datetime.now(timezone.utc)
|
||||
)
|
||||
|
||||
try:
|
||||
db.session.add(pass_reset)
|
||||
except IntegrityError as err:
|
||||
raise ValueError(f"Database integrity error: {err}")
|
||||
return pass_reset
|
||||
Reference in New Issue
Block a user