From 7cbda50f5904e8ef7d63d93d89a47a13b3193e70 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期六, 28 二月 2026 21:37:57 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpRegionController.java |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpRegionController.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpRegionController.java
index 58cb747..10b3532 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpRegionController.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpRegionController.java
@@ -73,12 +73,16 @@
                         .filter(item -> item instanceof XpRegion)
                         .map(item -> (XpRegion) item)
                         .collect(Collectors.toList());
+
+                if(query.getCityName()!=null){
+                    list = list.stream().filter(item -> item.getName().contains(query.getCityName()) || item.getInitial().contains(query.getCityName())).collect(Collectors.toList());
+                }
             } catch (ClassCastException e) {
                 // 缓存数据结构异常,重新加载
                 redisService.deleteObject(CacheConstants.XP_REGION);
             }
         }else {
-            list = regionService.list(Wrappers.lambdaQuery(XpRegion.class).ne(XpRegion::getParentId, 0).isNotNull(XpRegion::getInitial).orderByAsc(XpRegion::getInitial));
+            list = regionService.list(Wrappers.lambdaQuery(XpRegion.class).ne(XpRegion::getParentId, 0).and(w->w.like(query.getCityName()!=null , XpRegion::getInitial, query.getCityName()).or().like(query.getCityName()!=null , XpRegion::getInitial, query.getCityName())).like(query.getCityName()!=null , XpRegion::getName, query.getCityName()).isNotNull(XpRegion::getInitial).orderByAsc(XpRegion::getInitial));
             redisService.setCacheList(CacheConstants.XP_REGION_CITY, list);
         }
         List<XpOpenCity> openCities = openCityService.list(new LambdaQueryWrapper<XpOpenCity>().eq(XpOpenCity::getStatus,1));

--
Gitblit v1.7.1