From 952e902fbe62185deca15095af5f215988d9650f Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期六, 07 三月 2026 20:57:43 +0800
Subject: [PATCH] 提交最新代码

---
 xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpChargingRecordServiceImpl.java |   31 +++++++++++++++++++++++++++++++
 1 files changed, 31 insertions(+), 0 deletions(-)

diff --git a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpChargingRecordServiceImpl.java b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpChargingRecordServiceImpl.java
index 011d083..3f0ffc8 100644
--- a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpChargingRecordServiceImpl.java
+++ b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpChargingRecordServiceImpl.java
@@ -16,6 +16,7 @@
 import com.xiaopeng.maintenance.mapper.XpChargingRecordMapper;
 import com.xiaopeng.maintenance.model.vo.XpChargingRecordVO;
 import com.xiaopeng.maintenance.service.IXpChargingRecordService;
+import com.xiaopeng.maintenance.vo.ChargingStatusVO;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -191,4 +192,34 @@
     public void deleteRecordById(Long id) {
         removeById(id);
     }
+
+    @Override
+    public ChargingStatusVO queryChargingStatus(Long vehicleId) {
+
+        ChargingStatusVO chargingStatusVO = new ChargingStatusVO();
+
+        // 查询车辆当前充电信息
+        XpChargingRecord xpChargingRecord = this.getOne(new LambdaQueryWrapper<XpChargingRecord>()
+                .eq(XpChargingRecord::getVehicleId, vehicleId)
+                .isNull(XpChargingRecord::getEndRemainingBattery)
+                .isNull(XpChargingRecord::getTaskId)
+                .orderByDesc(XpChargingRecord::getCreateTime)
+                .last("LIMIT 1"));
+
+        if(Objects.nonNull(xpChargingRecord)){
+            chargingStatusVO.setStatus(2);
+            // 查询开始充电操作人名称
+            XpOperationsUser operationsUser = xpOperationUserClient.queryById(xpChargingRecord.getStartOperationsUserId()).getData();
+            if(Objects.nonNull(operationsUser)){
+                chargingStatusVO.setOperatorStartName(operationsUser.getNickName());
+            }
+        }else{
+            chargingStatusVO.setStatus(1);
+        }
+
+        // 设置充电信息
+        chargingStatusVO.setXpChargingRecord(xpChargingRecord);
+
+        return chargingStatusVO;
+    }
 }

--
Gitblit v1.7.1