Changes between Version 41 and Version 42 of UseCasePrototypeImplementation


Ignore:
Timestamp:
02/18/23 23:15:19 (15 months ago)
Author:
216151
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UseCasePrototypeImplementation

    v41 v42  
    7878  }}}
    7979}}}
    80    
     80
     81{{{#!div style="font-size: 80%"
     82[[https://develop.finki.ukim.mk/projects/profesori.mk/browser/springapp/src/main/java/mk/profesori/springapp/Service/MainService.java?rev=ebc51762bbd1b4345d8908789af87bdc49aad058|Service.MainService.java, ревизија ebc5176]]
     83  {{{#!java
     84  public void addOpinion(String title, String content, Long professorId, CustomUserDetails currentUser) {       
     85        Professor targetProfessor = professorRepository.findByProfessorId(professorId);
     86        Opinion opinionToAdd = new Opinion(title, content, currentUser, null, null,
     87                null, targetProfessor);
     88                opinionRepository.save(opinionToAdd);
     89    }
     90  }}}
     91}}}
     92
     93== Оценување на туѓо мислење (5)
     94Во оваа фаза е имплементирано и сценариото за оценување мислења. Подолу се прикажани главните отсечоци од код каде се имплементирани чекорите кои ги презема системот при тригер на сценариото, односно: \\\\
     95**1.** Апликацијата на клиентска страна со самото вчитување на мислењата кои одговараат на секцијата има достапна во меморија листа од кориснички ИД-а кои го оцениле секое мислење. Врз основа на тоа кликот го игнорира (доколку ИД на моменталниот корисник е исто со некое ИД од листата), или праќа повик до серверот што резултира со додавање на ставка во релацијата што ги чува податоците за оцени (корисник-пост) и инкрементирање/декрементирање на кармата на авторот на корисникот.
     96
     97{{{#!div style="font-size: 80%"
     98[[https://develop.finki.ukim.mk/projects/profesori.mk/browser/reactapp/src/Pages/Professor.js?rev=ebc51762bbd1b4345d8908789af87bdc49aad058|Pages/Professor.js, ревизија ebc5176]]
     99  {{{#!javascript
     100    const handlePostSubmit = async (e) => {
     101            e.preventDefault();
     102       
     103            const response = await axios(
     104              `http://192.168.0.17:8080/secure/professor/${professor.professorId}/addOpinion`,
     105              {
     106                method: "post",
     107                data: {
     108                  title: postTitle,
     109                  content: postContent,
     110                },
     111                withCredentials: true,
     112              }
     113            );
     114       
     115            window.location.reload(false);
     116          };
     117       
     118          const handleTitleChange = (e) => { //метод за контрола на полето за наслов на мислење
     119            setPostTitle(e.target.value);
     120          };
     121       
     122          const handleContentChange = (e) => {
     123            setPostContent(e.target.value); //метод за контрола на полето за содржина
     124          };
     125  }}}
     126}}}
     127
    81128{{{#!div style="font-size: 80%"
    82129[[https://develop.finki.ukim.mk/projects/profesori.mk/browser/springapp/src/main/java/mk/profesori/springapp/Service/MainService.java?rev=ebc51762bbd1b4345d8908789af87bdc49aad058|Service.MainService.java, ревизија ebc5176]]
     
    116163}}}
    117164
    118 == Оценување на туѓо мислење (5)
    119 Во оваа фаза е имплементирано и сценариото за оценување мислења. Подолу се прикажани главните отсечоци од код каде се имплементирани чекорите кои ги презема системот при тригер на сценариото, односно: \\\\
    120 **1.** Апликацијата на клиентска страна со самото вчитување на мислењата кои одговараат на секцијата има достапна во меморија листа од кориснички ИД-а кои го оцениле секое мислење. Врз основа на тоа кликот го игнорира (доколку ИД на моменталниот корисник е исто со некое ИД од листата), или праќа повик до серверот што резултира со додавање на ставка во релацијата што ги чува податоците за оцени (корисник-пост) и инкрементирање/декрементирање на кармата на авторот на корисникот.
    121 
    122 {{{#!div style="font-size: 80%"
    123 [[https://develop.finki.ukim.mk/projects/profesori.mk/browser/reactapp/src/Pages/Professor.js?rev=ebc51762bbd1b4345d8908789af87bdc49aad058|Pages/Professor.js, ревизија ebc5176]]
    124   {{{#!javascript
    125     const handlePostSubmit = async (e) => {
    126             e.preventDefault();
    127        
    128             const response = await axios(
    129               `http://192.168.0.17:8080/secure/professor/${professor.professorId}/addOpinion`,
    130               {
    131                 method: "post",
    132                 data: {
    133                   title: postTitle,
    134                   content: postContent,
    135                 },
    136                 withCredentials: true,
    137               }
    138             );
    139        
    140             window.location.reload(false);
    141           };
    142        
    143           const handleTitleChange = (e) => { //метод за контрола на полето за наслов на мислење
    144             setPostTitle(e.target.value);
    145           };
    146        
    147           const handleContentChange = (e) => {
    148             setPostContent(e.target.value); //метод за контрола на полето за содржина
    149           };
    150   }}}
    151 }}}
    152    
    153 {{{#!div style="font-size: 80%"
    154 [[https://develop.finki.ukim.mk/projects/profesori.mk/browser/springapp/src/main/java/mk/profesori/springapp/Service/MainService.java?rev=ebc51762bbd1b4345d8908789af87bdc49aad058|Service.MainService.java, ревизија ebc5176]]
    155   {{{#!java
    156   public void addOpinion(String title, String content, Long professorId, CustomUserDetails currentUser) {       
    157         Professor targetProfessor = professorRepository.findByProfessorId(professorId);
    158         Opinion opinionToAdd = new Opinion(title, content, currentUser, null, null,
    159                 null, targetProfessor);
    160                 opinionRepository.save(opinionToAdd);
    161     }
    162   }}}
    163 }}}
    164 
    165165=== Корисничка регистрација (3)
    166166Во оваа фаза за регистрацијата на корисник нема интерфејс, но може да се изврши со POST повик до позадински сервис. Пример за валиден повик: