feat: 소프트 딜리트 기능 전면 구현 완료
## 주요 변경사항 - Company, Equipment, License, Warehouse Location 모든 화면에 소프트 딜리트 구현 - 관리자 권한으로 삭제된 데이터 조회 가능 (includeInactive 파라미터) - 데이터 무결성 보장을 위한 논리 삭제 시스템 완성 ## 기능 개선 - 각 리스트 컨트롤러에 toggleIncludeInactive() 메서드 추가 - UI에 "비활성 포함" 체크박스 추가 (관리자 전용) - API 데이터소스에 includeInactive 파라미터 지원 ## 문서 정리 - 불필요한 문서 파일 제거 및 재구성 - CLAUDE.md 프로젝트 상태 업데이트 (진행률 80%) - 테스트 결과 문서화 (test20250812v01.md) ## UI 컴포넌트 - Equipment 화면 위젯 모듈화 (custom_dropdown_field, equipment_basic_info_section) - 폼 유효성 검증 강화 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -10,61 +10,61 @@ _$EquipmentResponseImpl _$$EquipmentResponseImplFromJson(
|
||||
Map<String, dynamic> json) =>
|
||||
_$EquipmentResponseImpl(
|
||||
id: (json['id'] as num).toInt(),
|
||||
equipmentNumber: json['equipmentNumber'] as String,
|
||||
equipmentNumber: json['equipment_number'] as String,
|
||||
category1: json['category1'] as String?,
|
||||
category2: json['category2'] as String?,
|
||||
category3: json['category3'] as String?,
|
||||
manufacturer: json['manufacturer'] as String,
|
||||
modelName: json['modelName'] as String?,
|
||||
serialNumber: json['serialNumber'] as String?,
|
||||
modelName: json['model_name'] as String?,
|
||||
serialNumber: json['serial_number'] as String?,
|
||||
barcode: json['barcode'] as String?,
|
||||
purchaseDate: json['purchaseDate'] == null
|
||||
purchaseDate: json['purchase_date'] == null
|
||||
? null
|
||||
: DateTime.parse(json['purchaseDate'] as String),
|
||||
purchasePrice: (json['purchasePrice'] as num?)?.toDouble(),
|
||||
: DateTime.parse(json['purchase_date'] as String),
|
||||
purchasePrice: json['purchase_price'] as String?,
|
||||
status: const EquipmentStatusJsonConverter()
|
||||
.fromJson(json['status'] as String),
|
||||
currentCompanyId: (json['currentCompanyId'] as num?)?.toInt(),
|
||||
currentBranchId: (json['currentBranchId'] as num?)?.toInt(),
|
||||
warehouseLocationId: (json['warehouseLocationId'] as num?)?.toInt(),
|
||||
lastInspectionDate: json['lastInspectionDate'] == null
|
||||
currentCompanyId: (json['current_company_id'] as num?)?.toInt(),
|
||||
currentBranchId: (json['current_branch_id'] as num?)?.toInt(),
|
||||
warehouseLocationId: (json['warehouse_location_id'] as num?)?.toInt(),
|
||||
lastInspectionDate: json['last_inspection_date'] == null
|
||||
? null
|
||||
: DateTime.parse(json['lastInspectionDate'] as String),
|
||||
nextInspectionDate: json['nextInspectionDate'] == null
|
||||
: DateTime.parse(json['last_inspection_date'] as String),
|
||||
nextInspectionDate: json['next_inspection_date'] == null
|
||||
? null
|
||||
: DateTime.parse(json['nextInspectionDate'] as String),
|
||||
: DateTime.parse(json['next_inspection_date'] as String),
|
||||
remark: json['remark'] as String?,
|
||||
createdAt: DateTime.parse(json['createdAt'] as String),
|
||||
updatedAt: DateTime.parse(json['updatedAt'] as String),
|
||||
companyName: json['companyName'] as String?,
|
||||
branchName: json['branchName'] as String?,
|
||||
warehouseName: json['warehouseName'] as String?,
|
||||
createdAt: DateTime.parse(json['created_at'] as String),
|
||||
updatedAt: DateTime.parse(json['updated_at'] as String),
|
||||
companyName: json['company_name'] as String?,
|
||||
branchName: json['branch_name'] as String?,
|
||||
warehouseName: json['warehouse_name'] as String?,
|
||||
);
|
||||
|
||||
Map<String, dynamic> _$$EquipmentResponseImplToJson(
|
||||
_$EquipmentResponseImpl instance) =>
|
||||
<String, dynamic>{
|
||||
'id': instance.id,
|
||||
'equipmentNumber': instance.equipmentNumber,
|
||||
'equipment_number': instance.equipmentNumber,
|
||||
'category1': instance.category1,
|
||||
'category2': instance.category2,
|
||||
'category3': instance.category3,
|
||||
'manufacturer': instance.manufacturer,
|
||||
'modelName': instance.modelName,
|
||||
'serialNumber': instance.serialNumber,
|
||||
'model_name': instance.modelName,
|
||||
'serial_number': instance.serialNumber,
|
||||
'barcode': instance.barcode,
|
||||
'purchaseDate': instance.purchaseDate?.toIso8601String(),
|
||||
'purchasePrice': instance.purchasePrice,
|
||||
'purchase_date': instance.purchaseDate?.toIso8601String(),
|
||||
'purchase_price': instance.purchasePrice,
|
||||
'status': const EquipmentStatusJsonConverter().toJson(instance.status),
|
||||
'currentCompanyId': instance.currentCompanyId,
|
||||
'currentBranchId': instance.currentBranchId,
|
||||
'warehouseLocationId': instance.warehouseLocationId,
|
||||
'lastInspectionDate': instance.lastInspectionDate?.toIso8601String(),
|
||||
'nextInspectionDate': instance.nextInspectionDate?.toIso8601String(),
|
||||
'current_company_id': instance.currentCompanyId,
|
||||
'current_branch_id': instance.currentBranchId,
|
||||
'warehouse_location_id': instance.warehouseLocationId,
|
||||
'last_inspection_date': instance.lastInspectionDate?.toIso8601String(),
|
||||
'next_inspection_date': instance.nextInspectionDate?.toIso8601String(),
|
||||
'remark': instance.remark,
|
||||
'createdAt': instance.createdAt.toIso8601String(),
|
||||
'updatedAt': instance.updatedAt.toIso8601String(),
|
||||
'companyName': instance.companyName,
|
||||
'branchName': instance.branchName,
|
||||
'warehouseName': instance.warehouseName,
|
||||
'created_at': instance.createdAt.toIso8601String(),
|
||||
'updated_at': instance.updatedAt.toIso8601String(),
|
||||
'company_name': instance.companyName,
|
||||
'branch_name': instance.branchName,
|
||||
'warehouse_name': instance.warehouseName,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user