
    Ei                         d Z ddlmZmZmZ ddlmZ ddlmZ	 	 	 	 	 	 ddede
de
d	eee      d
ee   dee
   deeef   fdZy)zQ
Transaction Reports Services - Business logic for transaction report operations
    )OptionalDictAny)Session)get_transaction_reportsNdbpageper_pagefieldssearchmerchant_idreturnc                 $    t        | |||||      S )a&  
    Get transaction reports with pagination and field selection.
    
    This is a wrapper around the transactions service that can be extended
    with report-specific logic, formatting, or aggregations in the future.
    
    Args:
        db: Database session
        page: Page number (1-indexed)
        per_page: Items per page (max 100)
        fields: List of relationship fields to include
        search: Search term
        merchant_id: Filter by merchant ID
        
    Returns:
        Dict with paginated transaction report data
    r   r	   r
   r   r   r   ))get_transaction_reports_from_transactionsr   s         l/var/www/html/hwPaymentPortal-be-dev/hw-payment-portal-api/src/apps/reports/services/transaction_services.pyr   r      s#    2 5     )   
   NNN)__doc__typingr   r   r   sqlalchemy.ormr   src.apps.transactions.servicesr   r   intliststr r   r   <module>r      s    ' & " p
 "& !%  
    T#Y	 
 SM  #  
#s(^ r   