Merge branch 'dev' of https://github.com/SyncrowIOT/backend into feat/fix-propagation

This commit is contained in:
hannathkadher
2025-03-10 05:58:50 +04:00
3 changed files with 7 additions and 19 deletions

View File

@ -14,7 +14,6 @@ import { ModifyAction } from '@app/common/constants/modify-action.enum';
import { NewTagEntity } from '@app/common/modules/tag';
import { ProductEntity } from '@app/common/modules/product/entities';
import { SpaceRepository } from '@app/common/modules/space';
import { SpaceProductAllocationService } from 'src/space/services/space-product-allocation.service';
import { SpaceEntity } from '@app/common/modules/space/entities/space.entity';
import { ProjectEntity } from '@app/common/modules/project/entities';
@ -24,7 +23,6 @@ export class SpaceModelProductAllocationService {
private readonly tagService: NewTagService,
private readonly spaceModelProductAllocationRepository: SpaceModelProductAllocationRepoitory,
private readonly spaceRepository: SpaceRepository,
private readonly spaceProductAllocationService: SpaceProductAllocationService,
) {}
async createProductAllocations(
@ -115,23 +113,12 @@ export class SpaceModelProductAllocationService {
} else if (!allocation.tags.some((t) => t.uuid === tag.uuid)) {
allocation.tags.push(tag);
await this.saveAllocation(allocation, queryRunner);
await this.spaceProductAllocationService.addTagToAllocationFromModel(
allocation,
queryRunner,
tag,
spaces,
);
}
}
}
if (productAllocations.length > 0) {
await this.saveAllocations(productAllocations, queryRunner);
await this.spaceProductAllocationService.createAllocationFromModel(
productAllocations,
queryRunner,
spaces,
);
}
return productAllocations;

View File

@ -170,10 +170,10 @@ export class ValidationService {
where: { uuid: spaceModelUuid },
relations: [
'subspaceModels',
'subspaceModels.tags',
'tags',
'subspaceModels.tags.product',
'tags.product',
'subspaceModels.productAllocations',
'subspaceModels.productAllocations.tags',
'productAllocations.product',
'productAllocations.tags',
],
});

View File

@ -110,7 +110,7 @@ export class SpaceService {
this.validateUniqueTags(allTags);
if (spaceModelUuid) {
const hasDependencies = subspaces?.length > 0 || tags?.length > 0;
if (!hasDependencies && !newSpace.spaceModel) {
if (!hasDependencies) {
await this.spaceModelService.linkToSpace(
newSpace,
spaceModel,
@ -246,10 +246,11 @@ export class SpaceService {
const spaces = await queryBuilder.getMany();
const transformedSpaces = spaces.map(this.transformSpace);
const spaceHierarchy = this.buildSpaceHierarchy(transformedSpaces);
return new SuccessResponseDto({
message: `Spaces in community ${communityUuid} successfully fetched in hierarchy`,
data: onlyWithDevices ? spaces : transformedSpaces,
data: onlyWithDevices ? spaces : spaceHierarchy,
statusCode: HttpStatus.OK,
});
} catch (error) {