From 353eda75ffbcbab4bbe1f89980b225b5f213c731 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期三, 25 二月 2026 18:45:47 +0800
Subject: [PATCH] feat(management):管理后台-系统-热修复、系统配置接口

---
 xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpPricingServiceImpl.java |   34 ++++++++++++++++++++++++++++------
 1 files changed, 28 insertions(+), 6 deletions(-)

diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpPricingServiceImpl.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpPricingServiceImpl.java
index 3e73cdc..ea53f51 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpPricingServiceImpl.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpPricingServiceImpl.java
@@ -5,6 +5,7 @@
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.xiaopeng.api.dto.account.GetUserCouponDto;
@@ -31,10 +32,7 @@
 import com.xiaopeng.common.core.web.page.PageInfo;
 import com.xiaopeng.common.redis.service.RedisService;
 import com.xiaopeng.operation.constant.I18nKeyConstant;
-import com.xiaopeng.operation.dto.PricingAddDTO;
-import com.xiaopeng.operation.dto.PricingSetPriceDTO;
-import com.xiaopeng.operation.dto.PricingSetRuleDTO;
-import com.xiaopeng.operation.dto.XpOrderDto;
+import com.xiaopeng.operation.dto.*;
 import com.xiaopeng.operation.mapper.*;
 import com.xiaopeng.operation.query.PricingPageListQuery;
 import com.xiaopeng.operation.service.IXpGeoQueryEntityService;
@@ -685,7 +683,7 @@
     }
 
     @Override
-    public void add(PricingAddDTO dto) {
+    public Long add(PricingAddDTO dto) {
         XpOpenCity openCity = xpOpenCityMapper.selectById(dto.getCityId());
         if (openCity == null) {
             throw new ServiceException("开通城市不存在");
@@ -703,7 +701,7 @@
         XpPricing pricing = new XpPricing();
         pricing.setVehicleModel(dto.getVehicleModel());
         pricing.setChannel(dto.getChannel());
-        pricing.setCityId(dto.getCityId().intValue());
+        pricing.setCityId(dto.getCityId());
         pricing.setRemark(dto.getRemark());
         pricing.setPricingType(dto.getPricingType());
         pricing.setBasicPricingJson("{}");
@@ -711,6 +709,30 @@
         pricing.setDynamicPricingJson("{}");
         pricing.setIsDynamicPrice(0);
         this.save(pricing);
+        return pricing.getId();
+    }
+
+    @Override
+    public Long edit(PricingEditDTO dto) {
+        //1.查询定价
+        XpPricing pricing = getById(dto.getId());
+        if (Objects.nonNull(pricing)) {
+            LambdaUpdateWrapper<XpPricing> updateWrapper = new LambdaUpdateWrapper<>();
+            //2.判断定价类型是否改变
+            if (!pricing.getPricingType().equals(dto.getPricingType())) {
+                updateWrapper.set(XpPricing::getBasicPricingJson, null);
+                updateWrapper.set(XpPricing::getStartingFareJson, null);
+                updateWrapper.set(XpPricing::getDynamicPricingJson, null);
+            }
+            updateWrapper.set(XpPricing::getVehicleModel, dto.getVehicleModel());
+            updateWrapper.set(XpPricing::getChannel, dto.getChannel());
+            updateWrapper.set(XpPricing::getCityId, dto.getCityId());
+            updateWrapper.set(StringUtils.isNotBlank(dto.getRemark()), XpPricing::getRemark, dto.getRemark());
+            updateWrapper.set(XpPricing::getPricingType, dto.getPricingType());
+            updateWrapper.eq(XpPricing::getId, dto.getId());
+            update(updateWrapper);
+        }
+        return dto.getId();
     }
 
     @Override

--
Gitblit v1.7.1