Files
shopPRO/DATABASE_STRUCTURE.md
Jacek Pyziak 336891276d Add new controllers for file management and product archiving
- Introduced FilemanagerController to handle file manager access and URL generation.
- Added ProductArchiveController for managing archived products, including listing and unarchiving functionality.
- Implemented Site class with methods for finalizing admin login and handling special actions.
- Created ShopProduct control class for managing product operations, including mass editing, product duplication, and image handling.
- Added necessary methods for product management, including saving, deleting, and changing product statuses.
2026-02-11 00:26:01 +01:00

3.8 KiB

Struktura bazy danych shopPRO

Plik aktualizowany na bieżąco przy zmianach w kodzie. ORM: Medoo ($mdb), prefix tabel: pp_

pp_shop_products

Główna tabela produktów.

Kolumna Opis
id PK
parent_id FK do produktu nadrzędnego (kombinacje) - NULL dla produktów głównych
price_brutto Cena brutto
price_brutto_promo Cena promocyjna brutto
quantity Stan magazynowy
status Status: 1 = aktywny, 0 = nieaktywny
archive Archiwum: 1 = zarchiwizowany, 0 = aktywny
promoted Czy promowany
vat Stawka VAT
ean Kod EAN
sku Kod SKU
baselinker_product_name Nazwa produktu w Baselinker
apilo_product_name Nazwa produktu w Apilo

Używane w: Domain\Product\ProductRepository, admin\factory\ShopProduct

pp_shop_products_langs

Tłumaczenia produktów (per język).

Kolumna Opis
id PK
product_id FK do pp_shop_products
lang_id ID języka (np. 'pl')
name Nazwa produktu

Używane w: Domain\Product\ProductRepository::getName()

pp_shop_products_images

Zdjęcia produktów.

Kolumna Opis
id PK
product_id FK do pp_shop_products
src Ścieżka do pliku
alt Tekst alternatywny

pp_shop_products_categories

Przypisanie produktów do kategorii.

Kolumna Opis
product_id FK do pp_shop_products

Używane w: admin\factory\ShopProduct::product_delete()

pp_banners

Banery.

Kolumna Opis
id PK
name Nazwa banera
status 0/1
date_start Data rozpoczęcia
date_end Data zakończenia
home_page Czy na stronie głównej 0/1

Używane w: Domain\Banner\BannerRepository

pp_banners_langs

Tłumaczenia banerów.

Kolumna Opis
id PK
id_banner FK do pp_banners
id_lang ID języka
src Ścieżka do grafiki
url URL docelowy
html Kod HTML
text Tekst

Używane w: Domain\Banner\BannerRepository

pp_articles

Artykuły.

Kolumna Opis
id PK
status -1 = archiwum, 0 = nieaktywny, 1 = aktywny

Używane w: admin\controls\ArticlesArchive, Domain\Article\ArticleRepository::find()

pp_articles_pages

Strony artykułów.

Kolumna Opis
article_id FK do pp_articles
page_id FK do strony (pp_pages)
o Kolejność

Używane w: Domain\Article\ArticleRepository::find(), Domain\Article\ArticleRepository::deleteNonassignedImages()

pp_articles_langs

Tłumaczenia artykułów.

Kolumna Opis
article_id FK do pp_articles
lang_id ID języka (np. 'pl')
title Tytuł artykułu
seo_link Link SEO artykułu

Używane w: Domain\Article\ArticleRepository::find(), Domain\Article\ArticleRepository::deleteNonassignedFiles()

pp_articles_images

Zdjęcia artykułów.

Kolumna Opis
article_id FK do pp_articles
src Ścieżka do pliku
o Kolejność
id PK (używane też do sortowania DESC)

Używane w: Domain\Article\ArticleRepository::find()

pp_articles_files

Pliki artykułów.

Kolumna Opis
article_id FK do pp_articles
src Ścieżka do pliku

Używane w: Domain\Article\ArticleRepository::find()

pp_units

Jednostki/slowniki (np. jednostki produktu).

Kolumna Opis
id PK

Używane w: Domain\Dictionaries\DictionariesRepository, admin\controls\ShopProduct

pp_units_langs

Tlumaczenia jednostek (per jezyk).

Kolumna Opis
id PK
unit_id FK do pp_units
lang_id ID jezyka (np. 'pl')
text Nazwa jednostki

Używane w: Domain\Dictionaries\DictionariesRepository