Php Rent Free !free! Weeks 99%
CREATE TABLE rent_free_weeks ( id INT AUTO_INCREMENT PRIMARY KEY, lease_id INT, free_week_number INT, -- Week number relative to lease start (1 to 52) free_week_start_date DATE, free_week_end_date DATE, reason VARCHAR(255), -- e.g., 'Promotional', 'Renovation', 'Holiday' is_processed BOOLEAN DEFAULT FALSE, FOREIGN KEY (lease_id) REFERENCES leases(id) ON DELETE CASCADE );
function generateInvoices($leaseId, $startDate, $endDate, $adjustedMonthlyRent) $invoices = []; $current = new DateTime($startDate); $end = new DateTime($endDate); while ($current <= $end) $invoiceDate = clone $current; $invoiceMonth = $invoiceDate->format('Y-m-01'); php rent free weeks
if ($isFree) $invoiceLines[] = [ 'date' => $currentDate->format('Y-m-d'), 'description' => "Week $weekCounter (Rent Free – " . $this->getReason($freeWeeks, $weekCounter) . ")", 'amount' => 0, 'is_free' => true ]; else $invoiceLines[] = [ 'date' => $currentDate->format('Y-m-d'), 'description' => "Week $weekCounter Rent", 'amount' => $lease['weekly_rent'], 'is_free' => false ]; CREATE TABLE rent_free_weeks ( id INT AUTO_INCREMENT PRIMARY