subDays(rand(1, 30))->addHours(rand(0, 23))->addMinutes(rand(0, 59)); $endDate = (clone $startDate)->addDays(rand(0, 5))->addHours(rand(0, 23))->addMinutes(rand(0, 59)); $numDays = $startDate->diffInDays($endDate) + 1; // Create the record ActivitiesOrganised::create([ 'title' => $titles[array_rand($titles)], 'resource_person_name' => $resourcePersons[array_rand($resourcePersons)], 'resource_person_organization' => $organizations[array_rand($organizations)], 'target_audience' => $targetAudiences[array_rand($targetAudiences)], 'number_of_participants' => rand(20, 200), 'objective' => $objectives[array_rand($objectives)], 'outcomes' => $outcomes[array_rand($outcomes)], 'department_id' => rand(1, 5), 'faculty_id' => rand(1, 5), 'start_date' => $startDate->format('Y-m-d H:i:s'), 'end_date' => $endDate->format('Y-m-d H:i:s'), 'num_days' => $numDays, 'venue' => $venues[array_rand($venues)], 'activity_type' => $activityTypes[array_rand($activityTypes)], 'category' => $categories[array_rand($categories)], 'level' => $levels[array_rand($levels)], 'proof' => null, // Null for proof ]); } } }