Fix save stakeholder bug, where topics will be deleted on save.
This commit is contained in:
parent
6b5ae3512f
commit
014ca643d5
|
@ -123,14 +123,14 @@ public class StakeholderService {
|
||||||
|
|
||||||
public Stakeholder save(Stakeholder stakeholder) {
|
public Stakeholder save(Stakeholder stakeholder) {
|
||||||
if (stakeholder.getId() != null) {
|
if (stakeholder.getId() != null) {
|
||||||
|
Stakeholder old = this.findByPath(stakeholder.getId());
|
||||||
|
stakeholder.setTopics(old.getTopics());
|
||||||
if (!stakeholder.isCopy() && stakeholder.getDefaultId() != null) {
|
if (!stakeholder.isCopy() && stakeholder.getDefaultId() != null) {
|
||||||
stakeholder.getTopics().forEach(topic -> {
|
stakeholder.getTopics().forEach(topic -> {
|
||||||
this.topicService.delete(stakeholder.getType(), topic, false);
|
this.topicService.delete(stakeholder.getType(), topic, false);
|
||||||
});
|
});
|
||||||
stakeholder.setTopics(new ArrayList<>());
|
stakeholder.setTopics(new ArrayList<>());
|
||||||
} else {
|
} else {
|
||||||
Stakeholder old = this.findByPath(stakeholder.getId());
|
|
||||||
stakeholder.setTopics(old.getTopics());
|
|
||||||
if(old.getTopics().isEmpty() && old.getDefaultId() != null) {
|
if(old.getTopics().isEmpty() && old.getDefaultId() != null) {
|
||||||
Stakeholder defaultStakeholder = this.findByPath(stakeholder.getDefaultId());
|
Stakeholder defaultStakeholder = this.findByPath(stakeholder.getDefaultId());
|
||||||
if(defaultStakeholder != null) {
|
if(defaultStakeholder != null) {
|
||||||
|
|
Loading…
Reference in New Issue