• Mahmoud Aglan's avatar
    feat(rentals): escalation tiers, dual utilities modes, bank-rate late fee, grace period · 8a66d739
    Mahmoud Aglan authored
    ## Schema (Phase_96_001)
    - escalation_type / escalation_rate / escalation_tiers_json — flat or tiered annual rent increases
    - utilities_mode / utilities_rent_pct / utilities_facility_pct / facility_monthly_cost — support rent%, facility-cost%, or both
    - payment_due_day — configurable per-contract (default day 5)
    - late_fee_bank_rate — annual bank rate for daily penalty calculation
    - grace_period_months / early_termination_months — additional contract terms
    - Data migration: backfills utilities_rent_pct from utilities_percentage
    
    ## Service layer
    - RentalContractService: computes escalated total_amount across flat/tiered modes; handles all utilities modes; recalculates VAT and grand_total
    - RentalInvoiceService: calcBase() now escalation-aware (by period); bulkGenerate skips grace months and uses payment_due_day; calcLateFee supports bank-rate daily formula
    - Seeds RENTAL_LATE_FEE_BANK_RATE business rule (27.25% annual)
    
    ## UI
    - contract_form: new sections for escalation (dynamic tiers table), utilities mode, payment terms, extra contract conditions; year-by-year preview
    - contract_show: mode-aware utilities display, escalation card, grace/termination info
    Co-Authored-By: 's avatarClaude Opus 4.8 <noreply@anthropic.com>
    8a66d739
Name
Last commit
Last update
..
contract_form.php Loading commit data...
contract_show.php Loading commit data...
entities.php Loading commit data...
entity_form.php Loading commit data...
entity_show.php Loading commit data...
index.php Loading commit data...
invoice_form.php Loading commit data...
invoice_show.php Loading commit data...