| | 1 | = Додавање категорија |
| | 2 | |
| | 3 | == Актери |
| | 4 | * Администратор |
| | 5 | |
| | 6 | == Опис |
| | 7 | Администраторот додава нова категорија во системот со цел услугите да може да се организираат и групираат според тип. Оваa функционалност e достапна само за администратори. |
| | 8 | |
| | 9 | == Сценарио |
| | 10 | |
| | 11 | == Чекор 1 |
| | 12 | Администраторот ја отвора страницата „Services“ и го избира делот „Add Category“. |
| | 13 | == Чекор 2 |
| | 14 | Администраторот го внесува името на новата категорија во соодветното поле. |
| | 15 | == Чекор 3 |
| | 16 | Администраторот кликнува на копчето „Add Category“. |
| | 17 | |
| | 18 | == Чекор 4 |
| | 19 | Системот проверува дали корисникот е најавен и ја потврдува неговата администраторска улога. |
| | 20 | За таа цел, системот го вчитува корисникот според user_id: |
| | 21 | |
| | 22 | {{{ |
| | 23 | SELECT user_id, full_name, email, phone |
| | 24 | FROM "User" |
| | 25 | WHERE user_id = $1; |
| | 26 | }}} |
| | 27 | |
| | 28 | Потоа ги вчитува и неговите улоги: |
| | 29 | |
| | 30 | {{{ |
| | 31 | SELECT r.name |
| | 32 | FROM UserRole ur |
| | 33 | JOIN Role r ON ur.role_id = r.role_id |
| | 34 | WHERE ur.user_id = $1; |
| | 35 | }}} |
| | 36 | |
| | 37 | ==Чекор 5 |
| | 38 | Доколку корисникот е администратор, системот ја валидира внесената категорија (име мора да постои и да биде во дозволениот формат). |
| | 39 | |
| | 40 | ==Чекор 6 |
| | 41 | Системот се обидува да внесе нова категорија во базата: |
| | 42 | |
| | 43 | {{{ |
| | 44 | INSERT INTO Category (name) |
| | 45 | VALUES ($1) |
| | 46 | RETURNING *; |
| | 47 | }}} |
| | 48 | |
| | 49 | ==Чекор 7 |
| | 50 | Ако веќе постои категорија со истото име, базата го активира UNIQUE ограничувањето: |
| | 51 | |
| | 52 | {{{ |
| | 53 | CONSTRAINT category_name_key UNIQUE (name) |
| | 54 | }}} |
| | 55 | |
| | 56 | и системот прикажува порака дека категоријата веќе постои. |
| | 57 | |
| | 58 | == Чекор 8 |
| | 59 | Ако внесувањето е успешно, системот прикажува порака за успех и новата категорија станува видлива во листата на категории. |
| | 60 | |
| | 61 | == Резултат |
| | 62 | Категоријата е успешно додадена. Администраторот може да продолжи да додава услуги во новосоздадената категорија. |