Skip to main content
Version: 1.0.1

prepareTableData

Açıklama: Bu fonksiyon, API'den gelen yanıt verilerini ve mevcut istek parametrelerini kullanarak tablo durumunu hazırlar. Tablonun başlangıç durumunu, toplama verilerini ve filtrelerini düzenler.

Kod

prepareTableData(data: ITableResponse<T>, mergedRequest: IListRequest) {
const initialTableState = this.generateInitiaTableState(data);

const aggregations =
this.generateAggregations(data?.aggregationResults) || [];

const filters = this.generateFilters(mergedRequest?.filtering?.criterias);

const newData: IOpsTableReducer = {
initialTableState,
aggregations,
filters,
tableResponse: data,
tableLoading: false,
tableRequest: mergedRequest,
};

return newData;
}

Ne İşe Yarar?

  • Tablonun durumunu API yanıtına göre hazırlar.
  • Toplama ve filtreleme işlemleri için gerekli verileri işler.
  • Redux Store'a tablo durumunu göndermek için kullanılır.

Parametreler

ParametreTipiAçıklama
dataITableResponse<T>API'den gelen tablo yanıtı.
mergedRequestIListRequestMevcut ve yeni istek parametrelerinin birleştirilmiş hali.

Dönüş Değeri

DeğerTipiAçıklama
newDataIOpsTableReducerRedux Store'a kaydedilecek tablo durum nesnesi.

Kullanım Alanları

1. initialProcess

  • Kullanım Amacı: Tablonun ilk yükleme durumunu oluşturmak için çağrılır.
  • Kullanıldığı Fonksiyon: initialProcess
const tableState = this.prepareTableData(response?.data, currentRequest);

2. getdata

  • Kullanım Amacı: Veri alma işlemleri sırasında tablo durumunu güncellemek için çağrılır.
  • Kullanıldığı Fonksiyon: getdata
const tableState = this.prepareTableData(response?.data, mergedRequest);

İş Mantığı

  1. Başlangıç Durumunu Oluşturma:
    • generateInitiaTableState fonksiyonunu çağırarak başlangıç durumu oluşturulur.
  2. Toplama Verilerini İşleme:
    • generateAggregations fonksiyonu kullanılarak API yanıtından toplama verileri işlenir.
  3. Filtreleri İşleme:
    • generateFilters fonksiyonu çağrılarak filtreleme kriterleri tabloya uygun hale getirilir.
  4. Durum Nesnesi Hazırlama:
    • Tüm veriler birleştirilerek tablo durum nesnesi oluşturulur ve döndürülür.

Önemli İpuçları

  • data parametresi API'den gelen yanıtın tamamını içermelidir. Eksik veya hatalı veri durumunda tablo durumunu doğru oluşturamaz.
  • mergedRequest, kullanıcı etkileşimlerinden kaynaklanan güncellemeleri içermelidir. Bu, filtreleme, sıralama ve sayfalama gibi işlemleri kapsar.
  • Bu fonksiyonun döndürdüğü nesne, Redux Store'da tablo durumunu güncellemek için kullanılır.