feat: [dashboard-ceo] CEO 대시보드 섹션별 API 및 일일보고서 엑셀 추가

- DashboardCeoController/Service: 6개 섹션 API 신규 (매출/매입/생산/미출고/시공/근태)
- DailyReportController/Service: 엑셀 다운로드 API 추가 (GET /daily-report/export)
- 라우트: dashboard 하위 6개 + daily-report/export 엔드포인트 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
유병철
2026-03-05 09:35:30 +09:00
parent e0bb19a017
commit e8da2ea1b1
6 changed files with 926 additions and 0 deletions

View File

@@ -18,6 +18,7 @@
use App\Http\Controllers\Api\V1\CategoryTemplateController;
use App\Http\Controllers\Api\V1\ClassificationController;
use App\Http\Controllers\Api\V1\CommonController;
use App\Http\Controllers\Api\V1\DashboardCeoController;
use App\Http\Controllers\Api\V1\DashboardController;
use App\Http\Controllers\Api\V1\MenuController;
use App\Http\Controllers\Api\V1\NotificationSettingController;
@@ -225,4 +226,12 @@
Route::get('/summary', [DashboardController::class, 'summary'])->name('v1.dashboard.summary');
Route::get('/charts', [DashboardController::class, 'charts'])->name('v1.dashboard.charts');
Route::get('/approvals', [DashboardController::class, 'approvals'])->name('v1.dashboard.approvals');
// CEO 대시보드 섹션별 API
Route::get('/sales/summary', [DashboardCeoController::class, 'salesSummary'])->name('v1.dashboard.ceo.sales');
Route::get('/purchases/summary', [DashboardCeoController::class, 'purchasesSummary'])->name('v1.dashboard.ceo.purchases');
Route::get('/production/summary', [DashboardCeoController::class, 'productionSummary'])->name('v1.dashboard.ceo.production');
Route::get('/unshipped/summary', [DashboardCeoController::class, 'unshippedSummary'])->name('v1.dashboard.ceo.unshipped');
Route::get('/construction/summary', [DashboardCeoController::class, 'constructionSummary'])->name('v1.dashboard.ceo.construction');
Route::get('/attendance/summary', [DashboardCeoController::class, 'attendanceSummary'])->name('v1.dashboard.ceo.attendance');
});

View File

@@ -183,6 +183,7 @@
Route::get('/note-receivables', [DailyReportController::class, 'noteReceivables'])->name('v1.daily-report.note-receivables');
Route::get('/daily-accounts', [DailyReportController::class, 'dailyAccounts'])->name('v1.daily-report.daily-accounts');
Route::get('/summary', [DailyReportController::class, 'summary'])->name('v1.daily-report.summary');
Route::get('/export', [DailyReportController::class, 'export'])->name('v1.daily-report.export');
});
// Comprehensive Analysis API (종합 분석 보고서)