wiki:UseCaseImplementationsFinal

Version 2 (modified by 231136, 5 days ago) ( diff )

--

Финална имплементација на случаи на употреба

Додатни случаи на употреба опфатени во финалната верзија:

ID Use Case
10 Најава на корисник со Google профил преку OAuth2
11 Објавување на дополнителна информација од страна на студент
12 Преглед на дополнителни информации оставени од студенти
13 Добивање дополнителни информации за причината зошто предмет е препорачан

ИД: 10 - Најава на корисник со Google профил преку OAuth

При клик на копчето се испраќа POST барање до backend.

Додадени се следните endpoints на серверот:

Се користи модифициран поглед со цел одговорот што го испраќа серверот да биде во ист формат како оној што се испраќа при регуларна најава.

Додадена е дадената конфигурација, каде што CLIENT_ID и CLIENT_SECRET се земени од Google Cloud Platform.

ИД: 11 - Објавување на дополнителна информација од страна на студент

Откога ќе се навигира до одреден предмет, со кликање на копчето сподели информација се отвара форма каде студентот може да пополни 2 типа на информации.

Евалуација на предметот

Сѐ останато

За двата типа со клик на копче се испраќа POST барање на истиот endpoint. Разликата е во содржината што се праќа и нејзиниот формат, согласно типот на информација која студентот ја споделува.

На backend се валидираат податоците, па се зачувуваат

ИД: 12 - Преглед на дополнителни информации оставени од студенти

Информациите можат да се прегледани од администратори и од студенти, со тоа што кај администраторот таа страна се нарекува администраторски панел, а кај студентите Информации од студенти. Може да се филтрираат информациите или да се побараат сите. Администраторот и студентите имаат различни пермисии кога се наоѓаат на оваа страна.

Студентот има можност да гласа (upvote / downvote)

Администраторот има можност да одобрува и да брише информации.

Информациите се добиваат преку GET барање. Дополнително се користи пагинација и query параметри за филтрирање.

Прво се валидираат податоците.

Django Rest Framework овозможува пагинација со користење на LimitOffsetPagination.

ИД: 13 - Добивање дополнителни информации за причината зошто предмет е препорачан

Главната логика за добивање на препораки останува исто, само дополнително се воведува логика за генерирање на текстуални описи за совпаѓањата.

Се споредуваат добиените резултати со предефинирани граници за да се одреди дали станува збор за добро совпаѓање.

Attachments (20)

Note: See TracWiki for help on using the wiki.