From 700f9d0da314a4ea701fe9f68d305b67d72ec5fb Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期三, 08 七月 2026 15:08:37 +0800
Subject: [PATCH] 各类修复fix

---
 backend/src/main/java/com/sinata/appointment/service/MiniLookupApplicationService.java |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/backend/src/main/java/com/sinata/appointment/service/MiniLookupApplicationService.java b/backend/src/main/java/com/sinata/appointment/service/MiniLookupApplicationService.java
index afad84b..a9cdbb5 100644
--- a/backend/src/main/java/com/sinata/appointment/service/MiniLookupApplicationService.java
+++ b/backend/src/main/java/com/sinata/appointment/service/MiniLookupApplicationService.java
@@ -21,6 +21,7 @@
 import com.sinata.appointment.mapper.MpUserMapper;
 import com.sinata.appointment.mapper.SysDeptMapper;
 import java.util.ArrayList;
+import java.util.Comparator;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -72,6 +73,7 @@
                         new LambdaQueryWrapper<MpPassAccessArea>()
                                 .eq(MpPassAccessArea::getDelFlag, 0)
                                 .orderByAsc(MpPassAccessArea::getPid)
+                                .orderByAsc(MpPassAccessArea::getAreaName)
                                 .orderByAsc(MpPassAccessArea::getId));
         if (rows.isEmpty()) {
             return List.of();
@@ -97,9 +99,21 @@
             }
             parent.getChildren().add(current);
         }
+        sortAreaTree(roots);
         return roots;
     }
 
+    private void sortAreaTree(List<MiniPassAccessAreaTreeVo> nodes) {
+        nodes.sort(
+                Comparator.comparing(
+                                MiniPassAccessAreaTreeVo::getAreaName,
+                                Comparator.nullsLast(String::compareTo))
+                        .thenComparing(MiniPassAccessAreaTreeVo::getId));
+        for (MiniPassAccessAreaTreeVo node : nodes) {
+            sortAreaTree(node.getChildren());
+        }
+    }
+
     public List<MiniVisitedUserVo> searchVisitedUsersByExactName(String realName) {
         String name = realName == null ? "" : realName.trim();
         if (name.isEmpty()) {

--
Gitblit v1.7.1