Merge pull request #347 from R0m1k3/1.1

1.1
This commit is contained in:
LogiFlow authored and GitHub committed 2025-09-03 16:47:03 +02:00
commit d4361dcae8
2 files changed
+13 -4

No files matched your search

+1 -1
View File
@@ -37,4 +37,4 @@ args = "npm run dev"
waitForPort = 5000
[agent]
integrations = ["javascript_object_storage==1.0.0", "javascript_log_in_with_replit==1.0.0", "javascript_database==1.0.0"]
integrations = ["javascript_log_in_with_replit==1.0.0", "javascript_object_storage==1.0.0", "javascript_database==1.0.0"]
+12 -3
View File
@@ -1149,14 +1149,23 @@ export class DatabaseStorage implements IStorage {
deliveredWhereCondition = and(deliveredWhereCondition, inArray(deliveries.groupId, groupIds));
}
// NOUVEAU: Calculer le délai moyen entre la date de commande et la date de livraison
// Uniquement pour les livraisons qui ont une commande liée
const deliveriesStatsResult = await db
.select({
totalPalettes: sql<number>`COALESCE(SUM(CAST(${deliveries.quantity} as INTEGER)), 0)`,
totalPackages: sql<number>`COALESCE(COUNT(*), 0)`,
avgDelay: sql<number>`COALESCE(AVG(EXTRACT(DAY FROM (${deliveries.deliveredDate} - ${deliveries.scheduledDate}))), 0)`
avgDelay: sql<number>`COALESCE(AVG(EXTRACT(DAY FROM (${deliveries.deliveredDate} - ${orders.plannedDate}))), 0)`
})
.from(deliveries)
.where(deliveredWhereCondition);
.innerJoin(orders, eq(deliveries.orderId, orders.id))
.where(
and(
deliveredWhereCondition,
isNotNull(deliveries.orderId), // S'assurer qu'il y a une commande liée
isNotNull(orders.plannedDate) // S'assurer que la commande a une date
)
);
const ordersCount = Number(ordersResult[0]?.count || 0);
const deliveriesCount = Number(deliveriesResult[0]?.count || 0);
@@ -1169,7 +1178,7 @@ export class DatabaseStorage implements IStorage {
ordersCount,
deliveriesCount,
pendingOrdersCount,
averageDeliveryTime,
averageDeliveryTime: `${averageDeliveryTime} jours (commande → livraison, livraisons avec commande liée uniquement)`,
totalPalettes,
totalPackages,
});