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 | |
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 | | |