Merge branch 'master' of https://git.wmi.amu.edu.pl/s444337/projekt-bazy-danych-pizza-fat
This commit is contained in:
commit
abe567c564
@ -1,3 +1,5 @@
|
||||
CREATE DATABASE PizzaFat;
|
||||
|
||||
CREATE TABLE 'zamowienia'
|
||||
(
|
||||
'id' int PRIMARY KEY,
|
||||
|
295
README.md
295
README.md
@ -1,145 +1,150 @@
|
||||
### 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ługi zakupów.
|
||||
|
||||
## Diagram związków encji
|
||||
|
||||
![](https://git.wmi.amu.edu.pl/s444337/projekt-bazy-danych-pizza-fat/raw/master/schemat_bazy.png)
|
||||
|
||||
## Model relacyjny (RM)
|
||||
|
||||
**klucz własny**
|
||||
*klucz obcy*
|
||||
|
||||
zamowienia {
|
||||
**id**
|
||||
data_zamowienia
|
||||
id_faktury
|
||||
*id_klienta* [klienci.id]
|
||||
}
|
||||
|
||||
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* [zamowienia.id]
|
||||
*produkt_id* [produkty.id]
|
||||
ilosc
|
||||
cena
|
||||
kwota_sprzedazy
|
||||
koszt
|
||||
kwota_kosztu
|
||||
zysk
|
||||
}
|
||||
|
||||
produkty {
|
||||
**id**
|
||||
nazwa_produktu
|
||||
cena
|
||||
}
|
||||
|
||||
**produkty_przepisy** {
|
||||
*produkt_id* [produkty.id]
|
||||
*skladnik_id* [skladniki.id]
|
||||
ilosc
|
||||
}
|
||||
|
||||
skladniki {
|
||||
**id**
|
||||
nazwa_skladnika
|
||||
koszt
|
||||
}
|
||||
|
||||
sladniki_transakcje {
|
||||
**id**
|
||||
data_transakcji
|
||||
*skladnik_id* [skladniki.id]
|
||||
*zamowienia_wiersze_id* [zamowienia_wiersze.id]
|
||||
*zakupy_wiersze_id* [zakupy_wiersze.id]
|
||||
typ_transakcji
|
||||
ilosc
|
||||
koszt
|
||||
cena
|
||||
kwota_kosztu
|
||||
kwota_sprzedazy
|
||||
zysk
|
||||
}
|
||||
|
||||
zakupy {
|
||||
**id**
|
||||
id_faktury
|
||||
*id_dostawcy* [dostawcy.id]
|
||||
data
|
||||
}
|
||||
|
||||
zakupy_wiersze {
|
||||
**id**
|
||||
*id_zakupu* [zakupy.id]
|
||||
*skladnik_id* [skladniki.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ść dodawanie, 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. Składu Pizzy
|
||||
- Wycena kosztu pizzy w czasie rzeczywistym, na podstawie cen zakupu składników
|
||||
- Dodaniewanie składników, do kartoteki składników
|
||||
- Wprowadzenie faktur zakupowych, oraz ilości zakupionych składników
|
||||
- Wprowadzenie dostawców składników
|
||||
- Śledzenie transackji sprzedażowych oraz zakupowch na skłądnikach
|
||||
|
||||
## Opis logiki bazy danych
|
||||
|
||||
# Zakup
|
||||
- Tabelami do których prowadza się dane są tabele [zakupu] i [zakupy_wiersze]. Do tabeli zakupy wprowadzamy ogólne dane o fakturze zakupowej. Do tabeli [zakupy_wiersze] wprowadzamy dokładne pozycje skłądników oraz ich ilość.
|
||||
- Dostępne skadniki wybieramy z tabeli [skladniki], która wcześniej została uzupełniona on potrzebne skłądniki. 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ż
|
||||
- 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 oraz osobistym.
|
||||
- Jesli klient zamawia na dowóz, wybiera się jego adres z kartoteki kleintów (tabela [klienci]), lub zostawia się puste pola w przypadku zamówienia na miejscu.
|
||||
- Na podstawie zamówienia, system odrazu sprawdzi czy ilość skłądników jest wystarczająca do zrealizowania zamówienia.
|
||||
- W tabeli [zamowienia_wiersze] wybiera się produkty z tabeli [produkty], i wpisuje ich ilość. System automatycznie przpeisze ustalona cenę, oraz obliczy jaki jest koszt produktu na podstawie jego skłądników z ostatnich zakupów.
|
||||
- Po zatwierdzniu zamówienia, w tabeli [składniki_transakcje] odejmuje sią się odpowiednie składniki, w odpowiedniej ilości poprzed ich definicję w 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.
|
||||
# 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
|
||||
|
||||
![](https://git.wmi.amu.edu.pl/s444337/projekt-bazy-danych-pizza-fat/raw/master/schemat_bazy.png)
|
||||
|
||||
### 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.
|
Loading…
Reference in New Issue
Block a user