fix: normalize Turkish search and isolate query item matches

This commit is contained in:
2026-09-06 09:22:05 +03:00
parent efec6e434d
commit a34b758430
5 changed files with 48 additions and 15 deletions
+2 -11
View File
@@ -1,3 +1,4 @@
import { matchesTenderSearch } from '../services/tenderSearch';
import React, { useState, useMemo, useEffect, useRef, useCallback } from 'react';
import { useApp } from '../context/AppContext';
import { TenderCard } from './TenderCard';
@@ -43,17 +44,7 @@ export const TenderList = () => {
const filteredTenders = useMemo(() => {
return tenders.filter(tender => {
// Search Query
if (searchQuery) {
const q = searchQuery.toLowerCase();
const matchTitle = (tender.baslik || '').toLowerCase().includes(q);
const matchKurum = (tender.kurum || '').toLowerCase().includes(q);
const matchIkn = (tender.ikn || '').toLowerCase().includes(q);
const matchItems = tender.items && tender.items.some(i => (i.ad || '').toLowerCase().includes(q));
// Kartta taşınan ilk kalemler + sunucudaki tam kalem araması
const matchKalem = tender.kalemler && tender.kalemler.some(a => (a || '').toLowerCase().includes(q));
const matchHavuz = kalemEslesen && tender.ikn && kalemEslesen.has(tender.ikn);
if (!matchTitle && !matchKurum && !matchIkn && !matchItems && !matchKalem && !matchHavuz) return false;
}
if (!matchesTenderSearch(tender,searchQuery,kalemEslesen)) return false;
// Geçmiş ihaleler: varsayılan olarak GİZLİ. Kullanıcı "geçmişi de göster"
// derse (onlyValidOnly=false) hepsi gelir. Tarihi okunamayan kayıt gizlenmez.