/** * Run the database seeds. * * @return void */ public function run() { $weights = [['name' => 'Angler / Monkfish', 'type_id' => '1', 'weights' => [3 => ['lbs' => 25, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 30, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 30, 'oz' => 0, 'dr' => 0]]], ['name' => 'Bass', 'type_id' => '1', 'weights' => [3 => ['lbs' => 6, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 7, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 8, 'oz' => 0, 'dr' => 0]]], ['name' => 'Bream (Black)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 12, 'dr' => 0], 2 => ['lbs' => 3, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 3, 'oz' => 12, 'dr' => 0]]], ['name' => 'Bream (Gilthead)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 4, 'oz' => 8, 'dr' => 0], 2 => ['lbs' => 5, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 5, 'oz' => 0, 'dr' => 0]]], ['name' => 'Bream (Red)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 2, 'oz' => 8, 'dr' => 0], 1 => ['lbs' => 3, 'oz' => 8, 'dr' => 0]]], ['name' => 'Brill', 'type_id' => '2', 'weights' => [3 => ['lbs' => 2, 'oz' => 8, 'dr' => 0], 2 => ['lbs' => 4, 'oz' => 8, 'dr' => 0], 1 => ['lbs' => 5, 'oz' => 8, 'dr' => 0]]], ['name' => 'Bull Huss', 'type_id' => '3', 'weights' => [3 => ['lbs' => 9, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 10, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 10, 'oz' => 0, 'dr' => 0]]], ['name' => 'Coalfish', 'type_id' => '1', 'weights' => [3 => ['lbs' => 2, 'oz' => 8, 'dr' => 0], 2 => ['lbs' => 8, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 15, 'oz' => 0, 'dr' => 0]]], ['name' => 'Cod', 'type_id' => '1', 'weights' => [3 => ['lbs' => 5, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 12, 'oz' => 8, 'dr' => 0], 1 => ['lbs' => 17, 'oz' => 0, 'dr' => 0]]], ['name' => 'Conger', 'type_id' => '1', 'weights' => [3 => ['lbs' => 20, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 35, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 55, 'oz' => 0, 'dr' => 0]]], ['name' => 'Dab', 'type_id' => '2', 'weights' => [3 => ['lbs' => 1, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 1, 'oz' => 2, 'dr' => 0], 1 => ['lbs' => 1, 'oz' => 2, 'dr' => 0]]], ['name' => 'Flounder', 'type_id' => '2', 'weights' => [3 => ['lbs' => 1, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 2, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 2, 'oz' => 0, 'dr' => 0]]], ['name' => 'Garfish', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 4, 'dr' => 0], 2 => ['lbs' => 1, 'oz' => 12, 'dr' => 0], 1 => ['lbs' => 1, 'oz' => 12, 'dr' => 0]]], ['name' => 'Gurnard (Red)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 1, 'oz' => 8, 'dr' => 0], 1 => ['lbs' => 1, 'oz' => 8, 'dr' => 0]]], ['name' => 'Gurnard (Tub)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 2, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 3, 'oz' => 8, 'dr' => 0], 1 => ['lbs' => 4, 'oz' => 8, 'dr' => 0]]], ['name' => 'John Dory', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 4, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 4, 'oz' => 0, 'dr' => 0]]], ['name' => 'L.S. Dogfish', 'type_id' => '3', 'weights' => [3 => ['lbs' => 2, 'oz' => 6, 'dr' => 0], 2 => ['lbs' => 2, 'oz' => 12, 'dr' => 0], 1 => ['lbs' => 2, 'oz' => 12, 'dr' => 0]]], ['name' => 'Ling', 'type_id' => '1', 'weights' => [3 => ['lbs' => 5, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 13, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 18, 'oz' => 0, 'dr' => 0]]], ['name' => 'Mackerel', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 10, 'dr' => 0], 2 => ['lbs' => 2, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 2, 'oz' => 4, 'dr' => 0]]], ['name' => 'Mullet (Golden Grey)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 2, 'oz' => 4, 'dr' => 0], 2 => ['lbs' => 2, 'oz' => 4, 'dr' => 0], 1 => ['lbs' => 2, 'oz' => 4, 'dr' => 0]]], ['name' => 'Mullet (Grey)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 4, 'oz' => 4, 'dr' => 0], 2 => ['lbs' => 4, 'oz' => 4, 'dr' => 0], 1 => ['lbs' => 4, 'oz' => 4, 'dr' => 0]]], ['name' => 'Mullet (Red)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 4, 'dr' => 0], 2 => ['lbs' => 1, 'oz' => 8, 'dr' => 0], 1 => ['lbs' => 1, 'oz' => 8, 'dr' => 0]]], ['name' => 'Mullet (Thin Lipped)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 4, 'oz' => 4, 'dr' => 0], 2 => ['lbs' => 4, 'oz' => 4, 'dr' => 0], 1 => ['lbs' => 4, 'oz' => 4, 'dr' => 0]]], ['name' => 'Plaice', 'type_id' => '2', 'weights' => [3 => ['lbs' => 2, 'oz' => 8, 'dr' => 0], 2 => ['lbs' => 3, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 3, 'oz' => 0, 'dr' => 0]]], ['name' => 'Pollack', 'type_id' => '1', 'weights' => [3 => ['lbs' => 2, 'oz' => 8, 'dr' => 0], 2 => ['lbs' => 6, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 13, 'oz' => 0, 'dr' => 0]]], ['name' => 'Pouting', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 2, 'dr' => 0], 2 => ['lbs' => 2, 'oz' => 8, 'dr' => 0], 1 => ['lbs' => 2, 'oz' => 12, 'dr' => 0]]], ['name' => 'Ray (Blonde)', 'type_id' => '3', 'weights' => [3 => ['lbs' => 10, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 22, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 22, 'oz' => 0, 'dr' => 0]]], ['name' => 'Ray (Small Eyed)', 'type_id' => '3', 'weights' => [3 => ['lbs' => 7, 'oz' => 8, 'dr' => 0], 2 => ['lbs' => 9, 'oz' => 8, 'dr' => 0], 1 => ['lbs' => 9, 'oz' => 8, 'dr' => 0]]], ['name' => 'Ray (Spotted)', 'type_id' => '3', 'weights' => [3 => ['lbs' => 4, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 4, 'oz' => 8, 'dr' => 0], 1 => ['lbs' => 4, 'oz' => 8, 'dr' => 0]]], ['name' => 'Ray (Thornback)', 'type_id' => '3', 'weights' => [3 => ['lbs' => 9, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 10, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 10, 'oz' => 0, 'dr' => 0]]], ['name' => 'Rockling (3 Bearded)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 8, 'dr' => 0], 2 => ['lbs' => 1, 'oz' => 12, 'dr' => 0], 1 => ['lbs' => 1, 'oz' => 12, 'dr' => 0]]], ['name' => 'Scad', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 1, 'oz' => 2, 'dr' => 0], 1 => ['lbs' => 1, 'oz' => 2, 'dr' => 0]]], ['name' => 'Smoothound (All)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 8, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 10, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 10, 'oz' => 0, 'dr' => 0]]], ['name' => 'Sole', 'type_id' => '2', 'weights' => [3 => ['lbs' => 1, 'oz' => 12, 'dr' => 0], 2 => ['lbs' => 1, 'oz' => 12, 'dr' => 0], 1 => ['lbs' => 1, 'oz' => 12, 'dr' => 0]]], ['name' => 'Spurdog', 'type_id' => '3', 'weights' => [3 => ['lbs' => 5, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 10, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 10, 'oz' => 0, 'dr' => 0]]], ['name' => 'Trigger Fish', 'type_id' => '1', 'weights' => [3 => ['lbs' => 2, 'oz' => 8, 'dr' => 0], 2 => ['lbs' => 2, 'oz' => 12, 'dr' => 0], 1 => ['lbs' => 2, 'oz' => 12, 'dr' => 0]]], ['name' => 'Turbot', 'type_id' => '2', 'weights' => [3 => ['lbs' => 5, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 12, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 15, 'oz' => 0, 'dr' => 0]]], ['name' => 'Whiting', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 0, 'dr' => 0], 2 => ['lbs' => 2, 'oz' => 2, 'dr' => 0], 1 => ['lbs' => 2, 'oz' => 2, 'dr' => 0]]], ['name' => 'Wrasse (Ballan)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 4, 'oz' => 8, 'dr' => 0], 2 => ['lbs' => 5, 'oz' => 0, 'dr' => 0], 1 => ['lbs' => 5, 'oz' => 0, 'dr' => 0]]], ['name' => 'Wrasse (Cuckoo)', 'type_id' => '1', 'weights' => [3 => ['lbs' => 1, 'oz' => 2, 'dr' => 0], 2 => ['lbs' => 1, 'oz' => 4, 'dr' => 0], 1 => ['lbs' => 1, 'oz' => 8, 'dr' => 0]]]]; foreach ($weights as $request) { // Create ne Species $species = new Species(); $species->name = $request['name']; // Assign type and persist changes $species->type()->associate(Type::findOrFail($request['type_id'])); $species->save(); ksort($request['weights']); // Iterate through weights array and save it to the database foreach ($request['weights'] as $sectorId => $speciesWeight) { $weight = new Weight(); $weight->weight = $speciesWeight; $weight->sector()->associate(Sector::findOrFail($sectorId)); $weight->species()->associate($species); $weight->save(); } } }
/** * Run the database seeds. * * @return void */ public function run() { Type::create(['name' => 'No type']); Type::create(['name' => 'Flat Fish']); Type::create(['name' => 'Selachii']); }
/** * Update the specified resource in storage. * * @param SpeciesRequest|Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(SpeciesRequest $request, $id) { // Fetch the edited specie from the database $species = Species::findOrFail($id); DB::transaction(function () use($request, $species) { // Update the fields $species->name = $request['name']; $species->type()->associate(Type::findOrFail($request['type_id'])); $species->save(); foreach ($request['weights'] as $sectorId => $sectorWeight) { Weight::where('species_id', $species->id)->where('sector_id', $sectorId)->update(['weight' => Helpers::toDrams($sectorWeight)]); } }); flash()->success('Success!', "Species data has been updated!"); return redirect(route('admin.settings.species.index')); }
public function index() { $speciesTypes = Type::orderBy('id')->get(); return $this->respond(['data' => $this->speciesTypeTransformer->transformCollection($speciesTypes->all())]); }
/** * Returns an array of Species Types * * @return array */ public static function getSpeciesTypes() { $types = []; foreach (Type::all() as $type) { $types[$type->id] = $type->name; } return $types; }