fix: synchronize initial price analysis selection
This commit is contained in:
@@ -1345,6 +1345,11 @@ Taslak türü seçicisine erişilebilir ad eklendi. Üretim derlemesi geçti. Ö
|
|||||||
- Fiyat verisi yenilendiğinde seçili ürün + birim artık listede bulunmuyorsa ekran boş bir seçim göstermiyor; seçim güvenli biçimde ilk geçerli kayda dönüyor ve grafik/özet aynı kaydı kullanıyor.
|
- Fiyat verisi yenilendiğinde seçili ürün + birim artık listede bulunmuyorsa ekran boş bir seçim göstermiyor; seçim güvenli biçimde ilk geçerli kayda dönüyor ve grafik/özet aynı kaydı kullanıyor.
|
||||||
- 283 test ve build başarılı. Bu veri yenileme senaryosunun gerçek pazar ekranı kabulü henüz yapılmadı; genel plan açık.
|
- 283 test ve build başarılı. Bu veri yenileme senaryosunun gerçek pazar ekranı kabulü henüz yapılmadı; genel plan açık.
|
||||||
|
|
||||||
|
### 2026-09-06 — Fiyat analizi ilk seçim tutarlılığı
|
||||||
|
|
||||||
|
- Fiyat analizi ilk açıldığında grafik ilk kaydı gösterirken liste vurgusuz kalıyordu. Artık ilk ürün + birim anahtarı otomatik seçiliyor; grafik, açıklama ve liste vurgusu aynı kaydı gösteriyor.
|
||||||
|
- Veri yoksa seçim `null` kalıyor; veri sonradan gelirse ilk geçerli kayda seçiliyor. 283 test ve build başarılı. Genel plan açık.
|
||||||
|
|
||||||
### 2026-09-06 — Fiyat grafiğinde hassas tutar
|
### 2026-09-06 — Fiyat grafiğinde hassas tutar
|
||||||
|
|
||||||
- Fiyat analizi grafiği min/medyan/ortalama/maksimum değerlerini tam iki ondalık istatistikten çiziyor; CSV ve grafik aynı tutarı kullanıyor. Görsel kartların mevcut Türkçe biçimlendirmesi korunuyor.
|
- Fiyat analizi grafiği min/medyan/ortalama/maksimum değerlerini tam iki ondalık istatistikten çiziyor; CSV ve grafik aynı tutarı kullanıyor. Görsel kartların mevcut Türkçe biçimlendirmesi korunuyor.
|
||||||
|
|||||||
@@ -13,7 +13,9 @@ export const PriceAnalysis = () => {
|
|||||||
const [selectedKey, setSelectedKey] = useState(null);
|
const [selectedKey, setSelectedKey] = useState(null);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (selectedKey && !items.some((item) => `${item.ad}||${item.birim}` === selectedKey)) setSelectedKey(null);
|
if (!items.length) { if (selectedKey !== null) setSelectedKey(null); return; }
|
||||||
|
if (!selectedKey || !items.some((item) => `${item.ad}||${item.birim}` === selectedKey))
|
||||||
|
setSelectedKey(`${items[0].ad}||${items[0].birim}`);
|
||||||
}, [items, selectedKey]);
|
}, [items, selectedKey]);
|
||||||
|
|
||||||
const selected = useMemo(() => {
|
const selected = useMemo(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user