Vaka Çalışması
Proje Vaka Çalışması
Zorluklar, çözümler, kazanımlar, teknik öne çıkanlar, mimari ve proje ölçeği.
⚡
Zorluklar
Bu projeden önce Chavoosh Restoranı yalnızca telefonla sipariş kabul ediyordu ve hiçbir online sipariş kanalı yoktu.
Yoğun saatlerde telefon çağrıları kaçırılıyor ve müşteriler hayal kırıklığına uğruyordu.
Sipariş yönetimi kağıt üzerinde manuel olarak yapılıyordu ve bu insan hatalarına yol açıyordu.
Online ödeme sisteminin olmaması, müşterileri teslimat sırasında nakit ödemeye zorluyordu.
Müşteri bilgileri ve sipariş geçmişi dağınık şekilde saklanıyor ve kolayca erişilemiyordu.
Restoran sahibinin satış analizi veya ürün yönetimi için hiçbir aracı yoktu.
💡
Çözümler
Sorumlulukların ayrılması için üç uygulamalı mimariyle (account / site_profile / zarinpal) bir Django web uygulaması geliştirdim.
Çift kimlik doğrulama sistemi kurdum: geleneksel parola girişi ve SMS tek kullanımlık şifre (OTP) girişi.
Kayıt kodları, giriş kodları ve yöneticiye yeni sipariş bildirimleri için Ghasedak SMS API'sini entegre ettim.
Zarinpal v4 ödeme geçidini tam Request → StartPay → Verify döngüsü ve RefID kaydıyla entegre ettim.
Sayfa yenilemeden miktarı ve fiyatı güncelleyen AJAX tabanlı dinamik bir sepet tasarladım.
Ürünler, kullanıcılar, siparişler ve çalışma saatlerinin manuel kontrolü için rol tabanlı erişimli özel bir yönetim paneli oluşturdum.
📚
Kazanımlar
Telefon çağrılarında önemli ölçüde azalma, siparişlerin çoğunun online kanala taşınması.
Sipariş doğruluğunun artması ve manuel kağıt girişinden kaynaklanan hataların ortadan kalkması.
RefID ile izlenebilir, güvenli ve hızlı online ödeme.
Tüm ürünlerin, kullanıcıların ve siparişlerin tek bir yönetim panelinden merkezi yönetimi.
Sipariş başına işlem süresinin birkaç dakikadan birkaç saniyeye düşmesi.
Restoran sahibi için müşteri satın alma geçmişini görüntüleme ve satış analizi yapma imkânı.
🔧
Teknik Öne Çıkanlar
Daha basit bir kullanıcı deneyimi için parolasız OTP kimlik doğrulaması uyguladım.
Request ve Verify döngüsü ve RefID kaydıyla tam Zarinpal v4 ödeme geçidi entegrasyonu.
Ödeme onayı anında Ghasedak API ile yöneticiye otomatik yeni sipariş SMS bildirimi.
Sipariş tarihlerini görüntülemek için persiantools kütüphanesi üzerinden Celali takvimi kullandım.
Sayfa yenilemesiz, gerçek zamanlı fiyat senkronizasyonlu AJAX tabanlı dinamik bir sepet kurdum.
Hem mobil hem masaüstü ile uyumlu, tamamen RTL ve duyarlı bir arayüz tasarladım.
🏗️
Mimari
Proje, Django'nun MTV (Model-Template-View) kalıbı üzerine kurulmuştur.
account uygulaması özel kullanıcı modelini, kimlik doğrulamayı ve SMS gönderimini yönetir.
site_profile uygulaması Product, Cart ve sipariş modellerini yönetim ve kullanıcı panelleriyle birlikte içerir.
zarinpal uygulaması ödeme geçidiyle iletişimi ve işlem doğrulamasını yönetir.
User modeli, mobil, banka bilgileri ve profil resmi gibi ek alanlarla AbstractUser üzerinden özelleştirilmiştir.
Şablonlar bileşen tabanlı olarak düzenlenmiştir (header, sidebar ve footer include olarak).
📐
Proje Ölçeği
Proje şu anda chavoosh.restaurant alan adında canlı olarak çalışıyor.
Fardis ve Meshkin Dasht bölgesindeki Chavoosh Restoranı'nın gerçek müşterilerine hizmet veriyor.
On'dan fazla veri modeli içeren üç bağımsız Django uygulamasından oluşuyor.
İki kimlik doğrulama yöntemini ve iki harici API'yi (Zarinpal ve Ghasedak) destekliyor.
Modüler ve genişletilebilir mimarisiyle ölçeklenebilirlik için tasarlandı.
Ürün seçiminden ödemeye ve nihai onaya kadar tüm sipariş yaşam döngüsünü yönetiyor.