Provison actions
This commit is contained in:
@@ -17,8 +17,9 @@ from .members_products import MembersProducts
|
||||
from .members_actions import MembersActions
|
||||
from .members_pending import MembersPending
|
||||
from .products_details import ProductsDetails
|
||||
from .provision_actions import ProvisionActions
|
||||
|
||||
__all__ = ['Members','Customer', 'Account', 'Products',
|
||||
'MembersProducts', 'MembersActions', 'MembersPending', 'ProductsDetails', 'Loan', 'Transaction', 'Repayment',
|
||||
'MembersProducts', 'MembersActions', 'MembersPending', 'ProductsDetails', 'ProvisionActions', 'Loan', 'Transaction', 'Repayment',
|
||||
'LoanCharge', 'Offer', 'Charge', 'RACCheck', 'LoanRepaymentSchedule',
|
||||
'TransactionOffer', 'RepaymentsData', 'Salary']
|
||||
@@ -0,0 +1,62 @@
|
||||
from datetime import datetime, timezone, timedelta
|
||||
from itertools import product
|
||||
from app.extensions import db
|
||||
from sqlalchemy.exc import IntegrityError
|
||||
from sqlalchemy.orm import relationship
|
||||
from dateutil.relativedelta import relativedelta
|
||||
from datetime import timedelta
|
||||
import logging
|
||||
from sqlalchemy import and_, or_, not_
|
||||
from sqlalchemy.sql import func
|
||||
import json
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
class ProvisionActions(db.Model):
|
||||
__tablename__ = 'provision_actions'
|
||||
|
||||
id = db.Column(
|
||||
db.Integer,
|
||||
primary_key=True,
|
||||
autoincrement=True,
|
||||
)
|
||||
|
||||
uid = db.Column(db.String(150), nullable=True)
|
||||
member_id = db.Column(db.Integer, nullable=False)
|
||||
product_uid = db.Column(db.String(100), nullable=False)
|
||||
action = db.Column(db.String(100), nullable=False)
|
||||
added = db.Column(db.DateTime(timezone=True), server_default=func.now())
|
||||
|
||||
|
||||
|
||||
@classmethod
|
||||
def get_provision_action_by_member_id(cls, member_id, limit):
|
||||
provision_action = cls.query.all()
|
||||
provision_action = cls.query.filter_by(member_id=member_id).limit(limit).all()
|
||||
if not provision_action:
|
||||
return None
|
||||
return provision_action
|
||||
|
||||
@classmethod
|
||||
def get_provision_action_by_product_uid(cls, product_uid,limit):
|
||||
provision_action = cls.query.all()
|
||||
provision_action = cls.query.filter_by(product_uid=product_uid).limit(limit).all()
|
||||
if not provision_action:
|
||||
return None
|
||||
return provision_action
|
||||
|
||||
|
||||
def to_dict(self):
|
||||
"""
|
||||
Convert the Loan object to a dictionary format for JSON serialization.
|
||||
"""
|
||||
return {
|
||||
'id': self.id,
|
||||
'uid': self.uid,
|
||||
'product_uid': self.product_uid,
|
||||
'action': self.action,
|
||||
'added': self.added,
|
||||
}
|
||||
|
||||
def __repr__(self):
|
||||
return f'<ProvisionActions {self.id}>'
|
||||
Reference in New Issue
Block a user