feat: API 연동 개선 및 라이선스 모델 확장
- 라이선스 모델 전면 개편 (상세 필드 추가, 계산 필드 구현) - API 응답 처리 개선 (HTTP 상태 코드 기반) - 장비 출고 폼 컨트롤러 추가 - 회사 지점 정보 모델 추가 - 공통 데이터 모델 구조 추가 - 전체 서비스 레이어 API 호출 방식 통일 - UI 컴포넌트 마이너 개선
This commit is contained in:
@@ -570,10 +570,12 @@ class MockDataService {
|
||||
for (final inspection in inspectionTypes) {
|
||||
addLicense(
|
||||
License(
|
||||
licenseKey: 'LIC-${DateTime.now().millisecondsSinceEpoch}-$visit-$inspection',
|
||||
productName: '12개월,$visit,$inspection',
|
||||
companyId: 1,
|
||||
name: '12개월,$visit,$inspection',
|
||||
durationMonths: 12,
|
||||
visitCycle: visit,
|
||||
purchaseDate: DateTime.now(),
|
||||
expiryDate: DateTime.now().add(const Duration(days: 365)),
|
||||
remark: '방문주기: $visit',
|
||||
),
|
||||
);
|
||||
}
|
||||
@@ -672,12 +674,12 @@ class MockDataService {
|
||||
|
||||
// 기존 입고 장비를 출고 상태로 변경
|
||||
void changeEquipmentStatus(int equipmentInId, EquipmentOut equipmentOut) {
|
||||
print('장비 상태 변경 시작: 입고 ID $equipmentInId');
|
||||
// 장비 상태 변경 시작: 입고 ID $equipmentInId
|
||||
|
||||
// 입고된 장비를 찾습니다
|
||||
final index = _equipmentIns.indexWhere((e) => e.id == equipmentInId);
|
||||
if (index != -1) {
|
||||
print('장비를 찾음: ${_equipmentIns[index].equipment.name}');
|
||||
// 장비를 찾음: ${_equipmentIns[index].equipment.name}
|
||||
|
||||
// 입고 장비의 상태를 출고(O)로 변경
|
||||
final equipment = _equipmentIns[index].equipment;
|
||||
@@ -687,7 +689,7 @@ class MockDataService {
|
||||
inDate: _equipmentIns[index].inDate,
|
||||
status: 'O', // 상태를 출고로 변경
|
||||
);
|
||||
print('입고 장비 상태를 "O"로 변경: ID ${_equipmentIns[index].id}');
|
||||
// 입고 장비 상태를 "O"로 변경: ID ${_equipmentIns[index].id}
|
||||
|
||||
// 출고 정보 저장
|
||||
final newEquipmentOut = EquipmentOut(
|
||||
@@ -702,11 +704,11 @@ class MockDataService {
|
||||
returnType: equipmentOut.returnType,
|
||||
);
|
||||
_equipmentOuts.add(newEquipmentOut);
|
||||
print('출고 정보 추가: ID ${newEquipmentOut.id}');
|
||||
// 출고 정보 추가: ID ${newEquipmentOut.id}
|
||||
|
||||
print('장비 상태 변경 완료');
|
||||
// 장비 상태 변경 완료
|
||||
} else {
|
||||
print('오류: ID $equipmentInId인 입고 장비를 찾을 수 없음');
|
||||
// 오류: ID $equipmentInId인 입고 장비를 찾을 수 없음
|
||||
}
|
||||
}
|
||||
|
||||
@@ -885,6 +887,19 @@ class MockDataService {
|
||||
_companies[index] = company;
|
||||
}
|
||||
}
|
||||
|
||||
void updateBranch(int companyId, Branch branch) {
|
||||
final companyIndex = _companies.indexWhere((c) => c.id == companyId);
|
||||
if (companyIndex != -1) {
|
||||
final company = _companies[companyIndex];
|
||||
if (company.branches != null) {
|
||||
final branchIndex = company.branches!.indexWhere((b) => b.id == branch.id);
|
||||
if (branchIndex != -1) {
|
||||
company.branches![branchIndex] = branch;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void deleteCompany(int id) {
|
||||
_companies.removeWhere((c) => c.id == id);
|
||||
@@ -944,10 +959,19 @@ class MockDataService {
|
||||
void addLicense(License license) {
|
||||
final newLicense = License(
|
||||
id: _licenseIdCounter++,
|
||||
licenseKey: license.licenseKey,
|
||||
productName: license.productName,
|
||||
vendor: license.vendor,
|
||||
licenseType: license.licenseType,
|
||||
userCount: license.userCount,
|
||||
purchaseDate: license.purchaseDate,
|
||||
expiryDate: license.expiryDate,
|
||||
purchasePrice: license.purchasePrice,
|
||||
companyId: license.companyId,
|
||||
name: license.name,
|
||||
durationMonths: license.durationMonths,
|
||||
visitCycle: license.visitCycle,
|
||||
branchId: license.branchId,
|
||||
assignedUserId: license.assignedUserId,
|
||||
remark: license.remark,
|
||||
isActive: license.isActive,
|
||||
);
|
||||
_licenses.add(newLicense);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user