api.php 1.3 KB

12345678910111213141516171819202122232425262728
  1. <?php
  2. use App\Http\Controllers\Api\SubmissionController;
  3. use App\Http\Controllers\Api\CommentController;
  4. use App\Http\Controllers\Api\TagController;
  5. use Illuminate\Support\Facades\Route;
  6. // API маршруты для заявок
  7. Route::prefix('submissions')->group(function () {
  8. Route::get('/', [SubmissionController::class, 'index']);
  9. Route::post('/', [SubmissionController::class, 'store']);
  10. Route::get('/{id}', [SubmissionController::class, 'show']);
  11. Route::put('/{id}', [SubmissionController::class, 'update']);
  12. Route::delete('/{id}', [SubmissionController::class, 'destroy']);
  13. // Дополнительные маршруты для мягкого удаления
  14. Route::post('/{id}/restore', [SubmissionController::class, 'restore']);
  15. Route::delete('/{id}/force', [SubmissionController::class, 'forceDelete']);
  16. // Комментарии к заявке
  17. Route::get('/{submissionId}/comments', [CommentController::class, 'index']);
  18. Route::post('/{submissionId}/comments', [CommentController::class, 'store']);
  19. Route::put('/{submissionId}/comments/{id}', [CommentController::class, 'update']);
  20. Route::delete('/{submissionId}/comments/{id}', [CommentController::class, 'destroy']);
  21. });
  22. // API маршруты для тегов
  23. Route::apiResource('tags', TagController::class);