From 879d56c4dd622e39cb06f82607456868d2bca21a Mon Sep 17 00:00:00 2001 From: sbilketay Date: Wed, 5 Nov 2025 19:51:37 +0300 Subject: [PATCH] Sidebar update --- src/lib/components/GoodsManagerContent.svelte | 753 ++++++++++++++++++ src/routes/dashboard/+page.svelte | 130 ++- src/routes/goods-manager/+page.svelte | 10 +- 3 files changed, 880 insertions(+), 13 deletions(-) create mode 100644 src/lib/components/GoodsManagerContent.svelte diff --git a/src/lib/components/GoodsManagerContent.svelte b/src/lib/components/GoodsManagerContent.svelte new file mode 100644 index 0000000..dd29d9c --- /dev/null +++ b/src/lib/components/GoodsManagerContent.svelte @@ -0,0 +1,753 @@ + + +
+
+

Atanan Yakıt Fişleri

+
+ {assignedSlips.length} + Bekleyen Fiş +
+
+ + {#if error} +
+ {error} +
+ {/if} + + {#if successMessage} +
+ {successMessage} +
+ {/if} + + {#if loading} +
+
+

Yükleniyor...

+
+ {:else if assignedSlips.length === 0} +
+
+ + + + + + + + +
+

Onay Bekleyen Fiş Yok

+

Size atanan yeni yakıt fişleri olmadığında burada görünecekler.

+
+ {:else} +
+ {#each assignedSlips as slip (slip.id)} +
+
+
+

+ {getFuelTypeIcon(slip.fuel_type)} {slip.liters}L {slip.fuel_type === 'benzin' ? 'Benzin' : 'Motorin'} +

+

{new Date(slip.date).toLocaleDateString('tr-TR')}

+
+
+ {#if slip.liters > 100} + Yüksek Öncelik + {:else if slip.liters > 50} + Orta Öncelik + {:else} + Düşük Öncelik + {/if} +
+
+ +
+
+
+ 🚗 Araç: + {slip.vehicle_info.brand} {slip.vehicle_info.model} +
+
+ 📝 Plaka: + {slip.vehicle_info.plate} +
+
+ 🏢 Birlik: + {slip.unit_name} +
+
+ 👤 Personel: + {slip.personnel_info.rank} {slip.personnel_info.full_name} +
+
+ 📊 KM: + {slip.km.toLocaleString('tr-TR')} km +
+
+ ⏰ Oluşturma: + {new Date(slip.created_at).toLocaleString('tr-TR')} +
+
+ + {#if slip.notes} +
+ 📄 Notlar: +

{slip.notes}

+
+ {/if} +
+ +
+ + +
+
+ {/each} +
+ {/if} +
+ + +{#if showApprovalModal} + +{/if} + + +{#if showRejectionModal} + +{/if} + + \ No newline at end of file diff --git a/src/routes/dashboard/+page.svelte b/src/routes/dashboard/+page.svelte index 751b4a1..d722672 100644 --- a/src/routes/dashboard/+page.svelte +++ b/src/routes/dashboard/+page.svelte @@ -2,12 +2,13 @@ import { onMount, onDestroy } from 'svelte'; import { goto } from '$app/navigation'; import { io } from 'socket.io-client'; - + let user = null; let loading = true; let currentTime = ''; let showMobileMenu = false; let showFuelForm = false; + let showGoodsManager = false; let socket = null; // Fuel Manager için veriler @@ -330,6 +331,8 @@ } function navigateTo(page) { + console.log('🔄 navigateTo called with:', page, 'user role:', user?.role); + if (page === 'fuel-slips' && user?.role === 'fuel_manager') { showFuelForm = true; showMobileMenu = false; @@ -342,6 +345,19 @@ return; } + if (page === '' && user?.role === 'goods_manager') { + showGoodsManager = false; + showMobileMenu = false; + return; + } + + if (page === 'goods-manager' && user?.role === 'goods_manager') { + console.log('🎯 Setting showGoodsManager to true'); + showGoodsManager = true; + showMobileMenu = false; + return; + } + if (page === 'distribution-document' && user?.role === 'fuel_manager') { // Dağıtım belgesi sayfasına yönlendir (gelecekte oluşturulacak) showMobileMenu = false; @@ -357,8 +373,16 @@ } if (page === 'goods-manager') { - goto('/goods-manager'); - return; + if (user?.role === 'goods_manager') { + console.log('🎯 Setting showGoodsManager to true'); + showGoodsManager = true; + showFuelForm = false; + showMobileMenu = false; + return; + } else { + goto('/goods-manager'); + return; + } } goto(`/dashboard/${page}`); @@ -390,7 +414,7 @@