diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/mapper/xml/YxSchoolMapper.xml b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/mapper/xml/YxSchoolMapper.xml index 91f8f27..ea45825 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/mapper/xml/YxSchoolMapper.xml +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/mapper/xml/YxSchoolMapper.xml @@ -328,7 +328,8 @@ FROM yx_school s LEFT JOIN yx_school_child sc ON s.id = sc.school_id LEFT JOIN yx_school_major sm ON sm.school_code = sc.school_code - where 1=1 AND s.is_ys = 1 + where 1=1 + /*AND s.is_ys = 1*/ AND (s.school_name like concat('%',#{qvo.schoolName},'%') or sc.school_code like concat('%',#{qvo.schoolName},'%')) diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/service/impl/MusicService.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/service/impl/MusicService.java index b9313e7..cd5784e 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/service/impl/MusicService.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/service/impl/MusicService.java @@ -111,7 +111,7 @@ public class MusicService { culturalControlLine = batchControlLineMaps.get(recommendMajorDTO.getBatch()).getCulturalScore(); specialControlLine = batchControlLineMaps.get(recommendMajorDTO.getBatch()).getSpecialScore(); - if (recommendMajorDTO.getSchoolCode().equals("9941") && recommendMajorDTO.getBatch().equals("提前批") && recommendMajorDTO.getEnrollmentCode().contains("08")) { + if (recommendMajorDTO.getSchoolCode().equals("6040") && recommendMajorDTO.getBatch().equals("本科A段") && recommendMajorDTO.getEnrollmentCode().contains("06")) { System.out.println("111"); } //没有计算方式 跳过 @@ -150,16 +150,16 @@ public class MusicService { professionalScore3 = zxcj; } else { if ("音乐表演".equals(majorTypeChild)) { - if(mainSubjects.contains("器乐") && mainSubjects.contains("声乐")){ + if (mainSubjects.contains("器乐") && mainSubjects.contains("声乐")) { //如果当前专业,声乐和器乐都可以报,根据当前专业是声乐/器乐 取一个成绩高的 - if(activeCurrentUserScore.getYybysy().compareTo(YxConstant.bigDecimal0)>0){ + if (activeCurrentUserScore.getYybysy().compareTo(YxConstant.bigDecimal0) > 0) { professionalScore2 = activeCurrentUserScore.getYybysy(); professionalScore3 = yybysy; - }else{ + } else { professionalScore2 = activeCurrentUserScore.getYybyqy(); professionalScore3 = yybyqy; } - }else if (mainSubjects.contains("器乐")) { + } else if (mainSubjects.contains("器乐")) { professionalScore2 = activeCurrentUserScore.getYybyqy(); professionalScore3 = yybyqy; } else { @@ -167,17 +167,29 @@ public class MusicService { professionalScore3 = yybysy; } } else { - //音乐教育 - professionalScore3 = yyjy; - professionalScore2 = activeCurrentUserScore.getYyjy(); + //音乐教育,用当前成绩算 然后同时出现声乐和音教就用最高的去算 + if(mainSubjects.contains("器乐") && mainSubjects.contains("声乐")){ + professionalScore2 = activeCurrentUserScore.getYybyqy().max(activeCurrentUserScore.getYybysy()); + professionalScore3 = yybyqy.max(yybysy); + }else if (mainSubjects.contains("器乐")) { + professionalScore2 = activeCurrentUserScore.getYybyqy(); + professionalScore3 = yybyqy; + } else if (mainSubjects.contains("声乐")) { + professionalScore2 = activeCurrentUserScore.getYybysy() ; + professionalScore3 = yybysy; + } + if(activeCurrentUserScore.getYyjy()!=null){ + professionalScore2 = professionalScore2 == null ? activeCurrentUserScore.getYyjy() : professionalScore2.max(activeCurrentUserScore.getYyjy()); + professionalScore3 = professionalScore3 == null ? yyjy : professionalScore3.max(yyjy); + } } } - }else{ + } else { professionalScore2 = yyScore; professionalScore3 = yyScore; } //判断其他录取要求 - if(!ScoreUtil.otherScoreJudge(professionalScore,activeCurrentUserScore,recommendMajorDTO)){ + if (!ScoreUtil.otherScoreJudge(professionalScore, activeCurrentUserScore, recommendMajorDTO)) { recommendMajorDTO.setEnrollProbability(YxConstant.bigDecimal0); continue; } @@ -201,11 +213,11 @@ public class MusicService { } YxHistoryMajorEnroll yxHistoryMajorEnroll = historyMajorEnrollList.get(0); BigDecimal admissionLine = yxHistoryMajorEnroll.getAdmissionLine(); - enrollProbability = studentScore.divide(admissionLine,4,RoundingMode.HALF_UP); + enrollProbability = studentScore.divide(admissionLine, 4, RoundingMode.HALF_UP); //当前年主科成绩跟去年的专业主科录取分 相等,按照正常的概率去算 :*0.75 enrollProbability = enrollProbability.multiply(YxConstant.bigDecimal075).multiply(YxConstant.bigDecimal100); //当前年主科成绩小于去年的专业主科录取分,按照正常的概率去算 :*0.75,之后 每少1分,少10%概率 - if(studentScore.compareTo(admissionLine)<0){ + if (studentScore.compareTo(admissionLine) < 0) { enrollProbability = enrollProbability.subtract((admissionLine.subtract(studentScore)).multiply(YxConstant.bigDecimal10)); } recommendMajorDTO.setEnrollProbability(enrollProbability); @@ -219,7 +231,7 @@ public class MusicService { differenceMap = ScoreUtil.computeHistoryMajorEnrollScoreLineDifferenceWithRulesEnrollProbability(rulesEnrollProbability, historyMajorEnrollList); historyThreeYearDiff = (BigDecimal) differenceMap.get("scoreDifference"); nowYearDiff = studentScore.subtract(nowYearProvincialControlLine); - enrollProbability = ScoreUtil.commonCheckEnrollProbability(nowYearDiff,historyThreeYearDiff); + enrollProbability = ScoreUtil.commonCheckEnrollProbability(nowYearDiff, historyThreeYearDiff); } //调整录取倍率 @@ -300,7 +312,7 @@ public class MusicService { BigDecimal a2 = null; BigDecimal divide = null; for (ArtTestCulturalDTO artTestCulturalDTO : artTestCulturalDtoList) { - if (artTestCulturalDTO.getScore()==null) { + if (artTestCulturalDTO.getScore() == null) { continue; } rulesEnrollProbability = artTestCulturalDTO.getRulesEnrollProbability(); @@ -318,32 +330,32 @@ public class MusicService { majorTypeChild = artTestCulturalDTO.getMajorTypeChild(); mainSubjects = artTestCulturalDTO.getMainSubjects(); if (!"高职高专".equals(activeCurrentUserScore.getBatch())) { - if("文过专排主科".equals(rulesEnrollProbability)){ + if ("文过专排主科".equals(rulesEnrollProbability)) { professionalScore3 = professionalScore.multiply(YxConstant.bigDecimal05); - }else if ("音乐表演".equals(majorTypeChild)) { - if (mainSubjects.contains("器乐") && activeCurrentUserScore.getProfessionalCategoryChildren().contains("器乐") && yybyqy.compareTo(YxConstant.bigDecimal0)>0) { + } else if ("音乐表演".equals(majorTypeChild)) { + if (mainSubjects.contains("器乐") && activeCurrentUserScore.getProfessionalCategoryChildren().contains("器乐") && yybyqy.compareTo(YxConstant.bigDecimal0) > 0) { professionalScore3 = yybyqy; - } else if(yybysy.compareTo(YxConstant.bigDecimal0)>0){ + } else if (yybysy.compareTo(YxConstant.bigDecimal0) > 0) { professionalScore3 = yybysy; - }else{ + } else { professionalScore3 = yyjy; } } else { //音乐教育 - if (yyjy.compareTo(YxConstant.bigDecimal0)<=0) { - if (mainSubjects.contains("器乐") && activeCurrentUserScore.getProfessionalCategoryChildren().contains("器乐") && yybyqy.compareTo(YxConstant.bigDecimal0)>0) { + if (yyjy.compareTo(YxConstant.bigDecimal0) <= 0) { + if (mainSubjects.contains("器乐") && activeCurrentUserScore.getProfessionalCategoryChildren().contains("器乐") && yybyqy.compareTo(YxConstant.bigDecimal0) > 0) { professionalScore3 = yybyqy; } else { professionalScore3 = yybysy; } - }else{ + } else { professionalScore3 = yyjy; } } } - if(("文过专排主科".equals(artTestCulturalDTO.getRulesEnrollProbability())||"1".equals(artTestCulturalDTO.getCheckMaster()))){ + if (("文过专排主科".equals(artTestCulturalDTO.getRulesEnrollProbability()) || "1".equals(artTestCulturalDTO.getCheckMaster()))) { //artTestCulturalDTO.setNeedScore(artTestCulturalDTO.getScore().subtract(professionalScore3)); - }else if (("文过专排".equals(rulesEnrollProbability) || !probabilityOperator.contains("文")) && professionalProbabilityOperator != null && professionalProbabilityOperator.compareTo(YxConstant.bigDecimal0) > 0) { + } else if (("文过专排".equals(rulesEnrollProbability) || !probabilityOperator.contains("文")) && professionalProbabilityOperator != null && professionalProbabilityOperator.compareTo(YxConstant.bigDecimal0) > 0) { //播音,表演,音乐,舞蹈,先把当前专业分转换成去年分数,再用最低录取分数减去转换后的分数 (文过专排) //artTestCulturalDTO.setNeedScore(artTestCulturalDTO.getScore().subtract(professionalScore3)); } else if (("专过文排".equals(rulesEnrollProbability) || !probabilityOperator.contains("专")) && culturalProbabilityOperator != null && culturalProbabilityOperator.compareTo(YxConstant.bigDecimal0) > 0) {