forked from eatvio/eatvio-infra
57 lines
1.5 KiB
PHP
57 lines
1.5 KiB
PHP
<?php
|
|
|
|
namespace App\Messages;
|
|
|
|
use App\Models\Chat;
|
|
use App\Models\User;
|
|
use Faker\Factory as FakerFactory;
|
|
|
|
class ChatMessage
|
|
{
|
|
public int $id;
|
|
|
|
public mixed $payload;
|
|
|
|
public function __construct(int $id, mixed $payload)
|
|
{
|
|
$this->id = $id;
|
|
$this->payload = $payload;
|
|
}
|
|
|
|
public function someRandomFillFunction(): void
|
|
{
|
|
|
|
$users1 = User::all()->pluck('id');
|
|
$users2 = User::all()->pluck('id');
|
|
$faker = FakerFactory::create();
|
|
|
|
$users1->each(
|
|
function ($user1) use ($faker, $users2) {
|
|
$users2->each(
|
|
function ($user2) use ($faker, $user1) {
|
|
if ($user1 === $user2) {
|
|
return;
|
|
}
|
|
$data1 = [
|
|
'from_user_id' => $user2,
|
|
'to_user_id' => $user1,
|
|
'data' => $faker->text(),
|
|
];
|
|
|
|
$data2 = [
|
|
'from_user_id' => $user1,
|
|
'to_user_id' => $user2,
|
|
'data' => $faker->text(),
|
|
];
|
|
|
|
$newMessage = (new Chat())->forceFill($data1);
|
|
$newMessage->save();
|
|
$newMessage = (new Chat())->forceFill($data2);
|
|
$newMessage->save();
|
|
}
|
|
);
|
|
}
|
|
);
|
|
}
|
|
}
|