From 746517aca9d0b7ae334c70b3041a9b1de795addb Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 22 四月 2026 11:08:37 +0800
Subject: [PATCH] Merge branch '1.0' of http://120.76.84.145:10101/gitblit/r/java/Robotaxi into 1.0

---
 xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/controller/XpPointManagementController.java |   33 ++++++++++++++++++++++++++++-----
 1 files changed, 28 insertions(+), 5 deletions(-)

diff --git a/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/controller/XpPointManagementController.java b/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/controller/XpPointManagementController.java
index 06c608e..2742628 100644
--- a/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/controller/XpPointManagementController.java
+++ b/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/controller/XpPointManagementController.java
@@ -3,6 +3,10 @@
 
 import cn.afterturn.easypoi.excel.ExcelExportUtil;
 import cn.afterturn.easypoi.excel.entity.ExportParams;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
 import com.xiaopeng.api.dto.map.XpPointExportExcelQuery;
 import com.xiaopeng.api.dto.operation.PointAddDto;
 import com.xiaopeng.api.dto.operation.PointUpdateDto;
@@ -25,6 +29,7 @@
 import com.xiaopeng.map.service.XpElectronicFenceService;
 import com.xiaopeng.map.service.XpPointService;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.poi.ss.usermodel.Workbook;
@@ -70,10 +75,16 @@
 
     @ApiOperation(value = "获取所有运营中的区域", response = XpElectronicFenceArea.class)
     @PostMapping("/listElectronicFenceArea")
-    public R<List<XpElectronicFenceArea>> listElectronicFenceArea() {
+    public R<List<XpElectronicFenceArea>> listElectronicFenceArea(@RequestParam(required = false) String cityCode) {
         // 获取所有启用的电子围栏
-        List<XpElectronicFence> electronicFences = xpElectronicFenceService.lambdaQuery()
-                .eq(XpElectronicFence::getStatus, 2).list();
+
+        LambdaQueryWrapper<XpElectronicFence>  queryWrapper= new LambdaQueryWrapper<>();
+        queryWrapper.eq(XpElectronicFence::getStatus, 2);
+        if(StrUtil.isNotBlank(cityCode)){
+            queryWrapper.eq(XpElectronicFence::getCityCode, cityCode);
+        }
+
+        List<XpElectronicFence> electronicFences = xpElectronicFenceService.list(queryWrapper);
         List<Long> electronicFenceIds = electronicFences.stream().map(XpElectronicFence::getId).collect(Collectors.toList());
         if (electronicFenceIds.isEmpty()) {
             return R.ok(new ArrayList<XpElectronicFenceArea>());
@@ -224,6 +235,15 @@
             }
         }
         xpPoint.setFpElectronicAreaId(null);
+
+        Long stationId = pointAddDto.getStationId();
+        Integer stationSortNo = pointAddDto.getStationSortNo(); //点位在场站内排序
+        if(stationId != null && stationId > 0){
+            if(stationSortNo == null){
+                stationSortNo = 0;
+            }
+        }
+
         // 使用 lambdaUpdate 确保 pointPictures 为 null 时也能将数据库字段清空
         // (updateById 默认策略 NOT_NULL 会跳过 null 值,导致删除图片后数据库仍保留旧图片)
         xpPointService.lambdaUpdate()
@@ -252,9 +272,12 @@
                 .set(XpPoint::getCityName, xpPoint.getCityName())
                 .set(XpPoint::getDistrictName, xpPoint.getDistrictName())
                 .set(XpPoint::getDistrictCode, xpPoint.getDistrictCode())
-                .set(XpPoint::getStationId, xpPoint.getStationId())
-                .set(XpPoint::getStationSortNo, xpPoint.getStationSortNo())
+                .set(XpPoint::getStationId, stationId)
+                .set(XpPoint::getStationSortNo, stationSortNo)
                 .update();
+
+        //场站点位排序 后添加的点位 排第一个。
+        xpPointService.setStationSortNo(xpPoint.getStationId(),stationSortNo);
         return R.ok();
     }
 

--
Gitblit v1.7.1