|
@@ -102,7 +102,8 @@ public class UnmeasureTemperatureAlarmTask {
|
|
|
|
|
|
CompanyInfo companyInfo = companyInfoService.get(companyId);
|
|
|
|
|
|
- workAttendanceService.deleteByCompanyCodeAndDate(companyInfo.getCode() + "%",startDate,endDate);
|
|
|
+ //只删除设备测温打卡记录
|
|
|
+ workAttendanceService.deleteByCompanyCodeAndDate(companyInfo.getCode() + "%",startDate,endDate, "1");
|
|
|
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
|
|
|
|
@@ -150,7 +151,7 @@ public class UnmeasureTemperatureAlarmTask {
|
|
|
companyCode += "%";
|
|
|
}
|
|
|
|
|
|
- //todo 查询当前时间段学生测温情况
|
|
|
+ //todo 查询当前时间段打卡情况
|
|
|
List<PersonInfo> attendanceList = personDeviceLogService.queryAttendanceList(companyCode,startTime.toDate(),endTime.toDate());
|
|
|
|
|
|
for (PersonInfo personInfo: attendanceList) {
|
|
@@ -160,6 +161,7 @@ public class UnmeasureTemperatureAlarmTask {
|
|
|
workAttendance.setAlarmConfigId(alarmConfig.getId());
|
|
|
workAttendance.setCreateTime(new Date());
|
|
|
workAttendance.setDelFlag(false);
|
|
|
+ workAttendance.setSources("1");
|
|
|
|
|
|
List<PersonDeviceLog> logList = personDeviceLogService.findByPersonAndDate(personInfo.getId(),startTime.toDate(),endTime.toDate());
|
|
|
|
|
@@ -359,16 +361,22 @@ public class UnmeasureTemperatureAlarmTask {
|
|
|
List<PersonInfo> attendanceList = personDeviceLogService.queryUnAttendanceList(companyCode, startDate, endDate);
|
|
|
|
|
|
for (PersonInfo personInfo : attendanceList) {
|
|
|
- WorkAttendance workAttendance = new WorkAttendance();
|
|
|
- workAttendance.setId(UUID.randomUUID().toString());
|
|
|
- workAttendance.setPersonId(personInfo.getId());
|
|
|
- workAttendance.setAlarmConfigId(alarmConfig.getId());
|
|
|
- workAttendance.setCreateTime(new Date());
|
|
|
- workAttendance.setRecordTime(attendanceDate);
|
|
|
- workAttendance.setResult(result);
|
|
|
- workAttendance.setDelFlag(false);
|
|
|
-
|
|
|
- affectCount+= workAttendanceService.insert(workAttendance);
|
|
|
+ //当前考勤时间是否有外勤打卡
|
|
|
+ List<WorkAttendance> workAttendances = workAttendanceService.findByPersonIdAndDate(personInfo.getId() , startDate, endDate);
|
|
|
+
|
|
|
+ if (workAttendances.size()==0) {
|
|
|
+ //没有机器打卡和外勤打卡记录,则算缺卡
|
|
|
+ WorkAttendance workAttendance = new WorkAttendance();
|
|
|
+ workAttendance.setId(UUID.randomUUID().toString());
|
|
|
+ workAttendance.setPersonId(personInfo.getId());
|
|
|
+ workAttendance.setAlarmConfigId(alarmConfig.getId());
|
|
|
+ workAttendance.setCreateTime(new Date());
|
|
|
+ workAttendance.setRecordTime(attendanceDate);
|
|
|
+ workAttendance.setResult(result);
|
|
|
+ workAttendance.setDelFlag(false);
|
|
|
+
|
|
|
+ affectCount += workAttendanceService.insert(workAttendance);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
return affectCount;
|