From f161eb229c5fb0f82c2dfd26c6440dbf84cba1ca Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 24 四月 2026 17:05:52 +0800
Subject: [PATCH] [feat] 杂项优化,可改派人员排序,车队信息模糊查询等,活动通知方式
---
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpTaskServiceImpl.java | 52 +++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 43 insertions(+), 9 deletions(-)
diff --git a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpTaskServiceImpl.java b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpTaskServiceImpl.java
index 7053aa0..d4084d7 100644
--- a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpTaskServiceImpl.java
+++ b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpTaskServiceImpl.java
@@ -13,7 +13,6 @@
import com.xiaopeng.api.feignClient.account.SysUserClient;
import com.xiaopeng.api.feignClient.account.XpOperationUserClient;
import com.xiaopeng.api.feignClient.account.XpOperationUserNotificationClient;
-import com.xiaopeng.api.feignClient.account.XpOperationsRoleClient;
import com.xiaopeng.api.feignClient.operation.SmsClient;
import com.xiaopeng.api.feignClient.pushMessage.WebSocketMessageClient;
import com.xiaopeng.api.feignClient.pushMessage.XpAliPushMessageClient;
@@ -25,10 +24,8 @@
import com.xiaopeng.api.model.account.XpOperationsUser;
import com.xiaopeng.api.model.account.XpOperationsUserNotification;
import com.xiaopeng.api.model.maintenance.*;
-import com.xiaopeng.api.model.operation.XpPasswordFreePolicy;
import com.xiaopeng.api.model.vehicleConvoy.XpVehicle;
-import com.xiaopeng.api.vo.TaskVO;
-import com.xiaopeng.api.vo.account.XpOperationsUserWithRoleVO;
+import com.xiaopeng.api.vo.XpTaskVO;
import com.xiaopeng.api.vo.automaticPilot.VehiclePosition;
import com.xiaopeng.api.vo.maintenance.TaskScheduleConstants;
import com.xiaopeng.api.vo.operation.SmsVo;
@@ -428,9 +425,9 @@
log.info("事故通知记录保存成功,共 {} 条", notifications.size());
}
- TaskVO taskVO = new TaskVO();
- BeanUtil.copyProperties(xpTask, taskVO);
- xpWebSocketMessageClient.pushTask(taskVO);
+ XpTaskVO xpTaskVO = new XpTaskVO();
+ BeanUtil.copyProperties(xpTask, xpTaskVO);
+ xpWebSocketMessageClient.pushTask(xpTaskVO);
Map<Integer, List<XpOperationsUser>> operationUserMap = data.stream()
.filter(u -> u.getDeviceType() != null && StringUtils.isNotBlank(u.getPhoneNumber()))
@@ -1407,6 +1404,7 @@
XpTask.Reject reject = task.reject(msg);
rejects.add(reject);
task.setExcluded(rejects);
+ task.setReassignmentStatus(2);
Set<String> excludedUserIds = rejects.stream().map(XpTask.Reject::getRejectUserId).collect(Collectors.toSet());
Long fleetId = xpFleetVehicleClient.getFleetIdByVehicleId(vehicle.getId()).getData();
@@ -1501,10 +1499,45 @@
}
@Override
- public PageInfo<TaskVO> reassignTaskPageList(TaskPageListQuery query) {
- // 创建分页对象
+ public PageInfo<XpTaskVO> reassignTaskPageList(TaskPageListQuery query) {
+
PageInfo<TaskPageListQuery> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
+
return baseMapper.reassignTaskPageList(pageInfo,query);
+ }
+
+ @Override
+ public XpTaskVO detail(Long taskId) {
+ XpTask task = getById(taskId);
+ if (task == null) {
+ return null;
+ }
+ XpTaskVO xpTaskVO = new XpTaskVO();
+ BeanUtil.copyProperties(task, xpTaskVO);
+
+ String taskImage = xpTaskVO.getTaskImage();
+ if (StringUtils.isNotBlank(taskImage)) {
+ try {
+ xpTaskVO.setTaskImage(aliOssDownloadUtil.getPictureJsonArray(taskImage));
+ } catch (Exception e) {
+ log.error("获取任务图片下载地址失败,taskId={}", taskId, e);
+ }
+ }
+
+ // 2. 如果有车辆信息,可以补充车辆相关详情(如果需要)
+ if (task.getVehicleId() != null) {
+ R<XpVehicle> vehicleResult = xpVehicleClient.queryById(task.getVehicleId());
+ if (vehicleResult != null && vehicleResult.getData() != null) {
+ XpVehicle vehicle = vehicleResult.getData();
+ xpTaskVO.setPlateNumber(vehicle.getPlateNumber());
+// xpTaskVO.setVehicleColor(vehicle.getVehicleColor());
+// xpTaskVO.setVehicleCode(vehicle.getVehicleCode());
+// xpTaskVO.setVehicleVin(vehicle.getVehicleVin());
+
+ }
+ }
+
+ return xpTaskVO;
}
@Value("${robotaxi.sms.app-id:1476153389173952512}")
@@ -1582,6 +1615,7 @@
} else {
task.setEndTime(LocalDateTime.now().plusDays(3));
}
+ task.setReassignmentStatus(2);
task.setAssigneeTime(LocalDateTime.now());
task.setHandleUserId(handlerUserId.toString());
task.setVehicleId(null);
--
Gitblit v1.7.1