From 45f48096a6e1adeec51ed0ef001220991dfcafc4 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期一, 20 四月 2026 22:00:13 +0800
Subject: [PATCH] Merge branch '1.0' of http://120.76.84.145:10101/gitblit/r/java/Robotaxi into 1.0

---
 xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpPricingServiceImpl.java |   33 +++++++++++++++++++++++++++++----
 1 files changed, 29 insertions(+), 4 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 c8c251b..db4b2e8 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
@@ -1,6 +1,7 @@
 package com.xiaopeng.operation.service.impl;
 
 
+import cn.hutool.core.lang.Snowflake;
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONArray;
 import com.alibaba.fastjson2.JSONObject;
@@ -13,9 +14,10 @@
 import com.xiaopeng.api.dto.operation.LonLatDto;
 import com.xiaopeng.api.feignClient.account.XpAppUserClient;
 import com.xiaopeng.api.feignClient.account.XpAppUserCouponClient;
+import com.xiaopeng.api.feignClient.maintenance.XpVehicleModelClient;
 import com.xiaopeng.api.feignClient.map.XpMapClient;
 import com.xiaopeng.api.feignClient.order.XpOrderClient;
-import com.xiaopeng.api.model.account.XpAppUser;
+import com.xiaopeng.api.model.maintenance.XpVehicleModel;
 import com.xiaopeng.api.model.operation.*;
 import com.xiaopeng.api.model.order.XpOrder;
 import com.xiaopeng.api.vo.account.UserCouponVo;
@@ -33,14 +35,14 @@
 import com.xiaopeng.common.redis.service.RedisService;
 import com.xiaopeng.operation.constant.I18nKeyConstant;
 import com.xiaopeng.operation.dto.*;
+import com.xiaopeng.operation.job.base.QuartzManager;
+import com.xiaopeng.operation.job.base.TimeJobType;
+import com.xiaopeng.operation.job.jobs.DynamicPricingCheckJob;
 import com.xiaopeng.operation.mapper.*;
 import com.xiaopeng.operation.query.PricingPageListQuery;
 import com.xiaopeng.operation.service.IXpGeoQueryEntityService;
 import com.xiaopeng.operation.service.XpPointService;
 import com.xiaopeng.operation.service.XpPricingService;
-import com.xiaopeng.operation.job.base.QuartzManager;
-import com.xiaopeng.operation.job.base.TimeJobType;
-import com.xiaopeng.operation.job.jobs.DynamicPricingCheckJob;
 import com.xiaopeng.operation.utils.XpPricingUtil;
 import com.xiaopeng.operation.utils.holiday.HolidayUtil;
 import com.xiaopeng.operation.utils.map.FastDistanceCalculator;
@@ -104,6 +106,8 @@
 
 
     @Resource
+    private XpVehicleModelClient xpVehicleModelClient;
+    @Resource
     private XpWhitelistMapper xpWhitelistMapper;
 
     @Resource
@@ -120,6 +124,9 @@
 
     @Autowired
     private XpPointService xpPointService;
+
+    @Resource(name = "hutoolSnowflake")
+    private Snowflake snowflake;
 
 
     // 自定义线程池用于并行执行任务
@@ -512,6 +519,7 @@
         xpOrder.setEndPointId(dto.getEndPointId());
         xpOrder.setStartPointName(xpPoint.getPointName());
         xpOrder.setEndPointName(endXpPoint.getPointName());
+        xpOrder.setXpuTaskId(snowflake.nextId() + "");
 
         // 当前时段
         String currentTimeSlot = DateUtils.getCurrentTimeSlot();
@@ -680,6 +688,23 @@
         Page<PricingPageListVO> page = this.baseMapper.pageList(pageInfo, query);
         pageInfo.setRecords(page.getRecords());
         pageInfo.setTotal(page.getTotal());
+        if(page.getRecords() != null){
+            Set<String> vehicleModelIds = page.getRecords().stream().map(PricingPageListVO::getVehicleModel).collect(Collectors.toSet());
+            R<List<XpVehicleModel>> listR = xpVehicleModelClient.listByIds(vehicleModelIds);
+            if(listR != null && listR.getData() != null){
+                List<XpVehicleModel> vehicleModels = listR.getData();
+                Map<String, XpVehicleModel> vehicleModelMap = new HashMap<>();
+                for (XpVehicleModel vehicleModel : vehicleModels) {
+                    vehicleModelMap.put(vehicleModel.getId().toString(), vehicleModel);
+                }
+                for (PricingPageListVO record : page.getRecords()) {
+                    XpVehicleModel xpVehicleModel = vehicleModelMap.get(record.getVehicleModel());
+                    if(xpVehicleModel != null){
+                        record.setVehicleModelName(xpVehicleModel.getName());
+                    }
+                }
+            }
+        }
         return pageInfo;
     }
 

--
Gitblit v1.7.1