Browse Source

Merge branch 'master' of http://git.dayaedu.com/yonge/edu-saas

zouxuan 5 năm trước cách đây
mục cha
commit
c0870c1ab7

+ 3 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/ExamOrganizationRelationDao.java

@@ -59,6 +59,9 @@ public interface ExamOrganizationRelationDao extends BaseDAO<Long, ExamOrganizat
 
 
     List<ExamOrganizationRelation> getWithExams(@Param("examIds") List<Long> examIds);
     List<ExamOrganizationRelation> getWithExams(@Param("examIds") List<Long> examIds);
 
 
+    List<ExamOrganizationRelation> getWithExamsAndOrgans(@Param("examIds") List<Long> examIds,
+                                                         @Param("organIds") List<Integer> organs);
+
     /**
     /**
      * @param examId:
      * @param examId:
      * @return java.util.Set<java.lang.Integer>
      * @return java.util.Set<java.lang.Integer>

+ 5 - 3
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExaminationBasicServiceImpl.java

@@ -74,10 +74,11 @@ public class ExaminationBasicServiceImpl extends BaseServiceImpl<Long, Examinati
         if(ExamModeEnum.ONLINE.equals(examinationBasic.getExamMode())){
         if(ExamModeEnum.ONLINE.equals(examinationBasic.getExamMode())){
             examinationBasic.setExamLocationIdList(null);
             examinationBasic.setExamLocationIdList(null);
         }
         }
+
         if(StringUtils.isNotBlank(examinationBasic.getExamLocationIdList())){
         if(StringUtils.isNotBlank(examinationBasic.getExamLocationIdList())){
             List<Integer> organIds = Arrays.stream(examinationBasic.getExamLocationIdList().split(",")).map(e -> Integer.valueOf(e)).collect(Collectors.toList());
             List<Integer> organIds = Arrays.stream(examinationBasic.getExamLocationIdList().split(",")).map(e -> Integer.valueOf(e)).collect(Collectors.toList());
-            Map<Integer, String> organNameMap = this.getMap("organization", "id_", "name_", organIds, Integer.class, String.class);
-            examinationBasic.setExamLocationNameList(StringUtils.join(organNameMap.keySet(),","));
+            Map<Integer, String> organNameMap = this.getMap("exam_location", "id_", "name_", organIds, Integer.class, String.class);
+            examinationBasic.setExamLocationNameList(StringUtils.join(organNameMap.values(),","));
         }
         }
 
 
         examinationBasic.setTenantId(TenantContextHolder.getTenantId());
         examinationBasic.setTenantId(TenantContextHolder.getTenantId());
@@ -190,7 +191,8 @@ public class ExaminationBasicServiceImpl extends BaseServiceImpl<Long, Examinati
             List<Long> examIds = dataList.stream().map(ExaminationBasicDto::getId).collect(Collectors.toList());
             List<Long> examIds = dataList.stream().map(ExaminationBasicDto::getId).collect(Collectors.toList());
             List<ExamOrganizationRelation> examOrgans = new ArrayList<>();
             List<ExamOrganizationRelation> examOrgans = new ArrayList<>();
             if (!CollectionUtils.isEmpty(examIds)) {
             if (!CollectionUtils.isEmpty(examIds)) {
-                examOrgans = examOrganizationRelationDao.getWithExams(examIds);
+                List<Integer> childOrganIds = organizationService.getChildOrganIds(queryInfo.getOrganId(), true);
+                examOrgans = examOrganizationRelationDao.getWithExamsAndOrgans(examIds, childOrganIds);
             }
             }
             Map<Integer, List<ExamOrganizationRelation>> examOrgansMap = new HashMap<>();
             Map<Integer, List<ExamOrganizationRelation>> examOrgansMap = new HashMap<>();
             if (!CollectionUtils.isEmpty(examOrgans)) {
             if (!CollectionUtils.isEmpty(examOrgans)) {

+ 7 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/StudentExamResultServiceImpl.java

@@ -106,6 +106,13 @@ public class StudentExamResultServiceImpl extends BaseServiceImpl<Long, StudentE
 		if(Objects.isNull(examId)){
 		if(Objects.isNull(examId)){
 			throw new BizException("请指定考级项目");
 			throw new BizException("请指定考级项目");
 		}
 		}
+		ExaminationBasic examinationBasic = examinationBasicDao.get(examId.longValue());
+		if(Objects.isNull(examinationBasic)){
+			throw new BizException("考级项目不存在");
+		}
+		if(!ExamStatusEnum.EXAM_END.equals(examinationBasic.getStatus())&&!ExamStatusEnum.RESULT_CONFIRM.equals(examinationBasic.getStatus())){
+			return null;
+		}
 		List<Integer> childOrganIds = organizationService.getChildOrganIds(organId, true);
 		List<Integer> childOrganIds = organizationService.getChildOrganIds(organId, true);
 		StudentExamResultStatisticsDto studentExamResultStatisticsInfo = studentExamResultDao.getStudentExamResultStatisticsInfo(childOrganIds, examId);
 		StudentExamResultStatisticsDto studentExamResultStatisticsInfo = studentExamResultDao.getStudentExamResultStatisticsInfo(childOrganIds, examId);
 		return studentExamResultStatisticsInfo;
 		return studentExamResultStatisticsInfo;

+ 14 - 0
edu-user/edu-user-server/src/main/resources/config/mybatis/ExamOrganizationRelationMapper.xml

@@ -256,6 +256,20 @@
 			#{examId}
 			#{examId}
 		</foreach>
 		</foreach>
     </select>
     </select>
+
+	<select id="getWithExamsAndOrgans" resultMap="ExamOrganizationRelation">
+		SELECT * FROM exam_organization_relation WHERE examination_basic_id_ IN
+		<foreach collection="examIds" item="examId" separator="," open="(" close=")">
+			#{examId}
+		</foreach>
+		<if test="organIds!=null">
+			AND organ_id_ IN
+			<foreach collection="organIds" item="organId" separator="," open="(" close=")">
+				#{organId}
+			</foreach>
+		</if>
+	</select>
+
 	<select id="countExamOrganStudentAndPayment" resultMap="ExamOrganizationRelation">
 	<select id="countExamOrganStudentAndPayment" resultMap="ExamOrganizationRelation">
 		SELECT
 		SELECT
 			o.id_ organ_id_,
 			o.id_ organ_id_,