派生自 projectDept/qhighschool

Administrator
2022-12-13 5fe230dd294a038a867f8b3f53035a317895c346
解决问卷管理只能看到访问对象课程的问卷的问题
1个文件已修改
80 ■■■■■ 已修改文件
src/main/java/com/qxueyou/scc/evaluate/service/impl/EvaluateService.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/qxueyou/scc/evaluate/service/impl/EvaluateService.java
@@ -13,6 +13,7 @@
import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.tools.ant.taskdefs.Concat;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -97,7 +98,8 @@
        QSchEvaluateTemplate template = QSchEvaluateTemplate.schEvaluateTemplate;
        QExerciseGroup group = QExerciseGroup.exerciseGroup;
        QSubject subject = QSubject.subject;
        QClsClass clsClass = QClsClass.clsClass;
        QStuStudent stuStudent = QStuStudent.stuStudent;
        // 搜索名
        keyword = StringUtils.isBlank(keyword) ? null : "%"+keyword+"%";
        
@@ -108,7 +110,21 @@
            .where(new QueryDslOptionBuilder()
                    .and(qEva.evalTemplateId::eq, template.evaluateTemplateId)
                    .and(template.groupId::eq,group.groupId)
                    .and(qEva.evalRangeId::eq,subject.subjectId)
                            .and(qEva.evalRangeId::like, subject.subjectId)
                            .and(qEva.createId::eq, ClientUtils.getUserId())
                            .and(qEva.evaluateName::like, keyword)
                            .and(qEva.deleteFlag::eq, false)
                            .build()
                    )
                    .orderBy(qEva.createTime.desc())
                    .fetchResults();
            QueryResults<Tuple> results2 = this.getQueryFactory()
                    .select(qEva, group, clsClass)
                    .from(qEva, template, group, clsClass)
                    .where(new QueryDslOptionBuilder()
                            .and(qEva.evalTemplateId::eq, template.evaluateTemplateId)
                            .and(template.groupId::eq, group.groupId)
                            .and(qEva.evalRangeId::like, clsClass.classId)
                    .and(qEva.createId::eq,ClientUtils.getUserId())
                    .and(qEva.evaluateName::like, keyword)
                    .and(qEva.deleteFlag::eq,false)
@@ -117,6 +133,20 @@
            .orderBy(qEva.createTime.desc())
            .fetchResults();
        
            QueryResults<Tuple> results3 = this.getQueryFactory()
                    .select(qEva, group, stuStudent)
                    .from(qEva, template, group, stuStudent)
                    .where(new QueryDslOptionBuilder()
                            .and(qEva.evalTemplateId::eq, template.evaluateTemplateId)
                            .and(template.groupId::eq, group.groupId)
                            .and(qEva.evalRangeId::like,stuStudent.studentId)
                            .and(qEva.createId::eq, ClientUtils.getUserId())
                            .and(qEva.evaluateName::like, keyword)
                            .and(qEva.deleteFlag::eq, false)
                            .build()
                    )
                    .orderBy(qEva.createTime.desc())
                    .fetchResults();
        // 封装参数
        List<Map<String,Object>> resultLst = 
                results.getResults()
@@ -141,9 +171,53 @@
                    return map;
                }).collect(Collectors.toList());
        
            resultLst.addAll(
                    results2.getResults()
                            .stream()
                            .map(tuple -> {
                                Map<String, Object> map = new HashMap<String, Object>(2);
                                map.put("evaluateId", tuple.get(qEva).getEvaluateId());
                                map.put("evaluateName", tuple.get(qEva).getEvaluateName());
                                map.put("evalRangeId", tuple.get(qEva).getEvalRangeId());
                                map.put("evalRangeType", tuple.get(qEva).getEvalRangeType());
                                map.put("evalRangeName", tuple.get(clsClass).getName());
                                map.put("evalRangeCount", tuple.get(qEva).getEvalRangeCount());
                                map.put("evalObjectName", tuple.get(qEva).getEvalObjectName());
                                map.put("status", tuple.get(qEva).getStatus());
                                map.put("endTime", tuple.get(qEva).getEndTime());
                                map.put("createTime", tuple.get(qEva).getCreateTime());
                                map.put("groupId", tuple.get(group).getGroupId());
                                map.put("exerCount", tuple.get(group).getAllCount());
                                map.put("evaluateCount", this.getEvaluateCount(tuple.get(qEva).getEvaluateId()));//已评估人数
                                map.put("evaluateAllCount", this
                                        .queryEvaluateAllCount(tuple.get(qEva).getEvalRangeType(), tuple.get(qEva).getEvalRangeId().split(",")));//应评估人数
                                return map;
                            }).collect(Collectors.toList()));
            resultLst.addAll(
                    results3.getResults()
                            .stream()
                            .map(tuple -> {
                                Map<String, Object> map = new HashMap<String, Object>(2);
                                map.put("evaluateId", tuple.get(qEva).getEvaluateId());
                                map.put("evaluateName", tuple.get(qEva).getEvaluateName());
                                map.put("evalRangeId", tuple.get(qEva).getEvalRangeId());
                                map.put("evalRangeType", tuple.get(qEva).getEvalRangeType());
                                map.put("evalRangeName", tuple.get(stuStudent).getName());
                                map.put("evalRangeCount", tuple.get(qEva).getEvalRangeCount());
                                map.put("evalObjectName", tuple.get(qEva).getEvalObjectName());
                                map.put("status", tuple.get(qEva).getStatus());
                                map.put("endTime", tuple.get(qEva).getEndTime());
                                map.put("createTime", tuple.get(qEva).getCreateTime());
                                map.put("groupId", tuple.get(group).getGroupId());
                                map.put("exerCount", tuple.get(group).getAllCount());
                                map.put("evaluateCount", this.getEvaluateCount(tuple.get(qEva).getEvaluateId()));//已评估人数
                                map.put("evaluateAllCount", this
                                        .queryEvaluateAllCount(tuple.get(qEva).getEvalRangeType(), tuple.get(qEva).getEvalRangeId().split(",")));//应评估人数
                                return map;
                            }).collect(Collectors.toList()));
        
        return new ResultJson(true, "success", 
                CollectionUtils.newObjectMap("allCount",results.getTotal(),"datas",resultLst));
                CollectionUtils.newObjectMap("allCount",results.getTotal()+results2.getTotal()+results3.getTotal(),"datas",resultLst));
    }
    /**