diff --git a/src/main/java/fr/titionfire/ffsaf/domain/service/ResultService.java b/src/main/java/fr/titionfire/ffsaf/domain/service/ResultService.java index f1407a6..934322d 100644 --- a/src/main/java/fr/titionfire/ffsaf/domain/service/ResultService.java +++ b/src/main/java/fr/titionfire/ffsaf/domain/service/ResultService.java @@ -229,11 +229,14 @@ public class ResultService { private void getTree(List treeModels, MembreModel membreModel, ResultCategoryData out) { ArrayList> trees = new ArrayList<>(); - treeModels.stream().filter(t -> t.getLevel() != 0).forEach(treeModel -> { - TreeNode root = new TreeNode<>(); - convertTree(treeModel, root, membreModel, ResultPrivacy.REGISTERED_ONLY_NO_DETAILS); - trees.add(root); - }); + treeModels.stream() + .filter(t -> t.getLevel() != 0) + .sorted(Comparator.comparing(TreeModel::getLevel)) + .forEach(treeModel -> { + TreeNode root = new TreeNode<>(); + convertTree(treeModel, root, membreModel, ResultPrivacy.REGISTERED_ONLY_NO_DETAILS); + trees.add(root); + }); out.setTrees(trees); }