/** * Returns a new grid instance of all available * inventory stocks for selection. * * @param int|string $workOrderId * @param int|string $inventoryId * * @return \Cartalyst\DataGrid\DataGrid */ public function gridStocks($workOrderId, $inventoryId) { $workOrder = $this->workOrder->model()->findOrFail($workOrderId); $columns = ['id', 'location_id', 'quantity', 'created_at']; $settings = ['sort' => 'created_at', 'direction' => 'desc', 'threshold' => 10, 'throttle' => 11]; $transformer = function (InventoryStock $stock) use($workOrder, $inventoryId) { return ['id' => $stock->id, 'location' => $stock->location ? $stock->location->trail : '<em>None</em>', 'quantity' => $stock->quantity, 'select_url' => route('maintenance.work-orders.parts.stocks.take', [$workOrder->id, $inventoryId, $stock->id])]; }; return $this->inventory->gridStocks($inventoryId, $columns, $settings, $transformer); }