From 0365fd331424e0b0177f47e1745bd8d12ad070f9 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期三, 01 四月 2026 17:36:21 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
xp-robotaxi-remote-driving-boot/pom.xml | 4 +
xp-robotaxi-operation-boot/pom.xml | 4 +
xp-robotaxi-payment-boot/pom.xml | 4 +
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/base/TimeJobType.java | 1
xp-robotaxi-order-boot/pom.xml | 4 +
xp-robotaxi-automatic-pilot-boot/pom.xml | 4 +
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpSystemSettingController.java | 20 ++++++
xp-robotaxi-maintenance-boot/pom.xml | 9 +++
xp-robotaxi-push-message-boot/pom.xml | 4 +
xp-robotaxi-vehicle-convoy-boot/pom.xml | 4 +
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/base/AbstractJob.java | 7 ++
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/jobs/HotFixJob.java | 40 +++++++++++++
xp-robotaxi-itinerary-boot/pom.xml | 4 +
xp-robotaxi-account-boot/pom.xml | 4 +
xp-robotaxi-map-boot/pom.xml | 4 +
xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/service/serviceimpl/XpElectronicFenceAreaServiceImpl.java | 4 +
16 files changed, 121 insertions(+), 0 deletions(-)
diff --git a/xp-robotaxi-account-boot/pom.xml b/xp-robotaxi-account-boot/pom.xml
index 7334e2a..8223ed1 100644
--- a/xp-robotaxi-account-boot/pom.xml
+++ b/xp-robotaxi-account-boot/pom.xml
@@ -119,6 +119,10 @@
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
diff --git a/xp-robotaxi-automatic-pilot-boot/pom.xml b/xp-robotaxi-automatic-pilot-boot/pom.xml
index da3ab04..944d2da 100644
--- a/xp-robotaxi-automatic-pilot-boot/pom.xml
+++ b/xp-robotaxi-automatic-pilot-boot/pom.xml
@@ -116,6 +116,10 @@
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
diff --git a/xp-robotaxi-itinerary-boot/pom.xml b/xp-robotaxi-itinerary-boot/pom.xml
index b5b31c0..640664f 100644
--- a/xp-robotaxi-itinerary-boot/pom.xml
+++ b/xp-robotaxi-itinerary-boot/pom.xml
@@ -112,6 +112,10 @@
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
diff --git a/xp-robotaxi-maintenance-boot/pom.xml b/xp-robotaxi-maintenance-boot/pom.xml
index 9b9987e..ad9cac3 100644
--- a/xp-robotaxi-maintenance-boot/pom.xml
+++ b/xp-robotaxi-maintenance-boot/pom.xml
@@ -154,6 +154,10 @@
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
@@ -167,6 +171,11 @@
<version>1.33</version>
</dependency>
<dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-core</artifactId>
+ <version>2.25.3</version>
+ </dependency>
+ <dependency>
<groupId>com.xiaopeng.logan</groupId>
<artifactId>xp-evi-oss-sdk</artifactId>
<version>1.0.1-SNAPSHOT</version>
diff --git a/xp-robotaxi-map-boot/pom.xml b/xp-robotaxi-map-boot/pom.xml
index beb307b..100d103 100644
--- a/xp-robotaxi-map-boot/pom.xml
+++ b/xp-robotaxi-map-boot/pom.xml
@@ -204,6 +204,10 @@
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
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 6b00e24..78e8ca3 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
@@ -102,6 +102,10 @@
if(xpElectronicFence==null){
continue;
}
+ if(xpElectronicFence.getStatus()!=2){
+ continue;
+ }
+
String operationStrategy = xpElectronicFence.getOperationStrategy();
if(operationStrategy==null){
continue;
diff --git a/xp-robotaxi-operation-boot/pom.xml b/xp-robotaxi-operation-boot/pom.xml
index d73641b..10d12fd 100644
--- a/xp-robotaxi-operation-boot/pom.xml
+++ b/xp-robotaxi-operation-boot/pom.xml
@@ -192,6 +192,10 @@
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpSystemSettingController.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpSystemSettingController.java
index 82bce79..7b20ae2 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpSystemSettingController.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpSystemSettingController.java
@@ -3,9 +3,13 @@
import com.xiaopeng.api.model.operation.XpSystemSetting;
import com.xiaopeng.common.core.constant.CacheConstants;
import com.xiaopeng.common.core.domain.R;
+import com.xiaopeng.common.core.utils.DateUtils;
import com.xiaopeng.common.core.web.controller.BaseController;
import com.xiaopeng.common.core.web.domain.AjaxResult;
import com.xiaopeng.common.redis.service.RedisService;
+import com.xiaopeng.operation.job.base.QuartzManager;
+import com.xiaopeng.operation.job.base.TimeJobType;
+import com.xiaopeng.operation.job.jobs.HotFixJob;
import com.xiaopeng.operation.service.XpSystemSettingService;
import com.xiaopeng.operation.vo.CustomerServicePhoneVo;
import io.swagger.annotations.Api;
@@ -13,6 +17,9 @@
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
+
+import java.time.LocalDateTime;
+import java.util.HashMap;
@Slf4j
@Validated
@@ -96,6 +103,19 @@
@PostMapping("/api/v1/systemSetting/save")
public R<?> saveSystemSetting(@RequestBody XpSystemSetting xpSystemSetting){
xpSystemSettingService.saveSystemSetting(xpSystemSetting);
+ if(xpSystemSetting.getHotfixStatus()==1){
+ // 开启定时任务去关闭
+ // 计算当前时间与结束时间的秒数
+ LocalDateTime hotfixEndTime = xpSystemSetting.getHotfixEndTime();
+ QuartzManager.addJob(
+ HotFixJob.class,
+ (HotFixJob.name ).toUpperCase(),
+ TimeJobType.HOT_FIX,
+ DateUtils.localDateTimeToDate(hotfixEndTime),
+ new HashMap<>()
+ );
+ }
+
return R.ok();
}
}
diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/base/AbstractJob.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/base/AbstractJob.java
index 0e929e5..cfa4d1e 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/base/AbstractJob.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/base/AbstractJob.java
@@ -1,11 +1,14 @@
package com.xiaopeng.operation.job.base;
import com.xiaopeng.api.feignClient.pushMessage.XpPushMessageClient;
+import com.xiaopeng.common.redis.service.RedisService;
import com.xiaopeng.operation.job.utils.SpringContextsUtil;
import com.xiaopeng.operation.service.IXpElectronicFenceAreaService;
import com.xiaopeng.operation.service.IXpElectronicFenceService;
import com.xiaopeng.operation.service.IXpPointService;
+import com.xiaopeng.operation.service.XpSystemSettingService;
import org.quartz.Job;
+import org.quartz.JobDataMap;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.slf4j.Logger;
@@ -21,12 +24,16 @@
protected IXpElectronicFenceAreaService xpElectronicFenceAreaService;
protected IXpPointService xpPointService;
protected XpPushMessageClient xpPushMessageClient;
+ protected XpSystemSettingService xpSystemSettingService;
+ protected RedisService redisService;
public AbstractJob(){
this.xpElectronicFenceService = SpringContextsUtil.getBean(IXpElectronicFenceService.class);
this.xpElectronicFenceAreaService = SpringContextsUtil.getBean(IXpElectronicFenceAreaService.class);
this.xpPointService = SpringContextsUtil.getBean(IXpPointService.class);
this.xpPushMessageClient = SpringContextsUtil.getBean(XpPushMessageClient.class);
+ this.xpSystemSettingService = SpringContextsUtil.getBean(XpSystemSettingService.class);
+ this.redisService = SpringContextsUtil.getBean(RedisService.class);
}
diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/base/TimeJobType.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/base/TimeJobType.java
index 9aac451..e260288 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/base/TimeJobType.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/base/TimeJobType.java
@@ -7,6 +7,7 @@
public enum TimeJobType {
ELECTRONIC_EFFECT("electronic_effect","电子围栏生效"),
ELECTRONIC_FAILURE("electronic_failure","电子围栏失效"),
+ HOT_FIX("hot_fix","热修复"),
DYNAMIC_PRICING_CHECK("dynamic_pricing_check","动态调价供需检测");
diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/jobs/HotFixJob.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/jobs/HotFixJob.java
new file mode 100644
index 0000000..8cce0a5
--- /dev/null
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/job/jobs/HotFixJob.java
@@ -0,0 +1,40 @@
+package com.xiaopeng.operation.job.jobs;
+
+import com.xiaopeng.api.model.operation.XpSystemSetting;
+import com.xiaopeng.api.model.order.XpOrder;
+import com.xiaopeng.api.model.vehicleConvoy.XpVehicle;
+import com.xiaopeng.api.vo.HotFixInfoVo;
+import com.xiaopeng.api.vo.vehicleConvoy.CancelTaxiPassengerVo;
+import com.xiaopeng.operation.job.base.AbstractJob;
+import lombok.extern.slf4j.Slf4j;
+import org.quartz.JobDataMap;
+import org.quartz.JobExecutionContext;
+import org.quartz.JobExecutionException;
+
+/**
+ * 推送定时任务
+ * @author Administrator
+ *
+ */
+@Slf4j
+public class HotFixJob extends AbstractJob {
+
+ public static final String name = "hot_fix";
+
+ @Override
+ public void execute(JobExecutionContext context)
+ throws JobExecutionException {
+ XpSystemSetting xpSystemSetting = xpSystemSettingService.lambdaQuery().last("limit 1").one();
+ xpSystemSetting.setHotfixStatus(0);
+ xpSystemSettingService.updateById(xpSystemSetting);
+
+ //保存热修复信息到redis
+ HotFixInfoVo hotFixInfoVo = new HotFixInfoVo();
+ hotFixInfoVo.setHotfixStatus(xpSystemSetting.getHotfixStatus() == null ? 0 : xpSystemSetting.getHotfixStatus());
+ hotFixInfoVo.setHotfixStartTime(xpSystemSetting.getHotfixStartTime());
+ hotFixInfoVo.setHotfixEndTime(xpSystemSetting.getHotfixEndTime());
+ redisService.setCacheObject("HOT_FIX_INFO", hotFixInfoVo);
+
+ }
+
+}
diff --git a/xp-robotaxi-order-boot/pom.xml b/xp-robotaxi-order-boot/pom.xml
index b6759fe..7fa953a 100644
--- a/xp-robotaxi-order-boot/pom.xml
+++ b/xp-robotaxi-order-boot/pom.xml
@@ -119,6 +119,10 @@
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
diff --git a/xp-robotaxi-payment-boot/pom.xml b/xp-robotaxi-payment-boot/pom.xml
index 1e98154..d49cad8 100644
--- a/xp-robotaxi-payment-boot/pom.xml
+++ b/xp-robotaxi-payment-boot/pom.xml
@@ -118,6 +118,10 @@
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
diff --git a/xp-robotaxi-push-message-boot/pom.xml b/xp-robotaxi-push-message-boot/pom.xml
index c0dff74..6862b9e 100644
--- a/xp-robotaxi-push-message-boot/pom.xml
+++ b/xp-robotaxi-push-message-boot/pom.xml
@@ -106,6 +106,10 @@
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
diff --git a/xp-robotaxi-remote-driving-boot/pom.xml b/xp-robotaxi-remote-driving-boot/pom.xml
index 62c2f34..5440e18 100644
--- a/xp-robotaxi-remote-driving-boot/pom.xml
+++ b/xp-robotaxi-remote-driving-boot/pom.xml
@@ -106,6 +106,10 @@
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
diff --git a/xp-robotaxi-vehicle-convoy-boot/pom.xml b/xp-robotaxi-vehicle-convoy-boot/pom.xml
index b90b8ac..cefbe0b 100644
--- a/xp-robotaxi-vehicle-convoy-boot/pom.xml
+++ b/xp-robotaxi-vehicle-convoy-boot/pom.xml
@@ -106,6 +106,10 @@
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
--
Gitblit v1.7.1