Ocena użytkowników: 5 / 5

Gwiazdka aktywnaGwiazdka aktywnaGwiazdka aktywnaGwiazdka aktywnaGwiazdka aktywna
 

Projekt bazy danych systemu informatycznego „Sklep internetowy” sporządzono w środowisku MySQL Workbench. Do pobrana pod adresem: http://www.mysql.com/downloads/workbench/.

Baza danych umożliwia tworzenie zbiorów danych związanych z funkcjonowaniem Sklepu komputerowego, takich jak:

  • dane osobowe, kontaktowe, adresowe pracowników sklepu oraz jego klientów,
  • dane dotyczące sprzedaży towarów,
  • dane dotyczące zamówień składanych przez klientów.

Gospodarka magazynowa – magazyn produktów dostępnych w sklepie

Dodatkowo baza danych systemu umożliwia:

  • wspomaganie pracy w zakresie zarządzania zasobami magazynowymi sprzedawanych produktów,
  • tworzenie własnej klasyfikacji produktów według nazw kategorii oraz producentów,
  • dodawanie własnych definicji produktów z wykorzystaniem atrybutów (nazwa produktu, typ, wersja, zdjęcie, opis, cena sprzedaży, …),
  • prowadzenie ewidencji sprzedaży poszczególnych egzemplarzy danego produktu (numer seryjny, data sprzedaży, data zakupu, cena, …),
  • sprawdzenie, czy dany produkt jest dostępny w sprzedaży,
  • uzyskanie informacji o ilości dostępnego produktu.

Klasyfikacja produktów

W celu ułatwienia zarządzania zbiorami danych, wprowadzono klasyfikację według nazw kategorii produktów oraz nazw producentów. W tabeli przedstawiono przykład (Tabela 1.).

 

Tabela 1. Przykładowa klasyfikacja według nazw kategorii produktów oraz nazw producentów.
Klasyfikacja: Przykład:
Nazwa kategorii Procesor, monitor LCD, karta graficzna, …
Nazwa producenta Intel, IIyama, ATI, …

Wprowadzenie nowego egzemplarza danego produktu

Wprowadzenie powinno być wykonane w następującej kolejności:

  1. utworzenie nazwy kategorii oraz producenta (kolejność nie ma znaczenia),
  2. wprowadzenie danych dotyczących produktu (nazwa produktu, typ, wersja, opis, fotografia, …),
  3. wprowadzenie danych dotyczących konkretnego egzemplarza danego produktu (nr seryjny, data zakupu, data sprzedaży, cena, …).

W ramach jednego produktu posiadającego atrybuty takie jak: nazwa, typ, wersja, fotografia, opis, można utworzyć wiele egzemplarzy, z których każdy posiada swój unikalny numer seryjny. Każdy egzemplarz danego produktu może różnić się także datą zakupu, datą sprzedaży oraz ceną.

System zaprojektowany dla przykładowej bazy danych powinien umożliwiać:

  • usunięcie nazwy kategorii, w ramach której został już wcześniej utworzony produkt,
  • usunięcie nazwy producenta, w ramach którego został już wcześniej utworzony produkt,
  • usunięcie produktu, w ramach którego utworzono egzemplarze.

Zależności te wynikają z relacji łączących tabele w bazie danych.

Wyszukiwanie określonego produktu

Dzięki wprowadzeniu klasyfikacji, system powinien umożliwiać wyszukiwanie produktów według wcześniej zdefiniowanych kryteriów (kategorie, producenci). Dodatkowo można zastosować filtr wyszukiwania po nazwie produktu.

Składanie zamówienia przez klienta

Warunkiem złożenia zamówienia przez klienta jest posiadanie konta w naszym sklepie. Pojedyncze zamówienie może zawierać wiele produktów. Przy rejestracji nowego klienta wymagane jest podanie adres email, dzięki czemu programista może napisać funkcję, która po dokonaniu zamówienia, automatycznie wyśle potwierdzenie na adres email podany przez klienta podczas rejestracji konta.

 

Schemat ERD (ang. Entity-Relationship Diagram)

Na rysunku 1. przedstawiono schemat ERD bazy danych.

Schemat ERD bazy danych systemu - Sklep komputerowy
 
Rys. 1. Schemat ERD bazy danych systemu - Sklep komputerowy

 

Opis tabel

Tabele 2 - 15 prezentują strukturę tabel.

 

Tabela 2. galeria_zdjec
Nazwa pola: Typ:
id_zdjecia int
id_produkt int
nazwa_jpg varchar (45)
data_dodania datetime

 

Tabela 3. zamowienia_produkty
Nazwa pola: Typ:
id_zamowienia_produkty int
id_zamowienia int
id_produkt int

 

Tabela 4. produkty
Nazwa pola: Typ:
id_produkt int
id_kategorie_producenci int
nazwa_produktu varchar (45)
typ varchar (45)
wersja varchar (45)
opis text
fotografia varchar (45)
cena_netto_sprzedazy_aktualna decimal(10, 2)
cena_brutto_sprzedazy_aktualna decimal(10, 2)
procent_vat_sprzedazy decimal(8, 2)

 

Tabela 5. kategorie_producenci
Nazwa pola: Typ:
id_kategorie_producenci int
id_kategoria int
id_producent int

 

Tabela 6. kategorie
Nazwa pola: Typ:
id_kategoria int
nazwa_kategorii varchar (45)

 

Tabela 7. producenci
Nazwa pola: Typ:
id_producent int
nazwa_producenta varchar (45)

 

Tabela 8. zamowienia
Nazwa pola: Typ:
id_zamowienia int
id_kllient int
data_zlozenia_zamowienia datetime
czy_przyjeto_zamowienie bool
data_przyjecia_zamowienia datetime
zapłacono varchar(45)
data_wysylki datetime
czy_zamowienie_zrealizowano bool
data_realizacji_zamowienia datetime

 

Tabela 9. egzemplarze
Nazwa pola: Typ:
id_egzemplarz int
id_produkt int
kod_produktu varchar(45)
cena_netto_zakupu decimal(10, 2)
cena_brutto_zakupu decimal(10, 2)
procent_vat_zakupu int
data_zakupu datetime
date_sprzedazy datetime
czy_sprzedano bool

 

Tabela 10. pozycje_faktury_sprzedazy
Nazwa pola: Typ:
id_pozycja_faktury_sprzedazy int
id_faktura_sprzedazy int
id_egzemplarz int
cena_netto_sprzedazy decimal(10,2)
cena_brutto_sprzedazy decimal(10,2)
procent_vat_sprzedazy int

 

Tabela 11. faktury_sprzedazy
Nazwa pola: Typ:
id_faktura_sprzedazy int
id_klient int
nr_faktury_sprzedazy varchar (45)
data_sprzedazy varchar (45)
wartosc_netto varchar (45)
wartosc_brutto varchar (45)
wartosc_vat varchar (45)
nazwa_banku varchar (45)
format_platnosci varchar (45)
rodzaj_dokumentu varchar (45)

 

Tabela 12. klienci
Nazwa pola: Typ:
id_klient int
id_adres int
id_kontakt int
login varchar(45)
md5_haslo varchar(32)
nazwa_firmy varchar(45)
regon varchar(45)
nip varchar(45)
nazwisko varchar(45)
imie varchar(45)
rodzaj_klienta varchar(45)

 

Tabela 13. kontakty
Nazwa pola: Typ:
id_kontakt int
nr_tel_1 int
nr_tel_2 int
fax varchar(45)
email varchar(32)
www varchar(45)

 

Tabela 14. adresy
Nazwa pola: Typ:
id_adres int
miasto varchar(45)
miejscowosc varchar(45)
wojewodztwo varchar(45)
powiat varchar(45)
kod_pocztowy varchar(45)
ulica varchar(45)
nr_domu varchar(45)
nr_lokalu varchar(45)

 

Tabela 15. pracownicy
Nazwa pola: Typ:
id_pracownik int
id_adres int
id_kontakt int
login varchar(45)
md5_haslo varchar(32)
imie varchar(45)
nazwisko varchar(45)
uprawnienie enum(0, 1, 2, 3)
konto_aktywne bool
data_zatrudnienia datetime
data_zwolnienia datetime

 

Obecnie sklepy internetowe są bardzo popularną formą handlu. Większość firm zajmujących się hostingiem udostępnia również własne sklepy (opłata miesięczna). Pisanie własnego sklepu w większości przypadków nie jest potrzebne, gdyż już jest naprawdę sporo tego typu produktów na rynku. Czasami zaprojektowanie sklepu pod konkretne wymagania może być przydatne, jednak należy się liczyć z wydaniem większej sumy pieniędzy.

 

Projekt wykonali:

 

Warto przeczytać również:

Wybrane książki:

Książki Helion