Removing the logic to bind actions to pages when a dynamic binding happens.
This is because when an action is created, it is already bound to that page. This assumption will not change. Also, adding the pageId when searching for an action because the action name and pageId is a unique index. There may be actions with similar names across multiple pages.
This commit is contained in:
parent
7f9e0b71da
commit
738b693d9a
|
|
@ -15,7 +15,7 @@ public interface ActionRepository extends BaseRepository<Action, String> {
|
|||
|
||||
Mono<Action> findByName(String name);
|
||||
|
||||
Flux<Action> findDistinctActionsByNameIn(Set<String> names);
|
||||
Flux<Action> findDistinctActionsByNameInAndPageId(Set<String> names, String pageId);
|
||||
|
||||
Flux<Action> saveAll(List<Action> actions);
|
||||
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ public interface ActionService extends CrudService<Action, String> {
|
|||
|
||||
Mono<Action> findByName(String name);
|
||||
|
||||
Flux<Action> findDistinctActionsByNameIn(Set<String> names);
|
||||
Flux<Action> findDistinctActionsByNameInAndPageId(Set<String> names, String pageId);
|
||||
|
||||
Flux<Action> saveAll(List<Action> actions);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -382,8 +382,8 @@ public class ActionServiceImpl extends BaseService<ActionRepository, Action, Str
|
|||
}
|
||||
|
||||
@Override
|
||||
public Flux<Action> findDistinctActionsByNameIn(Set<String> names) {
|
||||
return repository.findDistinctActionsByNameIn(names);
|
||||
public Flux<Action> findDistinctActionsByNameInAndPageId(Set<String> names, String pageId) {
|
||||
return repository.findDistinctActionsByNameInAndPageId(names, pageId);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -266,13 +266,7 @@ public class LayoutServiceImpl implements LayoutService {
|
|||
Flux<Action> updatePageIdsForActionsAndReturnDslActions(Set<String> nodes, String pageId) {
|
||||
|
||||
return actionService
|
||||
.findDistinctActionsByNameIn(nodes)
|
||||
.map(action -> {
|
||||
action.setPageId(pageId);
|
||||
return action;
|
||||
})
|
||||
.collectList()
|
||||
.flatMapMany(actionService::saveAll);
|
||||
.findDistinctActionsByNameInAndPageId(nodes, pageId);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user