refactor: Yakıt fişi verileri temizlendi ve kullanıcı filtrelemesi iyileştirildi
- Geçici yakıt fişi verileri tamamen temizlendi - Dashboard'da sadece ilgili yakıt sorumlusunun fişleri gösterilir - Onaylı fiş özetinde kullanıcı filtresi eklendi - Bekleyen ve onaylanmış/reddedilmiş fişler kullanıcıya özel listeleniyor 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1,54 +1,10 @@
|
|||||||
import { json } from '@sveltejs/kit';
|
import { json } from '@sveltejs/kit';
|
||||||
import { emitSocketEvent } from '$lib/server/socketClient.js';
|
import { emitSocketEvent } from '$lib/server/socketClient.js';
|
||||||
|
|
||||||
// Geçici veritabanı simülasyonu
|
// Geçici veritabanı simülasyonu - Tüm veriler temizlendi
|
||||||
let fuelSlips = [
|
let fuelSlips = [];
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
date: '2024-01-15',
|
|
||||||
force_command: '1. Komutan',
|
|
||||||
unit_id: 1,
|
|
||||||
unit_name: '1. Motorlu Piyade Tugayı',
|
|
||||||
vehicle_id: 1,
|
|
||||||
vehicle_info: { brand: 'Toyota', model: 'Corolla', plate: '34ABC123', year: 2022 },
|
|
||||||
fuel_type: 'benzin',
|
|
||||||
liters: 45,
|
|
||||||
km: 125420,
|
|
||||||
personnel_id: 1,
|
|
||||||
personnel_info: { full_name: 'Ahmet Demir', rank: 'Üsteğmen' },
|
|
||||||
goods_manager_id: 3,
|
|
||||||
goods_manager_info: { full_name: 'Ali Veli', rank: 'Binbaşı' },
|
|
||||||
fuel_manager_id: 1,
|
|
||||||
fuel_manager_info: { full_name: 'Admin User', rank: 'Yüzbaşı' },
|
|
||||||
status: 'pending',
|
|
||||||
notes: 'Haftalık yakıt ikmali',
|
|
||||||
created_at: new Date().toISOString()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 2,
|
|
||||||
date: '2024-01-14',
|
|
||||||
force_command: '2. Komutan',
|
|
||||||
unit_id: 2,
|
|
||||||
unit_name: '2. Zırhlı Tabur',
|
|
||||||
vehicle_id: 2,
|
|
||||||
vehicle_info: { brand: 'Ford', model: 'Transit', plate: '34XYZ789', year: 2021 },
|
|
||||||
fuel_type: 'motorin',
|
|
||||||
liters: 80,
|
|
||||||
km: 87320,
|
|
||||||
personnel_id: 2,
|
|
||||||
personnel_info: { full_name: 'Mustafa Çelik', rank: 'Astsubay' },
|
|
||||||
goods_manager_id: 3,
|
|
||||||
goods_manager_info: { full_name: 'Ali Veli', rank: 'Binbaşı' },
|
|
||||||
fuel_manager_id: 1,
|
|
||||||
fuel_manager_info: { full_name: 'Admin User', rank: 'Yüzbaşı' },
|
|
||||||
status: 'approved',
|
|
||||||
approval_date: '2024-01-14T14:30:00Z',
|
|
||||||
approval_notes: 'Onaylandı - Stok müsait',
|
|
||||||
created_at: new Date().toISOString()
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
let nextId = 3;
|
let nextId = 1;
|
||||||
|
|
||||||
// GET - Yakıt fişlerini listele
|
// GET - Yakıt fişlerini listele
|
||||||
export async function GET({ request, url }) {
|
export async function GET({ request, url }) {
|
||||||
|
|||||||
@@ -148,9 +148,9 @@
|
|||||||
const data = await slipsResponse.json();
|
const data = await slipsResponse.json();
|
||||||
const allSlips = data.fuelSlips || [];
|
const allSlips = data.fuelSlips || [];
|
||||||
|
|
||||||
// Sadece onaylı fişleri topla
|
// Sadece bu yakıt sorumlusunun onaylı fişlerini topla
|
||||||
const approvedSlips = allSlips.filter(slip => slip.status === 'approved');
|
const myApprovedSlips = allSlips.filter(slip => slip.status === 'approved' && slip.fuel_manager_id === user.id);
|
||||||
fuelSummary = approvedSlips.reduce(
|
fuelSummary = myApprovedSlips.reduce(
|
||||||
(summary, slip) => {
|
(summary, slip) => {
|
||||||
if (slip.fuel_type === 'benzin') {
|
if (slip.fuel_type === 'benzin') {
|
||||||
summary.benzin += slip.liters || 0;
|
summary.benzin += slip.liters || 0;
|
||||||
@@ -162,8 +162,10 @@
|
|||||||
{ benzin: 0, motorin: 0 }
|
{ benzin: 0, motorin: 0 }
|
||||||
);
|
);
|
||||||
|
|
||||||
pendingSlips = allSlips.filter(slip => slip.status === 'pending');
|
// Sadece bu yakıt sorumlusunun fişlerini göster
|
||||||
approvedRejectedSlips = allSlips.filter(slip => slip.status !== 'pending');
|
const mySlips = allSlips.filter(slip => slip.fuel_manager_id === user.id);
|
||||||
|
pendingSlips = mySlips.filter(slip => slip.status === 'pending');
|
||||||
|
approvedRejectedSlips = mySlips.filter(slip => slip.status !== 'pending');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Form için gerekli veriler
|
// Form için gerekli veriler
|
||||||
|
|||||||
Reference in New Issue
Block a user