61 lines
2.7 KiB
PHP
61 lines
2.7 KiB
PHP
<?php
|
|
|
|
namespace Database\Seeders;
|
|
|
|
use App\Models\Advance;
|
|
use App\Models\AdvanceType;
|
|
use App\Models\User;
|
|
use Illuminate\Database\Seeder;
|
|
|
|
class AdvanceSeeder extends Seeder
|
|
{
|
|
public function run(): void
|
|
{
|
|
$users = User::query()->orderBy('id')->pluck('id')->all();
|
|
$types = AdvanceType::query()->pluck('id', 'name')->all();
|
|
|
|
if (empty($users) || empty($types)) {
|
|
return;
|
|
}
|
|
|
|
$entries = [
|
|
['user_index' => 0, 'type' => 'Paliwo', 'amount' => 180.50, 'days_ago' => 1],
|
|
['user_index' => 1, 'type' => 'Hotel', 'amount' => 240.00, 'days_ago' => 2],
|
|
['user_index' => 2, 'type' => 'Wpłata', 'amount' => 500.00, 'days_ago' => 3],
|
|
['user_index' => 0, 'type' => 'Paliwo', 'amount' => 95.20, 'days_ago' => 6],
|
|
['user_index' => 1, 'type' => 'Hotel', 'amount' => 310.40, 'days_ago' => 8],
|
|
['user_index' => 3, 'type' => 'Paliwo', 'amount' => 150.10, 'days_ago' => 9],
|
|
['user_index' => 4, 'type' => 'Wpłata', 'amount' => 750.00, 'days_ago' => 10],
|
|
['user_index' => 2, 'type' => 'Hotel', 'amount' => 420.00, 'days_ago' => 12],
|
|
['user_index' => 5, 'type' => 'Paliwo', 'amount' => 205.30, 'days_ago' => 14],
|
|
['user_index' => 6, 'type' => 'Wpłata', 'amount' => 600.00, 'days_ago' => 15],
|
|
['user_index' => 0, 'type' => 'Hotel', 'amount' => 280.00, 'days_ago' => 17],
|
|
['user_index' => 1, 'type' => 'Paliwo', 'amount' => 120.00, 'days_ago' => 18],
|
|
['user_index' => 3, 'type' => 'Wpłata', 'amount' => 900.00, 'days_ago' => 20],
|
|
['user_index' => 4, 'type' => 'Hotel', 'amount' => 360.75, 'days_ago' => 22],
|
|
['user_index' => 5, 'type' => 'Paliwo', 'amount' => 175.25, 'days_ago' => 24],
|
|
['user_index' => 6, 'type' => 'Wpłata', 'amount' => 850.00, 'days_ago' => 26],
|
|
['user_index' => 2, 'type' => 'Paliwo', 'amount' => 165.15, 'days_ago' => 28],
|
|
['user_index' => 0, 'type' => 'Wpłata', 'amount' => 1200.00, 'days_ago' => 29],
|
|
['user_index' => 1, 'type' => 'Hotel', 'amount' => 540.20, 'days_ago' => 30],
|
|
['user_index' => 3, 'type' => 'Paliwo', 'amount' => 210.45, 'days_ago' => 33],
|
|
];
|
|
|
|
foreach ($entries as $index => $entry) {
|
|
$userId = $users[$entry['user_index']] ?? $users[0];
|
|
$typeId = $types[$entry['type']] ?? null;
|
|
|
|
if (! $typeId) {
|
|
continue;
|
|
}
|
|
|
|
Advance::create([
|
|
'date' => now()->subDays($entry['days_ago'])->toDateString(),
|
|
'user_id' => $userId,
|
|
'amount' => $entry['amount'],
|
|
'advance_type_id' => $typeId,
|
|
]);
|
|
}
|
|
}
|
|
}
|