Cloud MongoDB üzerinde planlanan veriyi sakla. Veriyi buradan çekerek uygulamayı seedleyeceğiz. Sonrası Redis'in cachelemesi ile ilerleyecek. (search in-memory çok daha hızlı)
Sıralama filtresi ise mevcut listelenen ürünler üzerinde uygulanmalıdır. Tasarımda, sol tarafta ve yukarıda olmak üzere 2 tane sıralama componenti bulunmaktadır. Herhangi birinden seçim yapıldığında, diğerinin active state’i güncellenmelidir. (Örneğin sol taraftan bir sıralama filtresi seçildiğinde, yukarıda bulunan select box görünümündeki component’in active state’i değişmelidir)
○ En Düşük Fiyat
○ En Yüksek Fiyat
○ En Yeniler (A>Z)
○ En Yeniler (Z>A)
Renk ve marka filtrelerinin içerikleri, oluşturduğunuz ürün verisinden beslenmeli ve içerisinde bulunan tüm renk ve markalar burada listelenmelidir. Aynı zamanda kaç adet olduğunu yazmalıdır.
Kullanıcı bir marka veya renk filtrelediğinde listeleme kısmında ilgili ürünlergösterilmelidir ve filtreler getirilen ürünlere göre tekrar hesaplanmalıdır. Eğer daha önce bir sırlama yapılmışsa, bu tercih korunmalıdır. Seçilmiş bir filtre üzerine tıklandığında o filtrenin kaldırılması gerekmektedir.
Sepet üzerine üründeki sepet sayısı gösterilmelidir. sepete ürün eklendiğinde veya silindiğinde, bu sayı güncellenmelidir.
Aynı ürün birden fazla sepete eklenmemelidir. Eğer bir ürün daha önce sepete eklenmişse, o ürünün sepete ekle butonu pasif hale gelmelidir.
Sepet componenti üzerine gelindiğinde sepete eklenen ürünler gösterilmelidir ve sepete eklenme tarihine göre sıralanmalıdır. Ürün sepetten silindiğine bir uyarı ve onay mesajı çıkmalıdır ve kullanıcı onayladıktan sonra ürün sepetten silinmelidir.
Arama kutusuna iki karakter girildikten sonra arama yapılmaya başlanmalıdır. Arama cümlesinin iki karakterden az olduğu durumlarda arama gerçekleşmemelidir.
ProductContext'inde products stateinde filtered arrayi olarak saklandi.
Arama ürün ismine göre yapılmalıdır ve listeleme ekranında ilgili arama terimini içeren ürünler göstermelidir.