From 91672e2edb628cc6cd0f0c16481a405ee113c8d9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=94=D0=BC=D0=B8=D1=82=D1=80=D0=B8=D0=B9=20=D0=9C=D0=B0?=
 =?UTF-8?q?=D0=BB=D1=8E=D0=B3=D0=B8=D0=BD?= <d.malygin@iqdev.digital>
Date: Fri, 13 Sep 2024 18:11:19 +0500
Subject: [PATCH] fix delete entity

---
 src/services/entitiesService.ts |  1 +
 src/services/pagesService.ts    | 16 ++++++++++++++++
 2 files changed, 17 insertions(+)

diff --git a/src/services/entitiesService.ts b/src/services/entitiesService.ts
index 8f67d96..57ff139 100644
--- a/src/services/entitiesService.ts
+++ b/src/services/entitiesService.ts
@@ -117,6 +117,7 @@ class EntitiesService {
       fs.unlink(body.image_path, (err) => {
         if (err) throw err;
       });
+    await PagesService.deletePageEntity(body.page_uuid, body.entity_uuid);
     return {
       entity_uuid: body.entity_uuid
     };
diff --git a/src/services/pagesService.ts b/src/services/pagesService.ts
index e3358e1..3a7071a 100644
--- a/src/services/pagesService.ts
+++ b/src/services/pagesService.ts
@@ -92,6 +92,22 @@ class PagesService {
       }
     });
   }
+  async deletePageEntity(page_uuid: string, entity_uuid: string) {
+    const newState = await prisma.page.findFirst({
+      where: {
+        page_uuid: page_uuid
+      }
+    });
+    newState.page_entities = newState.page_entities.filter(
+      (entity) => entity.entity_uuid !== entity_uuid
+    );
+    await prisma.page.update({
+      data: { ...newState },
+      where: {
+        page_uuid: page_uuid
+      }
+    });
+  }
   async deletePageBackground(page_uuid: string) {
     const imagePath = path.join(path.resolve(), `/public/images/backgrounds/homeBackground.jpg`);
     fs.unlink(imagePath, (err) => {
-- 
GitLab