From 3b2ecda243ae7d8baefd11b84ba624e6b67226f4 Mon Sep 17 00:00:00 2001 From: snipe Date: Sat, 7 Oct 2017 02:46:04 -0700 Subject: [PATCH] Consumables factory/seeder --- database/factories/ConsumableFactory.php | 58 ++++++++++++++++++++++ database/factories/ManufacturerFactory.php | 11 ++++ database/seeds/ConsumableSeeder.php | 5 +- 3 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 database/factories/ConsumableFactory.php diff --git a/database/factories/ConsumableFactory.php b/database/factories/ConsumableFactory.php new file mode 100644 index 0000000000..ba7fc03067 --- /dev/null +++ b/database/factories/ConsumableFactory.php @@ -0,0 +1,58 @@ +define(App\Models\Consumable::class, function (Faker\Generator $faker) { + return [ + 'user_id' => 1, + 'item_no' => $faker->numberBetween(1000000, 50000000), + 'order_number' => $faker->numberBetween(1000000, 50000000), + 'purchase_date' => $faker->dateTime(), + 'purchase_cost' => $faker->randomFloat(2, 1, 50), + 'qty' => $faker->numberBetween(5, 10), + 'min_amt' => $faker->numberBetween($min = 1, $max = 2), + ]; +}); + +$factory->state(App\Models\Consumable::class, 'cardstock', function ($faker) { + + return [ + 'name' => 'Cardstock (White)', + 'category_id' => 10, + 'manufacturer_id' => 10, + 'qty' => 10, + 'min_amt' => 2 + ]; +}); + +$factory->state(App\Models\Consumable::class, 'paper', function ($faker) { + + return [ + 'name' => 'Laserjet Paper (Ream)', + 'category_id' => 10, + 'manufacturer_id' => 10, + 'qty' => 20, + 'min_amt' => 2 + ]; +}); + +$factory->state(App\Models\Consumable::class, 'ink', function ($faker) { + + return [ + 'name' => 'Laserjet Toner (black)', + 'category_id' => 11, + 'manufacturer_id' => 5, + 'qty' => 20, + 'min_amt' => 2 + ]; +}); + + + diff --git a/database/factories/ManufacturerFactory.php b/database/factories/ManufacturerFactory.php index c09e7dcbe9..407e5f407e 100644 --- a/database/factories/ManufacturerFactory.php +++ b/database/factories/ManufacturerFactory.php @@ -91,3 +91,14 @@ $factory->state(App\Models\Manufacturer::class, 'adobe', function ($faker) { 'support_url' => 'https://support.adobe.com' ]; }); + +$factory->state(App\Models\Manufacturer::class, 'avery', function ($faker) { + return [ + 'name' => 'Avery', + 'url' => 'https://avery.com', + 'support_url' => 'https://support.avery.com' + ]; +}); + + + diff --git a/database/seeds/ConsumableSeeder.php b/database/seeds/ConsumableSeeder.php index 4f538ed66f..0e5577cdb9 100644 --- a/database/seeds/ConsumableSeeder.php +++ b/database/seeds/ConsumableSeeder.php @@ -7,6 +7,9 @@ class ConsumableSeeder extends Seeder public function run() { Consumable::truncate(); - factory(Consumable::class, 25)->create(); + DB::table('consumables_users')->truncate(); + factory(Consumable::class, 1)->states('cardstock')->create(); // 1 + factory(Consumable::class, 1)->states('paper')->create(); // 2 + factory(Consumable::class, 1)->states('ink')->create(); // 3 } }