config changes

This commit is contained in:
2026-03-09 15:48:25 +05:30
parent 2073b3fef5
commit 5f5eb1b8b6
1774 changed files with 313581 additions and 17 deletions

View File

@@ -10,7 +10,7 @@ from decimal import Decimal
from typing import Dict, Any, List
from logging_config import get_logger
from db.models import NEFTInwardRecord
from db.models import NEFTInwardRecord # Ensure NEFTInwardRecord has bank_code field
logger = get_logger(__name__)
@@ -106,19 +106,13 @@ class NEFTDataMapper:
# -------------------------
@classmethod
def map_transaction(cls, parsed_txn: Dict[str, Any]) -> NEFTInwardRecord:
def map_transaction(cls, parsed_txn: Dict[str, Any], bankcode: str) -> NEFTInwardRecord:
"""
Map a single parsed NEFT transaction (dict) to NEFTInwardRecord.
Expects keys as emitted by SFTPUtrParser:
- utr, amount, journal_no, status, sub_msg_type
- tran_date (YYYYMMDD), tran_time (ignored here)
- ifsc_sender, ifsc_recvr
- remitter_acct_no, sender_acct_name
- remitter_detail, remmiter_info
- benef_acct_no, beneficiary_details
- benef_address
- reject_code, reject_reason (optional)
Args:
parsed_txn: Dict emitted by SFTPUtrParser
bankcode : Bank code for this transaction (mapped to NEFTInwardRecord.bank_code)
"""
try:
# Amount handling
@@ -141,6 +135,8 @@ class NEFTDataMapper:
recvr_acct_name = (parsed_txn.get('beneficiary_details') or '').strip()
record = NEFTInwardRecord(
bank_code=bankcode,
txnind=txnind,
jrnl_id=(parsed_txn.get('journal_no') or '').strip(),
ref_no=(parsed_txn.get('utr') or '').strip(),
@@ -168,16 +164,20 @@ class NEFTDataMapper:
raise
@classmethod
def map_transactions(cls, parsed_transactions: List[Dict[str, Any]]) -> List[NEFTInwardRecord]:
def map_transactions(cls, parsed_transactions: List[Dict[str, Any]], bankcode: str) -> List[NEFTInwardRecord]:
"""
Map a list of parsed NEFT transactions to NEFTInwardRecord objects.
Args:
parsed_transactions: List of dicts from SFTPUtrParser
bankcode : Bank code to be applied to each record
"""
records: List[NEFTInwardRecord] = []
for txn in parsed_transactions:
try:
rec = cls.map_transaction(txn)
rec = cls.map_transaction(txn, bankcode)
records.append(rec)
except Exception as e:
logger.warning(f"Skipping transaction due to error: {e}")
logger.info(f"Mapped {len(records)} NEFT transactions")
return records
logger.info(f"Mapped {len(records)} NEFT transactions for bank {bankcode}")
return records