feat: 대시보드에 라이선스 만료 요약 및 Lookup 데이터 캐싱 시스템 구현
- License Expiry Summary API 연동 완료 - 30/60/90일 내 만료 예정 라이선스 요약 표시 - 대시보드 상단에 알림 카드로 통합 - 만료 임박 순서로 색상 구분 (빨강/주황/노랑) - Lookup 데이터 전역 캐싱 시스템 구축 - LookupService 및 RemoteDataSource 생성 - 전체 lookup 데이터 일괄 로드 및 캐싱 - 타입별 필터링 지원 - 새로운 모델 추가 - LicenseExpirySummary (Freezed) - LookupData, LookupCategory, LookupItem 모델 - CLAUDE.md 문서 업데이트 - 미사용 API 활용 계획 추가 - 구현 우선순위 정의 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
63
lib/data/models/lookups/lookup_data.g.dart
Normal file
63
lib/data/models/lookups/lookup_data.g.dart
Normal file
@@ -0,0 +1,63 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'lookup_data.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
_$LookupDataImpl _$$LookupDataImplFromJson(Map<String, dynamic> json) =>
|
||||
_$LookupDataImpl(
|
||||
equipmentTypes: (json['equipment_types'] as List<dynamic>)
|
||||
.map((e) => LookupItem.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
equipmentStatuses: (json['equipment_statuses'] as List<dynamic>)
|
||||
.map((e) => LookupItem.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
licenseTypes: (json['license_types'] as List<dynamic>)
|
||||
.map((e) => LookupItem.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
manufacturers: (json['manufacturers'] as List<dynamic>)
|
||||
.map((e) => LookupItem.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
userRoles: (json['user_roles'] as List<dynamic>)
|
||||
.map((e) => LookupItem.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
companyStatuses: (json['company_statuses'] as List<dynamic>)
|
||||
.map((e) => LookupItem.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
warehouseTypes: (json['warehouse_types'] as List<dynamic>)
|
||||
.map((e) => LookupItem.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
);
|
||||
|
||||
Map<String, dynamic> _$$LookupDataImplToJson(_$LookupDataImpl instance) =>
|
||||
<String, dynamic>{
|
||||
'equipment_types': instance.equipmentTypes,
|
||||
'equipment_statuses': instance.equipmentStatuses,
|
||||
'license_types': instance.licenseTypes,
|
||||
'manufacturers': instance.manufacturers,
|
||||
'user_roles': instance.userRoles,
|
||||
'company_statuses': instance.companyStatuses,
|
||||
'warehouse_types': instance.warehouseTypes,
|
||||
};
|
||||
|
||||
_$LookupItemImpl _$$LookupItemImplFromJson(Map<String, dynamic> json) =>
|
||||
_$LookupItemImpl(
|
||||
code: json['code'] as String,
|
||||
name: json['name'] as String,
|
||||
description: json['description'] as String?,
|
||||
displayOrder: (json['display_order'] as num?)?.toInt(),
|
||||
isActive: json['is_active'] as bool? ?? true,
|
||||
metadata: json['metadata'] as Map<String, dynamic>?,
|
||||
);
|
||||
|
||||
Map<String, dynamic> _$$LookupItemImplToJson(_$LookupItemImpl instance) =>
|
||||
<String, dynamic>{
|
||||
'code': instance.code,
|
||||
'name': instance.name,
|
||||
'description': instance.description,
|
||||
'display_order': instance.displayOrder,
|
||||
'is_active': instance.isActive,
|
||||
'metadata': instance.metadata,
|
||||
};
|
||||
Reference in New Issue
Block a user