Финална Имплементација на случаите на употреба
- По фазата Pre Final Presentation, се доизработени следниве функционалности (id=3 и id=4):
- прикажување на серверски грешки од login/signup форми на front-end
- бришење на локации од планер
- разгледување на сите локации за избран град или регион, независно од формата за предложување локации
- додавање нови локации
Сценаријата id=1 и id=2 се истите сценарија од UseCaseImplementations за Prefinal верзијата..
Корисници
Турист
ID | 1 |
---|---|
Случај на употреба | Креира initial планер со име и опис |
Креирано од | Ема |
Последно ажурирано од | Ема |
Датум | 04.05.2021 |
Актери | Турист |
Опис | Корисникот - турист креира initial планер со име и опис |
Тригер | Корисникот - турист сака да зачува локација во одрреден планер |
Предуслов | Корисникот - турист да ја избере опцијата "Create initial planner" |
Постуслов | Корисникот – турист да ја кликне опцијата “Save” |
Нормален тек | 1. Корисникот – турист се најавува во системот 2. Системот го пренасочува корисникот на страницата каде се излистани сите планери на најавениот корисник (доколку ги има ) каде се наоѓа и копчето "Create initial planner" и "Add location" 3. Корисникот - турист ја одбира опцијата "Create initial planner" за да креира нов планер 4. Системот појавува dynamic dialog кој е составен од две input полиња: име и опис на планер и копче "Save" 5.Корисникот - турист внесува име и опис на планерот кој го креира и кликнува на копчето "Save" 6. Системот го зачувува креираниот планер и го прикажува во поглед со сите претходно креирани планери (доколку ги има) |
Исклучоци | Да не е кликнато копчето “Save” |
Вклучува | / |
Приоритет | / |
Фреквенција на користење | Според потребите на корисникот |
Бизнис правила | / |
Специјални побарувања | / |
Претпоставки | / |
Забелешки | / |
ID | 2 |
---|---|
Случај на употреба | Разгледува и дефинира план за патување |
Креирано од | Ема |
Последно ажурирано од | Ема |
Датум | 28.04.2021 |
Актери | Турист |
Опис | Корисникот - турист го дополнува/менува планерот кој го креирал |
Тригер | Корисникот - турист сака да промени име, опис и/или да додаде локации во избраниот планер |
Предуслов | Да е креиран initial планер |
Постуслов | Внесува и селектира податоци и добива предлог локации |
Нормален тек | 1. Корисникот – турист се најавува во системот 2. Системот го пренасочува корисникот на страницата каде се излистани сите планери на најавениот корисник (доколку ги има ) каде се наоѓа и копчето "Create initial planner" и "Add location" 3. Корисникот - турист го одбира планерот во кој сака да направи промени и кликнува на копчето "Edit" 4. Системот го пренасочува корисникот на друга адреса каде на корисникот му го прикажува планерот со податоци за име, опис, опција за додавање локации и поле за прикажува на сите додадени локации со опција за бришење до секоја локација (ако има додадено локации) 4.а Корисникот - турист менува само име и опис на планерот и кликнува на копчето "Save" 4.б Корисникот - турист сака да додаде локации во планерот и ја одбира опцијата "Add locations" 4.в Корисникот - турист сака да избрише додадена локација од својот планер 4.а.1 Системот ги зачувува промените и го пренасочува корисникот на страницата каде се излистани сите планери 4.б.1 Системот го пренасочува корисникот на страница каде се наоѓа форма за внесување и селектирање податоци според кои ќе му се генерираат локации 4.б.2 Корисникот – турист внесува и селектира податоци (регион или град, придружба - дали ќе патува сам/со група/партнер/семејство, колку денови планира да престојува, што му е приоритетно да посети – природа, монументи, sightseeing, шопинг, музеи, цркви, рурален туризам, водопади, реки итн) 4.б.3 Корсиникот - турист кликнува на копчето “Create my planner” 4.б.4 Системот ги обработува податоците и врз основа на барањата генерира предлог локации и го пренасочува корисникот на адреса каде се излистани сите предложени локации со копчиња: "Add to my planner", "See details" и "Back to my Planners" 4.б.5 Корисникот - турист разгледува локации 4.б.5.а Корисникот – турист кликнува на локацијата за која сака да погледне детали "See details" 4.б.5.а.1 Системот го пренасочува корисникот- турист на страницата за преглед на детали за избраната локација и му прикажува детали (адреса, име, опис, carousel од слики) 4.б.5.б Корисникот- турист кликнува на копчето "Add to my planner" за избраната локација 4.б.5.б.1 Системот му овозможува на корисникот pop-up прозорец во кој се излистани сите претходно креирани планери заедно со копче "Save" 4.б.5.б.2 Корисникот - турист одбира во кој од планерите ќе ја додаде избраната локација и кликнува на копчето "Save" 4.б.5.б.3 Системот проверува дали планерот е празен, доколку е само ја додава локацијата, ако не е празен планерот проверува дали избраната локација веќе постои во планерот и соодветно дава порака до корисникот 4.в.1 Корисникот - турист ја од листата на додадени локации кликнува на копчето "x" од редот на избраната локација 4.в.2 Системот ја отстранува локацијата од база и прави refresh на листа |
Исклучоци | Да не е креиран ниту еден initial планер во кој ќе може да се внесат локации |
Вклучува | / |
Приоритет | / |
Фреквенција на користење | Според потребите на корисникот |
Бизнис правила | / |
Специјални побарувања | / |
Претпоставки | / |
Забелешки | / |
- Туристот брише локација од планер
- Во edit планер страницата покрај копче "Add locations", полиња за внес на име и опис, има и листа со сите локации кои ги додал корисникот. Во секој ред од листата локации има и копче "x". При клик на тоа копче се прави Delete request, и се извршува onClickRemoveLocation() метод во кој од plannerService се повикува методот deleteLocationFromPlanner(this.plannerLocationDto).
ID | 3 |
---|---|
Случај на употреба | Додавање локации |
Креирано од | Ема |
Последно ажурирано од | Ема |
Датум | 02.02.2022 |
Актери | Турист |
Опис | Корисникот - турист додава локации |
Тригер | Корисникот - турист сака да додаде локација која ја нема во база |
Предуслов | Да не постои локацијата во база |
Постуслов | Корисникот – турист да ја кликне опцијата “Next” |
Нормален тек | 1. Корисникот – турист се најавува во системот 2. Системот го пренасочува корисникот на страницата каде се излистани сите планери на најавениот корисник (доколку ги има) каде се наоѓа и копчето "Create initial planner" и "Add location" 3. Корисникот - турист ја одбира опцијата "Add location" за да креира нова локација 4. Системот го пренасочува на друга адреса каде се наоѓа stepper за креирање нова локација 5. Корисникот - турист го пополнува првиот чекор 6. Системот прикажува форма со полиња за: име, опис, адреса, времетраење, тривиа; select bar за приоритети, регион и градови, и копчето "Next" 7. Корисникот - турист задолжително ги пополнува сите полиња и кликнува на копчето "Next" 8. Системот го овозможува вториот дел од stepper-от кој е составен од листа од придружби кои треба да и се доделат на претходно креираната локација и копче "Next" 9. Корисникот - турист ги селектира соодветните опции и кликнува на копчето "Next" 10. Системот го овозможува третиор дел од stepper-от кој е составен од chips категории кои треба да и се доделат на претходно креираната локација и копче "Next" Корисникот - турист ги селектира категориите и кликнува на копчето "Next" Системот го прикажува последниот поглед од stepper-от во кој има текст порака за успешно креирање локација и копче "Reset" за ресетирање на формата |
Исклучоци | Да не е кликнато копчето “Next” |
Вклучува | / |
Приоритет | / |
Фреквенција на користење | Според потребите на корисникот |
Бизнис правила | / |
Специјални побарувања | / |
Претпоставки | / |
Забелешки | / |
- На адреса http://localhost:4200/add-location се наоѓа готова компонента stepper од Angular material за креирање на нова локација составена од 4 дела. Првиот дел е форма за креирање на локација со полиња за име, опис, адреса, тривиа, времетраење; листи за град, регион и приоритет; и копче "Next". Додека не се пополнат полињата не може да се премине на наредниот чекор. При клик на копчето "Next" се извршува метод submitLocation() од AddLocation компонентата. Во оваа функција се прави subscribe на save(this.locationDto) методот кој се повикува од LocationService. save(this.locationDto) се “претплатува” на Observable со model Location. Со испраќање на HTTP POST метод до backend REST контролерот со url = "http://localhost:8080/api/add" , се зачувува Request Body од LocationDto со сите податоци земени од полињата и испратени на back. Покрај request body-то, се испраќа и header со автентикациски токен, за да се знае од кој корисник е креирана локацијата. Потоа, корисникот може да премине на следниот чекор и да додели companion на претходно креираната локација. По клик на "Next" има листа од id на companions кои корисникот ги селектирал и секој елемент од листата се зачувува во база за locationId. Потоа на корисникот му се прикажува претпоследниот чекор, каде на истиот начин како и за companions се додаваат и категории за претходно креираната локација. По клик на "Next" се појавува последниот дел од stepper-от каде се испишува порака за успешно креирана локација и копче "Reset" за освежување на формата и повторна можност за креирање нова локација.
ID | 4 |
---|---|
Случај на употреба | Разгледување на сите локации за избран град или регион, независно од формата за предложување локации |
Креирано од | Ема |
Последно ажурирано од | Ема |
Датум | 02.02.2022 |
Актери | Турист |
Опис | Корисникот - турист ги разгледува сите локации за избран град или регион |
Тригер | Корисникот - турист сака да ги разгледува сите локации за избран град или регион |
Предуслов | |
Постуслов | |
Нормален тек | 1. Корисникот – турист се наоѓа на страницата за пребарување локации по град или регион каде има autocomplete поле за избор на дестинација и копче "Search" 2. Корисникот - турист ја избира дестинацијата и кликнува на копчето "Search" 3. Системот го пренасочува корисникот на друга адреса каде се излистани сите локации за избраната дестинација 4. Корисникот - турист ги разгледува сите локации |
Исклучоци | Да не е кликнато копчето “Search” |
Вклучува | / |
Приоритет | / |
Фреквенција на користење | Според потребите на корисникот |
Бизнис правила | / |
Специјални побарувања | / |
Претпоставки | / |
Забелешки | / |
- Од патеката /explore каде што се наоѓа autocomplete поле (преземана компонента од angular material) корисникот внесува/избира дестинација и кликнува на копчето “Search”. При клик на “Search” се извршува функцијата load(). Оваа метода прави subscribe на методата getAllLocationsSearch(this.selectedPlace) која се повикува од locationService. getAllLocationsSearch(this.selectedPlace) се “претплатува” на Observable со колекција Location. Со испраќање на HTTP GET метод до backend REST контролерот со url = "http://localhost:8080/api/all" , се земаат сите локации за избраната дестинација и корисникот се пренасочува на http://localhost:4200/results?place= каде се листаат сите локации и слики.
Last modified
3 years ago
Last modified on 02/06/22 20:07:24
Attachments (6)
- search.png (12.3 KB ) - added by 3 years ago.
- loc1.png (42.4 KB ) - added by 3 years ago.
- loc2.png (35.9 KB ) - added by 3 years ago.
- loc3.png (39.8 KB ) - added by 3 years ago.
- loc4.png (18.0 KB ) - added by 3 years ago.
- removeLoc.png (30.5 KB ) - added by 3 years ago.
Download all attachments as: .zip
Note:
See TracWiki
for help on using the wiki.