From af0272e2a4a21ea8d7aa7193c0b3803c6932399d Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 25 二月 2026 09:00:58 +0800
Subject: [PATCH] 运维端打卡查询

---
 xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpClockInController.java |   17 +++++++++++++++--
 1 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpClockInController.java b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpClockInController.java
index c4c8f43..b3ddb98 100644
--- a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpClockInController.java
+++ b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpClockInController.java
@@ -1,6 +1,8 @@
 package com.xiaopeng.maintenance.controller;
 
 
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.xiaopeng.api.model.maintenance.XpClockIn;
 import com.xiaopeng.api.model.maintenance.XpErrorType;
 import com.xiaopeng.common.core.domain.R;
 import com.xiaopeng.common.security.service.TokenService;
@@ -44,7 +46,6 @@
     public R<Boolean> verifyRange(@RequestBody VerifyRangeDTO dto) {
         return R.ok(xpClockInService.verifyRange(dto));
     }
-    private IXpClockInService clockInService;
 
     @ApiOperation(value = "上班打卡", tags = "运维APP-排班与考勤")
     @PostMapping("/api/v1/clock/clockIn")
@@ -61,7 +62,7 @@
     @ApiOperation(value = "检查用户是否上班中", tags = {"内部接口"})
     public R<Boolean> checkWorkStatus(@RequestParam("appUserId") Long appUserId) {
         log.info("检查用户上班状态, appUserId={}", appUserId);
-        Boolean workFlag = clockInService.checkWorkStatus(appUserId);
+        Boolean workFlag = xpClockInService.checkWorkStatus(appUserId);
         return R.ok(workFlag);
     }
 
@@ -73,5 +74,17 @@
         return xpClockInService.clockOut(dto);
     }
 
+    @ApiOperation(value = "通过日期查询打卡信息", tags = "运维APP-排班与考勤")
+    @GetMapping("/api/v1/clock/queryClockByDate")
+    public R<XpClockIn> queryClockByDate(@RequestParam String date) {
+        Long id = tokenService.getLoginOperationUser().getId();
+        XpClockIn xpClockIn = xpClockInService.getOne(Wrappers.lambdaQuery(XpClockIn.class)
+                .eq(XpClockIn::getAppUserId, id)
+                .likeRight(XpClockIn::getClockInTime, date)
+                .orderByDesc(XpClockIn::getClockInTime)
+                .last("LIMIT 1"));
+        return R.ok(xpClockIn);
+    }
+
 }
 

--
Gitblit v1.7.1