Archived
1
0
Fork 0

initial commit

This commit is contained in:
Henrik Hautakoski 2021-06-28 17:33:29 +01:00
commit 1e1aa7d461
215 changed files with 35140 additions and 0 deletions

View file

@ -0,0 +1,25 @@
<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
$this->call(SettingsSeeders\ProfessionsTableSeeder::class);
$this->call(DevelopmentSeeders\UserTableSeeder::class);
$this->call(DevelopmentSeeders\CharacterTableSeeder::class);
$this->call(DevelopmentSeeders\ItemTableSeeder::class);
$this->call(DevelopmentSeeders\RecipeCategoryTableSeeder::class);
$this->call(DevelopmentSeeders\RecipeTableSeeder::class);
$this->call(DevelopmentSeeders\CharacterRecipesTableSeeder::class);
}
}

View file

@ -0,0 +1,30 @@
<?php
namespace Database\Seeders\DevelopmentSeeders;
use Illuminate\Database\Seeder;
use App\Models\Recipe;
use App\Models\Character;
class CharacterRecipesTableSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
foreach(Character::all() as $character) {
foreach($character->professions as $ch_prof) {
$recipes = Recipe::where('profession_id', $ch_prof->profession->id)->get()
->random(rand(10, 50));
$ch_prof->recipes()->attach($recipes);
}
}
}
}

View file

@ -0,0 +1,27 @@
<?php
namespace Database\Seeders\DevelopmentSeeders;
use Illuminate\Database\Seeder;
use App\Models\Profession;
use App\Models\Character;
use App\Models\CharacterProfession;
class CharacterTableSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
for($i = 0; $i < 50; $i++) {
Character::factory()
->hasRandomExistingProfessions(2)
->create();
}
}
}

View file

@ -0,0 +1,20 @@
<?php
namespace Database\Seeders\DevelopmentSeeders;
use Illuminate\Database\Seeder;
use App\Models\Item;
class ItemTableSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
Item::factory(1000)->create();
}
}

View file

@ -0,0 +1,20 @@
<?php
namespace Database\Seeders\DevelopmentSeeders;
use Illuminate\Database\Seeder;
use App\Models\RecipeCategory;
class RecipeCategoryTableSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
RecipeCategory::factory()->count(100)->create();
}
}

View file

@ -0,0 +1,33 @@
<?php
namespace Database\Seeders\DevelopmentSeeders;
use Illuminate\Database\Seeder;
use App\Models\Item;
use App\Models\Recipe;
use App\Models\RecipeCategory;
class RecipeTableSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
foreach(range(1, 500) as $index) {
$items = rand(1, 5);
$quantity = rand(1, 10);
Recipe::factory()
->randomExistingProfession()
->randomExistingCategory()
->randomExistingItem()
->hasAttached(Item::get()->random($items), ['quantity' => $quantity], 'reagents')
->create();
}
}
}

View file

@ -0,0 +1,23 @@
<?php
namespace Database\Seeders\DevelopmentSeeders;
use Illuminate\Database\Seeder;
use App\Models\User;
class UserTableSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
User::factory()->create([
'username' => 'admin',
'role' => 'admin',
]);
}
}

View file

@ -0,0 +1,29 @@
<?php
namespace Database\Seeders\SettingsSeeders;
use Illuminate\Database\Seeder;
use App\Models\Profession;
class ProfessionsTableSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
Profession::insert([
[ 'name' => 'Alchemy' ],
[ 'name' => 'Blacksmith' ],
[ 'name' => 'Cooking' ],
[ 'name' => 'Enchanting' ],
[ 'name' => 'Engineering' ],
[ 'name' => 'Jewelcrafting' ],
[ 'name' => 'Leatherworking' ],
[ 'name' => 'Tailoring' ]
]);
}
}