浏览代码

resolve conflict

brealinxx 1 年之前
父节点
当前提交
bc80ad2feb

+ 8 - 3
src/main/java/com/xjrsoft/module/attendance/controller/StatisticsController.java

@@ -113,7 +113,7 @@ public class StatisticsController {
             statisticsVo.setAbsenteeismCount(statisticsVo.getAllCount() - statisticsVo.getLeaveCount() - statisticsVo.getActualCount());
 
             //计算出勤率
-            BigDecimal divide = BigDecimal.valueOf(statisticsVo.getActualCount()).divide(BigDecimal.valueOf(statisticsVo.getAllCount()), 2, RoundingMode.HALF_UP);
+            BigDecimal divide = BigDecimal.valueOf(statisticsVo.getActualCount()).divide(BigDecimal.valueOf(statisticsVo.getAllCount()), 4, RoundingMode.HALF_UP);
             statisticsVo.setAttendanceRate(divide.doubleValue());
         }
 
@@ -179,8 +179,13 @@ public class StatisticsController {
             statisticsVo.setAbsenteeismCount(statisticsVo.getAllCount() - statisticsVo.getLeaveCount() - statisticsVo.getActualCount());
 
             //计算出勤率
-            BigDecimal divide = BigDecimal.valueOf(statisticsVo.getActualCount()).divide(BigDecimal.valueOf(statisticsVo.getAllCount()), 2, RoundingMode.HALF_UP);
-            statisticsVo.setAttendanceRate(divide.doubleValue());
+            if(statisticsVo.getAllCount() != null && statisticsVo.getAllCount() != 0){
+                BigDecimal divide = BigDecimal.valueOf(statisticsVo.getActualCount()).divide(BigDecimal.valueOf(statisticsVo.getAllCount()), 4, RoundingMode.HALF_UP);
+                statisticsVo.setAttendanceRate(divide.doubleValue());
+            }else{
+                statisticsVo.setAttendanceRate(0D);
+            }
+
         }
 
         return RT.ok(statisticsVo);

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

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import com.xjrsoft.common.enums.ArchivesStatusEnum;
 import com.xjrsoft.common.model.result.RT;
 import com.xjrsoft.common.page.ConventPage;
 import com.xjrsoft.common.page.PageOutput;
@@ -105,7 +106,13 @@ public class StudentStatisticsController {
                     leaveCount = classLeaveCount.get(record.getId());
                 }
                 record.setLeaveCount(leaveCount);
-                record.setActualCount(notStayMap.get(record.getId()).size());
+                int actualCount = 0;
+                for (StudentOutInRecordVo outInRecordVo : notStayMap.get(record.getId())) {
+                    if(outInRecordVo.getStatus() == 1){
+                        actualCount ++;
+                    }
+                }
+                record.setActualCount(actualCount);
 
                 Integer lateCount = 0;
                 for (StudentOutInRecordVo outInRecord : notStayMap.get(record.getId())) {
@@ -122,7 +129,7 @@ public class StudentStatisticsController {
                 record.setAbsenteeismCount(record.getStudentCount() - record.getLeaveCount() - record.getActualCount());
 
                 //计算出勤率
-                BigDecimal divide = BigDecimal.valueOf(record.getActualCount()).divide(BigDecimal.valueOf(record.getStudentCount()), 2, RoundingMode.HALF_UP);
+                BigDecimal divide = BigDecimal.valueOf(record.getActualCount()).divide(BigDecimal.valueOf(record.getStudentCount()), 4, RoundingMode.HALF_UP);
                 record.setAttendanceRate(divide.doubleValue());
             }
         }
@@ -141,6 +148,7 @@ public class StudentStatisticsController {
                 .like(StrUtil.isNotEmpty(dto.getCredentialNumber()), User::getCredentialNumber, dto.getCredentialNumber())
                 .eq(StrUtil.isNotEmpty(dto.getStduyStatus()), BaseStudentSchoolRoll::getStduyStatus, dto.getStduyStatus())
                 .eq(ObjectUtil.isNotNull(dto.getClassId()), BaseStudentSchoolRoll::getClassId, dto.getClassId())
+                .eq(BaseStudentSchoolRoll::getArchivesStatus, ArchivesStatusEnum.FB2901.getCode())
                 .selectAs(BaseClass::getName, StudentStatisticsPageVo::getClassName)
                 .select("t3.name", StudentStatisticsPageVo::getTeacherName)
                 .selectAs(User::getName, StudentStatisticsPageVo::getStudentName)
@@ -257,7 +265,7 @@ public class StudentStatisticsController {
                 record.setAbsenteeismCount(record.getStudentCount() - record.getLeaveCount() - record.getActualCount());
 
                 //计算出勤率
-                BigDecimal divide = BigDecimal.valueOf(record.getActualCount()).divide(BigDecimal.valueOf(record.getStudentCount()), 2, RoundingMode.HALF_UP);
+                BigDecimal divide = BigDecimal.valueOf(record.getActualCount()).divide(BigDecimal.valueOf(record.getStudentCount()), 4, RoundingMode.HALF_UP);
                 record.setAttendanceRate(divide.doubleValue());
             }
         }
@@ -328,7 +336,7 @@ public class StudentStatisticsController {
                 record.setAbsenteeismCount(record.getStudentCount() - record.getLeaveCount() - record.getActualCount());
 
                 //计算出勤率
-                BigDecimal divide = BigDecimal.valueOf(record.getActualCount()).divide(BigDecimal.valueOf(record.getStudentCount()), 2, RoundingMode.HALF_UP);
+                BigDecimal divide = BigDecimal.valueOf(record.getActualCount()).divide(BigDecimal.valueOf(record.getStudentCount()), 4, RoundingMode.HALF_UP);
                 record.setAttendanceRate(divide.doubleValue());
             }
         }

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

@@ -185,7 +185,7 @@ public class Out_In_RecordUtil {
         List<AttendanceRuleDetails> ruleDetailsList = use.query(sql, AttendanceRuleDetails.class);
         if(!ruleDetailsList.isEmpty()){
             AttendanceRuleDetails ruleDetails = ruleDetailsList.get(0);
-            if(ruleDetails.getIsAttendance() != null && ruleDetails.getIsAttendance() == 0){
+            if(ruleDetails.getIsAllowInOutSchool() != null && ruleDetails.getIsAllowInOutSchool() == 0){
                 attendanceStatus = "不考勤";
             }else{
                 LocalDateTime amStartTime = null, amEndTime = null, pmStartTime = null, pmEndTime = null, eveningStartTime = null, eveningEndTime = null;

+ 4 - 2
src/main/java/com/xjrsoft/module/outint/controller/CarOutInRecordController.java

@@ -9,11 +9,13 @@ import com.github.yulichang.toolkit.MPJWrappers;
 import com.xjrsoft.common.model.result.RT;
 import com.xjrsoft.common.page.ConventPage;
 import com.xjrsoft.common.page.PageOutput;
+import com.xjrsoft.common.utils.LocalDateTimeUtil;
 import com.xjrsoft.common.utils.VoToColumnUtil;
 import com.xjrsoft.module.outint.dto.AddCarOutInRecordDto;
 import com.xjrsoft.module.outint.dto.CarOutInRecordPageDto;
 import com.xjrsoft.module.outint.dto.UpdateCarOutInRecordDto;
 import com.xjrsoft.module.outint.entity.CarOutInRecord;
+import com.xjrsoft.module.outint.entity.StudentOutInRecord;
 import com.xjrsoft.module.outint.service.ICarOutInRecordService;
 import com.xjrsoft.module.outint.vo.CarOutInRecordPageVo;
 import com.xjrsoft.module.outint.vo.CarOutInRecordVo;
@@ -58,8 +60,8 @@ public class CarOutInRecordController {
         IPage<CarOutInRecordPageVo> page = carOutInRecordService.selectJoinListPage(ConventPage.getPage(dto),CarOutInRecordPageVo.class,
                 MPJWrappers.<CarOutInRecord>lambdaJoin()
                         .orderByDesc(CarOutInRecord::getId)
-                        .ge(ObjectUtil.isNotNull(dto.getStartTime()),CarOutInRecord::getRecordTime,dto.getStartTime())
-                        .le(ObjectUtil.isNotNull(dto.getEndTime()),CarOutInRecord::getRecordTime,dto.getEndTime())
+                        .disableSubLogicDel()
+                        .between((ObjectUtil.isNotNull(dto.getStartTime()) && ObjectUtil.isNotNull(dto.getStartTime())), StudentOutInRecord::getRecordTime, LocalDateTimeUtil.format(dto.getStartTime(),"yyyy-MM-dd")+" 00:00:00", LocalDateTimeUtil.format(dto.getEndTime(),"yyyy-MM-dd")+" 23:59:59")
                         .eq(ObjectUtil.isNotNull(dto.getCategory()), CarOutInRecord::getCategory, dto.getCategory())
                         .eq(ObjectUtil.isNotNull(dto.getStatus()), CarOutInRecord::getStatus, dto.getStatus())
                         .eq(ObjectUtil.isNotNull(dto.getVehicleType()), CarMessageApply::getVehicleType, dto.getVehicleType())

+ 1 - 2
src/main/java/com/xjrsoft/module/outint/controller/StudentOutInRecordController.java

@@ -65,8 +65,7 @@ public class StudentOutInRecordController {
                 .like(StrUtil.isNotBlank(dto.getName()), XjrUser::getName,dto.getName())
                 .like(StrUtil.isNotBlank(dto.getIdentityCard()), XjrUser::getCredentialNumber,dto.getIdentityCard())
                .eq(StrUtil.isNotBlank(dto.getStduyStatus()), BaseStudentSchoolRoll::getStduyStatus,dto.getStduyStatus())
-                .ge(ObjectUtil.isNotNull(dto.getStartTime()), StudentOutInRecord::getRecordTime,LocalDateTimeUtil.format(dto.getStartTime(),"yyyy-MM-dd")+" 00:00:00")
-                .le(ObjectUtil.isNotNull(dto.getStartTime()),StudentOutInRecord::getRecordTime,LocalDateTimeUtil.format(dto.getStartTime(),"yyyy-MM-dd")+" 23:59:59")
+                .between((ObjectUtil.isNotNull(dto.getStartTime()) && ObjectUtil.isNotNull(dto.getStartTime())), StudentOutInRecord::getRecordTime, LocalDateTimeUtil.format(dto.getStartTime(),"yyyy-MM-dd")+" 00:00:00", LocalDateTimeUtil.format(dto.getStartTime(),"yyyy-MM-dd")+" 23:59:59")
                 .eq(ObjectUtil.isNotEmpty(dto.getStatus()), StudentOutInRecord::getStatus, dto.getStatus())
                 .eq(ObjectUtil.isNotNull(dto.getClassId())&&dto.getClassId()!=0, StudentOutInRecord::getClassId, dto.getClassId())
                 .eq(ObjectUtil.isNotNull(dto.getUserId())&&dto.getUserId()!=0, StudentOutInRecord::getUserId, dto.getUserId())

+ 1 - 2
src/main/java/com/xjrsoft/module/outint/controller/TeacherOutInRecordController.java

@@ -63,8 +63,7 @@ public class TeacherOutInRecordController {
                 .disableSubLogicDel()
                 .orderByDesc(TeacherOutInRecord::getId)
                 .like(StrUtil.isNotBlank(dto.getName()), XjrUser::getName,dto.getName())
-                .ge(ObjectUtil.isNotNull(dto.getStartTime()),TeacherOutInRecord::getRecordTime, LocalDateTimeUtil.format(dto.getStartTime(),"yyyy-MM-dd")+" 00:00:00")
-                .le(ObjectUtil.isNotNull(dto.getStartTime()),TeacherOutInRecord::getRecordTime,LocalDateTimeUtil.format(dto.getStartTime(),"yyyy-MM-dd")+" 23:59:59")
+                .between((ObjectUtil.isNotNull(dto.getStartTime()) && ObjectUtil.isNotNull(dto.getStartTime())), StudentOutInRecord::getRecordTime, LocalDateTimeUtil.format(dto.getStartTime(),"yyyy-MM-dd")+" 00:00:00", LocalDateTimeUtil.format(dto.getStartTime(),"yyyy-MM-dd")+" 23:59:59")
                 .eq(ObjectUtil.isNotEmpty(dto.getStatus()), TeacherOutInRecord::getStatus, dto.getStatus())
                 .eq(ObjectUtil.isNotNull(dto.getUserId())&&dto.getUserId()!=0, StudentOutInRecord::getUserId, dto.getUserId())
                 .select(TeacherOutInRecord::getId)

+ 3 - 2
src/main/java/com/xjrsoft/module/outint/controller/VisitorOutInRecordController.java

@@ -9,11 +9,13 @@ import com.github.yulichang.toolkit.MPJWrappers;
 import com.xjrsoft.common.model.result.RT;
 import com.xjrsoft.common.page.ConventPage;
 import com.xjrsoft.common.page.PageOutput;
+import com.xjrsoft.common.utils.LocalDateTimeUtil;
 import com.xjrsoft.common.utils.VoToColumnUtil;
 import com.xjrsoft.module.organization.entity.Department;
 import com.xjrsoft.module.outint.dto.AddVisitorOutInRecordDto;
 import com.xjrsoft.module.outint.dto.UpdateVisitorOutInRecordDto;
 import com.xjrsoft.module.outint.dto.VisitorOutInRecordPageDto;
+import com.xjrsoft.module.outint.entity.StudentOutInRecord;
 import com.xjrsoft.module.outint.entity.VisitorOutInRecord;
 import com.xjrsoft.module.outint.service.IVisitorOutInRecordService;
 import com.xjrsoft.module.outint.vo.VisitorOutInRecordPageVo;
@@ -63,8 +65,7 @@ public class VisitorOutInRecordController {
                         .like(StrUtil.isNotBlank(dto.getIdentityCard()), ReservationSchoolPeople::getIdentityCard,dto.getIdentityCard())
                         .eq(ObjectUtil.isNotNull(dto.getDeptId())&&dto.getDeptId()!=0, ReservationSchool::getDeptId, dto.getDeptId())
                         .eq(ObjectUtil.isNotNull(dto.getRespondentUserId())&&dto.getRespondentUserId()!=0, ReservationSchool::getRespondentUserId, dto.getRespondentUserId())
-                        .ge(ObjectUtil.isNotNull(dto.getStartTime()),VisitorOutInRecord::getRecordTime,dto.getStartTime())
-                        .le(ObjectUtil.isNotNull(dto.getEndTime()),VisitorOutInRecord::getRecordTime,dto.getEndTime())
+                        .between((ObjectUtil.isNotNull(dto.getStartTime()) && ObjectUtil.isNotNull(dto.getStartTime())), StudentOutInRecord::getRecordTime, LocalDateTimeUtil.format(dto.getStartTime(),"yyyy-MM-dd")+" 00:00:00", LocalDateTimeUtil.format(dto.getEndTime(),"yyyy-MM-dd")+" 23:59:59")
                         .eq(ObjectUtil.isNotNull(dto.getStatus()), VisitorOutInRecord::getStatus, dto.getStatus())
                         .like(StrUtil.isNotBlank(dto.getPlateNumber()),ReservationSchoolPeople::getPlateNumber,dto.getPlateNumber())
                         .select(VisitorOutInRecord.class,x -> VoToColumnUtil.fieldsToColumns(VisitorOutInRecordPageVo.class).contains(x.getProperty()))

+ 1 - 1
src/main/java/com/xjrsoft/module/outint/vo/CarOutInRecordPageVo.java

@@ -63,7 +63,7 @@ public class CarOutInRecordPageVo {
     * 人脸照片
     */
     @ApiModelProperty("人脸照片")
-    private Long facePhoto;
+    private String facePhoto;
     /**
     * 进出状态(0:进 1:出)
     */

+ 1 - 0
src/main/java/com/xjrsoft/module/personnel/controller/CarMessageApplyController.java

@@ -72,6 +72,7 @@ public class CarMessageApplyController {
                 .orderByDesc(CarMessageApply::getId)
                 .disableSubLogicDel()
                 .like(StrUtil.isNotBlank(dto.getName()), XjrUser::getName,dto.getName())
+                .like(StrUtil.isNotBlank(dto.getCarNumber()), CarMessageApply::getCarNumber,dto.getCarNumber())
                 .eq(StrUtil.isNotBlank(dto.getUserName()), XjrUser::getUserName,dto.getUserName())
                 .like(StrUtil.isNotBlank(dto.getMobile()),XjrUser::getMobile,dto.getMobile())
                 .eq(ObjectUtil.isNotNull(dto.getStatus())&&dto.getStatus()!=0, CarMessageApply::getStatus,dto.getStatus())

+ 6 - 0
src/main/java/com/xjrsoft/module/personnel/dto/CarMessageApplyPageDto.java

@@ -47,4 +47,10 @@ public class CarMessageApplyPageDto extends PageInput {
      */
     @ApiModelProperty("状态(0:未结束 1:结束)")
     private Integer status;
+
+    /**
+     * 车牌号
+     */
+    @ApiModelProperty("车牌号")
+    private String carNumber;
 }

+ 1 - 1
src/main/java/com/xjrsoft/module/student/service/impl/StudentLeaveServiceImpl.java

@@ -98,7 +98,7 @@ public class StudentLeaveServiceImpl extends MPJBaseServiceImpl<StudentLeaveMapp
         List<StudentLeave> leaveList = this.baseMapper.getLeaveList(startTime, endTime);
         Map<Long, StudentLeave> result = new HashMap<>();
         for (StudentLeave studentLeave : leaveList) {
-            result.put(studentLeave.getStudentUserId(), studentLeave);
+            result.put(studentLeave.getClassId(), studentLeave);
         }
         return result;
     }

+ 8 - 2
src/main/java/com/xjrsoft/module/teacher/controller/TeacherbaseManagerController.java

@@ -71,7 +71,7 @@ public class TeacherbaseManagerController {
                 .like(StrUtil.isNotBlank(dto.getMobile()),XjrUser::getMobile,dto.getMobile())
                 .like(StrUtil.isNotBlank(dto.getName()),XjrUser::getName,dto.getName())
                 .like(StrUtil.isNotBlank(dto.getEmail()),XjrUser::getEmail,dto.getEmail())
-                .eq(ObjectUtil.isNotNull(dto.getDepartmentId()), UserDeptRelation::getDeptId, dto.getDepartmentId())
+
                 .orderByDesc(XjrUser::getId)
                 .select(XjrUser::getId)
                 .select(XjrUser.class,x -> VoToColumnUtil.fieldsToColumns(XjrUserPageVo.class).contains(x.getProperty()))
@@ -79,9 +79,15 @@ public class TeacherbaseManagerController {
                 .leftJoin(DictionaryDetail.class,DictionaryDetail::getCode,BaseTeacher::getJobState,ext->ext.selectAs(DictionaryDetail::getName, XjrUserPageVo::getJobState))
                 .leftJoin(DictionaryDetail.class,DictionaryDetail::getCode,XjrUser::getCredentialType,ext->ext.selectAs(DictionaryDetail::getName, XjrUserPageVo::getCredentialType))
                 .leftJoin(DictionaryDetail.class,DictionaryDetail::getCode,BaseTeacher::getEmployWay,ext->ext.selectAs(DictionaryDetail::getName, XjrUserPageVo::getEmployWay))
-                .leftJoin(UserDeptRelation.class, UserDeptRelation::getUserId, XjrUser::getId)
+
                 .selectAsClass(BaseTeacher.class, XjrUserPageVo.class);
 
+        if(ObjectUtil.isAllNotEmpty(dto.getDepartmentId())&&dto.getDepartmentId()!=0){
+            queryWrapper
+                    .eq(UserDeptRelation::getDeptId, dto.getDepartmentId())
+                    .leftJoin(UserDeptRelation.class, UserDeptRelation::getUserId, XjrUser::getId);
+        }
+
         IPage<XjrUserPageVo> page = teacherbaseManagerService.selectJoinListPage(ConventPage.getPage(dto),XjrUserPageVo.class, queryWrapper);
 
         PageOutput<XjrUserPageVo> pageOutput = ConventPage.getPageOutput(page, XjrUserPageVo.class);

+ 2 - 2
src/main/resources/mapper/base/BaseClass.xml

@@ -85,11 +85,11 @@
         (SELECT COUNT(*) FROM base_student_school_roll c1
         INNER JOIN xjr_user c2 ON c1.user_id = c2.id
         WHERE c1.delete_mark = 0 AND c1.delete_mark = 0
-        AND c1.class_id = t1.id AND c1.archives_status = 'FB2901' AND c1.stduy_status = 'FB3001') AS stay_count,
+        AND c1.class_id = t1.id AND c1.archives_status = 'FB2901' AND c1.stduy_status = 'FB3002') AS stay_count,
         (SELECT COUNT(*) FROM base_student_school_roll c1
         INNER JOIN xjr_user c2 ON c1.user_id = c2.id
         WHERE c1.delete_mark = 0 AND c1.delete_mark = 0
-        AND c1.class_id = t1.id AND c1.archives_status = 'FB2901' AND c1.stduy_status = 'FB3002') AS not_stay_count FROM base_class t1
+        AND c1.class_id = t1.id AND c1.archives_status = 'FB2901' AND c1.stduy_status = 'FB3001') AS not_stay_count FROM base_class t1
         LEFT JOIN xjr_user t2 ON t1.teacher_id = t2.id
         WHERE t1.delete_mark = 0
         <if test="dto.classId != null">

+ 3 - 3
src/main/resources/mapper/outin/StudentOutInRecordMapper.xml

@@ -23,21 +23,21 @@
     <select id="getNotStayList" resultType="com.xjrsoft.module.outint.vo.StudentOutInRecordVo">
         SELECT t1.* FROM student_out_in_record t1
         INNER JOIN base_student_school_roll t2 ON t1.user_id = t2.user_id
-        WHERE t1.delete_mark = 0 AND t1.status = 0 AND t2.delete_mark = 0
+        WHERE t1.delete_mark = 0 AND t2.delete_mark = 0
         AND t2.stduy_status = 'FB3002'
         AND t1.record_time BETWEEN #{startTime} AND #{endTime}
     </select>
     <select id="getStayList" resultType="com.xjrsoft.module.outint.vo.StudentOutInRecordVo">
         SELECT t1.* FROM student_out_in_record t1
         INNER JOIN base_student_school_roll t2 ON t1.user_id = t2.user_id
-        WHERE t1.delete_mark = 0 AND t1.status = 0 AND t2.delete_mark = 0
+        WHERE t1.delete_mark = 0 AND t2.delete_mark = 0
         AND t2.stduy_status = 'FB3001'
         AND t1.record_time BETWEEN #{startTime} AND #{endTime}
     </select>
     <select id="getList" resultType="com.xjrsoft.module.outint.vo.StudentOutInRecordVo">
         SELECT t1.* FROM student_out_in_record t1
         INNER JOIN base_student_school_roll t2 ON t1.user_id = t2.user_id
-        WHERE t1.delete_mark = 0 AND t1.status = 0 AND t2.delete_mark = 0
+        WHERE t1.delete_mark = 0 AND t2.delete_mark = 0
         AND t1.record_time BETWEEN #{startTime} AND #{endTime}
     </select>
 </mapper>

+ 14 - 14
src/main/resources/mapper/student/StudentLeaveMapper.xml

@@ -4,25 +4,25 @@
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.xjrsoft.module.student.mapper.StudentLeaveMapper">
     <select id="getLeaveCount" resultType="java.lang.Long">
-        SELECT COUNT(*) FROM student_leave t1
+        SELECT COUNT(*) as count FROM student_leave t1
         INNER JOIN xjr_user t2 ON t1.student_user_id = t2.id
         WHERE t1.status = 1 AND t2.delete_mark = 0
         AND (
-        (start_date BETWEEN #{startTime} and #{endTime})
-        OR (end_date BETWEEN #{startTime} and #{endTime})
-        OR (start_date > #{startTime} and #{endTime} > end_date)
-        OR (#{startTime} > start_date and end_date > #{endTime})
+                (start_date BETWEEN DATE_FORMAT(#{startTime}, '%Y-%m-%d') and DATE_FORMAT(#{endTime}, '%Y-%m-%d'))
+                OR (end_date BETWEEN DATE_FORMAT(#{startTime}, '%Y-%m-%d') and DATE_FORMAT(#{endTime}, '%Y-%m-%d'))
+                OR (start_date > DATE_FORMAT(#{startTime}, '%Y-%m-%d') and DATE_FORMAT(#{endTime}, '%Y-%m-%d') > end_date)
+                OR (DATE_FORMAT(#{startTime}, '%Y-%m-%d') > start_date and end_date > DATE_FORMAT(#{endTime}, '%Y-%m-%d'))
         )
     </select>
     <select id="getClassLeaveCount" resultType="com.xjrsoft.module.outint.vo.IdCountVo">
-        SELECT t1.class_id as id, COUNT(*) FROM student_leave t1
+        SELECT t1.class_id as id, COUNT(*) as count FROM student_leave t1
         INNER JOIN xjr_user t2 ON t1.student_user_id = t2.id
         WHERE t1.status = 1 AND t2.delete_mark = 0
         AND (
-        (start_date BETWEEN #{startTime} and #{endTime})
-        OR (end_date BETWEEN #{startTime} and #{endTime})
-        OR (start_date > #{startTime} and #{endTime} > end_date)
-        OR (#{startTime} > start_date and end_date > #{endTime})
+        (start_date BETWEEN DATE_FORMAT(#{startTime}, '%Y-%m-%d') and DATE_FORMAT(#{endTime}, '%Y-%m-%d'))
+        OR (end_date BETWEEN DATE_FORMAT(#{startTime}, '%Y-%m-%d') and DATE_FORMAT(#{endTime}, '%Y-%m-%d'))
+        OR (start_date > DATE_FORMAT(#{startTime}, '%Y-%m-%d') and DATE_FORMAT(#{endTime}, '%Y-%m-%d') > end_date)
+        OR (DATE_FORMAT(#{startTime}, '%Y-%m-%d') > start_date and end_date > DATE_FORMAT(#{endTime}, '%Y-%m-%d'))
         ) group by t1.class_id
     </select>
     <select id="getLeaveList" resultType="com.xjrsoft.module.student.entity.StudentLeave">
@@ -30,10 +30,10 @@
         INNER JOIN xjr_user t2 ON t1.student_user_id = t2.id
         WHERE t1.status = 1 AND t2.delete_mark = 0
         AND (
-        (start_date BETWEEN #{startTime} and #{endTime})
-        OR (end_date BETWEEN #{startTime} and #{endTime})
-        OR (start_date > #{startTime} and #{endTime} > end_date)
-        OR (#{startTime} > start_date and end_date > #{endTime})
+                (start_date BETWEEN DATE_FORMAT(#{startTime}, '%Y-%m-%d') and DATE_FORMAT(#{endTime}, '%Y-%m-%d'))
+                OR (end_date BETWEEN DATE_FORMAT(#{startTime}, '%Y-%m-%d') and DATE_FORMAT(#{endTime}, '%Y-%m-%d'))
+                OR (start_date > DATE_FORMAT(#{startTime}, '%Y-%m-%d') and DATE_FORMAT(#{endTime}, '%Y-%m-%d') > end_date)
+                OR (DATE_FORMAT(#{startTime}, '%Y-%m-%d') > start_date and end_date > DATE_FORMAT(#{endTime}, '%Y-%m-%d'))
         )
     </select>
 </mapper>

+ 3 - 3
src/test/java/com/xjrsoft/module/job/HikvisionBaseDataTaskTest.java

@@ -104,9 +104,9 @@ class HikvisionBaseDataTaskTest {
 //        String carTableName = "car_message_apply";
 //        selectCar(use, carTableName);
 
-        outInRecordUtil.GetVehicleRecord(use,faceImportMapper);
-//        selecAllPersonById(use);
-        selectResource(use);
+        outInRecordUtil.GetTeacherAndStudentRecords(use,faceImportMapper);
+////        selecAllPersonById(use);
+//        selectResource(use);
     }
 
     public static void selectCar(Db db, String tableName) throws SQLException {