/** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create($ppoid, $templateid = null) { $ppo = Ppo::select('id', 'name')->findOrFail($ppoid); if ($templateid) { $item = PpoItem::select('medication_id', 'is_active', 'ppo_section_id', 'dose_base', 'dose_calculation_type_id', 'fixed_dose_result', 'dose_unit_id', 'dose_route_id', 'instruction', 'is_instruction_input', 'is_start_date', 'is_frequency_input', 'is_duration_input', 'is_mitte_input', 'is_repeat_input', 'mitte_unit_id', 'id')->with('lucodes')->findOrFail($templateid); $item->id = null; //because detail is not a db field, so we have to get() first then lists() $templates = PpoItem::where('medication_id', $item->medication_id)->get()->lists('detail', 'id')->toArray(); $templateSelected = $templateid; $lucodes = Lucode::where('medication_id', $item->medication_id)->get()->lists('detail', 'id')->toArray(); $lucodesSelected = $item->lucodes->pluck('id')->all(); } else { $item = new PpoItem(); $lucodes = array(); $lucodesSelected = null; $templates = array(); $templateSelected = null; } $medications = Medication::lists('name', 'id'); $ppoSections = PpoSection::lists('name', 'id'); $doseCalculationTypes = DoseCalculationType::lists('name', 'id'); $doseUnits = DoseUnit::lists('name', 'id'); $doseRoutes = DoseRoute::lists('name', 'id'); $mitteUnits = MitteUnit::lists('name', 'id'); return view('ppo_items.create', compact('templates', 'templateSelected', 'lucodes', 'lucodesSelected', 'item', 'medications', 'ppoSections', 'ppo', 'doseCalculationTypes', 'doseUnits', 'doseRoutes', 'mitteUnits')); }