feat(tickets): suivi bidirectionnel des tickets utilisateur via Gitea
CI - Intégration continue / quality-and-tests (pull_request) Successful in 3m27s
CI - Intégration continue / quality-and-tests (pull_request) Successful in 3m27s
Le formulaire 'fire-and-forget' devient un vrai systeme de suivi : - table locale tickets (user <-> numero d'issue Gitea) - liste 'Mes tickets' avec etat (En cours / Resolu) et jalon - page de suivi : etat, labels, jalon, fil de discussion (commentaires) - reponse depuis le web (ajoute un commentaire sur l'issue Gitea) - controle d'acces : un utilisateur ne voit que ses propres tickets - GiteaIssueService etendu (getIssue, getComments, addComment) - remplace l'ancien SuggestionController ; 5 tests de bout en bout Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+7
-4
@@ -7,7 +7,7 @@ use App\Http\Controllers\Web\EmotionController;
|
||||
use App\Http\Controllers\Web\InformationController;
|
||||
use App\Http\Controllers\Web\ProfileController;
|
||||
use App\Http\Controllers\Web\RelaxationController;
|
||||
use App\Http\Controllers\Web\SuggestionController;
|
||||
use App\Http\Controllers\Web\TicketController;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
||||
// Public Routes
|
||||
@@ -43,7 +43,10 @@ Route::middleware('auth')->group(function () {
|
||||
// Pages Relaxation
|
||||
Route::post('/relaxation/{id}/favorite', [RelaxationController::class, 'toggleFavorite'])->name('relaxation.favorite');
|
||||
|
||||
// Suggestions / signalements (créent un ticket dans Gitea)
|
||||
Route::get('/suggestions/nouveau', [SuggestionController::class, 'create'])->name('suggestions.create');
|
||||
Route::post('/suggestions', [SuggestionController::class, 'store'])->name('suggestions.store');
|
||||
// Système de tickets (connecté à Gitea) : création, suivi, réponses
|
||||
Route::get('/tickets', [TicketController::class, 'index'])->name('tickets.index');
|
||||
Route::get('/tickets/nouveau', [TicketController::class, 'create'])->name('tickets.create');
|
||||
Route::post('/tickets', [TicketController::class, 'store'])->name('tickets.store');
|
||||
Route::get('/tickets/{number}', [TicketController::class, 'show'])->whereNumber('number')->name('tickets.show');
|
||||
Route::post('/tickets/{number}/reponse', [TicketController::class, 'reply'])->whereNumber('number')->name('tickets.reply');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user