Forráskód Böngészése

修改获取每日的请假数据

liu 2 éve
szülő
commit
8d12ee35ec

+ 9 - 1
src/main/java/com/template/controller/SmartAttendanceController.java

@@ -208,8 +208,16 @@ public class SmartAttendanceController implements SmartAttendanceControllerAPI {
                     }
                 }
             }
+            ArrayList<SmartAttendance> attendanceArrayList = new ArrayList<>();
+            for (SmartAttendance attendance : attendances) {
+//                判断是否有重复数据
+                List<SmartAttendance> smartAttendances = smartAttendanceService.duplicatesList(attendance.getStartTime(), attendance.getEndTime(), attendance.getInitiateTime());
+                if (ObjectUtils.isEmpty(smartAttendances) && smartAttendances.size() <= 0) {
+                    attendanceArrayList.add(attendance);
+                }
+            }
 
-            boolean insertResult = smartAttendanceService.insertAttendanceBatch(attendances);
+            boolean insertResult = smartAttendanceService.insertAttendanceBatch(attendanceArrayList);
             if (!insertResult) {
                 return CommonResult.fail("请假数据获取失败");
             }

+ 2 - 0
src/main/java/com/template/services/SmartAttendanceService.java

@@ -36,4 +36,6 @@ public interface SmartAttendanceService extends IService<SmartAttendance> {
     PageUtils<AskForLeaveVo> askForLeavePage(int currentPage, int pageCount,String name, String cardNo, String startTime, String endTime,Integer ifVerification,String classId);
 
     PageUtils<SmartAttendanceVo> queryPage(int currentPage, int pageCount, Integer gradeId, Integer classId, Integer status, String studentNo, String name, String startTime, String endTime);
+
+    List<SmartAttendance> duplicatesList(Date startTime, Date endTime, Date initiateTime);
 }

+ 11 - 0
src/main/java/com/template/services/impl/SmartAttendanceServiceImpl.java

@@ -114,4 +114,15 @@ public class SmartAttendanceServiceImpl extends ServiceImpl<SmartAttendanceMappe
         IPage<SmartAttendanceVo> datas = smartAttendanceMapper.queryPage(page,gradeId,classId,status,studentNo,name,startTime,endTime);
         return new PageUtils(datas);
     }
+
+    @Override
+    public List<SmartAttendance> duplicatesList(Date startTime, Date endTime, Date initiateTime) {
+        LambdaQueryWrapper<SmartAttendance> wrapper=new LambdaQueryWrapper<>();
+        wrapper.eq(SmartAttendance::getStartTime,startTime)
+                .eq(SmartAttendance::getEndTime,endTime)
+                .eq(SmartAttendance::getInitiateTime,initiateTime);
+        List<SmartAttendance> list = this.list(wrapper);
+
+        return list;
+    }
 }