From 6b6db9474ec1de0e5a89a037679272c7a888d3ff Mon Sep 17 00:00:00 2001 From: Marco Lanzara <48531002-marco370@users.noreply.replit.com> Date: Sat, 18 Oct 2025 08:18:27 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=80=20Release=20v1.0.21?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Tipo: patch - Database backup: database-backups/vigilanzaturni_v1.0.21_20251018_081811.sql.gz - Data: 2025-10-18 08:18:27 --- client/src/pages/general-planning.tsx | 16 ++++--- ...ilanzaturni_v1.0.11_20251017_093145.sql.gz | Bin 27297 -> 0 bytes ...ilanzaturni_v1.0.21_20251018_081811.sql.gz | Bin 0 -> 41111 bytes server/routes.ts | 25 +++++++---- server/storage.ts | 40 +++++++----------- version.json | 10 ++++- 6 files changed, 48 insertions(+), 43 deletions(-) delete mode 100644 database-backups/vigilanzaturni_v1.0.11_20251017_093145.sql.gz create mode 100644 database-backups/vigilanzaturni_v1.0.21_20251018_081811.sql.gz diff --git a/client/src/pages/general-planning.tsx b/client/src/pages/general-planning.tsx index 2264879..0a5ee27 100644 --- a/client/src/pages/general-planning.tsx +++ b/client/src/pages/general-planning.tsx @@ -280,9 +280,9 @@ export default function GeneralPlanning() { data-testid={`cell-${site.siteId}-${day.date}`} onClick={() => daySiteData && handleCellClick(site.siteId, site.siteName, day.date, daySiteData)} > - {daySiteData && daySiteData.shiftsCount > 0 ? ( + {daySiteData ? (
- {/* Riepilogo guardie necessarie/assegnate/mancanti */} + {/* Riepilogo guardie necessarie/assegnate/mancanti - SEMPRE VISIBILE */}
{daySiteData.missingGuards > 0 ? ( @@ -333,11 +333,13 @@ export default function GeneralPlanning() {
)} - {/* Info copertura */} -
-
Turni: {daySiteData.shiftsCount}
-
Tot. ore: {daySiteData.totalShiftHours}h
-
+ {/* Info copertura - mostra solo se ci sono turni */} + {daySiteData.shiftsCount > 0 && ( +
+
Turni: {daySiteData.shiftsCount}
+
Tot. ore: {daySiteData.totalShiftHours}h
+
+ )}
) : (
diff --git a/database-backups/vigilanzaturni_v1.0.11_20251017_093145.sql.gz b/database-backups/vigilanzaturni_v1.0.11_20251017_093145.sql.gz deleted file mode 100644 index f503e5892e03ef723e9b146eb0b1d0b92d09e973..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27297 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

04gt}8<2rK~B5Mc{h@B&^V&$B(M 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≫wmz&c_F5<^dnYqRB& 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 { .filter(Boolean); // Calcolo guardie mancanti - // Formula: ceil(24 / maxOreGuardia) × minGuardie - guardieAssegnate const maxOreGuardia = 9; // Max ore per guardia const minGuardie = site.minGuards || 1; @@ -967,17 +966,25 @@ export async function registerRoutes(app: Express): Promise { return sum + differenceInHours(end, start); }, 0); - // Slot necessari per coprire le ore totali - const slotsNeeded = totalShiftHours > 0 ? Math.ceil(totalShiftHours / maxOreGuardia) : 0; - - // Guardie totali necessarie (slot × min guardie contemporanee) - const totalGuardsNeeded = slotsNeeded * minGuardie; - // Guardie uniche assegnate (conta ogni guardia una volta anche se ha più turni) const uniqueGuardsAssigned = new Set(guardsWithHours.map((g: any) => g.guardId)).size; - // Guardie mancanti - const missingGuards = Math.max(0, totalGuardsNeeded - uniqueGuardsAssigned); + // Calcolo guardie necessarie e mancanti + let totalGuardsNeeded: number; + let missingGuards: number; + + if (totalShiftHours > 0) { + // Se ci sono turni: calcola basandosi sulle ore + // Slot necessari per coprire le ore totali + const slotsNeeded = Math.ceil(totalShiftHours / maxOreGuardia); + // Guardie totali necessarie (slot × min guardie contemporanee) + totalGuardsNeeded = slotsNeeded * minGuardie; + missingGuards = Math.max(0, totalGuardsNeeded - uniqueGuardsAssigned); + } else { + // Se NON ci sono turni: serve almeno la copertura minima + totalGuardsNeeded = minGuardie; + missingGuards = minGuardie; // Tutte mancanti perché non ci sono turni + } return { siteId: site.id, diff --git a/server/storage.ts b/server/storage.ts index ce1f4fb..98a46ee 100644 --- a/server/storage.ts +++ b/server/storage.ts @@ -163,32 +163,22 @@ export class DatabaseStorage implements IStorage { } async upsertUser(userData: UpsertUser): Promise { - // Check if user already exists by email (unique constraint) - const existingUser = await db - .select() - .from(users) - .where(eq(users.email, userData.email || '')) - .limit(1); - - if (existingUser.length > 0) { - // Update existing user - const [updated] = await db - .update(users) - .set({ - ...userData, + // Use onConflictDoUpdate to handle both insert and update cases + // This handles conflicts on both id (primary key) and email (unique constraint) + const [user] = await db + .insert(users) + .values(userData) + .onConflictDoUpdate({ + target: users.id, + set: { + email: userData.email, + name: userData.name, + role: userData.role, updatedAt: new Date(), - }) - .where(eq(users.email, userData.email || '')) - .returning(); - return updated; - } else { - // Insert new user - const [user] = await db - .insert(users) - .values(userData) - .returning(); - return user; - } + }, + }) + .returning(); + return user; } async getAllUsers(): Promise { diff --git a/version.json b/version.json index f7d8292..6a11071 100644 --- a/version.json +++ b/version.json @@ -1,7 +1,13 @@ { - "version": "1.0.20", - "lastUpdate": "2025-10-18T07:41:49.922Z", + "version": "1.0.21", + "lastUpdate": "2025-10-18T08:18:27.659Z", "changelog": [ + { + "version": "1.0.21", + "date": "2025-10-18", + "type": "patch", + "description": "Deployment automatico v1.0.21" + }, { "version": "1.0.20", "date": "2025-10-18",