PIMS/app/Modules/Movies/Http/Controllers/Admin/AcceptMovieController.php

31 lines
888 B
PHP
Raw Normal View History

2025-12-07 03:49:26 +00:00
<?php
namespace App\Modules\Movies\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use App\Modules\Movies\Http\Requests\AcceptMovieRequest;
use App\Modules\Movies\Services\Contracts\MovieProvider;
use App\Modules\Movies\Services\Contracts\UpsertMovieServiceInterface;
use Illuminate\Http\JsonResponse;
class AcceptMovieController extends Controller
{
public function store(
AcceptMovieRequest $request,
MovieProvider $provider,
UpsertMovieServiceInterface $upserter
): JsonResponse {
$providerId = $request->validated('provider_id');
$mode = $request->validated('mode'); // overwrite|duplicate
$details = $provider->details($providerId);
$movie = $upserter->handle($details, $mode);
return response()->json([
'status' => 'ok',
'movie_id' => $movie->id,
]);
}
}