From 264cf93fe24aa8c1e5dfab61d795cc397e1a55e9 Mon Sep 17 00:00:00 2001
From: Dragory <2606411+Dragory@users.noreply.github.com>
Date: Wed, 22 Dec 2021 15:06:55 +0200
Subject: [PATCH] fix: fix crash when importing cases with duplicate case
 numbers

---
 backend/src/api/guilds/importExport.ts | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/backend/src/api/guilds/importExport.ts b/backend/src/api/guilds/importExport.ts
index 8d0fcfe3..8bb46748 100644
--- a/backend/src/api/guilds/importExport.ts
+++ b/backend/src/api/guilds/importExport.ts
@@ -90,6 +90,14 @@ export function initGuildsImportExportAPI(guildRouter: express.Router) {
         return;
       }
 
+      const seenCaseNumbers = new Set();
+      for (const theCase of data.cases) {
+        if (seenCaseNumbers.has(theCase.case_number)) {
+          return clientError(res, `Duplicate case number: ${theCase.case_number}`);
+        }
+        seenCaseNumbers.add(theCase.case_number);
+      }
+
       const guildCases = GuildCases.getGuildInstance(req.params.guildId);
 
       // Prepare cases