LeveringsautorisatieController.java 文件源码

java
阅读 18 收藏 0 点赞 0 评论 0

项目:OperatieBRP 作者:
/**
 * Slaat een gewijzigd item op.
 * @param leveringsautorisatieId Id van de leveringsautorisatie
 * @param dienstbundelGroepId groep ID
 * @param item item
 * @return item
 * @throws NotFoundException wanneer het item niet gevonden kan worden om te updaten
 */
@RequestMapping(value = "/{id2}/dienstbundels/{did8}/dienstbundelgroepen/{gid2}/attributen", method = RequestMethod.POST)
@ResponseStatus(HttpStatus.OK)
public final Page<DienstbundelGroepAttribuutView> saveDienstbundelGroepAttribuut(
        @PathVariable("id2") final Integer leveringsautorisatieId,
        @PathVariable("gid2") final Integer dienstbundelGroepId,
        @RequestBody final DienstbundelGroepAttribuutView item) throws NotFoundException {
    return new SaveTransaction<Page<DienstbundelGroepAttribuutView>>(getTransactionTemplate()).execute(() -> {
        final Leveringsautorisatie leveringsautorisatie = get(leveringsautorisatieId);
        if (!Stelsel.BRP.equals(leveringsautorisatie.getStelsel())) {
            throw new IllegalArgumentException("Groepen kunnen niet worden toegevoegd op een GBA autorisatie.");
        }

        final DienstbundelGroep dienstbundelGroep = dienstbundelGroepController.get(dienstbundelGroepId);

        if (item.getId() != null && !item.isActief()) {
            // Verwijderen attribuut uit dienstbundelgroep.
            dienstbundelGroep.getDienstbundelGroepAttribuutSet().removeIf(attribuut -> attribuut.getId().equals(item.getId()));
        } else if (item.isActief()) {
            // Toevoegen attribuut aan dienstbundelgroep.
            dienstbundelGroep.getDienstbundelGroepAttribuutSet().add(new DienstbundelGroepAttribuut(dienstbundelGroep, item.getAttribuut()));
        }

        dienstbundelGroepController.save(dienstbundelGroep);
        return new PageImpl<>(bepaalActiefStatusAttributenVoorGroep(dienstbundelGroep));
    });
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号