Skip to content
Snippets Groups Projects
Commit a6279864 authored by Oto Stanko's avatar Oto Stanko
Browse files

Get all spare componentf of same name

parent b162d30b
No related branches found
No related tags found
2 merge requests!60Docker,!4420_list_of_spare_components
......@@ -6,6 +6,8 @@ import cz.muni.pa165.common_library.dtos.CarComponentDto;
import cz.muni.pa165.common_library.dtos.CarRequestDto;
import cz.muni.pa165.common_library.dtos.CarResponseDto;
import io.swagger.v3.oas.annotations.Operation;
import java.util.ArrayList;
import java.util.List;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
......@@ -80,10 +82,28 @@ public class CarComponentPairController {
* @return List of components.
*/
@Operation(summary = "Get all components from component repo")
@GetMapping(path = "/getcomponents",
@GetMapping(path = "/getStoredComponentsOfType",
produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<List<CarComponentDto>> getAllCarComponents() {
return ResponseEntity.ok(DbGetter.getAllComponentsFromDb());
public ResponseEntity<List<CarComponentDto>> getAllCarComponents(@RequestParam Long carId, @RequestParam Long componentId) {
List<CarComponentDto> allComponents = DbGetter.getAllComponentsFromDb();
var carComponentsResponse = getAllComponentsOfCar(carId);
var carComponents = carComponentsResponse.getBody();
CarComponentDto requestedComponent = null;
assert carComponents != null;
for (CarComponentDto carComponent: allComponents) {
if (carComponent.getId().equals(componentId)) {
requestedComponent = carComponent;
break;
}
}
assert requestedComponent != null;
List<CarComponentDto> allViableReplacements = new ArrayList<>();
for (CarComponentDto carComponent: allComponents) {
if (carComponent.getName().equals(requestedComponent.getName()) && !carComponent.getId().equals(componentId)) {
allViableReplacements.add(carComponent);
}
}
return ResponseEntity.ok(allViableReplacements);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment