FeedbackTableController.php 1.01 KB
<?php

namespace App\Http\Controllers\Backend\Feedback;

use App\Http\Requests\Backend\Feedback\ManageFeedbackRequest;
use App\Repositories\Backend\Feedback\FeedbackRepository;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Yajra\DataTables\Facades\DataTables;

class FeedbackTableController extends Controller
{
    /**
     * @var FeedbackRepository
     */
    private $feedbacks;

    /**
     * RepairFeedbackController constructor.
     * @param FeedbackRepository $feedbacks
     */
    public function __construct(FeedbackRepository $feedbacks)
    {
        $this->feedbacks = $feedbacks;
    }

    /**
     * @param ManageFeedbackRequest $request
     * @return mixed
     */
    public function __invoke(ManageFeedbackRequest $request)
    {
        return DataTables::of($this->feedbacks->getForDataTable())
            ->addColumn('actions', function($feedback) {
                return $feedback->action_buttons;
            })
            ->rawColumns(['actions'])
            ->make(true);
    }
}