point-backend/app/Http/Controllers/Dashboard/ProjectController.php
2024-04-03 12:10:28 +03:00

51 lines
1.4 KiB
PHP

<?php
namespace App\Http\Controllers\Dashboard;
use App\Http\Controllers\Controller;
use App\Http\Requests\Project\AddProjectRequest;
use App\Http\Requests\Project\EditProjectRequest;
use App\Http\Resources\dashboard\ProjectResource;
use App\Services\ProjectService;
use Illuminate\Http\Request;
class ProjectController extends Controller
{
public function __construct(private ProjectService $service) {}
public function index()
{
$data = $this->service->getAll();
$resource = ProjectResource::collection($data);
return $this->sendResponse("get_data_sucssefuly",["data"=>$resource]);
}
public function show ($id){
$data = $this->service->getOne($id);
$resource = new ProjectResource($data);
return $this->sendResponse("get_data_sucssefuly",["data"=>$resource]);
}
public function create(AddProjectRequest $request){
$validatedData = $request->validated();
$this->service->create($validatedData) ;
return $this->sendResponse("added_sucssefully");
}
public function update($id,EditProjectRequest $request){
$validatedData = $request->validated();
$this->service->update($id,$validatedData) ;
return $this->sendResponse("updated_sucssefully");
}
public function destroy($id){
$this->service->delete_with_image($id,"logo");
return $this->sendResponse("delete_succsussfuly");
}
}