mirror of
https://github.com/SyncrowIOT/backend.git
synced 2025-07-16 18:56:22 +00:00
Merge branch 'dev' into feat/project-tag
This commit is contained in:
@ -222,4 +222,32 @@ export class ValidationService {
|
||||
|
||||
return descendants;
|
||||
}
|
||||
|
||||
async getParentHierarchy(
|
||||
space: SpaceEntity,
|
||||
): Promise<{ uuid: string; spaceName: string }[]> {
|
||||
try {
|
||||
const targetSpace = await this.spaceRepository.findOne({
|
||||
where: { uuid: space.uuid },
|
||||
relations: ['parent'],
|
||||
});
|
||||
|
||||
if (!targetSpace) {
|
||||
throw new HttpException('Space not found', HttpStatus.NOT_FOUND);
|
||||
}
|
||||
|
||||
const ancestors = await this.fetchAncestors(targetSpace);
|
||||
|
||||
return ancestors.map((parentSpace) => ({
|
||||
uuid: parentSpace.uuid,
|
||||
spaceName: parentSpace.spaceName,
|
||||
}));
|
||||
} catch (error) {
|
||||
console.error('Error fetching parent hierarchy:', error.message);
|
||||
throw new HttpException(
|
||||
'Error fetching parent hierarchy',
|
||||
HttpStatus.INTERNAL_SERVER_ERROR,
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user