|
@@ -11,7 +11,9 @@ import com.xjrsoft.common.page.ConventPage;
|
|
|
import com.xjrsoft.common.page.PageOutput;
|
|
import com.xjrsoft.common.page.PageOutput;
|
|
|
import com.xjrsoft.common.utils.VoToColumnUtil;
|
|
import com.xjrsoft.common.utils.VoToColumnUtil;
|
|
|
import com.xjrsoft.module.attendance.dto.TeacherDetailsDto;
|
|
import com.xjrsoft.module.attendance.dto.TeacherDetailsDto;
|
|
|
|
|
+import com.xjrsoft.module.attendance.entity.AttendanceMessageSet;
|
|
|
import com.xjrsoft.module.attendance.service.IAttendanceRuleCategoryService;
|
|
import com.xjrsoft.module.attendance.service.IAttendanceRuleCategoryService;
|
|
|
|
|
+import com.xjrsoft.module.attendance.vo.AttendanceMessageSetPageVo;
|
|
|
import com.xjrsoft.module.attendance.vo.AttendanceRuleDetailsUserVo;
|
|
import com.xjrsoft.module.attendance.vo.AttendanceRuleDetailsUserVo;
|
|
|
import com.xjrsoft.module.attendance.vo.TeacherStatisticsPageVo;
|
|
import com.xjrsoft.module.attendance.vo.TeacherStatisticsPageVo;
|
|
|
import com.xjrsoft.module.holiday.entity.HolidayDate;
|
|
import com.xjrsoft.module.holiday.entity.HolidayDate;
|
|
@@ -20,8 +22,11 @@ import com.xjrsoft.module.organization.entity.Department;
|
|
|
import com.xjrsoft.module.organization.entity.User;
|
|
import com.xjrsoft.module.organization.entity.User;
|
|
|
import com.xjrsoft.module.organization.entity.UserDeptRelation;
|
|
import com.xjrsoft.module.organization.entity.UserDeptRelation;
|
|
|
import com.xjrsoft.module.organization.service.IUserService;
|
|
import com.xjrsoft.module.organization.service.IUserService;
|
|
|
|
|
+import com.xjrsoft.module.outint.entity.CarOutInRecord;
|
|
|
import com.xjrsoft.module.outint.entity.TeacherOutInRecord;
|
|
import com.xjrsoft.module.outint.entity.TeacherOutInRecord;
|
|
|
|
|
+import com.xjrsoft.module.outint.service.ICarOutInRecordService;
|
|
|
import com.xjrsoft.module.outint.service.ITeacherOutInRecordService;
|
|
import com.xjrsoft.module.outint.service.ITeacherOutInRecordService;
|
|
|
|
|
+import com.xjrsoft.module.personnel.entity.CarMessageApply;
|
|
|
import com.xjrsoft.module.teacher.entity.BaseTeacher;
|
|
import com.xjrsoft.module.teacher.entity.BaseTeacher;
|
|
|
import com.xjrsoft.module.teacher.entity.WfHeadTeacherLeave;
|
|
import com.xjrsoft.module.teacher.entity.WfHeadTeacherLeave;
|
|
|
import com.xjrsoft.module.teacher.entity.WfTeacherleave;
|
|
import com.xjrsoft.module.teacher.entity.WfTeacherleave;
|
|
@@ -62,6 +67,7 @@ public class TeacherStatisticsController {
|
|
|
private final IHolidayDateService holidayDateService;
|
|
private final IHolidayDateService holidayDateService;
|
|
|
private final IWfHeadTeacherLeaveService headTeacherLeaveService;
|
|
private final IWfHeadTeacherLeaveService headTeacherLeaveService;
|
|
|
private final IAttendanceRuleCategoryService attendanceRuleCategoryService;
|
|
private final IAttendanceRuleCategoryService attendanceRuleCategoryService;
|
|
|
|
|
+ private final ICarOutInRecordService carOutInRecordService;
|
|
|
|
|
|
|
|
@GetMapping(value = "/teacher-details")
|
|
@GetMapping(value = "/teacher-details")
|
|
|
@ApiOperation(value="教师考勤")
|
|
@ApiOperation(value="教师考勤")
|
|
@@ -176,11 +182,27 @@ public class TeacherStatisticsController {
|
|
|
record.setRecordTime(outInRecord.getRecordTime());
|
|
record.setRecordTime(outInRecord.getRecordTime());
|
|
|
record.setStatus(outInRecord.getAttendanceStatus());
|
|
record.setStatus(outInRecord.getAttendanceStatus());
|
|
|
}
|
|
}
|
|
|
|
|
+ }else{
|
|
|
|
|
+ //查询该教师是否通过车辆进入
|
|
|
|
|
+ List<CarOutInRecord> list = carOutInRecordService.list(
|
|
|
|
|
+ new MPJLambdaWrapper<CarOutInRecord>()
|
|
|
|
|
+ .select(CarMessageApply.class, x -> VoToColumnUtil.fieldsToColumns(CarMessageApply.class).contains(x.getProperty()))
|
|
|
|
|
+ .leftJoin(CarMessageApply.class, CarMessageApply::getId, CarOutInRecord::getCarMessageApplyId)
|
|
|
|
|
+ .between(CarOutInRecord::getRecordTime, startTime, endTime)
|
|
|
|
|
+ .orderByAsc(CarOutInRecord::getRecordTime)
|
|
|
|
|
+ );
|
|
|
|
|
+ if(!list.isEmpty()){
|
|
|
|
|
+ CarOutInRecord outInRecord = list.get(0);
|
|
|
|
|
+ if(outInRecord != null){
|
|
|
|
|
+ record.setRecordTime(outInRecord.getRecordTime());
|
|
|
|
|
+ record.setStatus(outInRecord.getAttendanceStatus());
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
if(record.getStatus() == null){
|
|
if(record.getStatus() == null){
|
|
|
record.setStatus("缺勤");
|
|
record.setStatus("缺勤");
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
PageOutput<TeacherStatisticsPageVo> pageOutput = ConventPage.getPageOutput(voIPage, TeacherStatisticsPageVo.class);
|
|
PageOutput<TeacherStatisticsPageVo> pageOutput = ConventPage.getPageOutput(voIPage, TeacherStatisticsPageVo.class);
|