Add business images upload and cascade delete improvements.

This commit is contained in:
2026-05-21 17:57:27 +03:30
parent 2d6bae2ba1
commit 715ca585a8
13 changed files with 303 additions and 14 deletions
+8 -1
View File
@@ -5,6 +5,7 @@ import { BookingEntity } from '../../entities/booking.entity';
import { BusinessAttributeValueEntity } from '../../entities/business-attribute-value.entity';
import { BusinessCategoryEntity } from '../../entities/business-category.entity';
import { BusinessServiceEntity } from '../../entities/business-service.entity';
import { BusinessImageEntity } from '../../entities/business-image.entity';
import { BusinessEntity } from '../../entities/business.entity';
import { ServiceTemplateEntity } from '../../entities/service-template.entity';
@@ -12,10 +13,15 @@ import { ServiceTemplateEntity } from '../../entities/service-template.entity';
export async function deleteBusinessCascade(
manager: EntityManager,
businessId: string,
onBeforeDeleteBusiness?: (businessId: string) => Promise<void>,
): Promise<void> {
await manager.delete(BookingEntity, { businessId });
await manager.delete(BusinessServiceEntity, { businessId });
await manager.delete(BusinessAttributeValueEntity, { businessId });
await manager.delete(BusinessImageEntity, { businessId });
if (onBeforeDeleteBusiness) {
await onBeforeDeleteBusiness(businessId);
}
const result = await manager.delete(BusinessEntity, businessId);
if (!result.affected) {
@@ -28,9 +34,10 @@ export async function deleteCategoryCascade(
manager: EntityManager,
categoryId: string,
businessIds: string[],
onBeforeDeleteBusiness?: (businessId: string) => Promise<void>,
): Promise<void> {
for (const businessId of businessIds) {
await deleteBusinessCascade(manager, businessId);
await deleteBusinessCascade(manager, businessId, onBeforeDeleteBusiness);
}
await manager.delete(ServiceTemplateEntity, { categoryId });