From 1f40487e7d4adbfd5d1928decff818d42e92ec19 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期五, 24 四月 2026 13:57:05 +0800
Subject: [PATCH] Merge branch '1.0' of http://120.76.84.145:10101/gitblit/r/java/Robotaxi into 1.0

---
 xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpCruiseCheckInRecordServiceImpl.java |   82 +++++++++++++++++++++++------------------
 1 files changed, 46 insertions(+), 36 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 964598e..9858a8b 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
@@ -40,27 +40,32 @@
     public PageInfo<XpCruiseCheckInRecordVO> pageList(XpCruiseCheckInRecordQuery query) {
 
         PageInfo<XpCruiseCheckInRecordVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
+
         List<XpCruiseCheckInRecordVO> list = xpCruiseCheckInRecordMapper.selectCruiseCheckInRecordList(pageInfo, 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 = list.stream().map(record -> {
-                    XpOperationsUser user = userMap.get(record.getOperationsUserId());
-                    if (user == null) return null;
-                    record.setOperationsUserId(user.getId());
-                    record.setOperationsUserName(user.getNickName());
-                    record.setPhoneNumber(user.getPhoneNumber());
-                    if (StringUtils.isNotBlank(query.getOperationsUserName()) && !record.getOperationsUserName().contains(query.getOperationsUserName())) {
-                        return null;
-                    }
-                    if (StringUtils.isNotBlank(query.getPhoneNumber()) && !record.getPhoneNumber().contains(query.getPhoneNumber())) {
-                        return null;
-                    }
-                    return record;
-                })
-                .filter(Objects::nonNull)
-                .collect(Collectors.toList());
+
+        for (XpCruiseCheckInRecordVO xpCruiseCheckInRecordVO : list) {
+
+            XpOperationsUser user = userMap.get(xpCruiseCheckInRecordVO.getOperationsUserId());
+            if (user == null) continue;
+            xpCruiseCheckInRecordVO.setOperationsUserId(user.getId());
+            xpCruiseCheckInRecordVO.setOperationsUserName(user.getNickName());
+            xpCruiseCheckInRecordVO.setPhoneNumber(user.getPhoneNumber());
+
+        }
+
+        list.removeIf(vo -> {
+            if (StringUtils.isNotBlank(query.getOperationsUserName()) && !vo.getOperationsUserName().contains(query.getOperationsUserName())) {
+                return true;
+            }
+            return StringUtils.isNotBlank(query.getPhoneNumber()) && !vo.getPhoneNumber().contains(query.getPhoneNumber());
+        });
+
         pageInfo.setRecords(list);
 
         return pageInfo;
@@ -83,7 +88,9 @@
             vo.setOperationsUserId(user.getId());
             vo.setOperationsUserName(user.getNickName());
             vo.setPhoneNumber(user.getPhoneNumber());
-            vo.setFleetName(profile.getFleet().getFleetName());
+            if (profile.getFleet() != null) {
+                vo.setFleetName(profile.getFleet().getFleetName());
+            }
             vo.setRole(profile.getRoles().stream().map(XpOperationsUserProfileVO.RoleInfoVO::getRoleName).collect(Collectors.joining(",")));
         }
         return vo;
@@ -95,11 +102,11 @@
         if (CollectionUtils.isEmpty(vos) || vos.size() < 7) {
             String date = vos.get(vos.size() - 1).getDate();
             LocalDate endDate = LocalDate.parse(date);
-            LocalDate startDate = endDate.minusDays(6);
+            LocalDate startDate = endDate.minusDays(vos.size() + 1);
             for (int i = 7 - vos.size(); i > 0; i--) {
                 XpCruiseCheckInStatisticsVO v = new XpCruiseCheckInStatisticsVO();
                 v.setDate(startDate.toString());
-                startDate = startDate.plusDays(1);
+                startDate = startDate.minusDays(1);
                 vos.add(0, v);
             }
         }
@@ -110,27 +117,30 @@
     @Override
     public List<XpCruiseCheckInRecordVO> all(XpCruiseCheckInRecordQuery query) {
 
-        List<XpCruiseCheckInRecordVO> list = xpCruiseCheckInRecordMapper.selectCruiseCheckInRecordList(query);
+        List<XpCruiseCheckInRecordVO> list = xpCruiseCheckInRecordMapper.exportList(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 = list.stream().map(record -> {
-                    XpOperationsUser user = userMap.get(record.getOperationsUserId());
-                    if (user == null) return null;
-                    record.setOperationsUserId(user.getId());
-                    record.setOperationsUserName(user.getNickName());
-                    record.setPhoneNumber(user.getPhoneNumber());
-                    if (StringUtils.isNotBlank(query.getOperationsUserName()) && !record.getOperationsUserName().contains(query.getOperationsUserName())) {
-                        return null;
-                    }
-                    if (StringUtils.isNotBlank(query.getPhoneNumber()) && !record.getPhoneNumber().contains(query.getPhoneNumber())) {
-                        return null;
-                    }
-                    return record;
-                })
-                .filter(Objects::nonNull)
-                .collect(Collectors.toList());
+
+        for (XpCruiseCheckInRecordVO xpCruiseCheckInRecordVO : list) {
+
+            XpOperationsUser user = userMap.get(xpCruiseCheckInRecordVO.getOperationsUserId());
+            if (user == null) continue;
+            xpCruiseCheckInRecordVO.setOperationsUserId(user.getId());
+            xpCruiseCheckInRecordVO.setOperationsUserName(user.getNickName());
+            xpCruiseCheckInRecordVO.setPhoneNumber(user.getPhoneNumber());
+
+        }
+
+        list.removeIf(vo -> {
+            if (StringUtils.isNotBlank(query.getOperationsUserName()) && !vo.getOperationsUserName().contains(query.getOperationsUserName())) {
+                return true;
+            }
+            return StringUtils.isNotBlank(query.getPhoneNumber()) && !vo.getPhoneNumber().contains(query.getPhoneNumber());
+        });
 
         return list;
     }

--
Gitblit v1.7.1