37 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Java
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Java
		
	
	
		
			Executable File
		
	
	
	
	
package com.plannaplan.controllers;
 | 
						|
 | 
						|
import java.util.List;
 | 
						|
 | 
						|
import com.plannaplan.App;
 | 
						|
import com.plannaplan.entities.Groups;
 | 
						|
import com.plannaplan.responses.mappers.GroupsMappers;
 | 
						|
import com.plannaplan.responses.models.DefaultGroupResponse;
 | 
						|
import com.plannaplan.responses.models.GetCourseGroupsResponse;
 | 
						|
import com.plannaplan.services.GroupService;
 | 
						|
 | 
						|
import org.springframework.beans.factory.annotation.Autowired;
 | 
						|
import org.springframework.http.HttpStatus;
 | 
						|
import org.springframework.http.ResponseEntity;
 | 
						|
import org.springframework.web.bind.annotation.CrossOrigin;
 | 
						|
import org.springframework.web.bind.annotation.GetMapping;
 | 
						|
import org.springframework.web.bind.annotation.RequestMapping;
 | 
						|
import org.springframework.web.bind.annotation.RequestParam;
 | 
						|
import org.springframework.web.bind.annotation.RestController;
 | 
						|
 | 
						|
@RestController
 | 
						|
@CrossOrigin
 | 
						|
@RequestMapping("/api/" + App.API_VERSION + "/groups")
 | 
						|
public class GroupController {
 | 
						|
    @Autowired
 | 
						|
    private GroupService groupService;
 | 
						|
 | 
						|
    @GetMapping("/getCourseGroups")
 | 
						|
    public ResponseEntity<GetCourseGroupsResponse<? extends DefaultGroupResponse>> getCourses(@RequestParam("id") Long id,
 | 
						|
            @RequestParam(name = "capacity", defaultValue = "true") Boolean capacity) {
 | 
						|
        List<Groups> groups = this.groupService.getGroupsByCourse(id);
 | 
						|
        if (capacity) {
 | 
						|
            return new ResponseEntity<>(GroupsMappers.mapToGetCourseGroupsWithCapacityResponse(groups), HttpStatus.OK);
 | 
						|
        }
 | 
						|
        return new ResponseEntity<>(GroupsMappers.mapToGetCourseGroupsDefaultResponse(groups), HttpStatus.OK);
 | 
						|
    }
 | 
						|
} |