dzx před 1 rokem
rodič
revize
94f69186fd

+ 4 - 0
src/main/java/com/xjrsoft/module/attendance/controller/StatisticsController.java

@@ -168,11 +168,15 @@ public class StatisticsController {
 
             //通过考勤规则和实到人数信息,计算迟到的
             Long lateCount = 0L;
+            Integer playTruantCount = 0;
             for (StudentOutInRecord outInRecord : outInRecords) {
                 if("迟到".equals(outInRecord.getAttendanceStatus())){
                     lateCount ++;
+                }else if("旷课".equals(outInRecord.getAttendanceStatus())){
+                    playTruantCount ++;
                 }
             }
+            statisticsVo.setPlayTruantCount(playTruantCount);
             statisticsVo.setLateCount(lateCount);
 
 

+ 4 - 1
src/main/java/com/xjrsoft/module/attendance/controller/StudentStatisticsController.java

@@ -114,15 +114,18 @@ public class StudentStatisticsController {
                 }
                 record.setActualCount(actualCount);
 
-                Integer lateCount = 0;
+                Integer lateCount = 0, playTruantCount = 0;
                 for (StudentOutInRecordVo outInRecord : notStayMap.get(record.getId())) {
                     if(outInRecord.getStatus() == 0){
                         continue;
                     }
                     if("迟到".equals(outInRecord.getAttendanceStatus())){
                         lateCount ++;
+                    }else if("旷课".equals(outInRecord.getAttendanceStatus())){
+                        playTruantCount ++;
                     }
                 }
+                record.setPlayTruantCount(playTruantCount);
                 record.setLateCount(lateCount);
 
                 //最后通过总人数-实到人数-请假人数计算出缺勤人数

+ 3 - 0
src/main/java/com/xjrsoft/module/attendance/vo/ClassStatisticsVo.java

@@ -36,6 +36,9 @@ public class ClassStatisticsVo {
     @ApiModelProperty("迟到人数")
     private Integer lateCount;
 
+    @ApiModelProperty("旷课人数")
+    private Integer playTruantCount;
+
     @ApiModelProperty("实到人数")
     private Integer actualCount;
 

+ 2 - 0
src/main/java/com/xjrsoft/module/attendance/vo/TeacherStatisticsVo.java

@@ -40,4 +40,6 @@ public class TeacherStatisticsVo {
     @ApiModelProperty("出勤率")
     private Double attendanceRate;
 
+    @ApiModelProperty("旷课人数")
+    private Integer playTruantCount;
 }

+ 9 - 0
src/main/java/com/xjrsoft/module/hikvision/util/Out_In_RecordUtil.java

@@ -226,10 +226,19 @@ public class Out_In_RecordUtil {
                 }else{//进
                     if(recordTime.isBefore(amEndTime) && recordTime.isAfter(amStartTime)){
                         attendanceStatus = "迟到";
+                        if(recordTime.isAfter(amStartTime.plusMinutes(40))){
+                            attendanceStatus = "旷课";
+                        }
                     }else if(recordTime.isBefore(pmEndTime) && recordTime.isAfter(pmStartTime)){
                         attendanceStatus = "迟到";
+                        if(recordTime.isAfter(pmStartTime.plusMinutes(40))){
+                            attendanceStatus = "旷课";
+                        }
                     }else if(recordTime.isBefore(eveningEndTime) && recordTime.isAfter(eveningStartTime)){
                         attendanceStatus = "迟到";
+                        if(recordTime.isAfter(eveningStartTime.plusMinutes(40))){
+                            attendanceStatus = "旷课";
+                        }
                     }else{
                         attendanceStatus = "到校";
                     }