mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-22 06:28:19 +02:00
4 files changed
+10
-32
No files matched your search
Binary file not shown.
|
After Width: | Height: | Size: 60 KiB |
@@ -174,49 +174,21 @@ export default function Publicities() {
|
|||||||
{ weekStartsOn: 1 }
|
{ weekStartsOn: 1 }
|
||||||
);
|
);
|
||||||
|
|
||||||
console.log(`📅 getYearWeeks debug pour ${selectedYear}:`, {
|
|
||||||
yearStart: format(yearStart, 'yyyy-MM-dd EEEE', { locale: fr }),
|
|
||||||
yearEnd: format(yearEnd, 'yyyy-MM-dd EEEE', { locale: fr }),
|
|
||||||
totalWeeks: weeks.length
|
|
||||||
});
|
|
||||||
|
|
||||||
return weeks.map((weekStart, index) => {
|
return weeks.map((weekStart, index) => {
|
||||||
const weekEnd = endOfWeek(weekStart, { weekStartsOn: 1 });
|
const weekEnd = endOfWeek(weekStart, { weekStartsOn: 1 });
|
||||||
// Utiliser l'index + 1 pour une numérotation séquentielle cohérente
|
|
||||||
// plutôt que getWeek() qui peut créer des doublons en fin d'année
|
|
||||||
const weekNumber = index + 1;
|
const weekNumber = index + 1;
|
||||||
|
|
||||||
// Déterminer le mois basé sur la majorité des jours de la semaine
|
const weekMidpoint = new Date(weekStart.getTime() + (3.5 * 24 * 60 * 60 * 1000));
|
||||||
// Si la semaine chevauche deux mois, prendre le mois qui contient le plus de jours
|
|
||||||
const weekMidpoint = new Date(weekStart.getTime() + (3.5 * 24 * 60 * 60 * 1000)); // Milieu de la semaine
|
|
||||||
let month = getMonth(weekMidpoint);
|
let month = getMonth(weekMidpoint);
|
||||||
|
|
||||||
// Si c'est une semaine qui chevauche décembre de l'année précédente et janvier de l'année sélectionnée,
|
|
||||||
// la placer en janvier (mois 0) si elle contient plus de jours de janvier
|
|
||||||
if (weekStart.getFullYear() < selectedYear && weekEnd.getFullYear() === selectedYear) {
|
if (weekStart.getFullYear() < selectedYear && weekEnd.getFullYear() === selectedYear) {
|
||||||
month = 0; // Janvier
|
month = 0; // Janvier
|
||||||
}
|
} else if (weekStart.getFullYear() === selectedYear && weekEnd.getFullYear() > selectedYear) {
|
||||||
// Si c'est une semaine qui chevauche décembre et janvier de l'année suivante,
|
|
||||||
// la placer en décembre (mois 11) si elle contient plus de jours de décembre
|
|
||||||
else if (weekStart.getFullYear() === selectedYear && weekEnd.getFullYear() > selectedYear) {
|
|
||||||
month = 11; // Décembre
|
month = 11; // Décembre
|
||||||
}
|
}
|
||||||
|
|
||||||
const participation = getWeekParticipation(weekStart, weekEnd);
|
const participation = getWeekParticipation(weekStart, weekEnd);
|
||||||
|
|
||||||
// Debug première et dernières semaines pour vérifier
|
|
||||||
if (index < 3 || index >= weeks.length - 3) {
|
|
||||||
console.log(`📅 Semaine ${weekNumber} (index ${index}):`, {
|
|
||||||
debut: format(weekStart, 'yyyy-MM-dd EEEE', { locale: fr }),
|
|
||||||
fin: format(weekEnd, 'yyyy-MM-dd EEEE', { locale: fr }),
|
|
||||||
weekStartYear: weekStart.getFullYear(),
|
|
||||||
weekEndYear: weekEnd.getFullYear(),
|
|
||||||
selectedYear,
|
|
||||||
mois: month + 1, // +1 car getMonth retourne 0-11
|
|
||||||
participations: participation.publicities.length
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
weekStart,
|
weekStart,
|
||||||
weekEnd,
|
weekEnd,
|
||||||
|
|||||||
+1
-1
@@ -2,4 +2,4 @@
|
|||||||
# https://curl.se/docs/http-cookies.html
|
# https://curl.se/docs/http-cookies.html
|
||||||
# This file was generated by libcurl! Edit at your own risk.
|
# This file was generated by libcurl! Edit at your own risk.
|
||||||
|
|
||||||
#HttpOnly_localhost FALSE / FALSE 1755606176 connect.sid s%3AaJqqQRoUNbNkfzL7lhGGCPnIthRcKZfm.4pgA1BroGpVAnDGDfxkttSFwdekQMijVK6pPdmJ3KSY
|
#HttpOnly_localhost FALSE / FALSE 1755861696 connect.sid s%3AI3ww2VSYnJCTbvhTLFfsKWucSCgLEXnH.Q%2FZB%2FqjpNIGDgcSjAp4O%2BHP03Qrmj71qIb8njdhnrK4
|
||||||
+7
-1
@@ -2224,6 +2224,9 @@ export async function registerRoutes(app: Express): Promise<Server> {
|
|||||||
const { year, storeId } = req.query;
|
const { year, storeId } = req.query;
|
||||||
const filterYear = year ? parseInt(year as string) : undefined;
|
const filterYear = year ? parseInt(year as string) : undefined;
|
||||||
|
|
||||||
|
// DEBUG: Log pour identifier le problème avec 2025
|
||||||
|
console.log(`📋 API PUBLICITIES REQUEST:`, { year, filterYear, storeId, userRole: user.role });
|
||||||
|
|
||||||
let groupIds: number[] | undefined;
|
let groupIds: number[] | undefined;
|
||||||
|
|
||||||
if (user.role === 'admin') {
|
if (user.role === 'admin') {
|
||||||
@@ -2234,10 +2237,13 @@ export async function registerRoutes(app: Express): Promise<Server> {
|
|||||||
groupIds = user.userGroups.map(ug => ug.groupId);
|
groupIds = user.userGroups.map(ug => ug.groupId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
console.log(`📋 CALLING storage.getPublicities:`, { filterYear, groupIds });
|
||||||
const publicities = await storage.getPublicities(filterYear, groupIds);
|
const publicities = await storage.getPublicities(filterYear, groupIds);
|
||||||
|
console.log(`📋 PUBLICITIES RETURNED:`, { count: publicities.length });
|
||||||
|
|
||||||
res.json(publicities);
|
res.json(publicities);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error("Error fetching publicities:", error);
|
console.error(`❌ ERROR fetching publicities for year ${year}:`, error);
|
||||||
res.status(500).json({ message: "Failed to fetch publicities", error: (error as Error).message });
|
res.status(500).json({ message: "Failed to fetch publicities", error: (error as Error).message });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in new issue
Block a user