wiki:ERModel

Version 7 (modified by 223075, 11 days ago) ( diff )

--

ЕР Дијаграм

Финална верзија ERModel


Податочни побарувања

Ентитети

  1. USER – ентитет кој чува податоци за крајните корисници (клиенти).
    • user_id (primary key, bigint)
    • username (string, задолжително)
    • email (string, задолжително)
    • password_hash (string, задолжително)
    • (други полиња по потреба, пример first_name, last_name)
  1. INSTRUCTOR – ентитет кој чува податоци за инструктори.
    • instructor_id (primary key, bigint)
    • first_name (string, задолжително)
    • last_name (string, задолжително)
    • biography (text, опционално)
  1. TRAINING – ентитет кој чува податоци за различни типови јога тренинзи (Vinyasa, Hatha итн.).
    • training_id (primary key, bigint)
    • training_name (string, задолжително)
    • description (text, опционално)
    • duration (int, опционално)
    • intensity_level (string, опционално)
  1. CLASS – ентитет кој чува податоци за закажани часови во распоред.
    • class_id (primary key, bigint)
    • date (date, задолжително)
    • start_time (time, задолжително)
    • end_time (time, задолжително)
    • location (string, задолжително)
    • capacity (int, опционално)
    • seats_available (int, опционално)
  1. EVENT – ентитет кој чува податоци за специјални настани (workshops, retreats).
    • event_id (primary key, bigint)
    • event_name (string, задолжително)
    • description (text, опционално)
    • date (date, задолжително)
    • time (time, задолжително)
    • location (string, задолжително)
  1. PACKAGE – ентитет кој чува податоци за пакети (e.g., “5-Class Pass”).
    • package_id (primary key, bigint)
    • package_name (string, задолжително)
    • price (decimal, задолжително)
    • num_classes (int, задолжително)
  1. MERCH_ITEMS – ентитет кој чува податоци за јога опрема (мерч).
    • merch_id (primary key, bigint)
    • item_name (string, задолжително)
    • description (text, опционално)
    • price (decimal, задолжително)
    • quantity_in_stock (int, опционално)

Релации

  1. books – релација помеѓу USER и CLASS (M:N). Означува дека еден корисник може да букира повеќе часови, а еден час може да биде букиран од повеќе корисници.
  1. teaches – релација помеѓу INSTRUCTOR и CLASS (1:N). Означува кој инструктор го предава одреден час. Секој час мора да има точно еден инструктор, а еден инструктор може да предава повеќе часови.
  1. is_scheduled_for – релација помеѓу CLASS и TRAINING (M:N). Еден час може да содржи повеќе (најмалку еден) тренинзи (комбинирана сесија), а еден тренинг може да се појави во повеќе часови или воопшто да не биде закажан.
  1. registers – релација помеѓу USER и EVENT (M:N). Корисниците се регистрираат за специјални настани.
  1. buys – релација помеѓу USER и PACKAGE (M:N). Означува купување пакети.
  1. purchases – релација помеѓу USER и MERCH_ITEMS (M:N). Означува дека корисниците можат да купуваат јога опрема.
  1. is_for – релација помеѓу PACKAGE и CLASS (M:N). Означува кои часови ги содржи еден пакет. Еден пакет мора да има барем еден час, а еден час може да биде дел од ниту еден или повеќе пакети.

Историјат

Верзија 2

BlissCoreDB_Scheme_2.png

Промени во однос на Верзија 1:

  • Релацијата is_for сега е помеѓу PACKAGE и CLASS...
  • Релацијата is_scheduled_for е прилагодена да биде M:N...

Верзија 1

BlissCoreDB_Scheme_1.png

Опис: Првична верзија

Attachments (4)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.