PYBS (Personel Yönetim Bilgi Sistemi)
<?php
// includes/menu.php
$mevcut_sayfa = basename($_SERVER['PHP_SELF']);
$rol = $_SESSION['rol'] ?? 'calisan';
// Menü Açık/Kapalı Kontrolü (Hangi Ana Menü Başlığının Açık Kalacağını Belirler)
$personel_acik = in_array($mevcut_sayfa, ['personel-yonetimi.php', 'personel-ekle.php', 'personel-duzenle.php', 'personel-kart.php']);
$izin_acik = in_array($mevcut_sayfa, ['tum-izinler.php', 'izin-talep.php', 'tatil-yonetimi.php', 'izin-yazdir.php', 'izin-gir.php']);
$mesai_acik = in_array($mevcut_sayfa, ['tum-mesailer.php', 'mesai-giris.php', 'admin-mesai-ekle.php', 'puantaj-cetveli.php']);
$finans_acik = in_array($mevcut_sayfa, ['maas-hesapla.php', 'raporlar.php', 'avans-giris.php', 'mali-rapor.php']); // <-- GÜNCELLEME BURADA
$kisisel_acik = in_array($mevcut_sayfa, ['izin-talep.php', 'mesai-giris.php', 'profil.php']) || (strpos($mevcut_sayfa, '-panel.php') !== false && $mevcut_sayfa !== 'root-panel.php');
// Paneller için varsayılan olarak kişisel menü açık kalır
?>
<style>
/* Varsayılan stil ve girinti */
#sidebar ul li a {
padding: 10px;
display: block;
transition: all 0.3s;
color: #ddd; /* Varsayılan renk */
}
#sidebar ul.components ul li a {
padding-left: 30px !important;
font-size: 0.9em;
font-weight: 500;
}
/* TALEP 1: AÇIK OLAN AKORDİYON BAŞLIĞI TURUNCU OLSUN */
#sidebar ul li a.dropdown-toggle[aria-expanded="true"] {
background: #cc7a00; /* Turuncu Ton */
color: #fff;
}
/* TALEP 2: ALT MENÜLERDE RENK OLMASIN, SADECE KALIN GÖSTERİLSİN */
#sidebar ul.components ul li a.active,
#sidebar ul.components ul li a.active:hover {
background: none; /* Arka planı kaldır */
color: #ddd; /* Varsayılan menü rengini koru */
font-weight: 700; /* Seçili olduğunu belli etmek için kalın yap */
border-radius: 0; /* Köşe yuvarlatmayı kaldır */
}
/* DİREKT LİNKLERİN AKTİF RENGİ (Örn: Ana Sayfa, Sistem Ayarları) */
#sidebar ul.components > li > a.active {
background: #ff9900; /* Turuncu */
color: #fff;
font-weight: 700;
border-radius: 0;
}
/* Hover (Üzerine Gelme) efekti: Genel olarak tüm linkler için */
#sidebar ul li a:hover {
color: #fff;
background: rgba(255, 255, 255, 0.1);
}
</style>
<nav id="sidebar">
<div class="sidebar-header p-3 text-center" style="background: rgba(0,0,0,0.2);">
<h6 class="text-white mb-0 fw-bold"><i class="fas fa-cube me-2"></i>Ramsa PYBS</h6>
</div>
<ul class="list-unstyled components" id="accordionMenu">
<li>
<a href="../panels/<?php echo $rol; ?>-panel.php" class="<?php echo (strpos($mevcut_sayfa, '-panel.php') !== false) ? 'active' : ''; ?>">
<i class="fas fa-home"></i> Ana Sayfa
</a>
</li>
<li class="menu-item">
<a href="#kisiselSubmenu" data-bs-toggle="collapse" data-bs-parent="#accordionMenu" aria-expanded="<?php echo $kisisel_acik ? 'true' : 'false'; ?>" class="dropdown-toggle <?php echo $kisisel_acik ? '' : 'collapsed'; ?>">
<i class="fas fa-id-card"></i> Kişisel Menü
</a>
<ul class="collapse list-unstyled <?php echo $kisisel_acik ? 'show' : ''; ?>" id="kisiselSubmenu">
<li><a href="../modules/profil.php" class="<?php echo ($mevcut_sayfa == 'profil.php') ? 'active' : ''; ?>"><i class="fas fa-user-circle"></i> Profilim</a></li>
<li><a href="../modules/izin-talep.php" class="<?php echo ($mevcut_sayfa == 'izin-talep.php') ? 'active' : ''; ?>"><i class="fas fa-paper-plane"></i> İzin İste</a></li>
<li><a href="../modules/mesai-giris.php" class="<?php echo ($mevcut_sayfa == 'mesai-giris.php') ? 'active' : ''; ?>"><i class="fas fa-history"></i> Fazla Mesai Gir</a></li>
</ul>
</li>
<?php if(in_array($rol, ['root', 'yonetici', 'insan_kaynaklari', 'muhasebe'])): ?>
<li class="menu-item">
<a href="#personelSubmenu" data-bs-toggle="collapse" data-bs-parent="#accordionMenu" aria-expanded="<?php echo $personel_acik ? 'true' : 'false'; ?>" class="dropdown-toggle <?php echo $personel_acik ? '' : 'collapsed'; ?>">
<i class="fas fa-users"></i> Personel Yönetimi
</a>
<ul class="collapse list-unstyled <?php echo $personel_acik ? 'show' : ''; ?>" id="personelSubmenu">
<li><a href="../modules/personel-yonetimi.php" class="<?php echo ($mevcut_sayfa == 'personel-yonetimi.php' || $mevcut_sayfa == 'personel-duzenle.php' || $mevcut_sayfa == 'personel-kart.php') ? 'active' : ''; ?>"><i class="fas fa-list"></i> Personel Listesi</a></li>
<li><a href="../modules/personel-ekle.php" class="<?php echo ($mevcut_sayfa == 'personel-ekle.php') ? 'active' : ''; ?>"><i class="fas fa-user-plus"></i> Personel Ekle</a></li>
</ul>
</li>
<?php endif; ?>
<li class="menu-item">
<a href="#izinSubmenu" data-bs-toggle="collapse" data-bs-parent="#accordionMenu" aria-expanded="<?php echo $izin_acik ? 'true' : 'false'; ?>" class="dropdown-toggle <?php echo $izin_acik ? '' : 'collapsed'; ?>">
<i class="fas fa-file-signature"></i> İzin Onay/Takip
</a>
<ul class="collapse list-unstyled <?php echo $izin_acik ? 'show' : ''; ?>" id="izinSubmenu">
<?php if(in_array($rol, ['root', 'yonetici', 'muhasebe', 'insan_kaynaklari'])): ?>
<li><a href="../modules/izin-gir.php" class="<?php echo ($mevcut_sayfa == 'izin-gir.php') ? 'active' : ''; ?>"><i class="fas fa-calendar-plus"></i> İzin Girişi</a></li>
<?php endif; ?>
<?php if(in_array($rol, ['root', 'yonetici', 'muhasebe', 'mudur', 'vardiya_amiri', 'insan_kaynaklari'])): ?>
<li><a href="../modules/tum-izinler.php" class="<?php echo ($mevcut_sayfa == 'tum-izinler.php') ? 'active' : ''; ?>"><i class="fas fa-check-double"></i> İzin Onayları</a></li>
<?php endif; ?>
<?php if(in_array($rol, ['root', 'yonetici', 'insan_kaynaklari', 'muhasebe'])): ?>
<li><a href="../modules/tatil-yonetimi.php" class="<?php echo ($mevcut_sayfa == 'tatil-yonetimi.php') ? 'active' : ''; ?>"><i class="fas fa-calendar-alt"></i> Tatil Yönetimi</a></li>
<?php endif; ?>
</ul>
</li>
<li class="menu-item">
<a href="#mesaiSubmenu" data-bs-toggle="collapse" data-bs-parent="#accordionMenu" aria-expanded="<?php echo $mesai_acik ? 'true' : 'false'; ?>" class="dropdown-toggle <?php echo $mesai_acik ? '' : 'collapsed'; ?>">
<i class="fas fa-clock"></i> Mesai & Puantaj
</a>
<ul class="collapse list-unstyled <?php echo $mesai_acik ? 'show' : ''; ?>" id="mesaiSubmenu">
<?php if(in_array($rol, ['root', 'muhasebe', 'insan_kaynaklari'])): ?>
<li><a href="../modules/admin-mesai-ekle.php" class="<?php echo ($mevcut_sayfa == 'admin-mesai-ekle.php') ? 'active' : ''; ?>"><i class="fas fa-user-clock"></i> Mesai Girişi</a></li>
<?php endif; ?>
<?php if(in_array($rol, ['root', 'yonetici', 'muhasebe', 'mudur', 'vardiya_amiri', 'insan_kaynaklari'])): ?>
<li><a href="../modules/tum-mesailer.php" class="<?php echo ($mevcut_sayfa == 'tum-mesailer.php') ? 'active' : ''; ?>"><i class="fas fa-tasks"></i> Mesai Onayları</a></li>
<?php endif; ?>
<?php if(in_array($rol, ['root', 'yonetici', 'muhasebe', 'insan_kaynaklari'])): ?>
<li><a href="../modules/puantaj-cetveli.php" class="<?php echo ($mevcut_sayfa == 'puantaj-cetveli.php') ? 'active' : ''; ?>"><i class="fas fa-table"></i> Puantaj Cetveli</a></li>
<?php endif; ?>
<?php if(in_array($rol, ['root', 'yonetici', 'muhasebe', 'insan_kaynaklari'])): ?>
<li><a href="../modules/puantaj-cetveli-haftalik.php" class="<?php echo ($mevcut_sayfa == 'puantaj-cetveli-haftalik.php') ? 'active' : ''; ?>"><i class="fas fa-table"></i> Haftalık Puantaj Cetveli</a></li>
<?php endif; ?>
</ul>
</li>
<?php if(in_array($rol, ['root', 'yonetici', 'muhasebe', 'insan_kaynaklari'])): ?>
<li class="menu-item">
<a href="#finansSubmenu" data-bs-toggle="collapse" data-bs-parent="#accordionMenu" aria-expanded="<?php echo $finans_acik ? 'true' : 'false'; ?>" class="dropdown-toggle <?php echo $finans_acik ? '' : 'collapsed'; ?>">
<i class="fas fa-chart-line"></i> Finans & Bordro
</a>
<ul class="collapse list-unstyled <?php echo $finans_acik ? 'show' : ''; ?>" id="finansSubmenu">
<li><a href="../modules/maas-hesapla.php" class="<?php echo ($mevcut_sayfa == 'maas-hesapla.php') ? 'active' : ''; ?>"><i class="fas fa-money-bill-wave"></i> Bordro Göster</a></li>
<li><a href="../modules/mali-rapor.php" class="<?php echo ($mevcut_sayfa == 'mali-rapor.php') ? 'active' : ''; ?>"><i class="fas fa-chart-line"></i> Mali Rapor</a></li>
<li><a href="../modules/avans-giris.php" class="<?php echo ($mevcut_sayfa == 'avans-giris.php') ? 'active' : ''; ?>"><i class="fas fa-hand-holding-dollar"></i> Avans Yönetimi</a></li>
<li><a href="../modules/raporlar.php" class="<?php echo ($mevcut_sayfa == 'raporlar.php') ? 'active' : ''; ?>"><i class="fas fa-file-invoice"></i> Genel Raporlar</a></li>
</ul>
</li>
<li>
<a href="../modules/yedek-al.php" onclick="return confirm('Veritabanının tam yedeği indirilsin mi? !! Log kayıtlarına eklenecektir !!');">
<i class="fas fa-database"></i> Veritabanı Yedekle
</a>
</li>
<?php endif; ?>
<?php if($rol == 'root'): // SADECE ROOT GÖRÜR ?>
<li>
<a href="../modules/sistem-ayarlari.php" class="<?php echo ($mevcut_sayfa == 'sistem-ayarlari.php') ? 'active' : ''; ?>">
<i class="fas fa-cogs"></i> Sistem Ayarları
</a>
</li>
<li>
<a href="../modules/log-izleme.php" class="<?php echo ($mevcut_sayfa == 'log-izleme.php') ? 'active' : ''; ?>">
<i class="fas fa-shield-alt"></i> Sistem Logları
</a>
</li>
<?php endif; ?>
</ul>
</nav>
<div id="content">
<script>
// Bootstrap 5'in `data-bs-parent` özelliği, tek bir menünün açık kalmasını zaten halleder.
// Ekstra JavaScript koduna gerek yoktur.
</script>
DEMO SÜRÜMÜDÜR TAM SÜRÜM İÇİN İLETİŞİM KURUN
📖 PYBS (Personel Yönetim Bilgi Sistemi) Kullanım Kılavuzu
🚀 Proje Tanımı
PYBS, personel bilgilerini, izinleri, maaş bordrolarını ve performans değerlendirmelerini merkezi ve dijital bir platformda yönetmek için tasarlanmış kapsamlı bir Personel Yönetim Bilgi Sistemi'dir. Amacımız, İnsan Kaynakları (İK) süreçlerini otomatikleştirerek verimliliği artırmak ve veri tutarlılığını sağlamaktır.
✨ Temel Özellikler
Personel Yönetimi: Çalışanların kişisel, iletişim ve görev bilgilerini kaydetme/güncelleme.
İzin Yönetimi: Çalışanların izin taleplerini oluşturma, onaylama/reddetme ve kalan izin haklarını takip etme.
Performans Değerlendirme: Yöneticilerin ve çalışanların performans hedeflerini belirlemesi ve değerlendirmeleri kaydetmesi.
Bordro Entegrasyonu: Maaş ve avans bilgilerini kaydetme ve bordro çıktılarını oluşturma (Harici sistemlerle entegrasyon potansiyeli).
Raporlama: İK yöneticileri için özet ve detaylı personel, izin ve bordro raporları oluşturma.
💻 Son Kullanıcı Kullanımı🔑 Giriş Yapma
Demo için kullanıcı adı : test.test
Demo için şifre : 123456
Demo hesabında root / yonetici vb yetki yoktur.
Tam sürüm için iletişime geçin.
Sistem "Ramsa Makine" tarafından aktif olarak kullanılmaktadır
Meta Veri (Özet)
İşyeri çalışanlarının maaş, fazla mesai ve puantaj ile bordro takip, kontrol ve raporlama sistemi