Changes between Version 12 and Version 13 of UseCaseRealizations
- Timestamp:
- 12/29/21 17:46:00 (3 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
UseCaseRealizations
v12 v13 25 25 1. Корисникот - турист ажурира планер (http://localhost:4200/edit/planner/id) 26 26 27 - GET 28 Од патеката /planners каде што се наоѓаат сите планери креирани од корисникот, корисникот одбира кој планер сака да го ажурира и кликнува на копчето “Edit”. 29 При клик на “Edit” се повикува функцијата onClickEditPlannerGet(id: number) каде како аргумент се дава ид-то на планерот. Оваа метода прави subscribe на методата getPlannerById(id) која се повикува од планер сервисот. getPlannerById(id) се “претплатува” на Observable со модел Planner (getPlannerById(id: number): Observable<Planner>). Со испраќање на HTTP GET метод до backend REST контролерот со url = "http://localhost:8080/api/planner/" + id , се зема кликнатиот планер и корисникот се пренасочува на http://localhost:4200/edit/planner/id каде се наоѓа форма со веќе зачуваните податоци за име и опис на планер, листа локации (ако има локации додадено) , копче “Add locations”, како и копчиња Save и Cancel. 27 - GET: Од патеката /planners каде што се наоѓаат сите планери креирани од корисникот, корисникот одбира кој планер сака да го ажурира и кликнува на копчето “Edit”. При клик на “Edit” се повикува функцијата onClickEditPlannerGet(id: number) каде како аргумент се дава ид-то на планерот. Оваа метода прави subscribe на методата getPlannerById(id) која се повикува од планер сервисот. getPlannerById(id) се “претплатува” на Observable со модел Planner (getPlannerById(id: number): Observable<Planner>). Со испраќање на HTTP GET метод до backend REST контролерот со url = "http://localhost:8080/api/planner/" + id , се зема кликнатиот планер и корисникот се пренасочува на http://localhost:4200/edit/planner/id каде се наоѓа форма со веќе зачуваните податоци за име и опис на планер, листа локации (ако има локации додадено) , копче “Add locations”, како и копчиња Save и Cancel. 30 28 31 - POST 32 Корисникот ажурира име, опис и/или листа локации и кликнува на копчето “Save”. При клик на “Save” се повикува функцијата updatePlanner(). Во оваа функција се прави subscribe на методот updatePlanner(this.id, this.form.value) кој се повикува од planner service-от. Оваа метода updatePlanner(this.id, this.form.value) се “претплатува” на Observable со модел Planner (updatePlanner(id: number, plannerDto: PlannerDto): Observable<Planner>) која се зачувува со испраќање на HTTP PUT метод до backend REST контролерот со url = "http://localhost:8080/api/edit/planner/id". Дополнително при испраќање на повикот, покрај урл-то се испраќа и header во кој се наоѓа и токенот од најавениот корисник. Овој токен се чува и зема од sessionStorage. Така ажурираните податоци преку updatePlanner() методот се праќаат до backend. 29 - POST: Корисникот ажурира име, опис и/или листа локации и кликнува на копчето “Save”. При клик на “Save” се повикува функцијата updatePlanner(). Во оваа функција се прави subscribe на методот updatePlanner(this.id, this.form.value) кој се повикува од planner service-от. Оваа метода updatePlanner(this.id, this.form.value) се “претплатува” на Observable со модел Planner (updatePlanner(id: number, plannerDto: PlannerDto): Observable<Planner>) која се зачувува со испраќање на HTTP PUT метод до backend REST контролерот со url = "http://localhost:8080/api/edit/planner/id". Дополнително при испраќање на повикот, покрај урл-то се испраќа и header во кој се наоѓа и токенот од најавениот корисник. Овој токен се чува и зема од sessionStorage. Така ажурираните податоци преку updatePlanner() методот се праќаат до backend. 33 30 2. Туристот пополнува податоци за да му се генерираат локации 34 31 - По клик на копчето “Add location” корисникот се пренасочува на адресата /form каде се наоѓа форма за пополнување и избирање податоци според кои ќе му се препорачаат локации. Корисникот одбира дали сака да разгледува локации по регион или по град, одбира со кого ќе оди, колку дена планира да престојува и селектира категории за тоа што би сакал да посети. По клик на копчето “Create my planner” методот createMyPlanner() од locations-form компонентата проверува дали корисникот избрал Регион или Град како опција и соодветно на изборот се прави subscribe на методот (this.cityId, this.companionId, this.lengthOfStay, this.categoryIds) или getLocationsFromRegion(this.regionId, this.companionId, this.lengthOfStay, this.categoryIds) соодветно. Овие методи се повикани од locationService-от, каде се “претплатуваат” на Observable со колекција од локации. Оваа листа од локации која се добива со испраќање на HTTP GET повик до backend REST контролерот. За генерирањето на локациите е напишан алгоритам во сервисниот слој на backend заедно со sql во repository слојот. Предлог-локациите по клик на “Create my planner” се листаат на адреса http://localhost:4200/locations.