Skip to content

lblwb/pyqt5

 
 

Repository files navigation

🍽️ Restoran Yönetim Sistemi

Modern, kullanıcı dostu ve kapsamlı restoran yönetim uygulaması. PyQt5 ve SQLAlchemy kullanılarak geliştirilmiştir.

✨ Özellikler

👑 Yönetici Paneli

  • Dashboard: Günlük satış, açık masalar, bekleyen siparişler
  • Menü Yönetimi: Ürün ekleme, düzenleme, kategori yönetimi
  • Masa Yönetimi: Masa ekleme, durum takibi, kapasite ayarlama
  • Personel Yönetimi: Çalışan ekleme, rol atama, yetki kontrolü
  • Müşteri Yönetimi: Müşteri bilgileri, sadakat puanları
  • Sipariş Takibi: Tüm siparişlerin detaylı takibi
  • Raporlar: Satış analizi, popüler ürünler, gelir raporları

👨‍💼 Garson Paneli

  • Masa Görselleştirmesi: Interaktif masa düzeni
  • Sipariş Alma: Menü görüntüleme, sepet yönetimi
  • Müşteri Yönetimi: Hızlı müşteri ekleme, arama
  • Sipariş Takibi: Durum güncelleme, servis yönetimi
  • Hesap Yazdırma: Detaylı fiş oluşturma

👨‍🍳 Mutfak Paneli

  • Sipariş Kuyruğu: Bekleyen, hazırlanan, hazır siparişler
  • Zamanlayıcı: Ürün bazında pişirme süre takibi
  • Menü Durumu: Ürün mevcudiyeti, hazırlık süreleri
  • Toplu İşlemler: Çoklu sipariş yönetimi
  • Öncelik Sıralaması: Acil siparişler

💰 Kasiyer Paneli

  • Ödeme İşlemleri: Nakit, kart, karma ödeme
  • İndirim Uygulama: Esnek indirim sistemi
  • Fiş Yazdırma: Detaylı hesap fişleri
  • İade İşlemleri: Sipariş iadesi yönetimi
  • Günlük Raporlar: Satış analizi, ödeme yöntemi dağılımı
  • Ödeme Geçmişi: Detaylı işlem kayıtları

🚀 Kurulum

Gereksinimler

  • Python 3.8 veya üzeri
  • PyQt5
  • SQLAlchemy

Adım 1: Projeyi İndirin

# Proje dosyalarını bir klasöre kaydedin
mkdir restoran_sistemi
cd restoran_sistemi

Adım 2: Gerekli Paketleri Yükleyin

pip install -r requirements.txt

Veya manuel olarak:

pip install PyQt5==5.15.10 SQLAlchemy==2.0.23

Adım 3: Uygulamayı Başlatın

python main.py

📁 Proje Yapısı

restoran_sistemi/
├── main.py                 # Ana uygulama
├── models.py               # Veritabanı modelleri
├── login_screen.py         # Giriş ekranı
├── admin_panel.py          # Yönetici paneli
├── waiter_panel.py         # Garson paneli
├── kitchen_panel.py        # Mutfak paneli
├── cashier_panel.py        # Kasiyer paneli
├── requirements.txt        # Gerekli paketler
└── README.md              # Bu dosya

🔑 Varsayılan Giriş Bilgileri

Yönetici

  • Kullanıcı Adı: admin
  • Şifre: admin123

Personel

  • Garson: garson1 / 123456
  • Mutfak: mutfak1 / 123456
  • Kasiyer: kasiyer1 / 123456

📊 Veritabanı

Uygulama SQLite veritabanı kullanır ve ilk çalıştırmada otomatik olarak:

  • Veritabanı dosyası (restaurant_management.db) oluşturulur
  • Örnek veriler yüklenir
  • Varsayılan hesaplar oluşturulur

Ana Tablolar

  • admins: Yönetici hesapları
  • employees: Personel bilgileri
  • categories: Ürün kategorileri
  • menu_items: Menü öğeleri
  • tables: Masa bilgileri
  • customers: Müşteri kayıtları
  • orders: Siparişler
  • order_items: Sipariş detayları
  • payments: Ödeme kayıtları

🎯 Kullanım Senaryoları

Günlük İş Akışı

  1. Sabah Açılış (Yönetici)

    • Sisteme giriş yapın
    • Günlük raporları kontrol edin
    • Menü mevcudiyetini güncelleyin
  2. Müşteri Karşılama (Garson)

    • Müşteri geldiğinde masayı açın
    • Sipariş alın ve mutfağa gönderin
    • Sipariş durumunu takip edin
  3. Yemek Hazırlama (Mutfak)

    • Gelen siparişleri görüntüleyin
    • Hazırlık sürelerini takip edin
    • Hazır olan siparişleri işaretleyin
  4. Ödeme İşlemi (Kasiyer)

    • Servis edilen siparişlerin ödemesini alın
    • Fiş yazdırın
    • Günlük raporları oluşturun

🔧 Özelleştirme

Yeni Kullanıcı Rolleri Ekleme

# models.py dosyasında Employee modeline yeni roller ekleyin
# admin_panel.py'de yeni rol yönetimi ekleyin

Menü Kategorilerini Genişletme

# Veritabanında yeni kategoriler ekleyin
# UI'da kategori seçeneklerini güncelleyin

Rapor Türleri Ekleme

# admin_panel.py ve cashier_panel.py'de yeni rapor fonksiyonları

🐛 Sorun Giderme

Yaygın Hatalar

Modül Bulunamadı Hatası

pip install PyQt5 SQLAlchemy

Veritabanı Hatası

# Veritabanı dosyasını silin ve yeniden başlatın
rm restaurant_management.db
python main.py

Giriş Yapamıyorum

  • Varsayılan kullanıcı adı/şifreleri kontrol edin
  • Caps Lock durumunu kontrol edin

📈 Gelecek Özellikler

  • Web tabanlı arayüz
  • Mobil uygulama
  • QR kod menü sistemi
  • Online rezervasyon
  • Stok yönetimi
  • Multi-şube desteği
  • API entegrasyonu
  • Gerçek zamanlı bildirimler

🤝 Katkıda Bulunma

Bu proje eğitim amaçlı geliştirilmiştir. Katkılarınızı memnuniyetle karşılarız:

  1. Projeyi fork edin
  2. Yeni özellik dalı oluşturun
  3. Değişikliklerinizi commit edin
  4. Pull request gönderin

📄 Lisans

Bu proje eğitim amaçlıdır ve MIT lisansı altında sunulmuştur.

📞 İletişim

Sorularınız için GitHub üzerinden iletişime geçebilirsiniz.


Not: Bu sistem eğitim ve demo amaçlı geliştirilmiştir. Gerçek iş ortamında kullanmadan önce güvenlik ve performans testlerini yapınız.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%