fix: align list expiry and date ordering with tender deadlines

This commit is contained in:
2026-09-06 09:18:41 +03:00
parent a87ee758bc
commit 9c7055a543
6 changed files with 64 additions and 28 deletions
+4 -3
View File
@@ -1,17 +1,18 @@
import { useDeadlineClock } from '../hooks/useDeadlineClock';
import React, { useMemo } from 'react';
import { useApp } from '../context/AppContext';
import { Layers, CalendarPlus, Star, BellRing, EyeOff } from 'lucide-react';
import { acikIhale, hizliFiltreGecer } from '../services/ihaleTarih';
export const SummaryCards = () => {
const now = useDeadlineClock();
const { tenders, quickFilter, setQuickFilter, setActiveTab, oncekiGiris, favoriteKurumlar } = useApp();
// Sayımlar listedeki filtreyle AYNI ölçütü kullanır (ihaleTarih.js); karta
// tıklayınca gelen liste ile karttaki sayı birbirini tutar.
const sayim = useMemo(() => {
const bugun = new Date(); bugun.setHours(0, 0, 0, 0);
const secenek = { favoriteKurumlar: favoriteKurumlar || [], oncekiGirisMs: oncekiGiris };
const say = (id) => tenders.filter((t) => acikIhale(t, bugun) && hizliFiltreGecer(t, id, secenek)).length;
const say = (id) => tenders.filter((t) => acikIhale(t, now) && hizliFiltreGecer(t, id, secenek)).length;
return {
all: say('all'),
bugun_eklenenler: say('bugun_eklenenler'),
@@ -19,7 +20,7 @@ export const SummaryCards = () => {
son_giris: say('son_giris'),
incelenmedi: say('incelenmedi'),
};
}, [tenders, oncekiGiris, favoriteKurumlar]);
}, [tenders, oncekiGiris, favoriteKurumlar, now]);
const cards = [
{