validate([ 'line_id' => 'required|exists:stock_line,line_id', 'rack_symbol' => 'required|string|max:50', 'rack_name' => 'required|string|max:100', ]); $rack = StockRack::create($data); return response()->json($rack, 201); } public function show(Request $request, int $id) { $rack = StockRack::with(['line', 'shelves.positions.sections'])->findOrFail($id); return response()->json($rack, 201); } public function update(Request $request, StockRack $rack) { $data = $request->validate([ 'line_id' => 'sometimes|required|exists:stock_line,line_id', 'rack_symbol' => 'sometimes|required|string|max:50', 'rack_name' => 'sometimes|required|string|max:100', ]); $rack->update($data); return response()->json($rack); } public function destroy(StockRack $rack) { $rack->delete(); return response()->json(null, 204); } }