Merhabalar benim istemiş olduğum sistem aslında satılıyor ama ben kendim yazmak istiyorum telefona flutter ile kurulmuş bir uygulama yüklenecek ve bu uygulamadan sipariş verilebilecek verilen sipariş veri tabanına gidecek ve pos cihazı veri tabanında çekecek yemekleri bu sistemi tam olarak nasıl kurabilirim yada benim zannettiğim gibi bir şey değil mi bu sistem gibi bir sistem yapan birisi bana biraz fikir verebilir mi acaba ???
Bir kaç sorum var, buna göre bir çok farklı yöntemden bahsedebilirim.
- Pos cihazı veri tabanından çekecek yemekleri demişsin. Pos cihazı ödeme aleti değil mi ?
- Sipariş verirken ödemede mi almak istiyorsunuz ? yoksa sadece sipariş verilsin yeter mi şimdilik ?
Teknik olarak basit bir sistem, sadece doğru yolu kullanmak gerek. Her halükarda yapılan her işlem ortak bir veri tabanında tutulacak ve herhangi bir yerden sipariş verilebilecek, mobil, PC, televizyon. Verilen siparişler ortak veri tabanında saklanır ve siparişlerin hazırlanacağı yerde de ortak veri tabanı devamlı kontrol edilerek güncel veriler çekilerek gösterilir. Bu şekilde sipariş verildiğinde bu siparişin mağazadaki hazırlanacağı bölüme düşmesi 10-20 saniye alır. Böylece sipariş hazırlanır.
Sipariş hazırlanırken farklı etaplarda uygulanabilir, böylece sipariş alındı, hazırlanmaya başlandı, bitmek üzere, bitti, kargoya verildi gibi etapları işaretleyerek siparişi veren kişiye siparişi ile ilgili canlı bilgi verilebilir.
Yapılabilir, zor değil, doğru kodlama dilini ve doğru yolu seçmek ve mantığı oluşturarak başlamak gerek.
Peki nasıl bir yol izlemeliyiz neleri araştıralım ne hakkında bilgi toplayalım vb. soruları yanıtlarsanız çok yardımcı olursunuz.
Senin gitmen gereken yolda oluşturman gereken 4 adım var:
APİ: flutter (uygulamalar) ve pos (siparişlerin görülmesi, alınması vs.) cihazlarının bilgi çekebileceği sunucu. Bu sunucuda laravel (php framework) kullanabilirsiniz hem geliştirmesi kolay hem de bir çok gerekli sistemle beraber geliyor. (Laravel i kullanıcı sistemi ile beraber kurmanızı öneririm, böylece kullanıcı yönetimi ile beraber gelir.)
VERİTABANI: Uygulamaların bu api sistemiyle haberleşmesi ve verilerin saklanması için veri tabanı modeli oluşturmalısınız. Örnek uygulamayı kullanan telefonların bilgilerini saklayacağınız bir tablo, yemek listesi, sipariş verilenler, üyeler vs.
UYGULAMA (KULLANICI): Uygulamaların api sistemiyle iletişim kurabilecek şekilde kodlamalısınız, flutter hiç kullanmadım ama mantık her programlama dilinde aynıdır. Api url leri ile beraber ana sunucuyla haberleşebilirsiniz, dönen json değerine görevde uygulamalar üzerinden kullanıcıların isteklerine cevap verirsiniz.
UYGULAMA (İŞLETMELER): işletme uygulaması kullanıcı uygulamalarından farklı olacak. Bu uygulamadan restorana yada işletmeye verilen siparişler görülebilmeli. Bu uygulamada ana veri tabanı ile iletişim halında olacak ve kullanan her işletmenin kendi alanı olmalı, üyelik gibi düşünün, her işletme kendisine yapılan istekleri ve bilgileri görebilecek, diğerlerini değil. Böylece verilen siparişleri veya işletme tarafından siparişinin durumunu uygulamadan kaydederek veri tabanında saklarsınız, sonrasında kullanıcı uygulaması aracılığı ile anlık yada bildirim ile siparişin durumunu bildirirsiniz.
Verilen siparişlerde ödeme sistemi eklerseniz, siparişin veri tabanına eklenmeden önce ödendi yada ödenmedi şeklinde kaydettirebilirsiniz. Böylece ücreti alınmayan siparişler için işletme siparişleri hazır etmek zorunda olmaz. Diğer yöntem ödeme yapıldıktan sonra dönen veriye göre ödeme alındı bilgisi iletilebilir ve işletme buna göre siparişlerini hazırlar.
Sıfırdan bir api sistemi yazmak yerine hazır bir sistemde kullanabilirsiniz, emin değilim ama hazır alışveriş sistemlerinin (woocommerce, shopify, opencart) api özelliği olabilir, böylece ana sunucuya bunlardan birini kurarak ürünlerinizi ekleyebilirsiniz ve api si aracılığıyla da uygulamalar arasında işlemler yapabilirsiniz.
tamamdır teşekkür ederim