mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-22 22:48:15 +02:00
2 files changed
+13
-4
No files matched your search
@@ -37,4 +37,4 @@ args = "npm run dev"
|
|||||||
waitForPort = 5000
|
waitForPort = 5000
|
||||||
|
|
||||||
[agent]
|
[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
@@ -1149,14 +1149,23 @@ export class DatabaseStorage implements IStorage {
|
|||||||
deliveredWhereCondition = and(deliveredWhereCondition, inArray(deliveries.groupId, groupIds));
|
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
|
const deliveriesStatsResult = await db
|
||||||
.select({
|
.select({
|
||||||
totalPalettes: sql<number>`COALESCE(SUM(CAST(${deliveries.quantity} as INTEGER)), 0)`,
|
totalPalettes: sql<number>`COALESCE(SUM(CAST(${deliveries.quantity} as INTEGER)), 0)`,
|
||||||
totalPackages: sql<number>`COALESCE(COUNT(*), 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)
|
.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 ordersCount = Number(ordersResult[0]?.count || 0);
|
||||||
const deliveriesCount = Number(deliveriesResult[0]?.count || 0);
|
const deliveriesCount = Number(deliveriesResult[0]?.count || 0);
|
||||||
@@ -1169,7 +1178,7 @@ export class DatabaseStorage implements IStorage {
|
|||||||
ordersCount,
|
ordersCount,
|
||||||
deliveriesCount,
|
deliveriesCount,
|
||||||
pendingOrdersCount,
|
pendingOrdersCount,
|
||||||
averageDeliveryTime,
|
averageDeliveryTime: `${averageDeliveryTime} jours (commande → livraison, livraisons avec commande liée uniquement)`,
|
||||||
totalPalettes,
|
totalPalettes,
|
||||||
totalPackages,
|
totalPackages,
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in new issue
Block a user