diff --git a/src/main/java/com/peanut/modules/common/controller/ClassController.java b/src/main/java/com/peanut/modules/common/controller/ClassController.java index 84f74db6..ba7a4917 100644 --- a/src/main/java/com/peanut/modules/common/controller/ClassController.java +++ b/src/main/java/com/peanut/modules/common/controller/ClassController.java @@ -318,4 +318,10 @@ public class ClassController { return R.ok().put("result",classEntityService.getUserScore(params)); } + //学员成绩列表 + @RequestMapping("/userScoreList") + public R userScoreList(@RequestBody Map params){ + return R.ok().put("result",classEntityService.userScoreList(params)); + } + } diff --git a/src/main/java/com/peanut/modules/common/entity/ClassExamUser.java b/src/main/java/com/peanut/modules/common/entity/ClassExamUser.java index 2562622a..78981cd3 100644 --- a/src/main/java/com/peanut/modules/common/entity/ClassExamUser.java +++ b/src/main/java/com/peanut/modules/common/entity/ClassExamUser.java @@ -12,7 +12,7 @@ public class ClassExamUser { @TableId private Integer id; - private Integer examId; + private Integer classId; private Integer userId; diff --git a/src/main/java/com/peanut/modules/common/service/ClassEntityService.java b/src/main/java/com/peanut/modules/common/service/ClassEntityService.java index 4df99e86..643bd46e 100644 --- a/src/main/java/com/peanut/modules/common/service/ClassEntityService.java +++ b/src/main/java/com/peanut/modules/common/service/ClassEntityService.java @@ -85,4 +85,6 @@ public interface ClassEntityService extends IService { Map getUserScore(Map params); + List userScoreList(Map params); + } diff --git a/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java b/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java index 9cd9a5ab..4b37c9d7 100644 --- a/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java +++ b/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java @@ -43,6 +43,8 @@ public class ClassEntityServiceImpl extends ServiceImpl params) { @@ -968,9 +970,13 @@ public class ClassEntityServiceImpl extends ServiceImpl questionReplys = classTaskAndQuesReplyDao.selectList(questionWrapper); if (questionReplys.size() > 0) { for (ClassTaskAndQuesReply reply : questionReplys) { @@ -986,7 +992,7 @@ public class ClassEntityServiceImpl extends ServiceImpl task0wrapper = new MPJLambdaWrapper<>(); task0wrapper.leftJoin(ClassTask.class,ClassTask::getId,ClassTaskAndQuesReply::getRelationId); task0wrapper.selectAll(ClassTaskAndQuesReply.class); - task0wrapper.eq(ClassTask::getClassId,params.get("classId")); + task0wrapper.eq(ClassTask::getClassId,classEntity.getId()); task0wrapper.eq(ClassTask::getType,"0"); task0wrapper.eq(ClassTaskAndQuesReply::getUserId,ShiroUtils.getUId()); List task0Replys = classTaskAndQuesReplyDao.selectList(task0wrapper); @@ -1004,7 +1010,7 @@ public class ClassEntityServiceImpl extends ServiceImpl task1wrapper = new MPJLambdaWrapper<>(); task1wrapper.leftJoin(ClassTask.class,ClassTask::getId,ClassTaskAndQuesReply::getRelationId); task1wrapper.selectAll(ClassTaskAndQuesReply.class); - task1wrapper.eq(ClassTask::getClassId,params.get("classId")); + task1wrapper.eq(ClassTask::getClassId,classEntity.getId()); task1wrapper.eq(ClassTask::getType,"1"); task1wrapper.eq(ClassTaskAndQuesReply::getUserId,ShiroUtils.getUId()); List task1Replys = classTaskAndQuesReplyDao.selectList(task1wrapper); @@ -1021,7 +1027,7 @@ public class ClassEntityServiceImpl extends ServiceImpl experiencewrapper = new MPJLambdaWrapper<>(); experiencewrapper.eq(ClassTask::getUserId,ShiroUtils.getUId()); - experiencewrapper.eq(ClassTask::getClassId,params.get("classId")); + experiencewrapper.eq(ClassTask::getClassId,classEntity.getId()); experiencewrapper.eq(ClassTask::getType,"2"); List experiences = classTaskDao.selectList(experiencewrapper); if (experiences.size() > 0) { @@ -1036,5 +1042,38 @@ public class ClassEntityServiceImpl extends ServiceImpl params) { + ClassEntity classEntity = this.getBaseMapper().selectById(params.get("classId").toString()); + ClassModel classModel = classModelDao.selectById(classEntity.getModelId()); + List classUsers = classUserDao.selectList(new LambdaQueryWrapper() + .eq(ClassUser::getClassId,classEntity.getId()).eq(ClassUser::getRole,"0")); + List> resultList = new ArrayList<>(); + if (classUsers.size() > 0){ + for (ClassUser classUser:classUsers){ + params.put("userId",classUser.getUserId()); + Map map = getUserScore(params); + map.put("user",myUserDao.selectById(classUser.getUserId())); + if (classModel.getIsExam()==1){ + List classExamUsers = classExamUserDao.selectList(new LambdaQueryWrapper() + .eq(ClassExamUser::getUserId,classUser.getUserId()) + .eq(ClassExamUser::getClassId,classEntity.getId())); + int examScore = 0; + for (ClassExamUser classExamUser:classExamUsers){ + if (classExamUser.getScore()>examScore){ + examScore = classExamUser.getScore(); + } + } + map.put("examScore",examScore); + } + //处理分数占比 + + + resultList.add(map); + } + } + return resultList; + } + } diff --git a/src/main/java/com/peanut/modules/common/service/impl/ClassExamServiceImpl.java b/src/main/java/com/peanut/modules/common/service/impl/ClassExamServiceImpl.java index 57332e08..b4c9fca2 100644 --- a/src/main/java/com/peanut/modules/common/service/impl/ClassExamServiceImpl.java +++ b/src/main/java/com/peanut/modules/common/service/impl/ClassExamServiceImpl.java @@ -154,7 +154,7 @@ public class ClassExamServiceImpl extends ServiceImpl i } } ClassExamUser classExamUser = new ClassExamUser(); - classExamUser.setExamId(this.getBaseMapper().selectOne(new LambdaQueryWrapper().eq(ClassExam::getClassId,params.get("classId"))).getId()); + classExamUser.setClassId(Integer.parseInt(params.get("classId").toString())); classExamUser.setSubject(JSONUtil.toJsonStr(resultList)); classExamUser.setUserId(ShiroUtils.getUId()); classExamUserDao.insert(classExamUser);