exchanges fixes + accepted in deanery response

This commit is contained in:
Filip Izydorczyk
2021-01-20 14:36:09 +01:00
parent 08a4bdde06
commit cf875889b9
6 changed files with 105 additions and 9 deletions

View File

@ -160,17 +160,22 @@ public class CommisionController extends TokenBasedController {
@GetMapping("/user")
@ApiOperation("Return list of user all commisions (history of schedules)")
public ResponseEntity<List<? extends CommisionResponse>> getAlCommisions(
@RequestParam(name = "groups", defaultValue = "false") @ApiParam(value = "Boolean if we want to display wiht commision's group ids") Boolean groups)
@RequestParam(name = "groups", defaultValue = "false") @ApiParam(value = "Boolean if we want to display wiht commision's group ids") Boolean groups,
@RequestParam(name = "extraInfo", defaultValue = "false") @ApiParam(value = "Boolean if we want to display extra info about listed groups. Works only if we have groups set top true") Boolean extraInfo)
throws UserNotFoundException {
User user = this.getCurrentUser().orElseThrow(() -> new NullPointerException());
List<? extends CommisionResponse> result;
final List<Commision> commisions = this.commisionService.getUsersCommisions(user);
if (!groups) {
result = CommisionResponseMappers.mapToResponse(this.commisionService.getUsersCommisions(user));
result = CommisionResponseMappers.mapToResponse(commisions);
} else {
result = CommisionResponseMappers
.mapToResponseWithGroups(this.commisionService.getUsersCommisions(user));
if (extraInfo) {
result = CommisionResponseMappers.mapToResponseWithExtraInforGroups(commisions);
} else {
result = CommisionResponseMappers.mapToResponseWithGroups(commisions);
}
}
return new ResponseEntity<>(result, HttpStatus.OK);

View File

@ -16,6 +16,7 @@ import com.plannaplan.responses.models.ExchangeResponse;
import com.plannaplan.services.AssignmentService;
import com.plannaplan.services.ExchangeService;
import com.plannaplan.services.GroupService;
import com.plannaplan.types.GroupType;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
@ -89,13 +90,14 @@ public class ExchangeController extends TokenBasedController {
final Groups groupInstance = group.get();
if (assignmentInstance.getGroup().getCourseId() != null
&& ! assignmentInstance.getGroup().getCourseId().getId().equals(groupInstance.getCourseId().getId())) {
&& !assignmentInstance.getGroup().getCourseId().getId().equals(groupInstance.getCourseId().getId())) {
System.out.println(assignmentInstance.getGroup().getCourseId().getId());
System.out.println(groupInstance.getCourseId().getId());
return new ResponseEntity<>("You can performe exchange only within one course.", HttpStatus.BAD_REQUEST);
}
if (assignmentInstance.getGroup().getType() != groupInstance.getType()) {
if (GroupType.isLectureOrClass(assignmentInstance.getGroup().getType()) != GroupType
.isLectureOrClass(groupInstance.getType())) {
return new ResponseEntity<>("You can't exchange lecture to class and otherwise.", HttpStatus.BAD_REQUEST);
}