Skip to content

Commit eb081d4

Browse files
Merge pull request #24 from CodeURJC-DAW-2021-22/ErrorsPhase2Solve
Errors phase2 solve
2 parents 00be4c1 + 49f2d3e commit eb081d4

15 files changed

+231
-142
lines changed

backend/src/main/java/webapp3/webapp3/controller/AdminController.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -362,12 +362,13 @@ public String clients(Model model){
362362
return "USRADM_12Clients";
363363
}
364364

365+
//ajax
365366
@GetMapping("/clients/page/{page}")
366367
public String getClientPage(Model model, @PathVariable int page){
367368
Page<User> client = userServ.findPageClient(page, "member");
368369
model.addAttribute("list", client.toList());
369370

370-
return "USRADM_12CLientsAJAX";
371+
return "USRMON_06AddExerciseTableAJAX";
371372

372373
}
373374

backend/src/main/java/webapp3/webapp3/controller/MemberController.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,6 @@ public String getExerciseTablePage(Model model, @PathVariable int page){
9898
model.addAttribute("list", exerTabPage.toList());
9999

100100
return "USRMEM_01ExerciseTableAJAX";
101-
102101
}
103102

104103
@GetMapping("/MEMeditProfile/{id}")
@@ -129,9 +128,8 @@ public String addEditedProfile(Model model, @PathVariable Long id,
129128
member.setName(name);
130129
member.setSurname(surname);
131130
member.setNIF(NIF);
132-
member.getBirthday().setDay(birthday.substring(8, 10));
133-
member.getBirthday().setMonth(birthday.substring(5, 7));
134-
member.getBirthday().setYear(birthday.substring(0,4));
131+
DateType date = new DateType(birthday.substring(0,4), birthday.substring(5, 7), birthday.substring(8, 10));
132+
member.setBirthday(date);
135133
member.setHeight(Integer.parseInt(height));
136134
member.setWeight(Integer.parseInt(weight));
137135
member.setAddress(address);
@@ -227,4 +225,5 @@ public String seeActivityInfo(Model model, @PathVariable long id, HttpServletReq
227225
model.addAttribute("activity", activity.orElseThrow());
228226
return "USRMON_08SeeActivityInfo";
229227
}
228+
230229
}

backend/src/main/java/webapp3/webapp3/controller/MonitorController.java

Lines changed: 51 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import org.springframework.beans.factory.annotation.Autowired;
66
import org.springframework.core.io.ClassPathResource;
77
import org.springframework.core.io.InputStreamResource;
8+
import org.springframework.data.domain.Page;
89
import org.springframework.http.HttpHeaders;
910
import org.springframework.http.ResponseEntity;
1011
import org.springframework.core.io.Resource;
@@ -127,7 +128,6 @@ public String profile(Model model, HttpServletRequest request) {
127128

128129
//edit profile page
129130
@GetMapping("/MONeditProfile")
130-
131131
public String editProfile(Model model, HttpServletRequest request) {
132132
String emailName = request.getUserPrincipal().getName();
133133
Optional<User> mon = monServ.findByEmail(emailName);
@@ -147,7 +147,6 @@ public String addEditedMonitor(Model model, HttpServletRequest request,
147147
@RequestParam String phone,
148148
@RequestParam String birthdayDate,
149149
@RequestParam String hiringDate,
150-
@RequestParam(required = false) Long activityName,
151150
@RequestParam String description,
152151
@RequestParam(name = "image", required = false) MultipartFile image) throws IOException {
153152
String emailName = request.getUserPrincipal().getName();
@@ -163,42 +162,10 @@ public String addEditedMonitor(Model model, HttpServletRequest request,
163162
user.setAddress(address);
164163
user.setPostalCode(postalCode);
165164
user.setPhone(phone);
166-
user.getBirthday().setDay(birthdayDate.substring(8, 10));
167-
user.getBirthday().setMonth(birthdayDate.substring(5, 7));
168-
user.getBirthday().setYear(birthdayDate.substring(0,4));
169-
user.getBirthday().generateSpanishFormat();
170-
user.getHiringDate().setDay(hiringDate.substring(8, 10));
171-
user.getHiringDate().setMonth(hiringDate.substring(5, 7));
172-
user.getHiringDate().setYear(hiringDate.substring(0, 4));
173-
user.getHiringDate().generateSpanishFormat();
174-
175-
if (activityName == -1) {
176-
//Delete association to an activity
177-
Activity act = user.getACT1();
178-
act.setMonitorName(null);
179-
actServ.save(act);
180-
user.setACT1(null);
181-
} else if (activityName != -1 && user.getACT1() == null) {
182-
//Add activity to a monitor without previous activity
183-
Optional<Activity> activityOptional = actServ.findById(activityName);
184-
activityOptional.orElseThrow().setMonitorName(user.getName());
185-
actServ.save(activityOptional.get());
186-
user.setACT1(activityOptional.get());
187-
} else if (activityName != -1 && user.getACT1() != null && !user.getACT1().getId().equals(activityName)) {
188-
//Add activity to monitor with previous activity associated
189-
//1 -> Change monitorName in old activity
190-
if (user.getACT1() != null) {
191-
user.getACT1().setMonitorName(null);
192-
actServ.save(user.getACT1());
193-
}
194-
//2 -> Change monitor name in new Activity
195-
Optional<Activity> activityOptional = actServ.findById(activityName);
196-
activityOptional.orElseThrow().setMonitorName(user.getName());
197-
actServ.save(activityOptional.get());
198-
//3 -> Add activity to user
199-
user.setACT1(activityOptional.get());
200-
}
201-
165+
DateType date = new DateType(birthdayDate.substring(0,4), birthdayDate.substring(5, 7), birthdayDate.substring(8, 10));
166+
user.setBirthday(date);
167+
date = new DateType(hiringDate.substring(0,4), hiringDate.substring(5, 7), hiringDate.substring(8, 10));
168+
user.setHiringDate(date);
202169
user.setDescription(description);
203170
if (!image.isEmpty())
204171
user.setImage(BlobProxy.generateProxy(image.getInputStream(), image.getSize()));
@@ -215,8 +182,11 @@ public String addEditedMonitor(Model model, HttpServletRequest request,
215182
@GetMapping("/MONexerciseTable")
216183
public String exerciseTable(Model model, HttpServletRequest request) {
217184
List<ExerciseTable> all = exerciseTableServ.findAll();
185+
Page<ExerciseTable> exerTabPage = exerciseTableServ.findPage(0);
218186
model.addAttribute("exerciseTableList", all);
219187
model.addAttribute("monitor", monServ.findByEmail(request.getUserPrincipal().getName()).orElseThrow());
188+
model.addAttribute("listMON", exerTabPage.toList());
189+
model.addAttribute("last", exerTabPage.getTotalPages());
220190
return "USRMON_03ExerciseTable";
221191
}
222192

@@ -231,6 +201,15 @@ public String seeExerciseTableInfo(Model model, @PathVariable long id, HttpServl
231201
return "USRMON_03ExerciseTable";
232202
}
233203

204+
//ajax
205+
@GetMapping("/MONexerciseTable/page/{page}")
206+
public String getExerciseTablePageMonitor(Model model, @PathVariable int page){
207+
Page<ExerciseTable> exerTabPage = exerciseTableServ.findPage(page);
208+
model.addAttribute("listMON", exerTabPage.toList());
209+
210+
return "USRMON_03ExerciseTableAJAX";
211+
}
212+
234213
@GetMapping("/MONexerciseTable/{id}/image")
235214
public ResponseEntity<Object> downloadExerciseImage(@PathVariable long id) throws SQLException {
236215
Optional<ExerciseTable> optExerTab = exerciseTableServ.findById(id);
@@ -249,20 +228,48 @@ public ResponseEntity<Object> downloadExerciseImage(@PathVariable long id) throw
249228
//add exercise table page
250229
@GetMapping("/MONaddNewExerciseTable")
251230
public String newExerciseTable(Model model, HttpServletRequest request) {
231+
List<User> all = monServ.findByUserType("monitor");
232+
Page<User> userPage = monServ.findPageClient(0, "monitor");
233+
234+
List<Exercise> allEx = exerServ.findAll();
235+
Page<Exercise> exerPage = exerServ.findPage(0);
236+
252237
model.addAttribute("monitor", monServ.findByEmail(request.getUserPrincipal().getName()).orElseThrow());
253238
model.addAttribute("exercises", exerServ.findAll());
239+
240+
model.addAttribute("exerList", allEx);
241+
model.addAttribute("clientList", all);
242+
model.addAttribute("list", exerPage.toList());
243+
model.addAttribute("last", exerPage.getTotalPages());
244+
254245
return "USRMON_06AddExerciseTable";
255246
}
256247

248+
//ajax for adding new exercises
249+
@GetMapping("/MONaddNewExercise/page/{page}")
250+
public String getExercisesPageMonitor(Model model, @PathVariable int page){
251+
Page<Exercise> exerTabPage = exerServ.findPage(page);
252+
model.addAttribute("list", exerTabPage.toList());
253+
254+
return "USRMON_06AddExerciseTableAJAX";
255+
256+
}
257+
257258
@PostMapping("/MONaddNewExerciseTable")
258-
public String addNewExerciseTable(Model model, @RequestParam String name, @RequestParam String description,
259-
@RequestParam List<Long> id,@RequestParam("image") MultipartFile image) throws IOException {
259+
public String addNewExerciseTable(Model model,
260+
@RequestParam(required = false) List<Long> id,
261+
@RequestParam String name,
262+
@RequestParam String description,
263+
@RequestParam("image") MultipartFile image) throws IOException {
260264
ExerciseTable exerciseTable = new ExerciseTable(name, description);
261-
List<Exercise> auxList = new ArrayList<>(id.size());
262-
for (Long l: id){
263-
auxList.add(exerServ.findById(l).orElseThrow());
265+
if (!id.isEmpty()){
266+
List<Exercise> auxList = new ArrayList<>(id.size());
267+
268+
for (Long l: id){
269+
auxList.add(exerServ.findById(l).orElseThrow());
270+
}
271+
exerciseTable.setExercises(auxList);
264272
}
265-
exerciseTable.setExercises(auxList);
266273
if (image.isEmpty()) {
267274
Resource imageNotAdded = new ClassPathResource("/sample_images/imageNotAddedActivity.jpeg");
268275
exerciseTable.setImage(BlobProxy.generateProxy(imageNotAdded.getInputStream(), imageNotAdded.contentLength()));
@@ -331,7 +338,6 @@ public String deleteExerciseTable(Model model, @PathVariable long id) {
331338
return "redirect:/exerciseTable";
332339
}
333340

334-
335341
//grupal activities page
336342
@GetMapping("/MONactivities")
337343
public String activities(Model model, HttpServletRequest request) {
@@ -367,5 +373,4 @@ public ResponseEntity<Object> downloadImage(@PathVariable long id) throws SQLExc
367373
return ResponseEntity.notFound().build();
368374
}
369375

370-
371376
}

backend/src/main/java/webapp3/webapp3/service/ExerciseService.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package webapp3.webapp3.service;
22

33
import org.springframework.beans.factory.annotation.Autowired;
4+
import org.springframework.data.domain.Page;
5+
import org.springframework.data.domain.PageRequest;
46
import org.springframework.stereotype.Service;
57
import webapp3.webapp3.model.Exercise;
68

@@ -37,4 +39,7 @@ public void delete(long id) {
3739
repository.deleteById(id);
3840
}
3941

42+
public Page<Exercise> findPage(int page){
43+
return repository.findAll(PageRequest.of(page, 10));
44+
}
4045
}

backend/src/main/java/webapp3/webapp3/service/ExerciseTableService.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,6 @@ public ByteArrayOutputStream generatePDF(Long userId, Long tableEx) throws Docum
109109
return baos;
110110
}
111111

112-
113112
public Page<ExerciseTable> findPage(int page){
114113
return exerciseTabRep.findAll(PageRequest.of(page, 8));
115114
}

backend/src/main/resources/templates/USRADM_04AddActivity.html

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -120,8 +120,7 @@ <h4 class="card-title" style="color: black; margin-bottom: 20px; padding-left:9p
120120
<div class="card-body">
121121
<h4 class="card-title" style="color: black; margin-bottom: 20px;">Descripción</h4>
122122
<!-- Create the container -->
123-
<textarea style="height: 300px; color: black; width:100%" name="description">
124-
</textarea>
123+
<textarea style="height: 300px; color: black; width:100%" name="description"></textarea>
125124
</div>
126125
</div>
127126
</div>

backend/src/main/resources/templates/USRADM_07EditActivity.html

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -127,8 +127,7 @@ <h4 class="card-title" style="color: black; margin-bottom: 20px;">Datos generale
127127
<div class="card-body">
128128
<h4 class="card-title" style="color: black; margin-bottom: 20px;">Descripción</h4>
129129
<!-- Create the container -->
130-
<p><textarea style="height: 300px; color: black; width:100%" name="description">{{activity.description}}
131-
</textarea></p>
130+
<p><textarea style="height: 300px; color: black; width:100%" name="description">{{activity.description}}</textarea></p>
132131
</div>
133132
</div>
134133
</div>

backend/src/main/resources/templates/USRADM_11EditMonitor.html

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -177,8 +177,7 @@ <h4 class="page-title">Modificar información del monitor</h4>
177177
<h4 class="card-title " style="color: black; margin-bottom: 20px;">Experiencia y
178178
carrera profesional</h4>
179179
<!-- Create the editor container -->
180-
<p><textarea style="height: 300px; color: black; width:100%" name="description">{{monitor.description}}
181-
</textarea></p>
180+
<p><textarea style="height: 300px; color: black; width:100%" name="description">{{monitor.description}}</textarea></p>
182181

183182
</div>
184183
</div>

backend/src/main/resources/templates/USRMON_02Pofile.html

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,7 @@ <h4 class="card-title " style="color: black; margin-bottom: 20px; padding-left:9
156156
<div class="card-body ">
157157
<h4 class="card-title " style="color: black; margin-bottom: 20px;">Experiencia y carrera profesional</h4>
158158
<!-- Create the editor container -->
159-
<textarea style="height: 300px; color: black; width:100%" readonly>{{monitor.description}}
160-
</textarea>
159+
<textarea style="height: 300px; color: black; width:100%" readonly>{{monitor.description}}</textarea>
161160
</div>
162161
</div>
163162
</div>

0 commit comments

Comments
 (0)