updates
This commit is contained in:
parent
e867ef29fc
commit
e3803cd6b2
|
|
@ -84,7 +84,7 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
||||||
HttpServletRequest req) {
|
HttpServletRequest req) {
|
||||||
QueryWrapper<YxHistoryMajorEnroll> queryWrapper = QueryGenerator.initQueryWrapper(yxHistoryMajorEnroll, req.getParameterMap());
|
QueryWrapper<YxHistoryMajorEnroll> queryWrapper = QueryGenerator.initQueryWrapper(yxHistoryMajorEnroll, req.getParameterMap());
|
||||||
Page<YxHistoryMajorEnroll> page = new Page<YxHistoryMajorEnroll>(pageNo, pageSize);
|
Page<YxHistoryMajorEnroll> page = new Page<YxHistoryMajorEnroll>(pageNo, pageSize);
|
||||||
queryWrapper.orderByDesc("create_time","update_time");
|
queryWrapper.orderByDesc("create_time", "update_time");
|
||||||
IPage<YxHistoryMajorEnroll> pageList = yxHistoryMajorEnrollService.page(page, queryWrapper);
|
IPage<YxHistoryMajorEnroll> pageList = yxHistoryMajorEnrollService.page(page, queryWrapper);
|
||||||
return Result.OK(pageList);
|
return Result.OK(pageList);
|
||||||
}
|
}
|
||||||
|
|
@ -202,11 +202,9 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
||||||
@ApiOperation(value = "历年录取数据表-更新省控线")
|
@ApiOperation(value = "历年录取数据表-更新省控线")
|
||||||
@PostMapping(value = "/renewControlLine")
|
@PostMapping(value = "/renewControlLine")
|
||||||
@RequiresPermissions("yx:yx_history_major_enroll:edit")
|
@RequiresPermissions("yx:yx_history_major_enroll:edit")
|
||||||
public Result<?> renewControlLine(@RequestBody YxHistoryMajorEnroll yxHistoryMajorEnroll){
|
public Result<?> renewControlLine(@RequestBody YxHistoryMajorEnroll yxHistoryMajorEnroll) {
|
||||||
String id = yxHistoryMajorEnroll.getId();
|
String id = yxHistoryMajorEnroll.getId();
|
||||||
LambdaQueryWrapper<YxHistoryMajorEnroll> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
yxHistoryMajorEnrollService.renewControlLine(id);
|
||||||
if (StringUtils.isNotBlank(id)) {
|
|
||||||
}
|
|
||||||
return Result.OK("操作成功");
|
return Result.OK("操作成功");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -337,15 +335,15 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
||||||
//省控线
|
//省控线
|
||||||
//文科_本科A段_美术与设计_2023
|
//文科_本科A段_美术与设计_2023
|
||||||
if ("舞蹈类".equals(majorType)) {
|
if ("舞蹈类".equals(majorType)) {
|
||||||
AssertUtils.notEmpty(mainSubjects,String.format("行[%s],未识别到舞蹈类型", index));
|
AssertUtils.notEmpty(mainSubjects, String.format("行[%s],未识别到舞蹈类型", index));
|
||||||
if (mainSubjects.contains("艺术舞蹈")) {
|
if (mainSubjects.contains("艺术舞蹈")) {
|
||||||
key = category + "_" + batch + "_" + "艺术舞蹈类" + "_" + year;
|
key = category + "_" + batch + "_" + "艺术舞蹈类" + "_" + year;
|
||||||
}else if (mainSubjects.contains("国际标准")) {
|
} else if (mainSubjects.contains("国际标准")) {
|
||||||
key = category + "_" + batch + "_" + "国际标准舞类" + "_" + year;
|
key = category + "_" + batch + "_" + "国际标准舞类" + "_" + year;
|
||||||
}else{
|
} else {
|
||||||
throw new JeecgBootException(String.format("行[%s],未识别到舞蹈类型", index));
|
throw new JeecgBootException(String.format("行[%s],未识别到舞蹈类型", index));
|
||||||
}
|
}
|
||||||
}else{
|
} else {
|
||||||
key = category + "_" + batch + "_" + majorType + "_" + year;
|
key = category + "_" + batch + "_" + majorType + "_" + year;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -363,7 +361,7 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
||||||
zhuanyeBili = new BigDecimal(operator.split("\\*")[1]);
|
zhuanyeBili = new BigDecimal(operator.split("\\*")[1]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ("文过专排".equals(rulesEnrollProbability)||"文过专排主科".equals(rulesEnrollProbability)) {
|
if ("文过专排".equals(rulesEnrollProbability) || "文过专排主科".equals(rulesEnrollProbability)) {
|
||||||
BigDecimal multiply = specialScore.multiply(zhuanyeBili);
|
BigDecimal multiply = specialScore.multiply(zhuanyeBili);
|
||||||
yxHistoryMajorEnroll.setControlLine(multiply);
|
yxHistoryMajorEnroll.setControlLine(multiply);
|
||||||
yxHistoryMajorEnroll.setRulesEnrollProbability("文过专排");
|
yxHistoryMajorEnroll.setRulesEnrollProbability("文过专排");
|
||||||
|
|
@ -387,14 +385,14 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
||||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getYear, year);
|
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getYear, year);
|
||||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getMajorName, majorName);
|
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getMajorName, majorName);
|
||||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getEnrollmentCode, enrollmentCode);
|
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getEnrollmentCode, enrollmentCode);
|
||||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getSchoolCode,schoolCode);
|
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getSchoolCode, schoolCode);
|
||||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getBatch,batch.contains("提前批")?"提前批":batch);
|
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getBatch, batch.contains("提前批") ? "提前批" : batch);
|
||||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getCategory,category);
|
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getCategory, category);
|
||||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getMajorType, majorType);
|
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getMajorType, majorType);
|
||||||
oldYxHistoryMajorEnroll = yxHistoryMajorEnrollService.getOne(yxHistoryMajorEnrollLambdaQueryWrapper);
|
oldYxHistoryMajorEnroll = yxHistoryMajorEnrollService.getOne(yxHistoryMajorEnrollLambdaQueryWrapper);
|
||||||
if (oldYxHistoryMajorEnroll == null) {
|
if (oldYxHistoryMajorEnroll == null) {
|
||||||
updateList.add(yxHistoryMajorEnroll);
|
updateList.add(yxHistoryMajorEnroll);
|
||||||
}else{
|
} else {
|
||||||
oldYxHistoryMajorEnroll.setRulesEnrollProbability(yxHistoryMajorEnroll.getRulesEnrollProbability());
|
oldYxHistoryMajorEnroll.setRulesEnrollProbability(yxHistoryMajorEnroll.getRulesEnrollProbability());
|
||||||
oldYxHistoryMajorEnroll.setSchoolName(schoolName);
|
oldYxHistoryMajorEnroll.setSchoolName(schoolName);
|
||||||
if (StringUtils.isNotBlank(detail)) {
|
if (StringUtils.isNotBlank(detail)) {
|
||||||
|
|
@ -418,7 +416,7 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
||||||
if (msg != null && msg.indexOf("Duplicate entry") >= 0) {
|
if (msg != null && msg.indexOf("Duplicate entry") >= 0) {
|
||||||
return Result.error("文件导入失败:有重复数据!");
|
return Result.error("文件导入失败:有重复数据!");
|
||||||
} else {
|
} else {
|
||||||
return Result.error("文件导入失败:" + e.getMessage()+",行:"+index);
|
return Result.error("文件导入失败:" + e.getMessage() + ",行:" + index);
|
||||||
}
|
}
|
||||||
} finally {
|
} finally {
|
||||||
try {
|
try {
|
||||||
|
|
|
||||||
|
|
@ -35,4 +35,9 @@ public interface IYxHistoryMajorEnrollService extends IService<YxHistoryMajorEnr
|
||||||
* 给志愿单中的专业写入历年分数信息
|
* 给志愿单中的专业写入历年分数信息
|
||||||
*/
|
*/
|
||||||
void volunteerRecordDTOListSetHistoryInfo(List<VolunteerRecordDTO> recordDtoList);
|
void volunteerRecordDTOListSetHistoryInfo(List<VolunteerRecordDTO> recordDtoList);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新省控线
|
||||||
|
*/
|
||||||
|
void renewControlLine(String id);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,12 +8,17 @@ import org.jeecg.modules.art.dto.RecommendMajorDTO;
|
||||||
import org.jeecg.modules.yx.constant.YxConstant;
|
import org.jeecg.modules.yx.constant.YxConstant;
|
||||||
import org.jeecg.modules.yx.dto.VolunteerRecordDTO;
|
import org.jeecg.modules.yx.dto.VolunteerRecordDTO;
|
||||||
import org.jeecg.modules.yx.entity.YxHistoryMajorEnroll;
|
import org.jeecg.modules.yx.entity.YxHistoryMajorEnroll;
|
||||||
|
import org.jeecg.modules.yx.entity.YxHistoryScoreControlLine;
|
||||||
import org.jeecg.modules.yx.mapper.YxHistoryMajorEnrollMapper;
|
import org.jeecg.modules.yx.mapper.YxHistoryMajorEnrollMapper;
|
||||||
import org.jeecg.modules.yx.service.IYxHistoryMajorEnrollService;
|
import org.jeecg.modules.yx.service.IYxHistoryMajorEnrollService;
|
||||||
|
import org.jeecg.modules.yx.service.IYxHistoryScoreControlLineService;
|
||||||
|
import org.springframework.scheduling.annotation.Async;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
|
@ -25,7 +30,8 @@ import java.util.stream.Collectors;
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
public class YxHistoryMajorEnrollServiceImpl extends ServiceImpl<YxHistoryMajorEnrollMapper, YxHistoryMajorEnroll> implements IYxHistoryMajorEnrollService {
|
public class YxHistoryMajorEnrollServiceImpl extends ServiceImpl<YxHistoryMajorEnrollMapper, YxHistoryMajorEnroll> implements IYxHistoryMajorEnrollService {
|
||||||
|
@Resource
|
||||||
|
private IYxHistoryScoreControlLineService yxHistoryScoreControlLineService;
|
||||||
@Override
|
@Override
|
||||||
public boolean exist(YxHistoryMajorEnroll yxHistoryMajorEnroll) {
|
public boolean exist(YxHistoryMajorEnroll yxHistoryMajorEnroll) {
|
||||||
String id = yxHistoryMajorEnroll.getId();
|
String id = yxHistoryMajorEnroll.getId();
|
||||||
|
|
@ -156,4 +162,108 @@ public class YxHistoryMajorEnrollServiceImpl extends ServiceImpl<YxHistoryMajorE
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Async
|
||||||
|
@Override
|
||||||
|
public void renewControlLine(String id) {
|
||||||
|
LambdaQueryWrapper<YxHistoryMajorEnroll> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
if (StringUtils.isNotBlank(id)) {
|
||||||
|
lambdaQueryWrapper.in(YxHistoryMajorEnroll::getId, Arrays.asList(id.split(",")));
|
||||||
|
}
|
||||||
|
List<YxHistoryMajorEnroll> list = list(lambdaQueryWrapper);
|
||||||
|
if (CollectionUtils.isNotEmpty(list)) {
|
||||||
|
Map<String, YxHistoryScoreControlLine> historyScoreControlLineMap = yxHistoryScoreControlLineService.allMaps();
|
||||||
|
String majorType = null;
|
||||||
|
String key = null;
|
||||||
|
String mainSubjects = null;
|
||||||
|
String batch = null;
|
||||||
|
String category = null;
|
||||||
|
String year = null;
|
||||||
|
String probabilityOperator = null;
|
||||||
|
String rulesEnrollProbability = null;
|
||||||
|
int index = 0;
|
||||||
|
YxHistoryScoreControlLine historyScoreControlLine = null;
|
||||||
|
BigDecimal culturalScore = null, wenhuaBili = null;
|
||||||
|
BigDecimal specialScore = null, zhuanyeBili = null;
|
||||||
|
|
||||||
|
for (YxHistoryMajorEnroll record : list) {
|
||||||
|
index++;
|
||||||
|
majorType = record.getMajorType();
|
||||||
|
mainSubjects = record.getMainSubjects();
|
||||||
|
batch = record.getBatch();
|
||||||
|
category = record.getCategory();
|
||||||
|
year = record.getYear();
|
||||||
|
probabilityOperator = record.getProbabilityOperator();
|
||||||
|
rulesEnrollProbability = record.getRulesEnrollProbability();
|
||||||
|
if (StringUtils.isBlank(rulesEnrollProbability)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
//省控线
|
||||||
|
//文科_本科A段_美术与设计_2023
|
||||||
|
if ("舞蹈类".equals(majorType)) {
|
||||||
|
//AssertUtils.notEmpty(mainSubjects, String.format("行[%s],未识别到舞蹈类型", index));
|
||||||
|
if (StringUtils.isBlank(mainSubjects)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (mainSubjects.contains("艺术舞蹈")) {
|
||||||
|
key = category + "_" + batch + "_" + "艺术舞蹈类" + "_" + year;
|
||||||
|
} else if (mainSubjects.contains("国际标准")) {
|
||||||
|
key = category + "_" + batch + "_" + "国际标准舞类" + "_" + year;
|
||||||
|
} else {
|
||||||
|
//throw new JeecgBootException(String.format("行[%s],未识别到舞蹈类型", index));
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
key = category + "_" + batch + "_" + majorType + "_" + year;
|
||||||
|
}
|
||||||
|
|
||||||
|
historyScoreControlLine = historyScoreControlLineMap.get(key);
|
||||||
|
if (historyScoreControlLine== null) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
culturalScore = historyScoreControlLine.getCulturalScore();
|
||||||
|
specialScore = historyScoreControlLine.getSpecialScore();
|
||||||
|
if (("文过专排".equals(rulesEnrollProbability)|| "文过专排主科".equals(rulesEnrollProbability)) && StringUtils.isBlank(probabilityOperator)) {
|
||||||
|
probabilityOperator = "专*1";
|
||||||
|
}else if ("专过文排".equals(rulesEnrollProbability) && StringUtils.isBlank(probabilityOperator)) {
|
||||||
|
probabilityOperator = "文*1";
|
||||||
|
}else if ("文+专".equals(rulesEnrollProbability) && StringUtils.isBlank(probabilityOperator)) {
|
||||||
|
probabilityOperator = "文*1+专*1";
|
||||||
|
}
|
||||||
|
if (StringUtils.isBlank(probabilityOperator)) {
|
||||||
|
System.out.println("111");
|
||||||
|
}
|
||||||
|
//换算分数
|
||||||
|
String[] operators = probabilityOperator.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(rulesEnrollProbability) || "文过专排主科".equals(rulesEnrollProbability)) {
|
||||||
|
BigDecimal multiply = specialScore.multiply(zhuanyeBili);
|
||||||
|
record.setControlLine(multiply);
|
||||||
|
record.setRulesEnrollProbability("文过专排");
|
||||||
|
} else if ("专过文排".equals(rulesEnrollProbability)) {
|
||||||
|
BigDecimal multiply = specialScore.multiply(wenhuaBili);
|
||||||
|
record.setControlLine(multiply);
|
||||||
|
record.setRulesEnrollProbability("专过文排");
|
||||||
|
} else if ("其他计算办法".equals(rulesEnrollProbability)) {
|
||||||
|
record.setRulesEnrollProbability("其他计算办法");
|
||||||
|
} else {
|
||||||
|
if (wenhuaBili == null || zhuanyeBili == null) {
|
||||||
|
wenhuaBili = YxConstant.bigDecimal100;
|
||||||
|
zhuanyeBili = YxConstant.bigDecimal100;
|
||||||
|
}
|
||||||
|
record.setControlLine((culturalScore.multiply(wenhuaBili)).add((specialScore.multiply(zhuanyeBili))));
|
||||||
|
record.setRulesEnrollProbability(probabilityOperator);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
updateBatchById(list,500);
|
||||||
|
log.debug("已刷新省控线");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -145,8 +145,8 @@ spring:
|
||||||
redis:
|
redis:
|
||||||
database: 0
|
database: 0
|
||||||
host: 127.0.0.1
|
host: 127.0.0.1
|
||||||
port: 6379
|
port: 56379
|
||||||
password: ''
|
password: 'Wang5322570'
|
||||||
#mybatis plus 设置
|
#mybatis plus 设置
|
||||||
mybatis-plus:
|
mybatis-plus:
|
||||||
mapper-locations: classpath*:org/jeecg/modules/**/xml/*Mapper.xml
|
mapper-locations: classpath*:org/jeecg/modules/**/xml/*Mapper.xml
|
||||||
|
|
@ -223,8 +223,8 @@ jeecg:
|
||||||
logRetentionDays: 30
|
logRetentionDays: 30
|
||||||
#分布式锁配置
|
#分布式锁配置
|
||||||
redisson:
|
redisson:
|
||||||
address: 127.0.0.1:6379
|
address: 127.0.0.1:56379
|
||||||
password:
|
password: Wang5322570
|
||||||
type: STANDALONE
|
type: STANDALONE
|
||||||
enabled: true
|
enabled: true
|
||||||
#cas单点登录
|
#cas单点登录
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue