| 9 | | * '''Администратор:''' Има целосна контрола врз платформата. Одобрува нови организатори, менаџира со шифрарници (типови на настани, градови) и има увид во целосната статистика за користење на системот. |
| 10 | | * '''Организатор:''' Креира и менаџира сопствени настани. Дефинира локации, капацитет, различни категории на билети (на пр. VIP, Parter, Трибина) и нивни цени. |
| 11 | | * '''Купувач (Краен корисник):''' Пребарува настани според категорија, локација или датум. Може да креира профил, да врши резервации, да купува билети и да ја прегледува својата историја на нарачки. |
| | 9 | * '''Корисници (Users):''' Регистрирани клиенти кои прават резервации, вршат плаќања, добиваат билети и оставаат рецензии. Нивните профили подлежат на верификација. |
| | 10 | * '''Организатори (Organizers):''' Правни или физички лица задолжени за креирање на настаните и менаџирање со локациите. |
| | 11 | * '''Изведувачи (Performers):''' Артисти кои настапуваат на настаните со сопствени сет-листи. |
| | 12 | * '''Персонал (Staff):''' Вработени лица со специфични улоги (role) и искуство, ангажирани за непречено одвивање на конкретен настан. |
| | 13 | * '''Спонзори (Sponsors):''' Финансиски поддржувачи на настаните. |
| 16 | | * '''Корисници (Users):''' Податоци за профилите, автентикација и улоги. |
| 17 | | * '''Настани (Events):''' Детали за самиот настан (име, опис, датум, време, статус). |
| 18 | | * '''Локации (Venues):''' Информации за објектите каде се одржуваат настаните (име, адреса, град, максимален капацитет, сектори/зони). |
| 19 | | * '''Билети (Tickets):''' Типови на билети поврзани со конкретен настан, цена, достапна количина и уникатни кодови за валидација. |
| 20 | | * '''Нарачки/Резервации (Orders):''' Евиденција за купени билети, статус на нарачката, време на трансакција и поврзаност со купувачот. |
| 21 | | * '''Категории (Categories):''' Класификација на настаните (на пр. Концерт, Театар, Спорт, Семинар). |
| | 18 | * '''Локација и Инфраструктура:''' `City` и `Address` за прецизно лоцирање, `Venue` (објекти со капацитет), `Section` (сектори во објектот со дефинирана цена) и `Parking` (менаџирање со паркинг капацитет и достапност за локацијата). |
| | 19 | * '''Организација на настан:''' `Event` (основни детали за настанот), `Media` (промотивни материјали/УРЛ), и `Staff` (распоред на вработени по настан). |
| | 20 | * '''Програма и Настапи:''' `Performer`, нивните `Setlist` (со времетраење) и конкретните `Performance` (блок настапи со почеток и крај во рамки на настанот). |
| | 21 | * '''Резервации и Финансии:''' `Reservation` (статус на нарачката), `Payment` (тип и сума), `Discount` (попусти врзани за одреден сектор) и `Refund` (евиденција на вратени средства). |
| | 22 | * '''Билети (Tickets):''' Секој билет е уникатен ентитет со сериски број, генериран QR код, врзан за конкретна резервација, сектор и настан, со статус дали е искористен (`is_used`). |
| | 23 | * '''Фидбек:''' `Review` (оценки од 1 до 10 и коментари од корисниците за настаните). |
| 24 | | Моделот на податоци строго ќе внимава на релацискиот интегритет. На пример, при купување на билет, системот преку трансакција ќе треба да провери дали има слободни места за таа категорија во дадената локација и соодветно да го намали достапниот капацитет за да не дојде до "overbooking". |
| | 26 | * '''Процес на резервација и плаќање:''' Корисникот креира резервација која е поврзана со плаќање. При плаќањето може да се пресмета попуст (ако е апликабилен за секторот) или да се процесира рефундација. |
| | 27 | * '''Генерирање и Валидација на билети:''' Системот спречува дуплирање преку уникатни сериски броеви и QR кодови за секој билет. При влез на настанот, билетот се маркира преку параметарот `is_used` за да се спречи негова повторна употреба. |
| | 28 | * '''Распоред на настапи:''' Моделот овозможува еден настан да има повеќе настапи (`Performance`), а на еден настап да учествуваат повеќе изведувачи (M:N релација), што овозможува прецизна саатница (start_time, end_time). |