Seeds
This commit is contained in:
45
app/tests/extension/Seeds/BrokerContracts.php
Normal file
45
app/tests/extension/Seeds/BrokerContracts.php
Normal file
@ -0,0 +1,45 @@
|
||||
<?php
|
||||
namespace Tests\Extension\Seeds;
|
||||
|
||||
use Tests\Extension\AbstractSeed;
|
||||
|
||||
class BrokerContracts extends AbstractSeed
|
||||
{
|
||||
public function getDependencies(): array
|
||||
{
|
||||
return [
|
||||
Brokers::class,
|
||||
Proyectos::class,
|
||||
];
|
||||
}
|
||||
|
||||
public function run(): void
|
||||
{
|
||||
$brokers = $this->loadValues('brokers', columns: 'rut');
|
||||
$projects = $this->loadValues('proyecto', columns: 'id');
|
||||
|
||||
$data = [];
|
||||
foreach ($projects as $project) {
|
||||
$count = $this->faker->numberBetween(1, count($brokers));
|
||||
for ($i = 0; $i < $count; $i++) {
|
||||
$data []= [
|
||||
'broker_rut' => $brokers[$i],
|
||||
'project_id' => $project,
|
||||
'commission' => $this->faker->randomFloat(4, 0, 1),
|
||||
];
|
||||
}
|
||||
}
|
||||
$this->table('broker_contracts')->insertValues($data)->save();
|
||||
|
||||
$contracts = $this->loadValues('broker_contracts', columns: 'id');
|
||||
$stateData = [];
|
||||
foreach ($contracts as $contract) {
|
||||
$stateData[]= [
|
||||
'contract_id' => $contract,
|
||||
'date' => $this->faker->dateTimeBetween('-1 year'),
|
||||
'type' => 1
|
||||
];
|
||||
}
|
||||
$this->table('broker_contract_states')->insertValues($stateData)->save();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user