From 3e64bca8c8133298f242224f52b3d5f1278f68a6 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期三, 04 三月 2026 16:00:04 +0800
Subject: [PATCH] 修改围栏查询及其他mongodb查询

---
 xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/service/serviceimpl/XpElectronicFenceAreaServiceImpl.java |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/service/serviceimpl/XpElectronicFenceAreaServiceImpl.java b/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/service/serviceimpl/XpElectronicFenceAreaServiceImpl.java
index 3e0eb24..2a5c40b 100644
--- a/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/service/serviceimpl/XpElectronicFenceAreaServiceImpl.java
+++ b/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/service/serviceimpl/XpElectronicFenceAreaServiceImpl.java
@@ -29,7 +29,11 @@
 import com.xiaopeng.map.utils.holiday.HolidayUtil;
 import com.xiaopeng.map.vo.IsInOperationAreaVo;
 import com.xiaopeng.map.vo.WalkTimeVo;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.geo.Point;
+import org.springframework.data.mongodb.core.MongoTemplate;
+import org.springframework.data.mongodb.core.query.Criteria;
+import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -66,16 +70,17 @@
 
     @Resource
     private HolidayUtil holidayUtil;
+    @Autowired
+    private MongoTemplate mongoTemplate;
 
 
 
     @Override
     public List<XpElectronicFenceVo> citiesList(String cityCode) {
-        List<XpGeoFencingPolygon> xpGeoFencingPolygons = xpGeoFencingPolygonService.findAll();
+        List<XpGeoFencingPolygon> xpGeoFencingPolygons = mongoTemplate.find(new Query(Criteria.where("cityCode").is(cityCode)), XpGeoFencingPolygon.class);
         if(xpGeoFencingPolygons.isEmpty()){
             return new ArrayList<>();
         }
-        xpGeoFencingPolygons = xpGeoFencingPolygons.stream().filter(e->e.getCityCode()!=null && e.getCityCode().equals(cityCode)).collect(Collectors.toList());
         List<XpElectronicFenceVo> result = new ArrayList<>();
         List<String> fenceIds = xpGeoFencingPolygons.stream().map(XpGeoFencingPolygon::getFenceId).collect(Collectors.toList());
         if(fenceIds.isEmpty()){

--
Gitblit v1.7.1