chengpeng il y a 5 ans
Parent
commit
25c69974a2

+ 7 - 0
mec-education/src/main/java/com/ym/mec/education/controller/MusicGroupController.java

@@ -69,6 +69,12 @@ public class MusicGroupController {
         return musicGroupService.groupDetail(groupId);
 
     }
+
+    /**
+     * 班级列表
+     * @param req
+     * @return
+     */
     @PostMapping(value = "/classGroupList")
     public PageResponse classGroupList(@RequestBody ClassGroupReq req){
 
@@ -76,4 +82,5 @@ public class MusicGroupController {
 
     }
 
+
 }

+ 40 - 0
mec-education/src/main/java/com/ym/mec/education/enums/StudentAttendanceStatusEnum.java

@@ -0,0 +1,40 @@
+package com.ym.mec.education.enums;
+
+import com.ym.mec.common.enums.BaseEnum;
+
+/**
+ * 学生考勤状态
+ */
+public enum StudentAttendanceStatusEnum implements BaseEnum<String,StudentAttendanceStatusEnum> {
+    NORMAL("NORMAL","正常"),
+    TRUANT("TRUANT","旷课"),
+    LEAVE("LEAVE","请假"),
+    QUIT_SCHOOL("QUIT_SCHOOL","休学"),
+    DROP_OUT("DROP_OUT","退学");
+
+    private String code;
+
+    private String msg;
+
+    StudentAttendanceStatusEnum(String code, String msg) {
+        this.code = code;
+        this.msg = msg;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+
+    public String getMsg() {
+        return msg;
+    }
+
+    public void setMsg(String msg) {
+        this.msg = msg;
+    }
+
+    @Override
+    public String getCode() {
+        return this.code;
+    }
+}

+ 3 - 0
mec-education/src/main/java/com/ym/mec/education/req/ClassGroupReq.java

@@ -1,6 +1,7 @@
 package com.ym.mec.education.req;
 
 import com.ym.mec.education.base.BaseQuery;
+import io.swagger.annotations.ApiModel;
 import lombok.Data;
 
 import java.io.Serializable;
@@ -15,4 +16,6 @@ import java.io.Serializable;
 @ApiModel(description = "班级入参")
 public class ClassGroupReq extends BaseQuery implements Serializable {
     private Integer groupId;
+
+    private Integer type = 0;
 }

+ 33 - 0
mec-education/src/main/java/com/ym/mec/education/resp/ClassStudentResp.java

@@ -0,0 +1,33 @@
+package com.ym.mec.education.resp;
+
+import lombok.Data;
+import lombok.ToString;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @version V1.0
+ * @Description: TODO
+ * @date Date : 2019年09月26日 17:44
+ */
+
+@Data
+@ToString
+public class ClassStudentResp implements Serializable {
+
+    private String name;
+
+    /**
+     * 图像
+     */
+    private String avatar;
+
+    private List<String> classType;
+
+    private Integer truantNum;
+
+    private Integer isVip;
+
+
+}

+ 87 - 39
mec-education/src/main/java/com/ym/mec/education/service/impl/MusicGroupServiceImpl.java

@@ -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;
     }
 }