subMonths(rand(1, 24))->subDays(rand(0, 30)); $endDate = (clone $startDate)->addDays(rand(1, 5)); // 1 to 5 days later $numDays = $startDate->diffInDays($endDate) + 1; // Including start day ExternalEngagement::create([ 'faculty_id' => rand(1, 5), 'department_id' => rand(1, 5), 'activity' => $activities[array_rand($activities)], 'activity_description' => $activityDescriptions[array_rand($activityDescriptions)], 'inviting_organization' => $invitingOrganizations[array_rand($invitingOrganizations)], 'start_date' => $startDate->format('Y-m-d'), 'end_date' => $endDate->format('Y-m-d'), 'num_days' => $numDays, 'proof' => null, // Proof left null for now ]); } } }