From 569483bbc66ad0b141fe946b2c19c0de83bccba4 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期四, 12 二月 2026 15:50:18 +0800
Subject: [PATCH] Merge branch 'dev_New' of http://114.132.189.42:9002/r/product-inventory-management-after into dev_New

---
 src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceRecordsServiceImpl.java |   12 +++++++++---
 1 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceRecordsServiceImpl.java b/src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceRecordsServiceImpl.java
index 7897d72..5ea3085 100644
--- a/src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceRecordsServiceImpl.java
+++ b/src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceRecordsServiceImpl.java
@@ -71,6 +71,7 @@
         /*鏌ヨ鍛樺伐淇℃伅*/
         QueryWrapper<StaffOnJob> staffQueryWrapper = new QueryWrapper<>();
         staffQueryWrapper.eq("staff_no", SecurityUtils.getUsername());
+        staffQueryWrapper.eq("staff_state", 1);//鍦ㄨ亴
         StaffOnJob staffOnJob = staffOnJobMapper.selectOne(staffQueryWrapper);
         if (staffOnJob == null) {
             throw new BaseException("褰撳墠鐢ㄦ埛娌℃湁瀵瑰簲鐨勫憳宸ヤ俊鎭�");
@@ -107,8 +108,8 @@
         int actualHour = currentDateTime.getHour();
         int actualMinute = currentDateTime.getMinute();
         // 鍒ゆ柇鎵撳崱鏃堕棿鏄惁鏅氫簬褰撳墠鏃堕棿
-        if (actualHour > standardHour || (actualHour == standardHour && actualMinute > standardMinute)) {
-            throw new BaseException(String.format("鎵撳崱澶辫触锛氭墦鍗℃椂闂翠笉鑳芥櫄浜庝笅鐝椂闂达紙%02d:%02d锛�", standardHour, standardMinute));
+        if (actualHour < standardHour || (actualHour == standardHour && actualMinute < standardMinute)) {
+            throw new BaseException(String.format("鎵撳崱澶辫触锛氭墦鍗℃椂闂翠笉鑳芥棭浜庝笅鐝椂闂达紙%02d:%02d锛�", standardHour, standardMinute));
         }
         // 鏍规嵁鍛樺伐ID鍜屽綋鍓嶆棩鏈熸煡璇㈡墦鍗¤褰�
         QueryWrapper<PersonalAttendanceRecords> attendanceQueryWrapper = new QueryWrapper<>();
@@ -176,6 +177,8 @@
                         return 3; // 杩熷埌鏃╅��
                     }
                     return 2; // 鏃╅��
+                }else if (attendanceRecord.getStatus() == 1) {
+                    return 1; // 涓嬬彮鎵撳崱姝e父浣嗘槸涓婄彮杩熷埌
                 }
             }
             return 0; // 姝e父
@@ -192,6 +195,7 @@
         if (!admin) {
             QueryWrapper<StaffOnJob> staffQueryWrapper = new QueryWrapper<>();
             staffQueryWrapper.eq("staff_no", SecurityUtils.getUsername());
+            staffQueryWrapper.eq("staff_state", 1);//鍦ㄨ亴
             StaffOnJob staffOnJob = staffOnJobMapper.selectOne(staffQueryWrapper);
             if (staffOnJob == null) {
                 return new Page<>(page.getCurrent(), page.getSize(), 0);
@@ -210,10 +214,11 @@
         // 棣栧厛鏍规嵁鐢ㄦ埛ID鏌ヨ鍛樺伐淇℃伅
         QueryWrapper<StaffOnJob> staffQueryWrapper = new QueryWrapper<>();
         staffQueryWrapper.eq("staff_no", SecurityUtils.getUsername());
+        staffQueryWrapper.eq("staff_state", 1);//鍦ㄨ亴
         StaffOnJob staffOnJob = staffOnJobMapper.selectOne(staffQueryWrapper);
 
         if (staffOnJob == null) {
-            return null; // 褰撳墠鐢ㄦ埛娌℃湁瀵瑰簲鐨勫憳宸ヤ俊鎭�
+            throw new BaseException("褰撳墠鐢ㄦ埛娌℃湁瀵瑰簲鐨勫憳宸ヤ俊鎭�");
         }
 
         // 鏍规嵁鍛樺伐ID鍜屽綋鍓嶆棩鏈熸煡璇㈡墦鍗¤褰�
@@ -253,6 +258,7 @@
         if (!admin) {
             QueryWrapper<StaffOnJob> staffQueryWrapper = new QueryWrapper<>();
             staffQueryWrapper.eq("staff_no", SecurityUtils.getUsername());
+            staffQueryWrapper.eq("staff_state", 1);//鍦ㄨ亴
             StaffOnJob staffOnJob = staffOnJobMapper.selectOne(staffQueryWrapper);
             if (staffOnJob == null) {
                 throw new ServiceException("娌℃湁鍛樺伐淇℃伅锛屾棤娉曞鍑鸿�冨嫟璁板綍");

--
Gitblit v1.9.3