From dc3e89bf905ce95598dd4650508e98e999953cc7 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期四, 23 四月 2026 11:41:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/1.0' into 1.0
---
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpCruiseCheckInRecordServiceImpl.java | 70 ++++++++++++++++++++++++++++++++++
1 files changed, 69 insertions(+), 1 deletions(-)
diff --git a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpCruiseCheckInRecordServiceImpl.java b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpCruiseCheckInRecordServiceImpl.java
index 3e289ce..dd85b38 100644
--- a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpCruiseCheckInRecordServiceImpl.java
+++ b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpCruiseCheckInRecordServiceImpl.java
@@ -1,6 +1,8 @@
package com.xiaopeng.maintenance.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.xiaopeng.api.feignClient.account.XpOperationsUserClient;
+import com.xiaopeng.api.model.account.XpOperationsUser;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRecord;
import com.xiaopeng.common.core.web.page.PageInfo;
import com.xiaopeng.maintenance.mapper.XpCruiseCheckInRecordMapper;
@@ -11,7 +13,11 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
+import java.util.Collections;
import java.util.List;
+import java.util.Map;
+import java.util.function.Function;
+import java.util.stream.Collectors;
@Service
public class XpCruiseCheckInRecordServiceImpl extends ServiceImpl<XpCruiseCheckInRecordMapper, XpCruiseCheckInRecord> implements IXpCruiseCheckInRecordService {
@@ -19,21 +25,83 @@
@Resource
private XpCruiseCheckInRecordMapper xpCruiseCheckInRecordMapper;
+ @Resource
+ private XpOperationsUserClient xpOperationsUserClient;
@Override
public PageInfo<XpCruiseCheckInRecordVO> pageList(XpCruiseCheckInRecordQuery query) {
+
PageInfo<XpCruiseCheckInRecordVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
List<XpCruiseCheckInRecordVO> list = xpCruiseCheckInRecordMapper.selectCruiseCheckInRecordList(pageInfo, query);
pageInfo.setRecords(list);
+
+ List<Long> ids = list.stream().map(XpCruiseCheckInRecordVO::getOperationsUserId).collect(Collectors.toList());
+ List<XpOperationsUser> xpOperationsUsers = xpOperationsUserClient.listByIds(ids).getData();
+ Map<Long, XpOperationsUser> userMap = xpOperationsUsers.stream().collect(Collectors.toMap(XpOperationsUser::getId, Function.identity()));
+ list.forEach(record -> {
+ XpOperationsUser user = userMap.get(record.getOperationsUserId());
+ if (user != null) {
+ record.setOperationsUserId(user.getId());
+ record.setOperationsUserName(user.getNickName());
+ record.setPhoneNumber(user.getPhoneNumber());
+ }
+ });
+
return pageInfo;
}
@Override
public XpCruiseCheckInRecordVO detail(Long id) {
+ XpCruiseCheckInRecordVO vo = xpCruiseCheckInRecordMapper.detail(id);
+ List<Long> ids = Collections.singletonList(vo.getOperationsUserId());
+ List<XpOperationsUser> xpOperationsUsers = xpOperationsUserClient.listByIds(ids).getData();
+ Map<Long, XpOperationsUser> userMap = xpOperationsUsers.stream().collect(Collectors.toMap(XpOperationsUser::getId, Function.identity()));
+ XpOperationsUser user = userMap.get(vo.getOperationsUserId());
+ if (user != null) {
+ vo.setOperationsUserId(user.getId());
+ vo.setOperationsUserName(user.getNickName());
+ vo.setPhoneNumber(user.getPhoneNumber());
+ }
return xpCruiseCheckInRecordMapper.detail(id);
}
@Override
public XpCruiseCheckInRecordVO statistics(XpCruiseCheckInStatisticsQuery query) {
- return xpCruiseCheckInRecordMapper.selectCruiseCheckInStatistics(query);
+
+ XpCruiseCheckInRecordVO vo = xpCruiseCheckInRecordMapper.selectCruiseCheckInStatistics(query);
+
+ List<Long> ids = Collections.singletonList(vo.getOperationsUserId());
+ List<XpOperationsUser> xpOperationsUsers = xpOperationsUserClient.listByIds(ids).getData();
+ Map<Long, XpOperationsUser> userMap = xpOperationsUsers.stream().collect(Collectors.toMap(XpOperationsUser::getId, Function.identity()));
+
+ XpOperationsUser user = userMap.get(vo.getOperationsUserId());
+ if (user != null) {
+ vo.setOperationsUserId(user.getId());
+ vo.setOperationsUserName(user.getNickName());
+ vo.setPhoneNumber(user.getPhoneNumber());
+ }
+
+ return vo;
}
+
+ @Override
+ public List<XpCruiseCheckInRecordVO> all(XpCruiseCheckInRecordQuery query) {
+
+ List<XpCruiseCheckInRecordVO> list = xpCruiseCheckInRecordMapper.selectCruiseCheckInRecordList(query);
+
+ List<Long> ids = list.stream().map(XpCruiseCheckInRecordVO::getOperationsUserId).collect(Collectors.toList());
+ List<XpOperationsUser> xpOperationsUsers = xpOperationsUserClient.listByIds(ids).getData();
+ Map<Long, XpOperationsUser> userMap = xpOperationsUsers.stream().collect(Collectors.toMap(XpOperationsUser::getId, Function.identity()));
+ list.forEach(record -> {
+ XpOperationsUser user = userMap.get(record.getOperationsUserId());
+ if (user != null) {
+ record.setOperationsUserId(user.getId());
+ record.setOperationsUserName(user.getNickName());
+ record.setPhoneNumber(user.getPhoneNumber());
+ }
+ });
+
+ return list;
+ }
+
+
}
--
Gitblit v1.7.1