Skip to content

165-Softtech-Patika-Java-Spring/bitirmeprojesi-berkayfaruk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Bitirme Projesi

Projenin Konusu: Bir marketteki ürünlerin satış fiyatlarına göre son fiyatlarını belirleyen servisin Spring Boot Framework kullanılarak yazılması ve isteğe bağlı olarak önyüzünün yazılması.

Gereksinimler:

Backend:

  • Kullanıcıdan kullanıcı adı, şifre, isim, soy isim bilgilerini alarak sisteme kayıt yapılır.
  • Sisteme kayıtlı kullanıcılar market ürünlerinin veri girişini yapabilir.
  • Ürün türlerine göre KDV oranları değişiklik göstermektedir. Bu oranlar aşağıdaki tabloda belirtilmiştir. Zaman zaman KDV oranları değişiklik gösterebilmektedir.

Image

  • Ürün için veri girişi yapacak kullanıcı; ürünün adı, ürünün türü ve vergisiz satış fiyatı alanlarını doldurur. Her bir ürün için KDV Tutarı ve ürünün son fiyatı da hesaplanarak sisteme kaydedilir.

Kurallar ve gereksinimler:

  • Sisteme yeni kullanıcı tanımlanabilir, güncellenebilir ve silinebilir.
  • Sisteme yeni ürünler tanımlanabilir, güncellenebilir ve silinebilir.
  • Ürünlerin fiyatları güncellenebilir.
  • KDV oranları değiştiğinde sistemdeki ürünlere de bu değişiklik yansıtılmalıdır. Herhangi bir hata durumunda tüm işlemler geri alınmalıdır.
  • Tüm ürünler listelenebilmelidir.
  • Ürün türlerine göre ürünler listelenebilmelidir.
  • Belirli bir fiyat aralığındaki ürünler listelenebilmelidir.
  • Ürün türlerine göre aşağıdaki gibi detay veri içeren bir bilgilendirme alınabilmelidir.

Image

Validasyonlar:

  • Aynı kullanıcı adı ile kullanıcı tanımı yapılamaz.
  • Kullanıcı girişi kullanıcı adı & şifre kombinasyonu ile yapılır.
  • Ürün türü, fiyatı, adı gibi alanlar boş olamaz.
  • Ürün fiyatı sıfır ya da negatif olamaz.
  • KDV oranı negatif olamaz.

Authentication:

  • Güvenli endpointler kullanınız. (jwt, bearer vs. )

Response:

  • Başarılı ve başarısız responselar için modeller tanımlayın ve bunları kullanın.

Dökümantasyon:

  • Open API Specification (Swagger tercih sebebi)

Exception Handling:

  • Hatalı işlemler için doğru hata kodlarının dönüldüğünden emin olunuz.

Test:

  • Unit ve integration testleri yazınız.

About

bitirmeprojesi-berkayfaruk created by GitHub Classroom

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages