Ana içeriğe geç
Version: 1.0.1

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

ParametreTipiAçıklama
criteriasIFilterCriteria[]API veya kullanıcı tarafından sağlanan filtreleme kriterleri.

Dönüş Değeri

DeğerTipiAçıklama
filtersITableFilters[]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ığı

  1. Filtre Kriterlerini İşleme: API'den gelen veya kullanıcı tarafından sağlanan kriterleri işler.
  2. Alan Adı Eşleme: filterBy alanını, tablo sütunlarıyla eşleştirir.
  3. Operatör ve Değer Formatlama: Filtre türü (filterType), operatörü (type) ve değerleri (value, otherValue) formatlar.
  4. 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 ve otherValue, 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.