feat: [interview] 인터뷰 시나리오 고도화 Phase 1 구현
- InterviewProject/Attachment/Knowledge 모델 3개 신규 - 기존 모델 확장 (Question, Answer, Session, Category) - 서비스 확장: 프로젝트 CRUD, 첨부파일, 지식 관리 - 컨트롤러 확장: 프로젝트/첨부/지식 API 엔드포인트 - 라우트 20개 추가 (프로젝트, 첨부, 지식) - InterviewQuestionMasterSeeder: 8개 도메인 80개 질문 - UI 확장: 프로젝트 모드/기존 모드 전환 - 프로젝트 선택 바, 상태 바, 도메인 사이드바 - 탭 구조 (질문편집/인터뷰/첨부파일/추출지식) - 구조화 답변 입력 (테이블, 수식, 다중선택 등) - 첨부파일 업로드/관리 - 지식 수동 추가/검증/필터링
This commit is contained in:
@@ -1504,6 +1504,25 @@
|
||||
Route::get('/api/sessions/{id}', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'showSession'])->name('api.sessions.show');
|
||||
Route::post('/api/sessions/toggle-answer', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'toggleAnswer'])->name('api.sessions.toggle-answer');
|
||||
Route::post('/api/sessions/{id}/complete', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'completeSession'])->name('api.sessions.complete');
|
||||
Route::post('/api/sessions/save-answer', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'saveAnswer'])->name('api.sessions.save-answer');
|
||||
// 프로젝트 API
|
||||
Route::get('/api/projects', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'projects'])->name('api.projects');
|
||||
Route::post('/api/projects', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'storeProject'])->name('api.projects.store');
|
||||
Route::get('/api/projects/{id}', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'showProject'])->name('api.projects.show');
|
||||
Route::put('/api/projects/{id}', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'updateProject'])->name('api.projects.update');
|
||||
Route::delete('/api/projects/{id}', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'destroyProject'])->name('api.projects.destroy');
|
||||
Route::get('/api/projects/{id}/tree', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'projectTree'])->name('api.projects.tree');
|
||||
Route::post('/api/projects/{id}/progress', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'projectProgress'])->name('api.projects.progress');
|
||||
// 첨부파일 API
|
||||
Route::get('/api/projects/{projectId}/attachments', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'attachments'])->name('api.attachments');
|
||||
Route::post('/api/projects/{projectId}/attachments', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'uploadAttachment'])->name('api.attachments.upload');
|
||||
Route::delete('/api/attachments/{id}', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'destroyAttachment'])->name('api.attachments.destroy');
|
||||
// 지식 API
|
||||
Route::get('/api/projects/{projectId}/knowledge', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'knowledge'])->name('api.knowledge');
|
||||
Route::post('/api/projects/{projectId}/knowledge', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'storeKnowledge'])->name('api.knowledge.store');
|
||||
Route::put('/api/knowledge/{id}', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'updateKnowledge'])->name('api.knowledge.update');
|
||||
Route::post('/api/knowledge/{id}/verify', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'verifyKnowledge'])->name('api.knowledge.verify');
|
||||
Route::delete('/api/knowledge/{id}', [\App\Http\Controllers\Sales\InterviewScenarioController::class, 'destroyKnowledge'])->name('api.knowledge.destroy');
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user