Files
superport/lib/utils/equipment_display_helper.dart
2025-07-02 17:45:44 +09:00

41 lines
1.4 KiB
Dart

/// 장비 정보 표시를 위한 헬퍼 클래스 (SRP, 재사용성, 테스트 용이성 중심)
class EquipmentDisplayHelper {
/// 제조사명 포맷팅 (빈 값은 대시로 표시)
static String formatManufacturer(String? manufacturer) {
if (manufacturer == null || manufacturer.isEmpty) return '-';
return manufacturer;
}
/// 장비명 포맷팅 (빈 값은 대시로 표시)
static String formatEquipmentName(String? name) {
if (name == null || name.isEmpty) return '-';
return name;
}
/// 카테고리 포맷팅 (비어있지 않은 카테고리만 합침)
static String formatCategory(
String? category,
String? subCategory,
String? subSubCategory,
) {
final parts = [
if (category != null && category.isNotEmpty) category,
if (subCategory != null && subCategory.isNotEmpty) subCategory,
if (subSubCategory != null && subSubCategory.isNotEmpty) subSubCategory,
];
if (parts.isEmpty) return '-';
return parts.join(' > ');
}
/// 시리얼 번호 포맷팅 (없으면 대시)
static String formatSerialNumber(String? serialNumber) {
return serialNumber?.isNotEmpty == true ? serialNumber! : '-';
}
/// 날짜 포맷팅 (YYYY-MM-DD, null이면 대시)
static String formatDate(DateTime? date) {
if (date == null) return '-';
return '${date.year}-${date.month.toString().padLeft(2, '0')}-${date.day.toString().padLeft(2, '0')}';
}
}