نسخة كاملة من مستودع سيرو عند ecfe7568 لتكون أساس تطبيق «انطلق». نُسخ المتعقَّب في git فقط (12,509 ملفاً / 302 م.ب) بـ git archive، لا `cp -r` — فاستُثنيت تلقائياً مخلفات البناء (build · node_modules · .dart_tool · .gradle · Pods ≈ 10.7 غ.ب) وكل ما يستثنيه .gitignore. هذا الكوميت **بلا أي تعديل عمداً** حتى يكون كل ما يليه فرقاً مقروءاً مقابل سيرو الأصلي. سيرو نفسه لم يُمسّ. ⚠️ لا يبني بعد: `.env` و`lib/env/env.g.dart` غير متعقَّبين في سيرو (وهذا صحيح — أسرار لكل مستأجر). كل تطبيق فلاتر هنا يحتاج .env خاصاً بانطلق ثم توليد env.g.dart عبر build_runner. لا تُنسخ أسرار سيرو. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
63 lines
1.6 KiB
PHP
Executable File
63 lines
1.6 KiB
PHP
Executable File
<?php
|
|
// ==========================================
|
|
// Cron Job: Remove Duplicate Records Daily
|
|
// Tables: driverWallet, paymentsDriverPoints
|
|
// ==========================================
|
|
|
|
// Load DB Connection
|
|
include "../../jwtconnect.php";
|
|
|
|
// Function to run cleanup query
|
|
function runCleanup($con, $deleteQuery, $tableName) {
|
|
try {
|
|
$stmt = $con->prepare($deleteQuery);
|
|
$stmt->execute();
|
|
|
|
echo "Cleanup completed for table: $tableName\n";
|
|
echo "Rows affected: " . $stmt->rowCount() . "\n\n";
|
|
} catch (Exception $e) {
|
|
echo "Error cleaning $tableName\n";
|
|
}
|
|
}
|
|
|
|
// ==========================================
|
|
// DELETE DUPLICATES FOR driverWallet
|
|
// ==========================================
|
|
|
|
$deleteDriverWallet = "
|
|
DELETE FROM driverWallet
|
|
WHERE id NOT IN (
|
|
SELECT id FROM (
|
|
SELECT
|
|
id,
|
|
ROW_NUMBER() OVER(PARTITION BY driverID ORDER BY dateCreated DESC) AS rn
|
|
FROM driverWallet
|
|
) AS subquery
|
|
WHERE rn = 1
|
|
);";
|
|
|
|
runCleanup($con, $deleteDriverWallet, "driverWallet");
|
|
|
|
|
|
// ==========================================
|
|
// DELETE DUPLICATES FOR paymentsDriverPoints
|
|
// ==========================================
|
|
|
|
$deletePaymentsPoints = "
|
|
DELETE FROM paymentsDriverPoints
|
|
WHERE id NOT IN (
|
|
SELECT id FROM (
|
|
SELECT
|
|
id,
|
|
ROW_NUMBER() OVER(PARTITION BY driverID ORDER BY created_at DESC) AS rn
|
|
FROM paymentsDriverPoints
|
|
) AS subquery
|
|
WHERE rn = 1
|
|
);";
|
|
|
|
runCleanup($con, $deletePaymentsPoints, "paymentsDriverPoints");
|
|
|
|
echo "Cron job completed successfully.\n";
|
|
|
|
?>
|