generateFilters
Açıklama: Bu fonksiyon, API'den gelen veya kullanıcı tarafından sağlanan filtreleme kriterlerini tabloya uygun bir formata dönüştürür. Tablonun filtreleme işlemleri için gerekli veri yapısını hazırlar.
Kod
generateFilters(criterias?: IFilterCriteria[]): ITableFilters[] {
const filters = criterias?.map((criteria) => {
return {
column: criteria?.filterBy as string,
operator: criteria?.type,
type: criteria?.filterType,
value: criteria?.value,
otherValue: criteria?.otherValue,
};
});
return filters || [];
}
Ne İşe Yarar?
- Filtreleme kriterlerini işler ve tablo filtreleme işlemleri için uygun hale getirir.
- Kullanıcının seçtiği filtrelerin işlenip API'ye gönderilmesini sağlar.
Parametreler
Parametre | Tipi | Açıklama |
---|---|---|
criterias | IFilterCriteria[] | API veya kullanıcı tarafından sağlanan filtreleme kriterleri. |
Dönüş Değeri
Değer | Tipi | Açıklama |
---|---|---|
filters | ITableFilters[] | Tablo filtreleme işlemleri için uygun formatta filtreler. |
Kullanım Alanları
1. prepareTableData
- Kullanım Amacı: Gelen filtreleme kriterlerini tablo durumuna entegre etmek için çağrılır.
- Kullanıldığı Fonksiyon:
prepareTableData
const filters = this.generateFilters(mergedRequest.filtering?.criterias);
2. FiltersPopover
- Kullanım Amacı: Kullanıcı tarafından seçilen filtreleme seçeneklerini işlemek için çağrılır.
- Kullanıldığı Yer:
FiltersPopover
bileşeninde.
İş Mantığı
- Filtre Kriterlerini İşleme: API'den gelen veya kullanıcı tarafından sağlanan kriterleri işler.
- Alan Adı Eşleme:
filterBy
alanını, tablo sütunlarıyla eşleştirir. - Operatör ve Değer Formatlama: Filtre türü (
filterType
), operatörü (type
) ve değerleri (value
,otherValue
) formatlar. - Varsayılan Değer Dönüşü: Eğer
criterias
boşsa, boş bir dizi döner.
Önemli İpuçları
filterType
, filtre türünü tanımlar (Text
,Number
,Date
gibi) ve bu tür tablo filtreleme mantığında kullanılmalıdır.value
veotherValue
, filtreleme operatörüne bağlı olarak bir veya iki değer alabilir (Between
operatörü için iki değer gereklidir).- Boş veya hatalı kriterler için varsayılan olarak boş bir dizi döndürmek, hata durumlarını önler.