Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 0598e57d

Přidáno uživatelem Jakub Šmíd před asi 2 roky(ů)

Added batch endpoint for saving multiple catalog items, POST and PUT endpoint for catalog items merged

re #9753

Zobrazit rozdíly:

backend/src/main/java/cz/zcu/kiv/backendapi/catalog/CatalogItemServiceImpl.java
87 87
    private final ITypeService typeService;
88 88

  
89 89
    @Override
90
    public void saveCatalog(List<CatalogItem> catalogItems) {
90
    public void saveCatalogItems(List<CatalogItemDto> catalogItemDtoList) {
91 91
        log.info("Saving catalog");
92
        catalogItems.forEach(this::saveCatalogEntity);
92
        catalogItemDtoList.forEach(this::saveCatalogItem);
93
        log.info("Catalog saved");
93 94
    }
94 95

  
95 96
    @Override
96 97
    public void saveCatalogItem(CatalogItemDto catalogItemDto) {
97 98
        log.info("Saving catalog item");
98
        CatalogItem catalogItem = new CatalogItem();
99
        convertDtoToEntity(catalogItemDto, catalogItem);
100
        saveCatalogEntity(catalogItem);
101
    }
102

  
103
    @Override
104
    public void updateCatalogItem(UUID id, CatalogItemDto catalogItemDto) {
105
        CatalogItem catalogItem = catalogItemRepository.findById(id).orElseThrow(() -> {
106
            log.error(CATALOG_ITEM_NOT_FOUND);
107
            throw new ApiRequestException(CATALOG_ITEM_NOT_FOUND, HttpStatus.NOT_FOUND);
108
        });
99
        CatalogItem catalogItem;
100
        Optional<CatalogItem> optionalCatalogItem;
101
        if (catalogItemDto.getId() != null && (optionalCatalogItem = catalogItemRepository.findById(catalogItemDto.getId())).isPresent()) {
102
            catalogItem = optionalCatalogItem.get();
103
        } else {
104
            catalogItem = new CatalogItem();
105
        }
109 106
        convertDtoToEntity(catalogItemDto, catalogItem);
110 107
        saveCatalogEntity(catalogItem);
111
        log.info("Catalog item updated");
108
        log.info("Catalog item saved");
112 109
    }
113 110

  
114 111
    @Override
......
133 130

  
134 131
    @Override
135 132
    public PathDto getPath(String text) {
133
        log.info("Searching path");
136 134
        PathDto pathDto = new PathDto();
137 135
        StringBuilder highlightedText = new StringBuilder();
138 136
        List<List<CatalogItemDto>> foundCatalogItems = new ArrayList<>();
......
186 184

  
187 185
        pathDto.setText(highlightedText.toString());
188 186
        pathDto.setFoundCatalogItems(foundCatalogItems);
187
        log.info("Path searched");
189 188
        return pathDto;
190 189
    }
191 190

  

Také k dispozici: Unified diff