# app/models/__init__.py

# وارد کردن ماژول‌ها به ترتیب درست
from .user import User
from .project import Project, ProjectEmployee, ProjectDocument
from .attendance import Attendance
from .contract import Contract, ContractInstallment
from .report import PhotoReport, Report, ReportTemplate, ReportSchedule
from .smart_report import SmartReport, EscrowReport
from .payment import Payment, PaymentIdentifier, CheckIssuance, PaymentControl, PaymentRequest, PaymentRelease
from .deposit import Deposit
from .check import ElectronicCheck, BankCheck, BankCheckBook
from .escrow import EscrowAccount, EscrowTransaction, SystemBankAccount
from .audit import AuditLog
from .notification import Notification
from .commission import SystemCommission
from app.models.commission_request import CommissionRequest
from .installment import Installment, InstallmentPayment
from .advertisement import Advertisement, AdvertisementRequest
from .contact import ContactMessage
from .check_transaction import CheckTransaction
from .approval import ApprovalWorkflow

__all__ = [
    'User',
    'Project', 'ProjectEmployee', 'ProjectDocument',
    'Attendance',
    'Contract', 'ContractInstallment',
    'PhotoReport', 'Report', 'ReportTemplate', 'ReportSchedule',
    'SmartReport', 'EscrowReport',
    'Payment', 'PaymentIdentifier', 'CheckIssuance', 'PaymentControl', 'PaymentRequest', 'PaymentRelease',
    'Deposit',
    'ElectronicCheck', 'BankCheck', 'BankCheckBook',
    'EscrowAccount', 'EscrowTransaction', 'SystemBankAccount',
    'AuditLog',
    'Notification',
    'SystemCommission',
    'CommissionRequest',
    'Installment', 'InstallmentPayment',
    'Advertisement', 'AdvertisementRequest',
    'ContactMessage',
    'CheckTransaction',
    'ApprovalWorkflow'
]