|
@@ -8,14 +8,12 @@ import com.google.common.collect.Lists;
|
|
|
import com.ym.mec.education.base.BaseResponse;
|
|
|
import com.ym.mec.education.base.PageResponse;
|
|
|
import com.ym.mec.education.entity.*;
|
|
|
-import com.ym.mec.education.enums.ClassGroupStudentStatusEnum;
|
|
|
-import com.ym.mec.education.enums.ClassGroupTypeEnum;
|
|
|
-import com.ym.mec.education.enums.ReturnCodeEnum;
|
|
|
-import com.ym.mec.education.enums.TeachTypeEnum;
|
|
|
+import com.ym.mec.education.enums.*;
|
|
|
import com.ym.mec.education.mapper.MusicGroupMapper;
|
|
|
import com.ym.mec.education.req.ClassGroupReq;
|
|
|
import com.ym.mec.education.req.MusicGroupReq;
|
|
|
import com.ym.mec.education.resp.ClassGroupResp;
|
|
|
+import com.ym.mec.education.resp.ClassStudentResp;
|
|
|
import com.ym.mec.education.resp.MusicGroupResp;
|
|
|
import com.ym.mec.education.service.*;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
@@ -58,6 +56,9 @@ public class MusicGroupServiceImpl extends ServiceImpl<MusicGroupMapper, MusicGr
|
|
|
@Autowired
|
|
|
private IClassGroupStudentMapperService classGroupStudentMapperService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IStudentAttendanceService studentAttendanceService;
|
|
|
+
|
|
|
|
|
|
@Override
|
|
|
public PageResponse groupList(MusicGroupReq req) {
|
|
@@ -202,47 +203,94 @@ public class MusicGroupServiceImpl extends ServiceImpl<MusicGroupMapper, MusicGr
|
|
|
|
|
|
List<ClassGroup> classGroups = classGroupPage.getRecords();
|
|
|
|
|
|
- List<ClassGroupResp> groupRespList = new ArrayList<>();
|
|
|
- if(!CollectionUtils.isEmpty(classGroups)){
|
|
|
+ //班级
|
|
|
+ if(req.getType() == 0){
|
|
|
+ List<ClassGroupResp> groupRespList = new ArrayList<>();
|
|
|
+ if(!CollectionUtils.isEmpty(classGroups)){
|
|
|
+ classGroups.forEach(e ->{
|
|
|
+
|
|
|
+ ClassGroupResp classGroupResp = new ClassGroupResp();
|
|
|
+ //查询班级老师
|
|
|
+ BeanUtils.copyProperties(e,classGroupResp);
|
|
|
+ QueryWrapper<ClassGroupTeacherMapper> queryWrapper2 = new QueryWrapper<>();
|
|
|
+ queryWrapper2.eq("music_group_id_",e.getId()).eq("teacher_role_", TeachTypeEnum.BISHOP.getCode());
|
|
|
+ List<ClassGroupTeacherMapper> list = classGroupTeacherMapperService.list();
|
|
|
+
|
|
|
+ if(!CollectionUtils.isEmpty(list)){
|
|
|
+ List<Integer> firstId = list.stream().map(ClassGroupTeacherMapper::getUserId).collect(Collectors.toList());
|
|
|
+ QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.in("id_",firstId);
|
|
|
+ List<SysUser> sysUserList = sysUserService.list(queryWrapper);
|
|
|
+ if(!CollectionUtils.isEmpty(sysUserList)){
|
|
|
+ classGroupResp.setFirstTehNameList(sysUserList.stream().map(SysUser::getUsername).collect(Collectors.toList()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ queryWrapper2.eq("music_group_id_",e.getId()).eq("teacher_role_", TeachTypeEnum.TEACHING.getCode());
|
|
|
+ List<ClassGroupTeacherMapper> list2 = classGroupTeacherMapperService.list();
|
|
|
+ if(!CollectionUtils.isEmpty(list2)){
|
|
|
+ List<Integer> secdId = list2.stream().map(ClassGroupTeacherMapper::getUserId).collect(Collectors.toList());
|
|
|
+ QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.in("id_",secdId);
|
|
|
+ List<SysUser> sysUserList = sysUserService.list(queryWrapper);
|
|
|
+ if(!CollectionUtils.isEmpty(sysUserList)){
|
|
|
+ classGroupResp.setSecdTehNameList(sysUserList.stream().map(SysUser::getUsername).collect(Collectors.toList()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ groupRespList.add(classGroupResp);
|
|
|
+
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ response.setRecords(groupRespList);
|
|
|
+ response.setReturnCode(ReturnCodeEnum.CODE_200.getCode());
|
|
|
+ response.setMessage(ReturnCodeEnum.CODE_200.getValue());
|
|
|
+ response.setTotal(count);
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ //学生
|
|
|
+ if(req.getType() == 1){
|
|
|
+ ClassStudentResp classStudentResp = new ClassStudentResp();
|
|
|
classGroups.forEach(e ->{
|
|
|
|
|
|
- ClassGroupResp classGroupResp = new ClassGroupResp();
|
|
|
- //查询班级老师
|
|
|
- BeanUtils.copyProperties(e,classGroupResp);
|
|
|
- QueryWrapper<ClassGroupTeacherMapper> queryWrapper2 = new QueryWrapper<>();
|
|
|
- queryWrapper2.eq("music_group_id_",e.getId()).eq("teacher_role_", TeachTypeEnum.BISHOP.getCode());
|
|
|
- List<ClassGroupTeacherMapper> list = classGroupTeacherMapperService.list();
|
|
|
-
|
|
|
- if(!CollectionUtils.isEmpty(list)){
|
|
|
- List<Integer> firstId = list.stream().map(ClassGroupTeacherMapper::getUserId).collect(Collectors.toList());
|
|
|
- QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
|
|
|
- queryWrapper.in("id_",firstId);
|
|
|
- List<SysUser> sysUserList = sysUserService.list(queryWrapper);
|
|
|
- if(!CollectionUtils.isEmpty(sysUserList)){
|
|
|
- classGroupResp.setFirstTehNameList(sysUserList.stream().map(SysUser::getUsername).collect(Collectors.toList()));
|
|
|
- }
|
|
|
- }
|
|
|
+ QueryWrapper<ClassGroupStudentMapper> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.eq("class_group_id_",e.getId());
|
|
|
+ List<ClassGroupStudentMapper> studentMappers = classGroupStudentMapperService.list(queryWrapper);
|
|
|
+ if(!CollectionUtils.isEmpty(studentMappers)){
|
|
|
+
|
|
|
+ studentMappers.forEach(stud ->{
|
|
|
+
|
|
|
+ QueryWrapper<StudentAttendance> truntWrapper = new QueryWrapper<>();
|
|
|
+ //旷课
|
|
|
+ truntWrapper.lambda().eq(true, StudentAttendance::getMusicGroupId, req.getGroupId())
|
|
|
+ .eq(true, StudentAttendance::getClassGroupId, e.getId())
|
|
|
+ .eq(true, StudentAttendance::getStatus, StudentAttendanceStatusEnum.TRUANT.getCode())
|
|
|
+ .eq(true,StudentAttendance::getUserId,stud.getUserId());
|
|
|
+ Integer leaveCount = studentAttendanceService.count(truntWrapper);
|
|
|
+
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
|
|
|
- queryWrapper2.eq("music_group_id_",e.getId()).eq("teacher_role_", TeachTypeEnum.TEACHING.getCode());
|
|
|
- List<ClassGroupTeacherMapper> list2 = classGroupTeacherMapperService.list();
|
|
|
- if(!CollectionUtils.isEmpty(list2)){
|
|
|
- List<Integer> secdId = list2.stream().map(ClassGroupTeacherMapper::getUserId).collect(Collectors.toList());
|
|
|
- QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
|
|
|
- queryWrapper.in("id_",secdId);
|
|
|
- List<SysUser> sysUserList = sysUserService.list(queryWrapper);
|
|
|
- if(!CollectionUtils.isEmpty(sysUserList)){
|
|
|
- classGroupResp.setSecdTehNameList(sysUserList.stream().map(SysUser::getUsername).collect(Collectors.toList()));
|
|
|
- }
|
|
|
}
|
|
|
- groupRespList.add(classGroupResp);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
});
|
|
|
- }
|
|
|
|
|
|
- response.setRecords(groupRespList);
|
|
|
- response.setReturnCode(ReturnCodeEnum.CODE_200.getCode());
|
|
|
- response.setMessage(ReturnCodeEnum.CODE_200.getValue());
|
|
|
- response.setTotal(count);
|
|
|
- return null;
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ //老师
|
|
|
+ if(req.getType() == 2){
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ return response;
|
|
|
}
|
|
|
}
|