feat: [approval] 완료함 미읽음 알림 뱃지 기능 추가

- approvals 테이블에 drafter_read_at 컬럼 추가 (API 마이그레이션)
- 승인/반려/전결 완료 시 drafter_read_at = null 설정
- getBadgeCounts()에 completed_unread 카운트 추가
- 사이드메뉴 완료함에 미읽음 뱃지 표시 (주황색)
- 완료함 페이지 진입 시 일괄 읽음 처리
- 상세 페이지 열람 시 개별 읽음 처리
This commit is contained in:
김보곤
2026-03-05 11:36:58 +09:00
parent c734a23b30
commit d48a38eaf6
7 changed files with 69 additions and 0 deletions

View File

@@ -960,6 +960,8 @@
Route::get('/forms', [\App\Http\Controllers\Api\Admin\ApprovalApiController::class, 'forms'])->name('forms');
Route::get('/expense-history', [\App\Http\Controllers\Api\Admin\ApprovalApiController::class, 'expenseHistory'])->name('expense-history');
Route::get('/badge-counts', [\App\Http\Controllers\Api\Admin\ApprovalApiController::class, 'badgeCounts'])->name('badge-counts');
Route::post('/mark-completed-read', [\App\Http\Controllers\Api\Admin\ApprovalApiController::class, 'markCompletedAsRead'])->name('mark-completed-read');
Route::post('/{id}/mark-read-single', [\App\Http\Controllers\Api\Admin\ApprovalApiController::class, 'markReadSingle'])->name('mark-read-single');
Route::post('/upload-file', [\App\Http\Controllers\Api\Admin\ApprovalApiController::class, 'uploadFile'])->name('upload-file');
Route::delete('/files/{fileId}', [\App\Http\Controllers\Api\Admin\ApprovalApiController::class, 'deleteFile'])->name('delete-file');
Route::get('/files/{fileId}/download', [\App\Http\Controllers\Api\Admin\ApprovalApiController::class, 'downloadFile'])->name('download-file');