Anasayfa / Projeler / LİDOS

Kurumsal otomasyon · Web uygulaması

LİDOS

Lisanslı depoculuğun tüm operasyonunu tek uygulamada toplayan sistem: kantar, laboratuvar, depo, ELÜS, muhafaza, fatura ve muhasebe.

RolMimari, veritabanı, geliştirme, yayınlama
Dönem2026
DurumTest sunucusunda, canlıya hazırlanıyor
Teknoloji
PythonDjangoPostgreSQLBootstrapnginx + gunicornLinux
Genel bakış ekranı: stok, ELÜS, kantar ve açık talepler; bana düşen işler ve uyarılar (örnek veri)
Genel bakış ekranı: stok, ELÜS, kantar ve açık talepler; bana düşen işler ve uyarılar (örnek veri)

Bağlam

Lisanslı depoculuk, tarım ürününün araçla kapıya gelişinden elektronik ürün senedine (ELÜS) dönüşmesine kadar birbirine sıkı sıkıya bağlı bir zincirdir: tartım, numune, analiz, sınıflandırma, depo girişi, senet ihracı, depolama ücreti, fatura ve muhasebe kaydı. Çalıştığım kurumda bu zincir uzun süre birbirinden bağımsız iki sistemle yürütüldü: biri depoculuk işlemleri, diğeri muhasebe için. Her ay mutabakat yapmak, iki tarafta aynı veriyi ayrı ayrı girmek ve raporları elle birleştirmek ekiplerin ciddi zamanını alıyordu.

LİDOS bu zinciri tek bir veri modeli ve tek bir uygulama üzerinde toplamak için yazıldı. Hedef, kantar görevlisinden şube müdürüne, laboranttan mali işlere kadar on farklı rolün aynı kaynağa bakması.

Çözüm

Django üzerinde, on yedi uygulamadan oluşan modüler bir yapı kurdum. Her modül kendi modellerine, görünümlerine ve testlerine sahip; ortak işler (yetki matrisi, belge numaralandırma, işlem günlüğü, Excel ve PDF çıktısı, liste ve form altyapısı) core altında toplanıyor.

İş akışı on yedi adımda tanımlı: mudi kaydı, araç ve ilk tartım, numune ve analiz, yetkili sınıflandırıcı onayı, depo ataması, giriş belgesi, ELÜS ihracı, devir, çıkış talebi, ikinci tartım ve çıkış belgesi. Her adım bir öncekinin tamamlanmasını şart koşuyor; görevler ayrılığı kuralları sunucu tarafında uygulanıyor. Örneğin analizi giren kullanıcı aynı analizi onaylayamıyor.

Mimari

Modül Sorumluluk
core Şube, kullanıcı ve roller, yetki matrisi, belge sayaçları, işlem günlüğü, ortak liste/form, Excel ve PDF
tanim Depo, ürün grubu ve sınıf, analiz kriterleri, had limitleri, kesinti ve fire oranları, tarifeler
mudi Ürün sahibi kartı, kimlik doğrulama, arama bileşeni
kantar Araç kaydı, ilk ve ikinci tartım, makbuz, hızlı mod
laboratuvar Numune, analiz, otomatik sınıflandırma ve kesinti hesabı, cihaz entegrasyonu
depo Stok defteri, giriş ve çıkış belgeleri, transfer, fazlalık ve noksanlık, raf görünümü
elus ISIN, ELÜS ihracı, devir, çıkış talebi, bakiye, MKK mutabakatı
muhafaza Eksper muayenesi, ilaçlama, havalandırma, durum cetveli, sigorta
fatura Tarife, ton-gün tahakkuku, taslak ve kesin fatura
muhasebe Hesap planı, fiş, cari, kasa ve banka, KDV, yevmiye, mizan, Ba-Bs, dönem kapanışı, e-Defter
entegrasyon Gönderim kuyruğu, ERP ve dış kurum bağlantıları
aktarim Eski sistemlerden salt okunur tanım ve açılış aktarımı
rapor, pano Rapor merkezi (50'den fazla rapor, Excel ve PDF), genel bakış ve uyarılar

Stok defteri tek doğruluk kaynağı: satır silinmiyor, iptaller düzeltme satırıyla yapılıyor. Fire düşümü ürün grubunun binde oranıyla hesaplanıyor; sanal ve teknik depo tanımlanabiliyor.

Öne çıkan özellikler

  • Laboratuvar otomasyonu. Had limitlerine göre kabul veya ret, sınıf ve kesinti yüzdesi otomatik hesaplanıyor. Analiz cihazından otomatik okunan değerler kilitli; elle değiştirilemiyor.
  • ELÜS ve MKK mutabakatı. MKK bakiye dosyası yüklenerek ISIN ve mudi bazında karşılaştırma yapılıyor; fiziki stok ile senet bakiyesi raporlanıyor.
  • Ton-gün faturalama. Aylık depolama ücreti ton-gün × tarife ile hesaplanıyor; yükleme, boşaltma, analiz ve kantar bedelleri ile KDV ekleniyor; mudi bazında taslak fatura üretilip numaralandırılıyor.
  • İki kipli muhasebe. Bağımsız çalışabiliyor ya da kayıtları ERP'nin resmi arayüzü üzerinden muhasebe programına aktarıyor. Gönderim kuyruğu hataları saklayıp yeniden deniyor.
  • Güvenli aktarım. Eski sistemlerden veri yalnızca salt okunur bağlantı ile, tek SELECT süzgeci ve her sorgu sonrası geri alma ile çekiliyor; tekrar çalıştırılabilir ve çift kayıt üretmiyor.
  • Çevrimdışı arayüz. Bootstrap, grafikler ve fontlar uygulamanın içinde; şube ağında internet olmadan çalışıyor.
  • Türkçe yerelleştirme. Sayı biçimi, kg/ton dönüşümü ve Türkçe sıralama veri katmanında çözülmüş.

Ekran görüntüleri deneme ortamından, örnek verilerle alınmıştır; kurum bilgileri bulanıklaştırılmıştır.

Yayınlama ve işletme

Linux üzerinde nginx, gunicorn ve systemd ile çalışıyor. Kendi yazdığım yayınlama aracı sürümü paketliyor, sunucuya gönderiyor, migrasyon ve statik dosya toplamayı çalıştırıyor, sağlık denetimi yapıyor ve uygulama açılmazsa bir önceki sürüme dönüyor. Son üç sürüm sunucuda saklanıyor; gece yedekleme ve güvenlik duvarı sertleştirmesi kurulumun parçası.

Sayılarla

  • 17 Django uygulaması, 200'ün üzerinde model, 148 şablon
  • Yaklaşık 94 bin satır Python
  • 1.690 otomatik test; paralel çalıştırmada altı dakikanın altında
  • 10 kullanıcı rolü, 10 mimari karar kaydı (ADR)

Geliştirme süreci

Projeyi yapay zekâ ajanları desteğiyle geliştirdim: ürün sahibi, iş analisti, mimar, backend ve frontend geliştirici, test uzmanı ve devops rolleri için ayrı ajan tanımları, sprint planları ve mimari karar kayıtları. Analiz, tasarım ve kabul kararları bende; her değişiklik test ve kod incelemesinden geçiyor.