updates
This commit is contained in:
parent
37e1284e0f
commit
d2e23e93ad
|
|
@ -31,10 +31,13 @@ import lombok.extern.slf4j.Slf4j;
|
|||
import org.jeecg.common.system.base.controller.JeecgController;
|
||||
import org.jeecg.modules.yx.service.IYxHistoryScoreControlLineService;
|
||||
import org.jeecg.modules.yx.service.IYxMajorService;
|
||||
import org.jeecg.modules.yx.service.IYxSchoolService;
|
||||
import org.jeecgframework.poi.excel.ExcelImportUtil;
|
||||
import org.jeecgframework.poi.excel.entity.ImportParams;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
|
|
@ -55,6 +58,8 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
|||
@Autowired
|
||||
private IYxMajorService yxMajorService;
|
||||
@Autowired
|
||||
private IYxSchoolService yxSchoolService;
|
||||
@Autowired
|
||||
private IYxHistoryMajorEnrollService yxHistoryMajorEnrollService;
|
||||
@Autowired
|
||||
private IYxHistoryScoreControlLineService yxHistoryScoreControlLineService;
|
||||
|
|
@ -128,19 +133,19 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
|||
}
|
||||
|
||||
/**
|
||||
* 批量保存
|
||||
* 批量保存
|
||||
*/
|
||||
@AutoLog(value = "历年录取数据表-批量保存")
|
||||
@ApiOperation(value="历年录取数据表-批量保存", notes="历年录取数据表-批量保存")
|
||||
@ApiOperation(value = "历年录取数据表-批量保存", notes = "历年录取数据表-批量保存")
|
||||
@RequiresPermissions("yx:yx_history_major_enroll:edit")
|
||||
@RequestMapping(value = "/saveBatch", method = {RequestMethod.PUT,RequestMethod.POST})
|
||||
@RequestMapping(value = "/saveBatch", method = {RequestMethod.PUT, RequestMethod.POST})
|
||||
public Result<String> saveBatch(@RequestBody List<YxHistoryMajorEnroll> yxHistoryMajorEnrollList) {
|
||||
String id=null;
|
||||
String id = null;
|
||||
String majorCode = null;
|
||||
String majorName = null;
|
||||
String schoolCode = null;
|
||||
String enrollmentCode = null;
|
||||
int i=0;
|
||||
int i = 0;
|
||||
for (YxHistoryMajorEnroll yxHistoryMajorEnroll : yxHistoryMajorEnrollList) {
|
||||
i++;
|
||||
id = yxHistoryMajorEnroll.getId();
|
||||
|
|
@ -148,10 +153,10 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
|||
majorName = yxHistoryMajorEnroll.getMajorName();
|
||||
schoolCode = yxHistoryMajorEnroll.getSchoolCode();
|
||||
enrollmentCode = yxHistoryMajorEnroll.getEnrollmentCode();
|
||||
AssertUtils.notEmpty(schoolCode, String.format("第%s行,请输入[学校代码]!",i));
|
||||
AssertUtils.notEmpty(majorCode, String.format("第%s行,请输入[专业代码]!",i));
|
||||
AssertUtils.notEmpty(majorName, String.format("第%s行,请输入[专业名称]!",i));
|
||||
AssertUtils.notEmpty(enrollmentCode, String.format("第%s行,请输入[招生代码]!",i));
|
||||
AssertUtils.notEmpty(schoolCode, String.format("第%s行,请输入[学校代码]!", i));
|
||||
AssertUtils.notEmpty(majorCode, String.format("第%s行,请输入[专业代码]!", i));
|
||||
AssertUtils.notEmpty(majorName, String.format("第%s行,请输入[专业名称]!", i));
|
||||
AssertUtils.notEmpty(enrollmentCode, String.format("第%s行,请输入[招生代码]!", i));
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(yxHistoryMajorEnrollList)) {
|
||||
yxHistoryMajorEnrollService.saveOrUpdateBatch(yxHistoryMajorEnrollList);
|
||||
|
|
@ -228,7 +233,48 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
|||
@RequiresPermissions("yx:yx_history_major_enroll:importExcel")
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, YxHistoryMajorEnroll.class);
|
||||
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
||||
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
|
||||
for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
|
||||
// 获取上传文件对象
|
||||
MultipartFile file = entity.getValue();
|
||||
ImportParams params = new ImportParams();
|
||||
params.setTitleRows(2);
|
||||
params.setHeadRows(1);
|
||||
params.setNeedSave(true);
|
||||
long start = System.currentTimeMillis();
|
||||
int index = 0;
|
||||
try {
|
||||
Map<String, YxSchool> schoolNameMap = yxSchoolService.mapsForSchoolName();
|
||||
Collection<YxSchool> schoolCodeList = schoolNameMap.values();
|
||||
String schoolCode = null;
|
||||
String schoolName = null;
|
||||
List<YxHistoryMajorEnroll> list = ExcelImportUtil.importExcel(file.getInputStream(), YxHistoryMajorEnroll.class, params);
|
||||
for (YxHistoryMajorEnroll yxHistoryMajorEnroll : list) {
|
||||
index++;
|
||||
schoolCode = yxHistoryMajorEnroll.getSchoolCode();
|
||||
schoolName = yxHistoryMajorEnroll.getSchoolName();
|
||||
AssertUtils.isTrue(schoolCodeList.contains(schoolCode),String.format("行[%s],学校代码[%s]未在系统找到",index,schoolCode));
|
||||
}
|
||||
log.info("消耗时间" + (System.currentTimeMillis() - start) + "毫秒");
|
||||
return Result.ok("文件导入成功!数据行数:" + list.size());
|
||||
} catch (Exception e) {
|
||||
String msg = e.getMessage();
|
||||
log.error(msg, e);
|
||||
if (msg != null && msg.indexOf("Duplicate entry") >= 0) {
|
||||
return Result.error("文件导入失败:有重复数据!");
|
||||
} else {
|
||||
return Result.error("文件导入失败:" + e.getMessage());
|
||||
}
|
||||
} finally {
|
||||
try {
|
||||
file.getInputStream().close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
return Result.error("文件导入失败!");
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -518,13 +564,13 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
|||
majorType = "美术与设计类";
|
||||
} else if (fileName.contains("音乐")) {
|
||||
majorType = "音乐类";
|
||||
if(fileName.contains("器乐")){
|
||||
if (fileName.contains("器乐")) {
|
||||
majorTypeChild = "器乐";
|
||||
}
|
||||
if(fileName.contains("声乐")){
|
||||
if (fileName.contains("声乐")) {
|
||||
majorTypeChild = "声乐";
|
||||
}
|
||||
if(fileName.contains("声乐")){
|
||||
if (fileName.contains("声乐")) {
|
||||
majorTypeChild = "声乐";
|
||||
}
|
||||
} else if (fileName.contains("艺术舞蹈")) {
|
||||
|
|
@ -789,8 +835,8 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
|||
List<String> notMajorList = new ArrayList<>();
|
||||
List<String> notHistoryList = new ArrayList<>();
|
||||
List<YxHistoryMajorEnroll> historyMajorEnrollList = new ArrayList<>();
|
||||
LambdaQueryWrapper<YxHistoryMajorEnroll> yxHistoryMajorEnrollLambdaQueryWrapper =new LambdaQueryWrapper<>();
|
||||
if(true){
|
||||
LambdaQueryWrapper<YxHistoryMajorEnroll> yxHistoryMajorEnrollLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
if (true) {
|
||||
String majorType = "";
|
||||
String majorTypeChild = "";
|
||||
String fileName = file.getName();
|
||||
|
|
@ -927,7 +973,7 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
|||
}
|
||||
|
||||
//获取省控线
|
||||
key =nianfen+"_" + (batch.equals("提前批") ? "本科A段" : batch.equals("高职高专") ? "高职高专" : batch) + "_" + kelei;
|
||||
key = nianfen + "_" + (batch.equals("提前批") ? "本科A段" : batch.equals("高职高专") ? "高职高专" : batch) + "_" + kelei;
|
||||
if (StringUtils.isNotBlank(majorTypeChild)) {
|
||||
key += "_" + majorTypeChild + "类";
|
||||
} else {
|
||||
|
|
@ -983,17 +1029,14 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
|||
yxHistoryMajorEnroll.setRulesEnrollProbability("专过文排");
|
||||
BigDecimal wenhuaBl = new BigDecimal(wenhuaBili).divide(bigDecimal100, 4, RoundingMode.HALF_UP);
|
||||
yxHistoryMajorEnroll.setControlLine(wenhuaBl.multiply(culturalScore));
|
||||
}
|
||||
else if (StringUtils.isNotBlank(sortType) && sortType.contains("专业课排队")) {
|
||||
} else if (StringUtils.isNotBlank(sortType) && sortType.contains("专业课排队")) {
|
||||
//文过专排
|
||||
yxHistoryMajorEnroll.setRulesEnrollProbability("文过专排");
|
||||
BigDecimal zhuanyeBl = new BigDecimal(zhuanyeBili).divide(bigDecimal100, 4, RoundingMode.HALF_UP);
|
||||
yxHistoryMajorEnroll.setControlLine(zhuanyeBl.multiply(specialScore));
|
||||
}
|
||||
else if (StringUtils.isNotBlank(sortType) && sortType.equals("其他计算办法")) {
|
||||
} else if (StringUtils.isNotBlank(sortType) && sortType.equals("其他计算办法")) {
|
||||
yxHistoryMajorEnroll.setRulesEnrollProbability("其他计算办法");
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
if (StringUtils.isBlank(wenhuaBili) && StringUtils.isBlank(zhuanyeBili)) {
|
||||
//没有招生
|
||||
} else {
|
||||
|
|
@ -1018,21 +1061,21 @@ public class YxHistoryMajorEnrollController extends JeecgController<YxHistoryMaj
|
|||
|
||||
}
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.clear();
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getMajorType,"体育类");
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getMajorName,yxHistoryMajorEnroll.getMajorName());
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getSchoolCode,yxHistoryMajorEnroll.getSchoolCode());
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getBatch,"高职高专");
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getCategory,kelei);
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getYear,yxHistoryMajorEnroll.getYear());
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getEnrollmentCode,yxHistoryMajorEnroll.getEnrollmentCode());
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getMajorType, "体育类");
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getMajorName, yxHistoryMajorEnroll.getMajorName());
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getSchoolCode, yxHistoryMajorEnroll.getSchoolCode());
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getBatch, "高职高专");
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getCategory, kelei);
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getYear, yxHistoryMajorEnroll.getYear());
|
||||
yxHistoryMajorEnrollLambdaQueryWrapper.eq(YxHistoryMajorEnroll::getEnrollmentCode, yxHistoryMajorEnroll.getEnrollmentCode());
|
||||
long count = yxHistoryMajorEnrollService.count(yxHistoryMajorEnrollLambdaQueryWrapper);
|
||||
if (count==0) {
|
||||
if (count == 0) {
|
||||
historyMajorEnrollList.add(yxHistoryMajorEnroll);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (CollectionUtils.isEmpty(notMajorList) &&CollectionUtils.isEmpty(notHistoryList)) {
|
||||
if (CollectionUtils.isEmpty(notMajorList) && CollectionUtils.isEmpty(notHistoryList)) {
|
||||
//yxHistoryMajorEnrollService.saveBatch(historyMajorEnrollList);
|
||||
}
|
||||
return Result.ok("文件导入成功!数据行数:" + list.size());
|
||||
|
|
|
|||
|
|
@ -128,9 +128,9 @@ public class BoYinService {
|
|||
studentScore = ScoreUtil.convertIntoScore(rulesEnrollProbability, activeCurrentUserScore.getCulturalScore(), by, recommendMajorDTO.getFirstLevelDiscipline(), probabilityOperator);
|
||||
recommendMajorDTO.setStudentConvertedScore(studentScore);
|
||||
}else{
|
||||
studentScore = ScoreUtil.convertIntoScore(rulesEnrollProbability, culturalScore, professionalScore, recommendMajorDTO.getFirstLevelDiscipline(), probabilityOperator);
|
||||
studentScore = ScoreUtil.convertIntoScore(rulesEnrollProbability, activeCurrentUserScore.getCulturalScore(),by, recommendMajorDTO.getFirstLevelDiscipline(), probabilityOperator);
|
||||
//将当期成绩按照专业录取分数方式折算
|
||||
recommendMajorDTO.setStudentScore(ScoreUtil.convertIntoScore(rulesEnrollProbability, culturalScore, by, recommendMajorDTO.getFirstLevelDiscipline(), probabilityOperator));
|
||||
recommendMajorDTO.setStudentScore(ScoreUtil.convertIntoScore(rulesEnrollProbability, activeCurrentUserScore.getCulturalScore(), professionalScore, recommendMajorDTO.getFirstLevelDiscipline(), probabilityOperator));
|
||||
recommendMajorDTO.setStudentConvertedScore(studentScore);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue