chenshudong il y a 4 mois
Parent
commit
52882181fa

+ 4 - 4
airport-admin/src/main/java/com/sundot/airport/web/controller/attendance/AttendancePostRecordController.java

@@ -125,12 +125,12 @@ public class AttendancePostRecordController extends BaseController {
125
         Long currentUserId = SecurityUtils.getUserId();
125
         Long currentUserId = SecurityUtils.getUserId();
126
         // 计算当前时间对应的班次日期
126
         // 计算当前时间对应的班次日期
127
 //        Date queryDate = determineShiftDate();
127
 //        Date queryDate = determineShiftDate();
128
-        Date queryDate = attendancePostRecordService.selectMaxDateByUserId(currentUserId);
128
+        Date queryDate = attendancePostRecordService.selectMaxDateByUserId(currentUserId, null);
129
         if (queryDate == null) {
129
         if (queryDate == null) {
130
             queryDate = DateUtils.getNowDate();
130
             queryDate = DateUtils.getNowDate();
131
         }
131
         }
132
         // 先获取当前用户今天的记录,取出班次信息
132
         // 先获取当前用户今天的记录,取出班次信息
133
-        List<AttendancePostRecord> userRecords = attendancePostRecordService.selectTodayRecordsByUserId(currentUserId, queryDate);
133
+        List<AttendancePostRecord> userRecords = attendancePostRecordService.selectTodayRecordsByUserId(currentUserId, null, queryDate);
134
 
134
 
135
         if (userRecords.isEmpty()) {
135
         if (userRecords.isEmpty()) {
136
             return AjaxResult.success(new ArrayList<>());
136
             return AjaxResult.success(new ArrayList<>());
@@ -1095,11 +1095,11 @@ public class AttendancePostRecordController extends BaseController {
1095
         try {
1095
         try {
1096
             // 获取当前班次日期
1096
             // 获取当前班次日期
1097
 //            Date shiftDate = determineShiftDate();
1097
 //            Date shiftDate = determineShiftDate();
1098
-            Date shiftDate = attendancePostRecordService.selectMaxDateByUserId(userId);
1098
+            Date shiftDate = attendancePostRecordService.selectMaxDateByUserId(null, userId);
1099
             if (shiftDate == null) {
1099
             if (shiftDate == null) {
1100
                 shiftDate = DateUtils.getNowDate();
1100
                 shiftDate = DateUtils.getNowDate();
1101
             }
1101
             }
1102
-            List<AttendancePostRecord> userRecords = attendancePostRecordService.selectTodayRecordsByUserId(userId, shiftDate);
1102
+            List<AttendancePostRecord> userRecords = attendancePostRecordService.selectTodayRecordsByUserId(null, userId, shiftDate);
1103
 
1103
 
1104
             // 检查是否有已锁定且在当前班次周期内的记录
1104
             // 检查是否有已锁定且在当前班次周期内的记录
1105
 //            return userRecords.stream()
1105
 //            return userRecords.stream()

+ 7 - 5
airport-attendance/src/main/java/com/sundot/airport/attendance/mapper/AttendancePostRecordMapper.java

@@ -64,11 +64,12 @@ public interface AttendancePostRecordMapper {
64
     /**
64
     /**
65
      * 查询指定用户当天的上岗记录
65
      * 查询指定用户当天的上岗记录
66
      *
66
      *
67
-     * @param userId 用户ID
68
-     * @param today  当天日期
67
+     * @param createBy 创建人
68
+     * @param userId   用户ID
69
+     * @param today    当天日期
69
      * @return 上岗记录集合
70
      * @return 上岗记录集合
70
      */
71
      */
71
-    public List<AttendancePostRecord> selectTodayRecordsByUserId(@Param("userId") Long userId, @Param("today") Date today);
72
+    public List<AttendancePostRecord> selectTodayRecordsByUserId(@Param("createBy") Long createBy, @Param("userId") Long userId, @Param("today") Date today);
72
 
73
 
73
     /**
74
     /**
74
      * 查询指定班次代码当天的上岗记录
75
      * 查询指定班次代码当天的上岗记录
@@ -140,8 +141,9 @@ public interface AttendancePostRecordMapper {
140
     /**
141
     /**
141
      * 查询指定用户最近的上岗记录的考勤日期
142
      * 查询指定用户最近的上岗记录的考勤日期
142
      *
143
      *
143
-     * @param userId 用户ID
144
+     * @param createBy 创建人
145
+     * @param userId   用户ID
144
      * @return 考勤日期
146
      * @return 考勤日期
145
      */
147
      */
146
-    public Date selectMaxDateByUserId(@Param("userId") Long userId);
148
+    public Date selectMaxDateByUserId(@Param("createBy") Long createBy, @Param("userId") Long userId);
147
 }
149
 }

+ 7 - 5
airport-attendance/src/main/java/com/sundot/airport/attendance/service/IAttendancePostRecordService.java

@@ -65,11 +65,12 @@ public interface IAttendancePostRecordService {
65
     /**
65
     /**
66
      * 查询指定用户当天的上岗记录
66
      * 查询指定用户当天的上岗记录
67
      *
67
      *
68
-     * @param userId 用户ID
69
-     * @param today  当天日期
68
+     * @param createBy 创建人
69
+     * @param userId   用户ID
70
+     * @param today    当天日期
70
      * @return 上岗记录集合
71
      * @return 上岗记录集合
71
      */
72
      */
72
-    public List<AttendancePostRecord> selectTodayRecordsByUserId(Long userId, Date today);
73
+    public List<AttendancePostRecord> selectTodayRecordsByUserId(Long createBy, Long userId, Date today);
73
 
74
 
74
     /**
75
     /**
75
      * 查询指定班次代码当天的上岗记录
76
      * 查询指定班次代码当天的上岗记录
@@ -143,8 +144,9 @@ public interface IAttendancePostRecordService {
143
     /**
144
     /**
144
      * 查询指定用户最近的上岗记录的考勤日期
145
      * 查询指定用户最近的上岗记录的考勤日期
145
      *
146
      *
146
-     * @param userId 用户ID
147
+     * @param createBy 创建人
148
+     * @param userId   用户ID
147
      * @return 考勤日期
149
      * @return 考勤日期
148
      */
150
      */
149
-    public Date selectMaxDateByUserId(Long userId);
151
+    public Date selectMaxDateByUserId(Long createBy, Long userId);
150
 }
152
 }

+ 9 - 7
airport-attendance/src/main/java/com/sundot/airport/attendance/service/impl/AttendancePostRecordServiceImpl.java

@@ -112,13 +112,14 @@ public class AttendancePostRecordServiceImpl implements IAttendancePostRecordSer
112
     /**
112
     /**
113
      * 查询指定用户当天的上岗记录
113
      * 查询指定用户当天的上岗记录
114
      *
114
      *
115
-     * @param userId 用户ID
116
-     * @param today  当天日期
115
+     * @param createBy 创建人
116
+     * @param userId   用户ID
117
+     * @param today    当天日期
117
      * @return 上岗记录集合
118
      * @return 上岗记录集合
118
      */
119
      */
119
     @Override
120
     @Override
120
-    public List<AttendancePostRecord> selectTodayRecordsByUserId(Long userId, Date today) {
121
-        return attendancePostRecordMapper.selectTodayRecordsByUserId(userId, today);
121
+    public List<AttendancePostRecord> selectTodayRecordsByUserId(Long createBy, Long userId, Date today) {
122
+        return attendancePostRecordMapper.selectTodayRecordsByUserId(createBy, userId, today);
122
     }
123
     }
123
 
124
 
124
     /**
125
     /**
@@ -270,11 +271,12 @@ public class AttendancePostRecordServiceImpl implements IAttendancePostRecordSer
270
     /**
271
     /**
271
      * 查询指定用户最近的上岗记录的考勤日期
272
      * 查询指定用户最近的上岗记录的考勤日期
272
      *
273
      *
273
-     * @param userId 用户ID
274
+     * @param createBy 创建人
275
+     * @param userId   用户ID
274
      * @return 考勤日期
276
      * @return 考勤日期
275
      */
277
      */
276
     @Override
278
     @Override
277
-    public Date selectMaxDateByUserId(Long userId) {
278
-        return attendancePostRecordMapper.selectMaxDateByUserId(userId);
279
+    public Date selectMaxDateByUserId(Long createBy, Long userId) {
280
+        return attendancePostRecordMapper.selectMaxDateByUserId(createBy, userId);
279
     }
281
     }
280
 }
282
 }

+ 17 - 3
airport-attendance/src/main/resources/mapper/attendance/AttendancePostRecordMapper.xml

@@ -298,8 +298,15 @@
298
     <select id="selectTodayRecordsByUserId" resultMap="AttendancePostRecordResult">
298
     <select id="selectTodayRecordsByUserId" resultMap="AttendancePostRecordResult">
299
         <include refid="selectAttendancePostRecordVo"/>
299
         <include refid="selectAttendancePostRecordVo"/>
300
         <where>
300
         <where>
301
-            user_id = #{userId}
302
-            AND DATE(attendance_date) = DATE(#{today})
301
+            <if test="createBy != null">
302
+                and create_by=#{createBy}
303
+            </if>
304
+            <if test="userId != null">
305
+                and user_id=#{userId}
306
+            </if>
307
+            <if test="today != null">
308
+                AND DATE(attendance_date) = DATE(#{today})
309
+            </if>
303
         </where>
310
         </where>
304
         ORDER BY check_in_time
311
         ORDER BY check_in_time
305
     </select>
312
     </select>
@@ -412,6 +419,13 @@
412
     <select id="selectMaxDateByUserId" resultType="java.util.Date">
419
     <select id="selectMaxDateByUserId" resultType="java.util.Date">
413
         select max(attendance_date) attendance_date
420
         select max(attendance_date) attendance_date
414
         from attendance_post_record
421
         from attendance_post_record
415
-        where user_id = #{userId}
422
+        <where>
423
+            <if test="createBy != null">
424
+                and create_by=#{createBy}
425
+            </if>
426
+            <if test="userId != null">
427
+                and user_id=#{userId}
428
+            </if>
429
+        </where>
416
     </select>
430
     </select>
417
 </mapper>
431
 </mapper>