Source code for ace.centralize.finance_data

from typing import List
from datetime import date


[docs] class FinanceData:
[docs] class CommissionDetailObject: TransactionDate: date CommissionnablePremium: float CommissionType: str CommissionAmount: float = 0.0 CommissionRate: float SplitPercent: float PolicyNumber: str AgentName: str
[docs] @staticmethod def get_payable_commission_lists(db_connection, start_date, end_date, agent_id) -> List[int]: sqlquery = """ select td.TransactionDetailId from Finance.TransactionDetail td join Finance.CommissionTransactionDetail ctd on ctd.TransactionDetailId =td.TransactionDetailId where PartyId=? and statusId = 1 ; """ cursor = db_connection.cursor cursor.execute(sqlquery, start_date, end_date, agent_id) data_list = cursor.fetchall() if cursor else None return data_list
[docs] @staticmethod def get_commission_details_by_id(db_connection, agent_id: int) -> CommissionDetailObject: sqlquery = """ select td.TransactionDetailId from Finance.TransactionDetail td join Finance.CommissionTransactionDetail ctd on ctd.TransactionDetailId =td.TransactionDetailId where PartyId=? and statusId = 1 ; """ cursor = db_connection.cursor cursor.execute(sqlquery, agent_id) data_list = cursor.fetchall() if cursor else None return data_list