Files
HRM-System/scratch/verify_calendar_query.php

31 lines
1.0 KiB
PHP

<?php
require __DIR__ . '/../vendor/autoload.php';
$app = require_once __DIR__ . '/../bootstrap/app.php';
$app->make(Illuminate\Contracts\Console\Kernel::class)->bootstrap();
use App\Models\User;
use App\Models\Resignation;
use Illuminate\Support\Facades\DB;
echo "--- Verifying Calendar Query (Hide Completed Resignations) ---\n";
try {
$query = \App\Models\User::with(['employee.department', 'employee.shift', 'employee.branch'])
->whereHas('employee', function($q) {
$q->where('employee_status', 'active');
})
->whereNotIn('id', function($q) {
$q->select('employee_id')
->from('resignations')
->where('status', 'completed');
});
$sql = $query->toSql();
echo "SQL Generated:\n" . $sql . "\n";
$count = $query->count();
echo "Active users without completed resignation: $count\n";
echo "✅ Calendar Query Verification Passed\n";
} catch (\Exception $e) {
echo "❌ Calendar Query Verification Failed: " . $e->getMessage() . "\n";
}