generated from liutk/owl-admin-base
46 lines
1.6 KiB
PHP
46 lines
1.6 KiB
PHP
<?php
|
|
|
|
namespace Database\Factories;
|
|
|
|
use App\Models\Employee;
|
|
use App\Models\Keyword;
|
|
use App\Models\Store;
|
|
use Illuminate\Database\Eloquent\Factories\Factory;
|
|
|
|
/**
|
|
* @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\Store>
|
|
*/
|
|
class StoreFactory extends Factory
|
|
{
|
|
protected $model = Store::class;
|
|
|
|
/**
|
|
* Define the model's default state.
|
|
*
|
|
* @return array<string, mixed>
|
|
*/
|
|
public function definition(): array
|
|
{
|
|
$master = Employee::where('store_id', 0)->inRandomOrder()->first();
|
|
return [
|
|
'title' => $this->faker->word(),
|
|
'master_id' => $master->id,
|
|
'category_id' => Keyword::where('lv', 3)->where('parent_key', 'store_category')->inRandomOrder()->value('key'),
|
|
'business_id' => Keyword::where('lv', 2)->where('parent_key', 'store_business')->inRandomOrder()->value('key'),
|
|
'level_id' => Keyword::where('lv', 2)->where('parent_key', 'store_level')->inRandomOrder()->value('key'),
|
|
'region' => ['city' => '通辽市', 'code' => 150500, 'street' => null, 'cityCode' => 150500, 'district' => null, 'province' => '内蒙古自治区', 'districtCode' => 0, 'provinceCode' => 150000],
|
|
'lon' => '107.11352677389',
|
|
'lat' => '29.167519061656',
|
|
'address' => '重庆市南川区东城街道办事处东环路三号',
|
|
];
|
|
}
|
|
|
|
public function configure(): static
|
|
{
|
|
return $this->afterMaking(function (Store $model) {
|
|
})->afterCreating(function (Store $model) {
|
|
Employee::where('id', $model->master_id)->update(['master_store_id' => $model->id]);
|
|
});
|
|
}
|
|
}
|