사용하지 않는 파일 정리 전 백업 (Phase 10 완료 후 상태)

This commit is contained in:
JiWoong Sul
2025-08-29 15:11:59 +09:00
parent a740ff10c8
commit d916b281a7
333 changed files with 53617 additions and 22574 deletions

View File

@@ -93,4 +93,50 @@ abstract class CompanyRepository {
/// [excludeId] 체크에서 제외할 회사 ID (수정 시 현재 회사 제외용)
/// Returns: 중복 여부 (true: 중복됨, false: 중복되지 않음)
Future<Either<Failure, bool>> isDuplicateCompanyName(String name, {int? excludeId});
// 계층 구조 관련 메서드들
/// 전체 회사 계층 구조 조회
/// [includeInactive] 비활성 회사 포함 여부
/// Returns: 전체 계층 구조 트리
Future<Either<Failure, List<Company>>> getCompanyHierarchy({
bool includeInactive = false,
});
/// 특정 회사의 자식 회사 목록 조회
/// [companyId] 부모 회사 ID
/// [recursive] 재귀적으로 모든 자손 포함 여부
/// Returns: 자식 회사 목록
Future<Either<Failure, List<Company>>> getChildrenCompanies(
int companyId, {
bool recursive = false,
});
/// 특정 회사의 부모 경로 조회
/// [companyId] 회사 ID
/// Returns: 루트부터 현재 회사까지의 경로
Future<Either<Failure, List<Company>>> getAncestorPath(int companyId);
/// 회사의 부모 변경
/// [companyId] 변경할 회사 ID
/// [newParentId] 새로운 부모 회사 ID (null이면 루트로 변경)
/// Returns: 업데이트된 회사 정보
Future<Either<Failure, Company>> updateParentCompany(
int companyId,
int? newParentId,
);
/// 회사가 자식을 가지고 있는지 확인
/// [companyId] 확인할 회사 ID
/// Returns: 자식 회사 존재 여부
Future<Either<Failure, bool>> hasChildrenCompanies(int companyId);
/// 계층 구조 유효성 검증
/// [companyId] 검증할 회사 ID
/// [newParentId] 새로운 부모 회사 ID
/// Returns: 유효성 검증 결과 (순환 참조, 깊이 제한 등)
Future<Either<Failure, bool>> validateHierarchyChange(
int companyId,
int? newParentId,
);
}