|
@@ -6,11 +6,14 @@ import cn.hutool.core.util.ObjectUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
|
+import com.github.yulichang.interfaces.MPJBaseJoin;
|
|
|
import com.github.yulichang.toolkit.MPJWrappers;
|
|
import com.github.yulichang.toolkit.MPJWrappers;
|
|
|
|
|
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
|
|
import com.xjrsoft.common.model.result.RT;
|
|
import com.xjrsoft.common.model.result.RT;
|
|
|
import com.xjrsoft.common.page.ConventPage;
|
|
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.organization.entity.UserDeptRelation;
|
|
|
import com.xjrsoft.module.outint.dto.AddTeacherOutInRecordDto;
|
|
import com.xjrsoft.module.outint.dto.AddTeacherOutInRecordDto;
|
|
|
import com.xjrsoft.module.outint.dto.TeacherOutInRecordPageDto;
|
|
import com.xjrsoft.module.outint.dto.TeacherOutInRecordPageDto;
|
|
|
import com.xjrsoft.module.outint.dto.UpdateTeacherOutInRecordDto;
|
|
import com.xjrsoft.module.outint.dto.UpdateTeacherOutInRecordDto;
|
|
@@ -22,6 +25,7 @@ import com.xjrsoft.module.outint.vo.TeacherOutInRecordVo;
|
|
|
import com.xjrsoft.module.outint.vo.VisitorOutInRecordPageVo;
|
|
import com.xjrsoft.module.outint.vo.VisitorOutInRecordPageVo;
|
|
|
import com.xjrsoft.module.personnel.entity.ReservationSchool;
|
|
import com.xjrsoft.module.personnel.entity.ReservationSchool;
|
|
|
import com.xjrsoft.module.personnel.entity.ReservationSchoolPeople;
|
|
import com.xjrsoft.module.personnel.entity.ReservationSchoolPeople;
|
|
|
|
|
+import com.xjrsoft.module.student.entity.BaseStudentAssessmentProject;
|
|
|
import com.xjrsoft.module.system.entity.DictionaryDetail;
|
|
import com.xjrsoft.module.system.entity.DictionaryDetail;
|
|
|
import com.xjrsoft.module.system.entity.File;
|
|
import com.xjrsoft.module.system.entity.File;
|
|
|
import com.xjrsoft.module.teacher.entity.XjrUser;
|
|
import com.xjrsoft.module.teacher.entity.XjrUser;
|
|
@@ -59,20 +63,25 @@ public class TeacherOutInRecordController {
|
|
|
@ApiOperation(value="教师出入记录列表(分页)")
|
|
@ApiOperation(value="教师出入记录列表(分页)")
|
|
|
@SaCheckPermission("teacheroutinrecord:detail")
|
|
@SaCheckPermission("teacheroutinrecord:detail")
|
|
|
public RT<PageOutput<TeacherOutInRecordPageVo>> page(@Valid TeacherOutInRecordPageDto dto){
|
|
public RT<PageOutput<TeacherOutInRecordPageVo>> page(@Valid TeacherOutInRecordPageDto dto){
|
|
|
- IPage<TeacherOutInRecordPageVo> page = teacherOutInRecordService.selectJoinListPage(ConventPage.getPage(dto),TeacherOutInRecordPageVo.class,
|
|
|
|
|
- MPJWrappers.<TeacherOutInRecord>lambdaJoin()
|
|
|
|
|
- .orderByDesc(TeacherOutInRecord::getId)
|
|
|
|
|
- .like(StrUtil.isNotBlank(dto.getName()), XjrUser::getName,dto.getName())
|
|
|
|
|
- .ge(ObjectUtil.isNotNull(dto.getStartTime()),TeacherOutInRecord::getRecordTime,dto.getStartTime()+" 00:00:00")
|
|
|
|
|
- .le(ObjectUtil.isNotNull(dto.getStartTime()),TeacherOutInRecord::getRecordTime,dto.getStartTime()+" 23:59:59")
|
|
|
|
|
- .eq(ObjectUtil.isNotNull(dto.getStatus()), TeacherOutInRecord::getStatus, dto.getStatus())
|
|
|
|
|
- .select(TeacherOutInRecord::getId)
|
|
|
|
|
- .select(TeacherOutInRecord.class,x -> VoToColumnUtil.fieldsToColumns(TeacherOutInRecordPageVo.class).contains(x.getProperty()))
|
|
|
|
|
- .select(XjrUser::getName,XjrUser::getMobile,XjrUser::getCredentialNumber)
|
|
|
|
|
- .leftJoin(XjrUser.class,XjrUser::getId,TeacherOutInRecord::getUserId)
|
|
|
|
|
- .leftJoin(File.class,File::getFolderId, TeacherOutInRecord::getFacePhoto, ext->ext.selectAs(File::getFileUrl, TeacherOutInRecordPageVo::getFacePhotoUrl))
|
|
|
|
|
- .leftJoin(DictionaryDetail.class,DictionaryDetail::getCode, XjrUser::getGender, ext->ext.selectAs(DictionaryDetail::getName, TeacherOutInRecordPageVo::getGender))
|
|
|
|
|
- );
|
|
|
|
|
|
|
+
|
|
|
|
|
+ MPJLambdaWrapper<TeacherOutInRecord> queryWrapper= MPJWrappers.<TeacherOutInRecord>lambdaJoin()
|
|
|
|
|
+ .orderByDesc(TeacherOutInRecord::getId)
|
|
|
|
|
+ .like(StrUtil.isNotBlank(dto.getName()), XjrUser::getName,dto.getName())
|
|
|
|
|
+ .ge(ObjectUtil.isNotNull(dto.getStartTime()),TeacherOutInRecord::getRecordTime,dto.getStartTime()+" 00:00:00")
|
|
|
|
|
+ .le(ObjectUtil.isNotNull(dto.getStartTime()),TeacherOutInRecord::getRecordTime,dto.getStartTime()+" 23:59:59")
|
|
|
|
|
+ .eq(ObjectUtil.isNotNull(dto.getStatus()), TeacherOutInRecord::getStatus, dto.getStatus())
|
|
|
|
|
+ .select(TeacherOutInRecord::getId)
|
|
|
|
|
+ .select(TeacherOutInRecord.class,x -> VoToColumnUtil.fieldsToColumns(TeacherOutInRecordPageVo.class).contains(x.getProperty()))
|
|
|
|
|
+ .select(XjrUser::getName,XjrUser::getMobile,XjrUser::getCredentialNumber)
|
|
|
|
|
+ .leftJoin(XjrUser.class,XjrUser::getId,TeacherOutInRecord::getUserId)
|
|
|
|
|
+ .leftJoin(File.class,File::getFolderId, TeacherOutInRecord::getFacePhoto, ext->ext.selectAs(File::getFileUrl, TeacherOutInRecordPageVo::getFacePhotoUrl))
|
|
|
|
|
+ .leftJoin(DictionaryDetail.class,DictionaryDetail::getCode, XjrUser::getGender, ext->ext.selectAs(DictionaryDetail::getName, TeacherOutInRecordPageVo::getGender));
|
|
|
|
|
+
|
|
|
|
|
+ if(ObjectUtil.isNotNull(dto.getDeptId())&&dto.getDeptId()!=0){
|
|
|
|
|
+ queryWrapper.leftJoin(UserDeptRelation.class,UserDeptRelation::getUserId,XjrUser::getId)
|
|
|
|
|
+ .eq(UserDeptRelation::getDeptId,dto.getDeptId());
|
|
|
|
|
+ }
|
|
|
|
|
+ IPage<TeacherOutInRecordPageVo> page = teacherOutInRecordService.selectJoinListPage(ConventPage.getPage(dto),TeacherOutInRecordPageVo.class, queryWrapper);
|
|
|
PageOutput<TeacherOutInRecordPageVo> pageOutput = ConventPage.getPageOutput(page, TeacherOutInRecordPageVo.class);
|
|
PageOutput<TeacherOutInRecordPageVo> pageOutput = ConventPage.getPageOutput(page, TeacherOutInRecordPageVo.class);
|
|
|
return RT.ok(pageOutput);
|
|
return RT.ok(pageOutput);
|
|
|
}
|
|
}
|