projekt-bazy-danych-pizza-fat/README.md

4.5 KiB

Projekt bazy danych pizzerii - PizzaFat

Tutuł projektu: Pizzeria - PizzaFat

Autor: Cezary Pukownik

Indeks: s444337

Celem bazy danych, jest zapewnienie obsługi pizzerii. Baza danych, pozwala na zbieranie zamówień, tworzenie produktów, śledzenie ilości składników oraz obsługę zakupów.

Diagram związków encji

Model relacyjny (RM)

klucz własny klucz obcy

zamowienia { id, data_zamowienia, id_faktury , id_klienta }

klienci { id, imie, nazwisko, miasto, ulica, nr_domu, nr_mieszkania, nazwa_firmy, nip, }

dostawcy { id, nazwa_firmy, nip, miasto, ulica, nr_domu, nr_mieszkania, }

zamowienia_wiersze { id, zamowienie_id, produkt_id, ilosc, cena, kwota_sprzedazy, koszt, kwota_kosztu, zysk, }

produkty { id, nazwa_produktu, cena, }

produkty_przepisy { produkt_id, skladnik_id, ilosc, }

skladniki { id, nazwa_skladnika, koszt, }

sladniki_transakcje { id, data_transakcji, skladnik_id, zamowienia_wiersze_id, zakupy_wiersze_id, typ_transakcji, ilosc, koszt, cena, kwota_kosztu, kwota_sprzedazy, zysk }

zakupy { id, id_faktury, id_dostawcy, data }

zakupy_wiersze { id, id_zakupu, skladnik_id, ilosc, koszt }

Opis funkcjonalności

  • Dodawanie zamówień od klientów
  • Dodawanie klientów do zamówienia, aby wiedzieć gdzie dostarczyć zamówienie
  • Możliwość dodawania, firm jako klientów
  • Wystawianie faktur, na podstawie zamówień
  • Dodawanie produktów do zamówienia
  • Kompletowanie zamówień na podstawie bazy produktów
  • Definiowanie produktów na podstawie składników np. Pizzy
  • Wycena kosztu pizzy w czasie rzeczywistym na podstawie cen zakupu składników
  • Dodawanie składników, do kartoteki składników
  • Wprowadzanie faktur zakupowych oraz ilości zakupionych składników
  • Wprowadzanie dostawców składników
  • Śledzenie transakcji sprzedażowych oraz zakupowch na składnikach

Opis logiki bazy danych

Zakup

  • Tabelami do których prowadza się dane są tabele [zakupy] i [zakupy_wiersze]. Do tabeli zakupy wprowadzamy ogólne dane o fakturze zakupowej. Do tabeli [zakupy_wiersze] wprowadzamy dokładne pozycje składników oraz ich ilość.
  • Dostępne składniki wybieramy z tabeli [skladniki], która wcześniej została uzupełniona on potrzebne składniki. W razie braku składniku w kartotece składników, należy go dodać.
  • Wybieramy również dostawcę, z tabeli [dostawcy].
  • Po zatwierdzeniu faktury, automatycznie wprowadzają się pozycje do tabeli [składniki_transakcje] ze znakiem dodatnim.

Sprzedaż

  • Klienci mogą sie rejestrować internetowo na portalu, a informacje o nich zasilą tabelę [klienci].
  • Zamówienia są importowane ze strony internetowej, gdzie klienci pizzerii mogą złożyć zamówienie, lub wprowadzane ręcznie przez personel przy zamówieniu telefonicznym lub osobistym.
  • Jeśli klient zamawia na dowóz telefonicznie lub osobiście, dodaje się klienta do kartoteki klientów i uzupełnia się dane dostawy w tabeli [klienci], lub wybiera się klienta detalicznego w przypadku zamówienia na miejscu.
  • W tabeli [zamowienia_wiersze] wybiera się produkty z tabeli [produkty], i wpisuje ich ilość. System automatycznie przepisze ustalona cenę, oraz obliczy jaki jest koszt produktu na podstawie jego składników z ostatnich zakupów.
  • Na podstawie zamówienia, system od razu sprawdzi czy ilość składników jest wystarczająca do zrealizowania zamówienia.
  • Po zatwierdzniu zamówienia, w tabeli [składniki_transakcje] dopisuje się odpowiednie rekordy składników z ilością ze stakiem ujemnym, w ilości poprzez ich definicję z tabeli [produkty_przepisy]

Stan Magazynowy

  • Stan magazynowy otrzymuje się poprzez zsumowanie wszystkich transkacji z tabeli [składniki_transakcje] zgrupowanych po składniku.

Produkty a składniki

  • Produkty są to pozycje oferowane do sprzedaży przez pizzerię "PizzaFat".
  • Każdy produkt skłąda się ze skłądników. np (Pizza Salami: Mąka, Drożdze, Sól, Ser, Pomidor, Salami)
  • Definiuje się ilość każdego skłądnika potrzebnego do wyprodukowania produktu.
  • Dopuszcza się produkty skłądające się z jednego składnika np. Butelka Coli składa sie z Butelki Coli.
  • Kliencie widzą skład produktu na podstawie jego składników na portalu.
  • Klienci nie mogą kupić składników, tylko produkty.