feat(WEB): 차량 관리 기능 추가 및 CEO 대시보드 Enhanced 섹션 적용

차량 관리 (신규):
- VehicleList/VehicleDetail: 차량 목록/상세
- ForkliftList/ForkliftDetail: 지게차 목록/상세
- VehicleLogList/VehicleLogDetail: 운행일지 목록/상세
- 관련 페이지 라우트 추가 (/vehicle-management/*)

CEO 대시보드:
- Enhanced 섹션 컴포넌트 적용 (아이콘 + 컬러 테마)
- EnhancedStatusBoardSection, EnhancedDailyReportSection, EnhancedMonthlyExpenseSection
- TodayIssueSection 개선

IntegratedDetailTemplate:
- FieldInput, FieldRenderer 기능 확장

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
유병철
2026-01-28 14:53:20 +09:00
parent 805063c686
commit e5f0f5da61
43 changed files with 5165 additions and 135 deletions

View File

@@ -78,6 +78,16 @@ function renderViewValue(
value: unknown,
options: FieldOption[]
): ReactNode {
// custom 타입이면서 renderField가 있으면 view 모드로 렌더링
if (field.type === 'custom' && field.renderField) {
return field.renderField({
value,
onChange: () => {}, // view 모드에서는 사용 안됨
mode: 'view',
disabled: true,
});
}
// 커스텀 포맷터가 있으면 사용
if (field.formatValue) {
return field.formatValue(value);

View File

@@ -91,6 +91,16 @@ function renderViewValue(
value: unknown,
options: FieldOption[]
): ReactNode {
// custom 타입이면서 renderField가 있으면 view 모드로 렌더링
if (field.type === 'custom' && field.renderField) {
return field.renderField({
value,
onChange: () => {}, // view 모드에서는 사용 안됨
mode: 'view',
disabled: true,
});
}
// 커스텀 포맷터가 있으면 사용
if (field.formatValue) {
return field.formatValue(value);