big update all menus
This commit is contained in:
@@ -8,11 +8,15 @@ use App\Http\Requests\Nas\StoreNasResourceRequest;
|
||||
use App\Http\Requests\Nas\UpdateNasResourceRequest;
|
||||
use App\Http\Resources\Nas\NasResource;
|
||||
use App\Services\Nas\NasResourceService;
|
||||
use App\Services\Nas\MikrotikHealthService;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class NasResourceController extends ApiController
|
||||
{
|
||||
public function __construct(protected NasResourceService $service) {}
|
||||
public function __construct(
|
||||
protected NasResourceService $service,
|
||||
protected MikrotikHealthService $mikrotikHealth,
|
||||
) {}
|
||||
|
||||
public function index(IndexNasResourceRequest $request)
|
||||
{
|
||||
@@ -55,6 +59,18 @@ class NasResourceController extends ApiController
|
||||
return $this->deleted('Data NAS berhasil dihapus');
|
||||
}
|
||||
|
||||
public function testConnection(Request $request, int $id)
|
||||
{
|
||||
abort_unless($this->resource($request) === 'mikrotik', 404);
|
||||
$mikrotik = $this->service->find('mikrotik', $id);
|
||||
$this->authorizeTenant($request, $mikrotik->tenant_id);
|
||||
|
||||
return $this->success(
|
||||
$this->mikrotikHealth->check($mikrotik),
|
||||
'Koneksi RouterOS API berhasil'
|
||||
);
|
||||
}
|
||||
|
||||
private function resource(Request $request): string
|
||||
{
|
||||
return $request->route()->defaults['nas_resource'];
|
||||
|
||||
Reference in New Issue
Block a user