31 lines
1.1 KiB
PHP
31 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Services\TerritoryGeometryImport;
|
|
use Illuminate\Http\JsonResponse;
|
|
use Illuminate\Http\Request;
|
|
use Inertia\Inertia;
|
|
use Inertia\Response;
|
|
|
|
class TerritoryGeometryImportController extends Controller
|
|
{
|
|
public function preview(Request $request, TerritoryGeometryImport $service): JsonResponse|Response
|
|
{
|
|
$data = $request->validate(['level' => 'nullable|integer|in:1,2,3']);
|
|
$plan = $service->preview($request->user(), (int) ($data['level'] ?? 1));
|
|
|
|
return $request->expectsJson() ? response()->json($plan) : Inertia::render('management/territory-geometry-import', ['plan' => $plan]);
|
|
}
|
|
|
|
public function apply(Request $request, TerritoryGeometryImport $service): JsonResponse
|
|
{
|
|
return response()->json($service->apply($request->user(), $request->all()));
|
|
}
|
|
|
|
public function reverse(Request $request, string $batch, TerritoryGeometryImport $service): JsonResponse
|
|
{
|
|
return response()->json($service->reverse($request->user(), $batch, $request->all()));
|
|
}
|
|
}
|