diff --git a/attached_assets/{4F3CA6E2-D8B2-4275-91F7-8FD06695C068}_1756802631614.png b/attached_assets/{4F3CA6E2-D8B2-4275-91F7-8FD06695C068}_1756802631614.png new file mode 100644 index 0000000..2e630e1 Binary files /dev/null and b/attached_assets/{4F3CA6E2-D8B2-4275-91F7-8FD06695C068}_1756802631614.png differ diff --git a/attached_assets/{63A69204-8F29-40AC-811B-7CF229C0AC08}_1756802641364.png b/attached_assets/{63A69204-8F29-40AC-811B-7CF229C0AC08}_1756802641364.png new file mode 100644 index 0000000..97d8c4f Binary files /dev/null and b/attached_assets/{63A69204-8F29-40AC-811B-7CF229C0AC08}_1756802641364.png differ diff --git a/server/routes.ts b/server/routes.ts index f4fc60c..c7bf047 100644 --- a/server/routes.ts +++ b/server/routes.ts @@ -216,7 +216,7 @@ export async function registerRoutes(app: Express): Promise { // Filter suppliers for DLC enabled only if requested if (dlcFilter) { - const dlcSuppliers = suppliers.filter(supplier => supplier.dlcEnabled === true); + const dlcSuppliers = suppliers.filter(supplier => supplier.hasDlc === true); res.json(dlcSuppliers); } else { res.json(suppliers); diff --git a/server/storage.ts b/server/storage.ts index bc97d17..66927ec 100644 --- a/server/storage.ts +++ b/server/storage.ts @@ -68,7 +68,7 @@ import { type InsertWeatherSettings, } from "@shared/schema"; import { db } from "./db"; -import { eq, and, inArray, desc, sql, gte, lte, lt, or, isNull, isNotNull, asc } from "drizzle-orm"; +import { eq, and, inArray, desc, sql, gte, lte, lt, gt, or, isNull, isNotNull, asc, ne } from "drizzle-orm"; import { getAnnouncementStorage } from "./announcementStorage"; @@ -1511,15 +1511,17 @@ export class DatabaseStorage implements IStorage { // Handle dynamic status filtering based on expiry date calculation if (filters.status && filters.status !== 'all') { const today = new Date(); + today.setHours(0, 0, 0, 0); // Set to start of day for accurate comparison if (filters.status === 'expires_soon') { // Products expiring within 15 days but not expired yet const in15Days = new Date(); in15Days.setDate(today.getDate() + 15); + in15Days.setHours(23, 59, 59, 999); // End of day conditions.push( and( - sql`${dlcProducts.expiryDate} > ${today}`, - sql`${dlcProducts.expiryDate} <= ${in15Days}`, + gt(dlcProducts.expiryDate, today), + lte(dlcProducts.expiryDate, in15Days), ne(dlcProducts.status, 'valides') ) ); @@ -1527,7 +1529,7 @@ export class DatabaseStorage implements IStorage { // Products already expired conditions.push( and( - sql`${dlcProducts.expiryDate} <= ${today}`, + lte(dlcProducts.expiryDate, today), ne(dlcProducts.status, 'valides') ) ); @@ -1535,9 +1537,10 @@ export class DatabaseStorage implements IStorage { // Products active (more than 15 days until expiry) const in15Days = new Date(); in15Days.setDate(today.getDate() + 15); + in15Days.setHours(23, 59, 59, 999); conditions.push( and( - sql`${dlcProducts.expiryDate} > ${in15Days}`, + gt(dlcProducts.expiryDate, in15Days), ne(dlcProducts.status, 'valides') ) );