Changes between Version 6 and Version 7 of UseCaseImplementationsFinal
- Timestamp:
- 10/06/25 21:30:49 (11 days ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
UseCaseImplementationsFinal
v6 v7 16 16 17 17 == ИД: 1 - Kошничка - нелогиран корисник == 18 При вчитување на основната страна, сега корисникот иако не е најавен ќе може да види дека има опција за да се купи производот. Доколку сака истиот да го купи, ќе го пренасочи на страната за логирање. 18 При вчитување на основната страна, сега корисникот иако не е најавен ќе може да види дека има опција за да се купи производот. Доколку сака истиот да го купи, ќе го пренасочи на страната за логирање. 19 19 20 20 [[Image(home_nelogiran.jpg)]] 21 21 [[BR]] 22 Кошничката работи за најавени корисници преку серверски API, а за нелогирани се зачувува во localStorage и синхронизира при најава. 22 23 [[Image(koshnicka_nk.png)]] 23 24 … … 25 26 == ИД: 2 - Логирање - Оpen Authorization protocol == 26 27 28 Корисниците се аутентицираат со JWT или преку Google OAuth; при OAuth backend ги линкува или креира корисниците, а ако постои сметка со лозинка OAuth се блокира. 29 Кога корисникот ќе ја кликне опцијата за најава со google, на backend делот се иницира OAuth протоколот кон Google и се автентицира корисничката сметка и повикува callback на backend-от каде ќе проба да најде корисник по google_id. Ако постои го враќа тој корисник. 30 Ако не најде по google_id ќе проба по email. Ако има user со тој email и тој user има password, OAuth логин се одбива и враќа порака да се најави со лозинка. 31 Ако има user со тој email но нема password, се „линкува“ Google профилот и се враќа тој user, а ако нема user со тој email се креира нов user во users табелата со google_id и генераран username, и се враќа новиот user. 32 По успешен автентицирање, backend издава JWT и се враќа кон frontend callback страница со токен. 33 27 34 [[Image(oauth_1.png)]] 28 35 [[BR]] 29 [[Image()]] 30 [[Image()]] 31 [[Image()]] 32 36 [[Image(oauth_2.png)]] 37 [[Image(oauth_3.png)]] 38 [[Image(oauth_4.png)]] 33 39 34 40 … … 42 48 [[Image(notification_frontend_1.png)]] 43 49 [[Image(notification_frontend_2.png)]] 50 [[BR]] 44 51 Eве ги следните функционалности на страната на серверот. 45 52 [[Image(notification_backend_1.png)]] 46 53 [[Image(notification_backend_2.png)]] 47 54 [[Image(notification_backend_3.png)]] 55 [[Image(notifications.png)]] 48 56 49 57 … … 55 63 [[BR]] 56 64 [[Image(prodavacki_panel.png)]] 57 [[Image()]] 58 [[Image()]] 65 [[BR]] 66 По успешен checkout, се предаваат информациите за ид на продавач и ид на купувач во функцијата createNotification, кој само вметнува ред во базата за податоци. 67 [[Image(notification_buyer.png)]] 68 [[Image(notification_buyer_baza.png)]] 59 69 60 70