diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/dao/StakeholderDAO.java b/src/main/java/eu/dnetlib/uoamonitorservice/dao/StakeholderDAO.java index 91a0307..1d639fa 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/dao/StakeholderDAO.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/dao/StakeholderDAO.java @@ -12,11 +12,12 @@ public interface StakeholderDAO extends MongoRepository { List findAll(); List findByType(String Type); - List findByDefaultId(String DefaultId); + List findByDefaultIdIsNull(); + List findByDefaultIdAndCopyTrue(String defaultId); List findByDefaultIdAndType(String DefaultId, String Type); - List findByDefaultIdNot(String DefaultId); - List findByDefaultIdNotAndType(String DefaultId, String Type); + List findByDefaultIdIsNotNull(); + List findByDefaultIdIsNotNullAndType(String Type); List findByTopicsContaining(String topic); diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/service/CategoryService.java b/src/main/java/eu/dnetlib/uoamonitorservice/service/CategoryService.java index 83f0dad..1b1ef88 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/service/CategoryService.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/service/CategoryService.java @@ -150,7 +150,7 @@ public class CategoryService { } public void reorderChildren(Stakeholder defaultStakeholder, Category defaultCategory, List defaultSubCategories) { - this.stakeholderDAO.findByDefaultId(defaultStakeholder.getId()).forEach(stakeholder -> { + this.stakeholderDAO.findByDefaultIdAndCopyTrue(defaultStakeholder.getId()).forEach(stakeholder -> { this.dao.findByDefaultId(defaultCategory.getId()).stream().map(category -> this.getFullCategory(stakeholder.getType(), stakeholder.getAlias(), category)).forEach(category -> { this.reorderSubCategories(stakeholder, new Category(category), this.commonService.reorder(defaultSubCategories, category.getSubCategories().stream().map(subCategory -> (Common) subCategory).collect(Collectors.toList()))); diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/service/SectionService.java b/src/main/java/eu/dnetlib/uoamonitorservice/service/SectionService.java index 56c67b8..3ba4ddc 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/service/SectionService.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/service/SectionService.java @@ -2,10 +2,7 @@ package eu.dnetlib.uoamonitorservice.service; import eu.dnetlib.uoaadmintoolslibrary.handlers.ForbiddenException; import eu.dnetlib.uoamonitorservice.dao.*; -import eu.dnetlib.uoamonitorservice.dto.MoveIndicator; import eu.dnetlib.uoamonitorservice.dto.SectionFull; -import eu.dnetlib.uoamonitorservice.dto.SubCategoryFull; -import eu.dnetlib.uoamonitorservice.entities.Indicator; import eu.dnetlib.uoamonitorservice.entities.Section; import eu.dnetlib.uoamonitorservice.entities.Stakeholder; import eu.dnetlib.uoamonitorservice.entities.SubCategory; @@ -176,7 +173,7 @@ public class SectionService { } public void reorderChildren(Stakeholder defaultStakeholder, Section defaultSection, List defaultIndicators) { - this.stakeholderDAO.findByDefaultId(defaultStakeholder.getId()).forEach(stakeholder -> { + this.stakeholderDAO.findByDefaultIdAndCopyTrue(defaultStakeholder.getId()).forEach(stakeholder -> { this.dao.findByDefaultId(defaultSection.getId()).stream().map(section -> this.getFullSection(stakeholder.getType(), stakeholder.getAlias(), section)).forEach(section -> { this.reorderIndicators(stakeholder, new Section(section), this.commonService.reorder(defaultIndicators, section.getIndicators().stream().map(indicator -> (Common) indicator).collect(Collectors.toList()))); diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/service/StakeholderService.java b/src/main/java/eu/dnetlib/uoamonitorservice/service/StakeholderService.java index 3b09a1a..57427f2 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/service/StakeholderService.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/service/StakeholderService.java @@ -36,7 +36,7 @@ public class StakeholderService { } public List findByDefaultId(String id) { - return this.dao.findByDefaultId(id); + return this.dao.findByDefaultIdAndCopyTrue(id); } public Stakeholder findByPath(String stakeholderId) { @@ -58,7 +58,7 @@ public class StakeholderService { } public List getAllDefaultByRole(String type) { - return (type == null ? this.dao.findByDefaultId(null) : this.dao.findByDefaultIdAndType(null, type)).stream() + return (type == null ? this.dao.findByDefaultIdIsNull() : this.dao.findByDefaultIdAndType(null, type)).stream() .filter(stakeholder -> this.commonService.hasAccessAuthority(stakeholder.getType(), stakeholder.getAlias(), true)) .collect(Collectors.toList()); } @@ -68,11 +68,11 @@ public class StakeholderService { if (type != null && defaultId != null) { stakeholders = dao.findByDefaultIdAndType(defaultId, type); } else if (defaultId != null) { - stakeholders = dao.findByDefaultId(defaultId); + stakeholders = dao.findByDefaultIdAndCopyTrue(defaultId); } else if (type != null) { - stakeholders = dao.findByDefaultIdNotAndType(null, type); + stakeholders = dao.findByDefaultIdIsNotNullAndType(type); } else { - stakeholders = dao.findByDefaultIdNot(null); + stakeholders = dao.findByDefaultIdIsNotNull(); } return stakeholders.stream().filter(stakeholder -> (!manage && (stakeholder.getVisibility() == Visibility.PUBLIC || stakeholder.getVisibility() == Visibility.RESTRICTED)) @@ -163,7 +163,7 @@ public class StakeholderService { } public void reorderChildren(Stakeholder defaultStakeholder, List defaultTopics) { - this.dao.findByDefaultId(defaultStakeholder.getId()).stream().map(this::getFullStakeholder).forEach(stakeholder -> { + this.dao.findByDefaultIdAndCopyTrue(defaultStakeholder.getId()).stream().map(this::getFullStakeholder).forEach(stakeholder -> { this.reorderTopics(new Stakeholder(stakeholder), this.commonService.reorder(defaultTopics, stakeholder.getTopics().stream().map(topic -> (Common) topic).collect(Collectors.toList()))); }); @@ -172,7 +172,7 @@ public class StakeholderService { public String delete(String id) { Stakeholder stakeholder = this.findByPath(id); if (this.commonService.hasDeleteAuthority(stakeholder.getType())) { - this.dao.findByDefaultId(stakeholder.getId()).forEach(child -> { + this.dao.findByDefaultIdAndCopyTrue(stakeholder.getId()).forEach(child -> { this.delete(child.getId()); }); stakeholder.getTopics().forEach(topicId -> { diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/service/SubCategoryService.java b/src/main/java/eu/dnetlib/uoamonitorservice/service/SubCategoryService.java index 6a31fe5..06b011c 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/service/SubCategoryService.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/service/SubCategoryService.java @@ -13,9 +13,7 @@ import eu.dnetlib.uoamonitorservice.entities.*; import eu.dnetlib.uoamonitorservice.generics.Common; import eu.dnetlib.uoamonitorservice.handlers.EntityNotFoundException; import eu.dnetlib.uoamonitorservice.handlers.PathNotValidException; -import eu.dnetlib.uoamonitorservice.primitives.IndicatorType; import eu.dnetlib.uoamonitorservice.primitives.Visibility; -import io.swagger.models.auth.In; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -160,7 +158,7 @@ public class SubCategoryService { } public void moveIndicatorChildren(Stakeholder defaultStakeholder, SubCategory defaultSubCategory, MoveIndicator moveIndicator) { - this.stakeholderDAO.findByDefaultId(defaultStakeholder.getId()).forEach(stakeholder -> { + this.stakeholderDAO.findByDefaultIdAndCopyTrue(defaultStakeholder.getId()).forEach(stakeholder -> { this.dao.findByDefaultId(defaultSubCategory.getId()).stream() .map(subCategory -> this.getFullSubCategory(stakeholder.getType(), stakeholder. getAlias(), subCategory)) .collect(Collectors.toList()).forEach(subCategory -> { @@ -213,7 +211,7 @@ public class SubCategoryService { } public void reorderChildrenNumbers(Stakeholder defaultStakeholder, SubCategory defaultSubCategory, List defaultSections) { - this.stakeholderDAO.findByDefaultId(defaultStakeholder.getId()).forEach(stakeholder -> { + this.stakeholderDAO.findByDefaultIdAndCopyTrue(defaultStakeholder.getId()).forEach(stakeholder -> { this.dao.findByDefaultId(defaultSubCategory.getId()).stream().map(subCategory -> this.getFullSubCategory(stakeholder.getType(), stakeholder.getAlias(), subCategory)).forEach(subCategory -> { this.reorderNumbers(stakeholder, new SubCategory(subCategory), this.commonService.reorder(defaultSections, subCategory.getNumbers().stream().map(section -> (Common) section).collect(Collectors.toList()))); @@ -222,7 +220,7 @@ public class SubCategoryService { } public void reorderChildrenCharts(Stakeholder defaultStakeholder, SubCategory defaultSubCategory, List defaultSections) { - this.stakeholderDAO.findByDefaultId(defaultStakeholder.getId()).forEach(stakeholder -> { + this.stakeholderDAO.findByDefaultIdAndCopyTrue(defaultStakeholder.getId()).forEach(stakeholder -> { this.dao.findByDefaultId(defaultSubCategory.getId()).stream().map(subCategory -> this.getFullSubCategory(stakeholder.getType(), stakeholder.getAlias(), subCategory)).forEach(subCategory -> { this.reorderCharts(stakeholder, new SubCategory(subCategory), this.commonService.reorder(defaultSections, subCategory.getCharts().stream().map(section -> (Common) section).collect(Collectors.toList()))); diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/service/TopicService.java b/src/main/java/eu/dnetlib/uoamonitorservice/service/TopicService.java index 2d2e1e8..8034850 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/service/TopicService.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/service/TopicService.java @@ -109,7 +109,7 @@ public class TopicService { } public void createChildren(Stakeholder defaultStakeholder, Topic topic) { - this.stakeholderDAO.findByDefaultId(defaultStakeholder.getId()).forEach(stakeholder -> { + this.stakeholderDAO.findByDefaultIdAndCopyTrue(defaultStakeholder.getId()).forEach(stakeholder -> { this.save(stakeholder, topic.copy()); }); } @@ -137,7 +137,7 @@ public class TopicService { } public void reorderChildren(Stakeholder defaultStakeholder, Topic defaultTopic, List defaultCategories) { - this.stakeholderDAO.findByDefaultId(defaultStakeholder.getId()).forEach(stakeholder -> { + this.stakeholderDAO.findByDefaultIdAndCopyTrue(defaultStakeholder.getId()).forEach(stakeholder -> { this.dao.findByDefaultId(defaultTopic.getId()).stream().map(topic -> this.getFullTopic(stakeholder.getType(), stakeholder.getAlias(), topic)).forEach(topic -> { this.reorderCategories(stakeholder, new Topic(topic), this.commonService.reorder(defaultCategories, topic.getCategories().stream().map(category -> (Common) category).collect(Collectors.toList())));