233 lines
9.2 KiB
PHP
233 lines
9.2 KiB
PHP
<?php
|
|
|
|
namespace Database\Seeders;
|
|
|
|
use App\Enums\KeywordCategoryEnum;
|
|
use App\Models\Keyword;
|
|
use App\Models\Keywordable;
|
|
use Illuminate\Database\Seeder;
|
|
|
|
class KeywordSeeder extends Seeder
|
|
{
|
|
/**
|
|
* Run the database seeds.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function run()
|
|
{
|
|
$id = 0;
|
|
/**
|
|
* * INGREDIENTS
|
|
*/
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[0];
|
|
$keyword->label = "Sophistication";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[0];
|
|
$keyword->label = "Exotisme";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[0];
|
|
$keyword->label = "Fun";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[1];
|
|
$keyword->label = "Clean label/naturalité";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[1];
|
|
$keyword->label = "Végétarien/vegan";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[1];
|
|
$keyword->label = "Bien être";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[2];
|
|
$keyword->label = "Solidarité";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[2];
|
|
$keyword->label = "Écologie";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[3];
|
|
$keyword->label = "Emballage individuel";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[3];
|
|
$keyword->label = "Facilité de mise en oeuvre";
|
|
$keyword->save();
|
|
|
|
/**
|
|
* * PRODUCTS
|
|
*/
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4];
|
|
$keyword->label = "Sophistication";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4];
|
|
$keyword->label = "Exotisme";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4];
|
|
$keyword->label = "Variété des sens";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4];
|
|
$keyword->label = "Fun";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[5];
|
|
$keyword->label = "Minceur";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[5];
|
|
$keyword->label = "Énergie/Bien-être";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[5];
|
|
$keyword->label = "Cosmétique";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[6];
|
|
$keyword->label = "Manipulation produit";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[6];
|
|
$keyword->label = "Gain de temps";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[6];
|
|
$keyword->label = "Nomadisme";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[7];
|
|
$keyword->label = "Naturalité";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[7];
|
|
$keyword->label = "Végétal";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[7];
|
|
$keyword->label = "Médical";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[8];
|
|
$keyword->label = "Solidarité";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[8];
|
|
$keyword->label = "Écologie";
|
|
$keyword->save();
|
|
|
|
/**
|
|
* * PACKAGING
|
|
*/
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[9];
|
|
$keyword->label = "Sophistication";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[9];
|
|
$keyword->label = "Exotisme";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[9];
|
|
$keyword->label = "Fun";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[10];
|
|
$keyword->label = "Manipulation produit";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[10];
|
|
$keyword->label = "Gain de temps";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[10];
|
|
$keyword->label = "Nomadisme";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[11];
|
|
$keyword->label = "Décor/forme";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[11];
|
|
$keyword->label = "Matériaux";
|
|
$keyword->save();
|
|
|
|
$keyword = new Keyword();
|
|
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[12];
|
|
$keyword->label = "Écologie";
|
|
$keyword->save();
|
|
|
|
// Seeder for keywordables table.
|
|
Keyword::query()->get()->each(function (Keyword $keyword) {
|
|
Keywordable::factory(mt_rand(1, 3))->make()->each(function (Keywordable $keywordable) use ($keyword) {
|
|
if (
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[1]->value ||
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[2]->value ||
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[3]->value ||
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[4]->value
|
|
) {
|
|
$keywordable->keyword()->associate($keyword);
|
|
$keywordable->model = 'App\Models\Ingredients';
|
|
$keywordable->saveOrFail();
|
|
} elseif (
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[5]->value ||
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[6]->value ||
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[7]->value ||
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[8]->value ||
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[9]->value
|
|
) {
|
|
$keywordable->keyword()->associate($keyword);
|
|
$keywordable->model = 'App\Models\Products';
|
|
$keywordable->saveOrFail();
|
|
} elseif (
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[10]->value ||
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[11]->value ||
|
|
$keyword->keyword_cat->value === \collect(KeywordCategoryEnum::cases())[12]->value
|
|
) {
|
|
$keywordable->keyword()->associate($keyword);
|
|
$keywordable->model = 'App\Models\Packaging';
|
|
$keywordable->saveOrFail();
|
|
}
|
|
});
|
|
});
|
|
}
|
|
}
|