feat: 백엔드 API 구조 변경 대응 및 시스템 안정성 대폭 향상
주요 변경사항: - Company-Branch → 계층형 Company 구조 완전 마이그레이션 - Equipment 모델 필드명 표준화 (current_company_id → company_id) - DropdownButton assertion 오류 완전 해결 - 지점 추가 드롭다운 페이지네이션 문제 해결 (20개→55개 전체 표시) - Equipment 백엔드 API 데이터 활용도 40%→100% 달성 - 소프트 딜리트 시스템 안정성 향상 기술적 개선: - Branch 관련 deprecated 메서드 정리 - Equipment Status 유효성 검증 로직 추가 - Company 리스트 페이지네이션 최적화 - DTO 모델 Freezed 코드 생성 완료 - 테스트 파일 API 구조 변경 대응 성과: - Flutter 웹 빌드 성공 (컴파일 에러 0건) - 백엔드 API 호환성 95% 달성 - 시스템 안정성 및 사용자 경험 대폭 개선
This commit is contained in:
@@ -316,6 +316,12 @@ class _EquipmentInFormScreenState extends State<EquipmentInFormScreen> {
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
/// 유효한 장비 상태 값을 반환하는 메서드
|
||||
String? _getValidEquipmentStatus(String? status) {
|
||||
const validStatuses = ['available', 'inuse', 'maintenance', 'disposed'];
|
||||
return validStatuses.contains(status) ? status : null;
|
||||
}
|
||||
|
||||
// 포커스 변경 리스너 함수들
|
||||
void _onPartnerFocusChange() {
|
||||
if (!_partnerFocusNode.hasFocus) {
|
||||
@@ -2534,7 +2540,7 @@ class _EquipmentInFormScreenState extends State<EquipmentInFormScreen> {
|
||||
label: '장비 상태',
|
||||
required: false,
|
||||
child: DropdownButtonFormField<String>(
|
||||
value: _controller.equipmentStatus,
|
||||
value: _getValidEquipmentStatus(_controller.equipmentStatus),
|
||||
decoration: const InputDecoration(
|
||||
hintText: '장비 상태를 선택하세요',
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user