From f1bc00a5ae07222b2a6cd786de2795183815b3d7 Mon Sep 17 00:00:00 2001 From: zhouwentao <1577701412@qq.com> Date: Fri, 13 Jun 2025 21:06:07 +0800 Subject: [PATCH] updates --- .../YxHistoryMajorEnrollController.java | 111 ++++++++++-------- .../modules/yx/service/impl/MusicService.java | 2 +- 2 files changed, 65 insertions(+), 48 deletions(-) diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/controller/YxHistoryMajorEnrollController.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/controller/YxHistoryMajorEnrollController.java index 2affd1e..0372ec8 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/controller/YxHistoryMajorEnrollController.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/controller/YxHistoryMajorEnrollController.java @@ -214,57 +214,74 @@ public class YxHistoryMajorEnrollController extends JeecgController majrseTest1(){ + String majorType = "音乐类"; LambdaQueryWrapper helqw = new LambdaQueryWrapper<>(); - List historyMajorEnrollList = yxHistoryMajorEnrollService.duplicateList(); - List list = null; - for (YxHistoryMajorEnroll yxHistoryMajorEnroll : historyMajorEnrollList) { - yxHistoryMajorEnroll.getSchoolCode(); - helqw.clear(); - helqw.eq(YxHistoryMajorEnroll::getSchoolCode,yxHistoryMajorEnroll.getSchoolCode()); - helqw.eq(YxHistoryMajorEnroll::getMajorName,yxHistoryMajorEnroll.getMajorName()); - helqw.eq(YxHistoryMajorEnroll::getCategory,yxHistoryMajorEnroll.getCategory()); - helqw.eq(YxHistoryMajorEnroll::getBatch,yxHistoryMajorEnroll.getBatch()); - helqw.eq(YxHistoryMajorEnroll::getMajorType,yxHistoryMajorEnroll.getMajorType()); - helqw.eq(YxHistoryMajorEnroll::getYear,yxHistoryMajorEnroll.getYear()); - list = yxHistoryMajorEnrollService.list(helqw); - for (YxHistoryMajorEnroll historyMajorEnroll : list) { - if (StringUtils.isNotBlank(historyMajorEnroll.getDetail())) { - String s = SiliconFlowUtil.callSiliconFlowAPI(historyMajorEnroll.getDetail()); - s = s.replace("\n",""); - if (!"null".equals(s)) { - System.out.println(s); - historyMajorEnroll.setMajorName(historyMajorEnroll.getMajorName()+"("+s+")"); - yxHistoryMajorEnrollService.updateById(historyMajorEnroll); - } -// String[] split = historyMajorEnroll.getDetail().split("只招收"); -// System.out.println(split); -// if(split.length == 1){ -// split = historyMajorEnroll.getDetail().split("只招"); -// } -// -// if(split.length == 1){ -// if(historyMajorEnroll.getDetail().split(";").length>1){ -// split = historyMajorEnroll.getDetail().split(";"); -// }else if(historyMajorEnroll.getDetail().split(";").length>1){ -// split = historyMajorEnroll.getDetail().split(";"); -// } -// } -// -// if(split.length>1){ -// String[] split1 = null; -// if(split[1].split("\\)").length>1){ -// split1 = split1[0].split("\\)"); -// }else if(split[1].split("\\)").length==1){ -// split1 = split[1].split("\\)"); -// } -// if(split1.length>0){ -// historyMajorEnroll.setMajorName(historyMajorEnroll.getMajorName()+"("+ split1[0]+")"); -// yxHistoryMajorEnrollService.updateById(historyMajorEnroll); -// } -// } + helqw.eq(YxHistoryMajorEnroll::getYear,"2024"); + helqw.eq(YxHistoryMajorEnroll::getMajorType, majorType); + Map batchControlLineMaps = new LinkedHashMap<>(); + LambdaQueryWrapper yhsclWrapper = new LambdaQueryWrapper<>(); + yhsclWrapper.in(YxHistoryScoreControlLine::getBatch,"本科","高职高专"); + yhsclWrapper.eq(YxHistoryScoreControlLine::getYear,"2024"); + yhsclWrapper.like(YxHistoryScoreControlLine::getProfessionalCategory,majorType); + List yhsclList = yxHistoryScoreControlLineService.list(yhsclWrapper); + String key = null; + for (YxHistoryScoreControlLine yhscl : yhsclList) { + key = yhscl.getYear()+"_" +yhscl.getCategory()+"-"+ yhscl.getBatch()+"-"+yhscl.getProfessionalCategory(); + batchControlLineMaps.put(key,yhscl); + } + + BigDecimal culturalControlLine = null; + BigDecimal specialControlLine = null; + BigDecimal wenhuaBili = null; + BigDecimal zhuanyeBili = null; + List list = yxHistoryMajorEnrollService.list(helqw); + for (YxHistoryMajorEnroll recommendMajorDTO : list) { + key = "2024_" + recommendMajorDTO.getCategory(); + + if("高职高专".equals(recommendMajorDTO.getBatch())){ + key = key + "-" + recommendMajorDTO.getBatch(); + }else{ + key = key + "-本科"; + } + // 判断是 音乐教育还是音乐表演 器乐/声乐 + if ("音乐类".equals(majorType)) { + key = key +"-音乐类-"+ recommendMajorDTO.getMajorTypeChild(); + if ("音乐表演".equals(recommendMajorDTO.getMajorTypeChild())) { + key += recommendMajorDTO.getMainSubjects(); } } + culturalControlLine = batchControlLineMaps.get(key).getCulturalScore(); + specialControlLine = batchControlLineMaps.get(key).getSpecialScore(); + + String[] operators = recommendMajorDTO.getProbabilityOperator().split("\\+"); + for (String operator : operators) { + if (operator.contains("文")) { + wenhuaBili = new BigDecimal(operator.split("\\*")[1]); + } + if (operator.contains("专")) { + zhuanyeBili = new BigDecimal(operator.split("\\*")[1]); + } + } + if ("文过专排".equals(recommendMajorDTO.getRulesEnrollProbability()) || "文过专排主科".equals(recommendMajorDTO.getRulesEnrollProbability())) { + BigDecimal multiply = specialControlLine.multiply(zhuanyeBili); + recommendMajorDTO.setControlLine(multiply); + recommendMajorDTO.setRulesEnrollProbability("文过专排"); + } else if ("专过文排".equals(recommendMajorDTO.getRulesEnrollProbability())) { + BigDecimal multiply = culturalControlLine.multiply(wenhuaBili); + recommendMajorDTO.setControlLine(multiply); + recommendMajorDTO.setRulesEnrollProbability("专过文排"); + } else if ("其他计算办法".equals(recommendMajorDTO.getRulesEnrollProbability())) { + recommendMajorDTO.setRulesEnrollProbability("其他计算办法"); + } else { + if (wenhuaBili == null || zhuanyeBili == null) { + wenhuaBili = YxConstant.bigDecimal100; + zhuanyeBili = YxConstant.bigDecimal100; + } + recommendMajorDTO.setControlLine((culturalControlLine.multiply(wenhuaBili)).add((specialControlLine.multiply(zhuanyeBili)))); + // recommendMajorDTO.setRulesEnrollProbability(recommendMajorDTO.getRulesEnrollProbability()); + } + yxHistoryMajorEnrollService.updateById(recommendMajorDTO); } return Result.OK("操作成功"); } 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 307fc77..a363015 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 @@ -375,7 +375,7 @@ public class MusicService { historyMajorEnrollList = recommendMajorDTO.getHistoryMajorEnrollList(); rulesEnrollProbability = recommendMajorDTO.getPrivateRulesEnrollProbability(); probabilityOperator = recommendMajorDTO.getPrivateProbabilityOperator(); - if ("6316".equals(recommendMajorDTO.getSchoolCode()) && "表演艺术".equals(recommendMajorDTO.getMajorName())) { + if ("6782".equals(recommendMajorDTO.getSchoolCode()) && "流行音乐(声乐)".equals(recommendMajorDTO.getMajorName())) { System.out.println("111"); } if(index == 217){