From 997d864a76bc718d49aee6cb41d9412ac2a88d73 Mon Sep 17 00:00:00 2001
From: liu <2021943741@qq.com>
Date: 星期一, 26 十月 2026 14:44:55 +0800
Subject: [PATCH] feat(hrm): 支持定位范围打卡

---
 yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/attendance/HrmAttendanceRecordService.java |   28 +++++++++++++++++++++-------
 1 files changed, 21 insertions(+), 7 deletions(-)

diff --git a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/attendance/HrmAttendanceRecordService.java b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/attendance/HrmAttendanceRecordService.java
index 25cfd62..2d10ac7 100644
--- a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/attendance/HrmAttendanceRecordService.java
+++ b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/attendance/HrmAttendanceRecordService.java
@@ -1,6 +1,8 @@
 package cn.iocoder.yudao.module.hrm.service.attendance;
 
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.module.hrm.controller.admin.attendance.vo.HrmAttendanceClockReqVO;
+import cn.iocoder.yudao.module.hrm.controller.admin.attendance.vo.HrmAttendanceMyStatusRespVO;
 import cn.iocoder.yudao.module.hrm.controller.admin.attendance.vo.HrmAttendanceRecordPageReqVO;
 import cn.iocoder.yudao.module.hrm.dal.dataobject.attendance.HrmAttendanceRecordDO;
 import cn.iocoder.yudao.module.hrm.dal.dataobject.attendance.HrmAttendanceExceptionDO;
@@ -48,20 +50,32 @@
      *
      * @param userId 鍛樺伐ID
      * @param clockTime 鎵撳崱鏃堕棿
-     * @param location 鎵撳崱鍦扮偣
-     * @return 鑰冨嫟璁板綍
+     * @param reqVO 鍘熷瀹氫綅淇℃伅锛圵GS84锛�
+     * @param legacyLocation 鏃х増鍦扮偣鏂囨湰锛屼粎鍦ㄦ湭鍚敤浣嶇疆闄愬埗鏃跺吋瀹逛娇鐢�
+     * @return 鎵撳崱璁板綍銆佽鍒欏拰璺濈
      */
-    HrmAttendanceRecordDO clockIn(Long userId, LocalDateTime clockTime, String location);
+    HrmAttendanceClockResult clockIn(Long userId, LocalDateTime clockTime,
+                                     HrmAttendanceClockReqVO reqVO, String legacyLocation);
 
     /**
      * 鎵撳崱锛堜笅鐝墦鍗★級
      *
      * @param userId 鍛樺伐ID
      * @param clockTime 鎵撳崱鏃堕棿
-     * @param location 鎵撳崱鍦扮偣
-     * @return 鑰冨嫟璁板綍
+     * @param reqVO 鍘熷瀹氫綅淇℃伅锛圵GS84锛�
+     * @param legacyLocation 鏃х増鍦扮偣鏂囨湰锛屼粎鍦ㄦ湭鍚敤浣嶇疆闄愬埗鏃跺吋瀹逛娇鐢�
+     * @return 鎵撳崱璁板綍銆佽鍒欏拰璺濈
      */
-    HrmAttendanceRecordDO clockOut(Long userId, LocalDateTime clockTime, String location);
+    HrmAttendanceClockResult clockOut(Long userId, LocalDateTime clockTime,
+                                      HrmAttendanceClockReqVO reqVO, String legacyLocation);
+
+    /**
+     * 鑾峰彇鍛樺伐浠婃棩鎵撳崱鐘舵��
+     *
+     * @param userId 鍛樺伐ID
+     * @return 浠婃棩鎵撳崱鐘舵�侊紝鍛樺伐涓嶅瓨鍦ㄦ椂杩斿洖 null
+     */
+    HrmAttendanceMyStatusRespVO getMyStatus(Long userId);
 
     /**
      * 琛ュ崱瀹℃壒閫氳繃鍚庢洿鏂拌�冨嫟璁板綍
@@ -70,4 +84,4 @@
      */
     void supplementClockIn(HrmAttendanceExceptionDO exception);
 
-}
\ No newline at end of file
+}

--
Gitblit v1.9.3