【修改】 所有判分的判分路径
This commit is contained in:
@@ -163,7 +163,6 @@ public class AutoController {
|
|||||||
public Result<String> judgementForChoiceToJson(@RequestBody StuInfoVo stuInfoVo){
|
public Result<String> judgementForChoiceToJson(@RequestBody StuInfoVo stuInfoVo){
|
||||||
return Result.success(autoForChoiceService.autoForChoiceToJson(stuInfoVo));
|
return Result.success(autoForChoiceService.autoForChoiceToJson(stuInfoVo));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 选择题判分
|
* 选择题判分
|
||||||
* @param stuInfoVo 学生选择题信息
|
* @param stuInfoVo 学生选择题信息
|
||||||
|
@@ -51,65 +51,65 @@ public class AutoForBrowerServiceImpl implements AutoForBrowerService {
|
|||||||
File folder = new File(filePath);
|
File folder = new File(filePath);
|
||||||
// 2、获取到学生文件
|
// 2、获取到学生文件
|
||||||
File[] files = folder.listFiles();
|
File[] files = folder.listFiles();
|
||||||
for (File file : files) {
|
// 获取到题型
|
||||||
File csFiles = new File(file.getPath());
|
for (File txFile : files) {
|
||||||
String quId = csFiles.getName();
|
String name = txFile.getName();
|
||||||
File[] csFileList = csFiles.listFiles();
|
if ("网络题".equals(name)) {
|
||||||
if (csFileList == null) {
|
File[] txFileList = txFile.listFiles();
|
||||||
System.err.println("子目录读取失败: " + csFiles.getAbsolutePath());
|
for (File stFile : txFileList) {
|
||||||
continue;
|
// 获取试题编号和试题ID
|
||||||
}
|
String quId = stFile.getName().split("@")[1];
|
||||||
for (File one_file : csFileList) {
|
String quNumber = stFile.getName().split("@")[0];
|
||||||
String name = one_file.getName();
|
File[] wjFiles = stFile.listFiles();
|
||||||
if ("网络题".equals(name)) {
|
for (File wjFile : wjFiles) {
|
||||||
File mysql_file = new File(one_file.getPath());
|
if ("文件".equals(wjFile.getName())) {
|
||||||
// 3、根据题号进行查询试题的相关信息
|
File browerFile = new File(wjFile.getPath());
|
||||||
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
// 3、根据题号进行查询试题的相关信息
|
||||||
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
||||||
|
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
||||||
EducationPaperScheme educationPaperScheme = result.get();
|
EducationPaperScheme educationPaperScheme = result.get();
|
||||||
EducationPaperQu educationPaperQu = results.get();
|
EducationPaperQu educationPaperQu = results.get();
|
||||||
String quScore = educationPaperScheme.getQuScores();
|
String quScore = educationPaperScheme.getQuScores();
|
||||||
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
||||||
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
||||||
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
||||||
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
||||||
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
||||||
judgementStr += "<p>试题名称:" + name + "</p>";
|
judgementStr += "<p>试题名称:" + name + "</p>";
|
||||||
SourceAndText cpojo = judgementBrowerService.Judgement(Double.parseDouble(quScore), mysql_file, examQuestion, judgementStr);
|
SourceAndText cpojo = judgementBrowerService.Judgement(Double.parseDouble(quScore), browerFile, examQuestion, judgementStr);
|
||||||
score = score.add(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
score = score.add(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
judgementStr = cpojo.getText();
|
judgementStr = cpojo.getText();
|
||||||
judgementStr += "<p>试题得分:" + cpojo.getScore() + "</p>";
|
judgementStr += "<p>试题得分:" + cpojo.getScore() + "</p>";
|
||||||
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
||||||
// 通过 quId,stuId,paperId 查询
|
// 通过 quId,stuId,paperId 查询
|
||||||
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
||||||
if (stuPaperScoreDO != null) {
|
if (stuPaperScoreDO != null) {
|
||||||
// 说明已经是做过该题,需要更新数据
|
// 说明已经是做过该题,需要更新数据
|
||||||
stuPaperScoreDO.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
stuPaperScoreDO.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
stuPaperScoreDO.setContent(judgementStr);
|
stuPaperScoreDO.setContent(judgementStr);
|
||||||
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
||||||
stuPaperScoreDO.setSubjectName(name);
|
stuPaperScoreDO.setSubjectName(name);
|
||||||
stuPaperScoreDO.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
stuPaperScoreDO.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
||||||
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
||||||
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
||||||
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
||||||
} else {
|
} else {
|
||||||
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
||||||
insertInfo.setStuId(stuInfoVo.getStuId());
|
insertInfo.setStuId(stuInfoVo.getStuId());
|
||||||
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
||||||
insertInfo.setQuId(quId);
|
insertInfo.setQuId(quId);
|
||||||
insertInfo.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
insertInfo.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
insertInfo.setContent(judgementStr);
|
insertInfo.setContent(judgementStr);
|
||||||
insertInfo.setSort(educationPaperQu.getSort());
|
insertInfo.setSort(educationPaperQu.getSort());
|
||||||
insertInfo.setSubjectName(name);
|
insertInfo.setSubjectName(name);
|
||||||
insertInfo.setTrueScore(new BigDecimal(quScore));
|
insertInfo.setTrueScore(new BigDecimal(quScore));
|
||||||
insertInfo.setTenantId(systemTenant.getId());
|
insertInfo.setTenantId(systemTenant.getId());
|
||||||
insertInfo.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
insertInfo.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
||||||
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
System.out.println(judgementStr);
|
|
||||||
break;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -48,71 +48,75 @@ public class AutoForCServiceImpl implements AutoForCService {
|
|||||||
File folder = new File(filePath);
|
File folder = new File(filePath);
|
||||||
// 2、获取到学生文件
|
// 2、获取到学生文件
|
||||||
File[] files = folder.listFiles();
|
File[] files = folder.listFiles();
|
||||||
for (File file : files) {
|
// 获取到题型
|
||||||
File csFiles = new File(file.getPath());
|
for (File txFile : files) {
|
||||||
String quId = csFiles.getName();
|
String name = txFile.getName();
|
||||||
File[] csFileList = csFiles.listFiles();
|
if ("编程题".equals(name)) {
|
||||||
if (csFileList == null) {
|
File[] txFileList = txFile.listFiles();
|
||||||
System.err.println("子目录读取失败: " + csFiles.getAbsolutePath());
|
for (File stFile : txFileList) {
|
||||||
continue;
|
// 获取试题编号和试题ID
|
||||||
}
|
String quId = stFile.getName().split("@")[1];
|
||||||
for (File csFile : csFileList) {
|
String quNumber = stFile.getName().split("@")[0];
|
||||||
String name = csFile.getName();
|
File[] wjFiles = stFile.listFiles();
|
||||||
if ("编程题".equals(name)) {
|
for (File wjFile : wjFiles) {
|
||||||
File[] cs_file_list = csFile.listFiles();
|
if ("文件".equals(wjFile.getName())) {
|
||||||
// 3、根据题号进行查询试题的相关信息
|
// 3、根据题号进行查询试题的相关信息
|
||||||
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
||||||
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
||||||
|
EducationPaperScheme educationPaperScheme = result.get();
|
||||||
EducationPaperScheme educationPaperScheme = result.get();
|
EducationPaperQu educationPaperQu = results.get();
|
||||||
EducationPaperQu educationPaperQu = results.get();
|
String quScore = educationPaperScheme.getQuScores();
|
||||||
String quScore = educationPaperScheme.getQuScores();
|
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
||||||
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
System.out.println(wjFile);
|
||||||
for (File lastFile : cs_file_list) {
|
File[] lastFiles = wjFile.listFiles();
|
||||||
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
for (File lastFile : lastFiles) {
|
||||||
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
if (lastFile.getName().contains(".c")) {
|
||||||
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
||||||
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
||||||
judgementStr += "<p>试题名称:" + name + "</p>";
|
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
||||||
// 获取不带文件名称的路径
|
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
||||||
String filePaths = lastFile.getParent();
|
judgementStr += "<p>试题名称:" + name + "</p>";
|
||||||
SourceAndText cpojo = judgementService.ProgrammingC(Double.parseDouble(quScore), filePaths, lastFile.getName(), examQuestion, judgementStr);
|
// 获取不带文件名称的路径
|
||||||
judgementStr = cpojo.getText();
|
String filePaths = lastFile.getParent();
|
||||||
BigDecimal dangSource = new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP);
|
SourceAndText cpojo = judgementService.ProgrammingC(Double.parseDouble(quScore), filePaths, lastFile.getName(), examQuestion, judgementStr);
|
||||||
judgementStr += "<p>试题得分:" + dangSource + "</p>";
|
judgementStr = cpojo.getText();
|
||||||
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
BigDecimal dangSource = new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP);
|
||||||
// 通过 quId,stuId,paperId 查询
|
judgementStr += "<p>试题得分:" + dangSource + "</p>";
|
||||||
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
||||||
score = score.add(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
// 通过 quId,stuId,paperId 查询
|
||||||
if (stuPaperScoreDO != null) {
|
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
||||||
// 说明已经是做过该题,需要更新数据
|
score = score.add(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
stuPaperScoreDO.setScore(dangSource);
|
if (stuPaperScoreDO != null) {
|
||||||
stuPaperScoreDO.setContent(judgementStr);
|
// 说明已经是做过该题,需要更新数据
|
||||||
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
stuPaperScoreDO.setScore(dangSource);
|
||||||
stuPaperScoreDO.setSubjectName(name);
|
stuPaperScoreDO.setContent(judgementStr);
|
||||||
stuPaperScoreDO.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
||||||
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
stuPaperScoreDO.setSubjectName(name);
|
||||||
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
stuPaperScoreDO.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
||||||
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
||||||
} else {
|
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
||||||
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
||||||
insertInfo.setStuId(stuInfoVo.getStuId());
|
} else {
|
||||||
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
||||||
insertInfo.setQuId(quId);
|
insertInfo.setStuId(stuInfoVo.getStuId());
|
||||||
insertInfo.setScore(dangSource);
|
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
||||||
insertInfo.setContent(judgementStr);
|
insertInfo.setQuId(quId);
|
||||||
insertInfo.setSort(educationPaperQu.getSort());
|
insertInfo.setScore(dangSource);
|
||||||
insertInfo.setSubjectName(name);
|
insertInfo.setContent(judgementStr);
|
||||||
insertInfo.setTrueScore(new BigDecimal(quScore));
|
insertInfo.setSort(educationPaperQu.getSort());
|
||||||
insertInfo.setTenantId(systemTenant.getId());
|
insertInfo.setSubjectName(name);
|
||||||
insertInfo.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
insertInfo.setTrueScore(new BigDecimal(quScore));
|
||||||
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
insertInfo.setTenantId(systemTenant.getId());
|
||||||
|
insertInfo.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
||||||
|
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return score;
|
return score;
|
||||||
}
|
}
|
||||||
|
@@ -57,68 +57,65 @@ public class AutoForFileServiceImpl implements AutoForFileService {
|
|||||||
File folder = new File(filePath);
|
File folder = new File(filePath);
|
||||||
// 2、获取到学生文件
|
// 2、获取到学生文件
|
||||||
File[] files = folder.listFiles();
|
File[] files = folder.listFiles();
|
||||||
for (File file : files) {
|
// 获取到题型
|
||||||
File csFiles = new File(file.getPath());
|
for (File txFile : files) {
|
||||||
String quId = csFiles.getName();
|
String name = txFile.getName();
|
||||||
File[] csFileList = csFiles.listFiles();
|
if ("文件处理".equals(name)) {
|
||||||
if (csFileList == null) {
|
File[] txFileList = txFile.listFiles();
|
||||||
System.err.println("子目录读取失败: " + csFiles.getAbsolutePath());
|
for (File stFile : txFileList) {
|
||||||
continue;
|
// 获取试题编号和试题ID
|
||||||
}
|
String quId = stFile.getName().split("@")[1];
|
||||||
for (File one_file : csFileList) {
|
String quNumber = stFile.getName().split("@")[0];
|
||||||
String name = one_file.getName();
|
File[] wjFiles = stFile.listFiles();
|
||||||
if ("文件处理".equals(name)) {
|
for (File wjFile : wjFiles) {
|
||||||
File[] cs_file_list = csFiles.listFiles();
|
if ("文件".equals(wjFile.getName())) {
|
||||||
String lastFilePath = one_file.getPath();
|
File fileFile = new File(wjFile.getPath());
|
||||||
File mysql_file = new File(one_file.getPath());
|
// 3、根据题号进行查询试题的相关信息
|
||||||
File[] lastFiles = one_file.listFiles();
|
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
||||||
// 3、根据题号进行查询试题的相关信息
|
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
||||||
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
EducationPaperScheme educationPaperScheme = result.get();
|
||||||
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
EducationPaperQu educationPaperQu = results.get();
|
||||||
|
String quScore = educationPaperScheme.getQuScores();
|
||||||
EducationPaperScheme educationPaperScheme = result.get();
|
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
||||||
EducationPaperQu educationPaperQu = results.get();
|
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
||||||
String quScore = educationPaperScheme.getQuScores();
|
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
||||||
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
||||||
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
||||||
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
judgementStr += "<p>试题名称:" + name + "</p>";
|
||||||
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
SourceAndText cpojo = fileServerice.Judgement(Double.parseDouble(quScore), fileFile, examQuestion, judgementStr);
|
||||||
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
score = score.add(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
judgementStr += "<p>试题名称:" + name + "</p>";
|
judgementStr = cpojo.getText();
|
||||||
SourceAndText cpojo = fileServerice.Judgement(Double.parseDouble(quScore), mysql_file, examQuestion, judgementStr);
|
judgementStr += "<p>试题得分:" + cpojo.getScore() + "</p>";
|
||||||
score = score.add(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
||||||
judgementStr = cpojo.getText();
|
// 通过 quId,stuId,paperId 查询
|
||||||
judgementStr += "<p>试题得分:" + cpojo.getScore() + "</p>";
|
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
||||||
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
if (stuPaperScoreDO != null) {
|
||||||
// 通过 quId,stuId,paperId 查询
|
// 说明已经是做过该题,需要更新数据
|
||||||
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
stuPaperScoreDO.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
if (stuPaperScoreDO != null) {
|
stuPaperScoreDO.setContent(judgementStr);
|
||||||
// 说明已经是做过该题,需要更新数据
|
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
||||||
stuPaperScoreDO.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
stuPaperScoreDO.setSubjectName(name);
|
||||||
stuPaperScoreDO.setContent(judgementStr);
|
stuPaperScoreDO.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
||||||
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
||||||
stuPaperScoreDO.setSubjectName(name);
|
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
||||||
stuPaperScoreDO.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
||||||
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
} else {
|
||||||
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
||||||
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
insertInfo.setStuId(stuInfoVo.getStuId());
|
||||||
} else {
|
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
||||||
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
insertInfo.setQuId(quId);
|
||||||
insertInfo.setStuId(stuInfoVo.getStuId());
|
insertInfo.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
insertInfo.setContent(judgementStr);
|
||||||
insertInfo.setQuId(quId);
|
insertInfo.setSort(educationPaperQu.getSort());
|
||||||
insertInfo.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
insertInfo.setSubjectName(name);
|
||||||
insertInfo.setContent(judgementStr);
|
insertInfo.setTrueScore(new BigDecimal(quScore));
|
||||||
insertInfo.setSort(educationPaperQu.getSort());
|
insertInfo.setTenantId(systemTenant.getId());
|
||||||
insertInfo.setSubjectName(name);
|
insertInfo.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
||||||
insertInfo.setTrueScore(new BigDecimal(quScore));
|
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
||||||
insertInfo.setTenantId(systemTenant.getId());
|
}
|
||||||
insertInfo.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
break;
|
||||||
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
}
|
||||||
}
|
}
|
||||||
System.out.println(judgementStr);
|
|
||||||
break;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -51,65 +51,66 @@ public class AutoForMysqlServiceImpl implements AutoForMysqlService {
|
|||||||
File folder = new File(filePath);
|
File folder = new File(filePath);
|
||||||
// 2、获取到学生文件
|
// 2、获取到学生文件
|
||||||
File[] files = folder.listFiles();
|
File[] files = folder.listFiles();
|
||||||
for (File file : files) {
|
// 获取到题型
|
||||||
File csFiles = new File(file.getPath());
|
for (File txFile : files) {
|
||||||
String quId = csFiles.getName();
|
String name = txFile.getName();
|
||||||
File[] csFileList = csFiles.listFiles();
|
if ("程序设计".equals(name)) {
|
||||||
if (csFileList == null) {
|
File[] txFileList = txFile.listFiles();
|
||||||
System.err.println("子目录读取失败: " + csFiles.getAbsolutePath());
|
for (File stFile : txFileList) {
|
||||||
continue;
|
// 获取试题编号和试题ID
|
||||||
}
|
String quId = stFile.getName().split("@")[1];
|
||||||
for (File one_file : csFileList) {
|
String quNumber = stFile.getName().split("@")[0];
|
||||||
String name = one_file.getName();
|
File[] wjFiles = stFile.listFiles();
|
||||||
if ("程序设计".equals(name)) {
|
for (File wjFile : wjFiles) {
|
||||||
File mysql_file = new File(one_file.getPath());
|
if ("文件".equals(wjFile.getName())) {
|
||||||
// 3、根据题号进行查询试题的相关信息
|
File mysql_file = new File(wjFile.getPath());
|
||||||
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(one_file.getName())).findFirst();
|
// 3、根据题号进行查询试题的相关信息
|
||||||
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
||||||
|
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
||||||
EducationPaperScheme educationPaperScheme = result.get();
|
EducationPaperScheme educationPaperScheme = result.get();
|
||||||
EducationPaperQu educationPaperQu = results.get();
|
EducationPaperQu educationPaperQu = results.get();
|
||||||
String quScore = educationPaperScheme.getQuScores();
|
String quScore = educationPaperScheme.getQuScores();
|
||||||
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
||||||
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
||||||
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
||||||
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
||||||
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
||||||
judgementStr += "<p>试题名称:" + name + "</p>";
|
judgementStr += "<p>试题名称:" + name + "</p>";
|
||||||
SourceAndText cpojo = mysqlLocalService.Judgement(Double.parseDouble(quScore), mysql_file, examQuestion, judgementStr);
|
SourceAndText cpojo = mysqlLocalService.Judgement(Double.parseDouble(quScore), mysql_file, examQuestion, judgementStr);
|
||||||
score = score.add(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
score = score.add(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
judgementStr = cpojo.getText();
|
judgementStr = cpojo.getText();
|
||||||
judgementStr += "<p>试题得分:" + cpojo.getScore() + "</p>";
|
judgementStr += "<p>试题得分:" + cpojo.getScore() + "</p>";
|
||||||
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
||||||
// 通过 quId,stuId,paperId 查询
|
// 通过 quId,stuId,paperId 查询
|
||||||
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
||||||
if (stuPaperScoreDO != null) {
|
if (stuPaperScoreDO != null) {
|
||||||
// 说明已经是做过该题,需要更新数据
|
// 说明已经是做过该题,需要更新数据
|
||||||
stuPaperScoreDO.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
stuPaperScoreDO.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
stuPaperScoreDO.setContent(judgementStr);
|
stuPaperScoreDO.setContent(judgementStr);
|
||||||
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
||||||
stuPaperScoreDO.setSubjectName(name);
|
stuPaperScoreDO.setSubjectName(name);
|
||||||
stuPaperScoreDO.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
stuPaperScoreDO.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
||||||
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
||||||
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
||||||
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
||||||
} else {
|
} else {
|
||||||
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
||||||
insertInfo.setStuId(stuInfoVo.getStuId());
|
insertInfo.setStuId(stuInfoVo.getStuId());
|
||||||
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
||||||
insertInfo.setQuId(quId);
|
insertInfo.setQuId(quId);
|
||||||
insertInfo.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
insertInfo.setScore(new BigDecimal(cpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
insertInfo.setContent(judgementStr);
|
insertInfo.setContent(judgementStr);
|
||||||
insertInfo.setSort(educationPaperQu.getSort());
|
insertInfo.setSort(educationPaperQu.getSort());
|
||||||
insertInfo.setSubjectName(one_file.getName());
|
insertInfo.setSubjectName(name);
|
||||||
insertInfo.setTrueScore(new BigDecimal(quScore));
|
insertInfo.setTrueScore(new BigDecimal(quScore));
|
||||||
insertInfo.setTenantId(systemTenant.getId());
|
insertInfo.setTenantId(systemTenant.getId());
|
||||||
insertInfo.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
insertInfo.setIsTrue(cpojo.getScore() == 0 ? 1 : cpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
||||||
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
||||||
|
}
|
||||||
|
System.out.println(judgementStr);
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
System.out.println(judgementStr);
|
|
||||||
break;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -123,18 +124,23 @@ public class AutoForMysqlServiceImpl implements AutoForMysqlService {
|
|||||||
File folder = new File(filePath);
|
File folder = new File(filePath);
|
||||||
// 2、获取到学生文件
|
// 2、获取到学生文件
|
||||||
File[] files = folder.listFiles();
|
File[] files = folder.listFiles();
|
||||||
for (File file : files) {
|
// 获取到题型
|
||||||
File csFiles = new File(file.getPath());
|
for (File txFile : files) {
|
||||||
String quId = csFiles.getName();
|
String name = txFile.getName();
|
||||||
File[] csFileList = csFiles.listFiles();
|
if ("程序设计".equals(name)) {
|
||||||
for (File one_file : csFileList) {
|
File[] txFileList = txFile.listFiles();
|
||||||
String name = one_file.getName();
|
for (File stFile : txFileList) {
|
||||||
if ("程序设计".equals(name)) {
|
// 获取试题编号和试题ID
|
||||||
File mysql_file = new File(one_file.getPath());
|
String quId = stFile.getName().split("@")[1];
|
||||||
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
File[] wjFiles = stFile.listFiles();
|
||||||
mysqlLocalService.JudgementFile( mysql_file, examQuestion);
|
for (File wjFile : wjFiles) {
|
||||||
break;
|
if ("文件".equals(wjFile.getName())) {
|
||||||
|
File mysql_file = new File(wjFile.getPath());
|
||||||
|
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
||||||
|
mysqlLocalService.JudgementFile(mysql_file, examQuestion);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -46,66 +46,70 @@ public class AutoForPsServiceImpl implements AutoForPsService{
|
|||||||
File folder = new File(filePath);
|
File folder = new File(filePath);
|
||||||
// 2、获取到学生文件
|
// 2、获取到学生文件
|
||||||
File[] files = folder.listFiles();
|
File[] files = folder.listFiles();
|
||||||
for (File file : files) {
|
// 获取到题型
|
||||||
File csFiles = new File(file.getPath());
|
for (File txFile : files) {
|
||||||
String quId = csFiles.getName();
|
String name = txFile.getName();
|
||||||
File[] csFileList = csFiles.listFiles();
|
|
||||||
if (csFileList == null) {
|
|
||||||
System.err.println("子目录读取失败: " + csFiles.getAbsolutePath());
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
String name = csFileList[0].getName();
|
|
||||||
if ("图像处理".equals(name)) {
|
if ("图像处理".equals(name)) {
|
||||||
File[] cs_file_list = csFiles.listFiles();
|
File[] txFileList = txFile.listFiles();
|
||||||
String lastFilePath = cs_file_list[0].getPath();
|
for (File stFile : txFileList) {
|
||||||
File[] lastFiles = cs_file_list[0].listFiles();
|
// 获取试题编号和试题ID
|
||||||
// 3、根据题号进行查询试题的相关信息
|
String quId = stFile.getName().split("@")[1];
|
||||||
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
String quNumber = stFile.getName().split("@")[0];
|
||||||
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
File[] wjFiles = stFile.listFiles();
|
||||||
|
for (File wjFile : wjFiles) {
|
||||||
EducationPaperScheme educationPaperScheme = result.get();
|
if ("文件".equals(wjFile.getName())) {
|
||||||
EducationPaperQu educationPaperQu = results.get();
|
// 3、根据题号进行查询试题的相关信息
|
||||||
String quScore = educationPaperScheme.getQuScores();
|
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
||||||
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
||||||
for (File lastFile : lastFiles) {
|
EducationPaperScheme educationPaperScheme = result.get();
|
||||||
if (lastFile.getName().contains("原始")) {
|
EducationPaperQu educationPaperQu = results.get();
|
||||||
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
String quScore = educationPaperScheme.getQuScores();
|
||||||
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
||||||
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
System.out.println(wjFile);
|
||||||
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
File[] lastFiles = wjFile.listFiles();
|
||||||
judgementStr += "<p>试题名称:" + name + "</p>";
|
for (File lastFile : lastFiles) {
|
||||||
SourceAndText wordpojo = psService.Judgement(Double.parseDouble(quScore), lastFilePath, lastFile.getPath(), examQuestion, judgementStr);
|
if (lastFile.getName().contains("原始")) {
|
||||||
score = score.add(new BigDecimal(wordpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
String filePaths = lastFile.getParent();
|
||||||
judgementStr = wordpojo.getText();
|
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
||||||
judgementStr += "<p>试题得分:" + wordpojo.getScore() + "</p>";
|
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
||||||
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
||||||
// 通过 quId,stuId,paperId 查询
|
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
||||||
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
judgementStr += "<p>试题名称:" + name + "</p>";
|
||||||
if (stuPaperScoreDO != null) {
|
SourceAndText wordpojo = psService.Judgement(Double.parseDouble(quScore), filePaths, lastFile.getPath(), examQuestion, judgementStr);
|
||||||
// 说明已经是做过该题,需要更新数据
|
score = score.add(new BigDecimal(wordpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
stuPaperScoreDO.setScore(new BigDecimal(wordpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
judgementStr = wordpojo.getText();
|
||||||
stuPaperScoreDO.setContent(judgementStr);
|
judgementStr += "<p>试题得分:" + wordpojo.getScore() + "</p>";
|
||||||
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
||||||
stuPaperScoreDO.setSubjectName(name);
|
// 通过 quId,stuId,paperId 查询
|
||||||
stuPaperScoreDO.setIsTrue(wordpojo.getScore() == 0 ? 1 : wordpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
||||||
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
if (stuPaperScoreDO != null) {
|
||||||
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
// 说明已经是做过该题,需要更新数据
|
||||||
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
stuPaperScoreDO.setScore(new BigDecimal(wordpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
} else {
|
stuPaperScoreDO.setContent(judgementStr);
|
||||||
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
||||||
insertInfo.setStuId(stuInfoVo.getStuId());
|
stuPaperScoreDO.setSubjectName(name);
|
||||||
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
stuPaperScoreDO.setIsTrue(wordpojo.getScore() == 0 ? 1 : wordpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
||||||
insertInfo.setQuId(quId);
|
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
||||||
insertInfo.setScore(new BigDecimal(wordpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
||||||
insertInfo.setContent(judgementStr);
|
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
||||||
insertInfo.setSort(educationPaperQu.getSort());
|
} else {
|
||||||
insertInfo.setSubjectName(name);
|
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
||||||
insertInfo.setTrueScore(new BigDecimal(quScore));
|
insertInfo.setStuId(stuInfoVo.getStuId());
|
||||||
insertInfo.setTenantId(systemTenant.getId());
|
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
||||||
insertInfo.setIsTrue(wordpojo.getScore() == 0 ? 1 : wordpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
insertInfo.setQuId(quId);
|
||||||
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
insertInfo.setScore(new BigDecimal(wordpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
|
insertInfo.setContent(judgementStr);
|
||||||
|
insertInfo.setSort(educationPaperQu.getSort());
|
||||||
|
insertInfo.setSubjectName(name);
|
||||||
|
insertInfo.setTrueScore(new BigDecimal(quScore));
|
||||||
|
insertInfo.setTenantId(systemTenant.getId());
|
||||||
|
insertInfo.setIsTrue(wordpojo.getScore() == 0 ? 1 : wordpojo.getScore() == Double.parseDouble(quScore) ? 0 : 2);
|
||||||
|
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -89,7 +89,8 @@ public class JudgementServiceImpl implements JudgementService
|
|||||||
// 进行关键字权重比对进行判断
|
// 进行关键字权重比对进行判断
|
||||||
|
|
||||||
for (ExamQuestionKeyword examQuestionKeyword : examQuestion.getQuestionKeywords()) {
|
for (ExamQuestionKeyword examQuestionKeyword : examQuestion.getQuestionKeywords()) {
|
||||||
boolean keyword_run = code.contains(examQuestionKeyword.getKeyword());
|
String codeSpacking = code.replace(" ","");
|
||||||
|
boolean keyword_run = codeSpacking.contains(examQuestionKeyword.getKeyword());
|
||||||
// 计算权值
|
// 计算权值
|
||||||
Map<String, Object> item = new HashMap<>();
|
Map<String, Object> item = new HashMap<>();
|
||||||
item.put("success", keyword_run);
|
item.put("success", keyword_run);
|
||||||
|
@@ -63,18 +63,14 @@ public class IMysqlLocalServiceImpl implements IMysqlLocalService {
|
|||||||
File folder = new File(stuFilePath);
|
File folder = new File(stuFilePath);
|
||||||
// 5、解压之后得文件获取文件夹和文件
|
// 5、解压之后得文件获取文件夹和文件
|
||||||
String stu_files = null;
|
String stu_files = null;
|
||||||
|
|
||||||
// 5.2、查询试题ID
|
// 5.2、查询试题ID
|
||||||
|
|
||||||
List<ExamQuestionAnswer> examQuestionAnswers = examQuestionAnswerMapper.selectExamQuestionAnswerByQuId(examQuestion.getQuId());
|
List<ExamQuestionAnswer> examQuestionAnswers = examQuestionAnswerMapper.selectExamQuestionAnswerByQuId(examQuestion.getQuId());
|
||||||
int correctCount = 0; // 完全正确的题目数量
|
int correctCount = 0; // 完全正确的题目数量
|
||||||
int totalQuestions = examQuestionAnswers.size(); // 总题目数量// 总题目数量
|
int totalQuestions = examQuestionAnswers.size(); // 总题目数量// 总题目数量
|
||||||
String totalKeyScore ="0";
|
String totalKeyScore ="0";
|
||||||
//得出 这个题总共的权值点
|
//得出 这个题总共的权值点
|
||||||
totalKeyScore=examQuestionAnswerMapper.selectCountPointByQuId(examQuestion.getQuId());
|
totalKeyScore=examQuestionAnswerMapper.selectCountPointByQuId(examQuestion.getQuId());
|
||||||
|
|
||||||
answerLogPath = filepath.getParent() + File.separator + "log.txt";
|
answerLogPath = filepath.getParent() + File.separator + "log.txt";
|
||||||
|
|
||||||
AtomicInteger total = new AtomicInteger();
|
AtomicInteger total = new AtomicInteger();
|
||||||
// 文件路径
|
// 文件路径
|
||||||
|
|
||||||
|
@@ -52,66 +52,69 @@ public class JudgementForExcelServiceImpl implements JudgementForExcelService {
|
|||||||
File folder = new File(filePath);
|
File folder = new File(filePath);
|
||||||
// 2、获取到学生文件
|
// 2、获取到学生文件
|
||||||
File[] files = folder.listFiles();
|
File[] files = folder.listFiles();
|
||||||
for (File file : files) {
|
// 获取到题型
|
||||||
File csFiles = new File(file.getPath());
|
for (File txFile : files) {
|
||||||
String quId = csFiles.getName();
|
String name = txFile.getName();
|
||||||
File[] csFileList = csFiles.listFiles();
|
if ("表格".equals(name)) {
|
||||||
if (csFileList == null) {
|
File[] txFileList = txFile.listFiles();
|
||||||
System.err.println("子目录读取失败: " + csFiles.getAbsolutePath());
|
for (File stFile : txFileList) {
|
||||||
continue;
|
// 获取试题编号和试题ID
|
||||||
}
|
String quId = stFile.getName().split("@")[1];
|
||||||
for (File csFile : csFileList) {
|
String quNumber = stFile.getName().split("@")[0];
|
||||||
String name = csFile.getName();
|
File[] wjFiles = stFile.listFiles();
|
||||||
if ("表格".equals(name)) {
|
for (File wjFile : wjFiles) {
|
||||||
File[] cs_file_list = csFile.listFiles();
|
if ("文件".equals(wjFile.getName())) {
|
||||||
// 3、根据题号进行查询试题的相关信息
|
// 3、根据题号进行查询试题的相关信息
|
||||||
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
||||||
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
||||||
|
EducationPaperScheme educationPaperScheme = result.get();
|
||||||
EducationPaperScheme educationPaperScheme = result.get();
|
EducationPaperQu educationPaperQu = results.get();
|
||||||
EducationPaperQu educationPaperQu = results.get();
|
String quScore = educationPaperScheme.getQuScores();
|
||||||
String quScore = educationPaperScheme.getQuScores();
|
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
||||||
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
System.out.println(wjFile);
|
||||||
for (File lastFile : cs_file_list) {
|
File[] lastFiles = wjFile.listFiles();
|
||||||
if (lastFile.getName().contains("文档")) {
|
for (File lastFile : lastFiles) {
|
||||||
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
if (lastFile.getName().contains("文档")) {
|
||||||
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
||||||
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
||||||
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
||||||
judgementStr += "<p>试题名称:" + name + "</p>";
|
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
||||||
SourceAndText excelpojo = judgementWpsExcelService.judgementWpsXlsx(Double.parseDouble(quScore), lastFile.getPath(), lastFile.getPath(), examQuestion, judgementStr);
|
judgementStr += "<p>试题名称:" + name + "</p>";
|
||||||
score = score.add(new BigDecimal(excelpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
SourceAndText excelpojo = judgementWpsExcelService.judgementWpsXlsx(Double.parseDouble(quScore), lastFile.getPath(), lastFile.getPath(), examQuestion, judgementStr);
|
||||||
judgementStr = excelpojo.getText();
|
score = score.add(new BigDecimal(excelpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
BigDecimal dangSource = new BigDecimal(excelpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP);
|
judgementStr = excelpojo.getText();
|
||||||
judgementStr += "<p>试题得分:" + dangSource + "</p>";
|
BigDecimal dangSource = new BigDecimal(excelpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP);
|
||||||
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
judgementStr += "<p>试题得分:" + dangSource + "</p>";
|
||||||
// 通过 quId,stuId,paperId 查询
|
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
||||||
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
// 通过 quId,stuId,paperId 查询
|
||||||
if (stuPaperScoreDO != null) {
|
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
||||||
// 说明已经是做过该题,需要更新数据
|
if (stuPaperScoreDO != null) {
|
||||||
stuPaperScoreDO.setScore(dangSource);
|
// 说明已经是做过该题,需要更新数据
|
||||||
stuPaperScoreDO.setContent(judgementStr);
|
stuPaperScoreDO.setScore(dangSource);
|
||||||
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
stuPaperScoreDO.setContent(judgementStr);
|
||||||
stuPaperScoreDO.setSubjectName(name);
|
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
||||||
stuPaperScoreDO.setIsTrue(excelpojo.getScore() == 0 ? 1 : excelpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
stuPaperScoreDO.setSubjectName(name);
|
||||||
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
stuPaperScoreDO.setIsTrue(excelpojo.getScore() == 0 ? 1 : excelpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
||||||
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
||||||
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
||||||
} else {
|
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
||||||
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
} else {
|
||||||
insertInfo.setStuId(stuInfoVo.getStuId());
|
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
||||||
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
insertInfo.setStuId(stuInfoVo.getStuId());
|
||||||
insertInfo.setQuId(quId);
|
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
||||||
insertInfo.setScore(dangSource);
|
insertInfo.setQuId(quId);
|
||||||
insertInfo.setContent(judgementStr);
|
insertInfo.setScore(dangSource);
|
||||||
insertInfo.setSort(educationPaperQu.getSort());
|
insertInfo.setContent(judgementStr);
|
||||||
insertInfo.setSubjectName(name);
|
insertInfo.setSort(educationPaperQu.getSort());
|
||||||
insertInfo.setTrueScore(new BigDecimal(quScore));
|
insertInfo.setSubjectName(name);
|
||||||
insertInfo.setTenantId(systemTenant.getId());
|
insertInfo.setTrueScore(new BigDecimal(quScore));
|
||||||
insertInfo.setIsTrue(excelpojo.getScore() == 0 ? 1 : excelpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
insertInfo.setTenantId(systemTenant.getId());
|
||||||
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
insertInfo.setIsTrue(excelpojo.getScore() == 0 ? 1 : excelpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
||||||
|
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -53,66 +53,69 @@ public class JudgementForPptxServiceImpl implements JudgementForPptxService {
|
|||||||
File folder = new File(filePath);
|
File folder = new File(filePath);
|
||||||
// 2、获取到学生文件
|
// 2、获取到学生文件
|
||||||
File[] files = folder.listFiles();
|
File[] files = folder.listFiles();
|
||||||
for (File file : files) {
|
// 获取到题型
|
||||||
File csFiles = new File(file.getPath());
|
for (File txFile : files) {
|
||||||
String quId = csFiles.getName();
|
String name = txFile.getName();
|
||||||
File[] csFileList = csFiles.listFiles();
|
if ("演示".equals(name)) {
|
||||||
if (csFileList == null) {
|
File[] txFileList = txFile.listFiles();
|
||||||
System.err.println("子目录读取失败: " + csFiles.getAbsolutePath());
|
for (File stFile : txFileList) {
|
||||||
continue;
|
// 获取试题编号和试题ID
|
||||||
}
|
String quId = stFile.getName().split("@")[1];
|
||||||
for (File csFile : csFileList) {
|
String quNumber = stFile.getName().split("@")[0];
|
||||||
String name = csFile.getName();
|
File[] wjFiles = stFile.listFiles();
|
||||||
if ("演示".equals(name)) {
|
for (File wjFile : wjFiles) {
|
||||||
File[] cs_file_list = csFile.listFiles();
|
if ("文件".equals(wjFile.getName())) {
|
||||||
// 3、根据题号进行查询试题的相关信息
|
// 3、根据题号进行查询试题的相关信息
|
||||||
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
||||||
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
||||||
EducationPaperScheme educationPaperScheme = result.get();
|
EducationPaperScheme educationPaperScheme = result.get();
|
||||||
EducationPaperQu educationPaperQu = results.get();
|
EducationPaperQu educationPaperQu = results.get();
|
||||||
String quScore = educationPaperScheme.getQuScores();
|
String quScore = educationPaperScheme.getQuScores();
|
||||||
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
||||||
for (File lastFile : cs_file_list) {
|
System.out.println(wjFile);
|
||||||
String fileNames = lastFile.getName();
|
File[] lastFiles = wjFile.listFiles();
|
||||||
if (fileNames.contains("文档")) {
|
for (File lastFile : lastFiles) {
|
||||||
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
if (lastFile.getName().contains("文档")) {
|
||||||
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
||||||
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
||||||
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
||||||
judgementStr += "<p>试题名称:" + name + "</p>";
|
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
||||||
SourceAndText pptxpojo = judgementWpsPptxService.judgementWpsPptx(Double.parseDouble(quScore), lastFile.getPath(), lastFile.getPath(), examQuestion, judgementStr);
|
judgementStr += "<p>试题名称:" + name + "</p>";
|
||||||
score = score.add(new BigDecimal(pptxpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
SourceAndText pptxpojo = judgementWpsPptxService.judgementWpsPptx(Double.parseDouble(quScore), lastFile.getPath(), lastFile.getPath(), examQuestion, judgementStr);
|
||||||
judgementStr = pptxpojo.getText();
|
score = score.add(new BigDecimal(pptxpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
BigDecimal dangSource = new BigDecimal(pptxpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP);
|
judgementStr = pptxpojo.getText();
|
||||||
judgementStr += "<p>试题得分:" + dangSource + "</p>";
|
BigDecimal dangSource = new BigDecimal(pptxpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP);
|
||||||
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
judgementStr += "<p>试题得分:" + dangSource + "</p>";
|
||||||
// 通过 quId,stuId,paperId 查询
|
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
||||||
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
// 通过 quId,stuId,paperId 查询
|
||||||
if (stuPaperScoreDO != null) {
|
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
||||||
// 说明已经是做过该题,需要更新数据
|
if (stuPaperScoreDO != null) {
|
||||||
stuPaperScoreDO.setScore(dangSource);
|
// 说明已经是做过该题,需要更新数据
|
||||||
stuPaperScoreDO.setContent(judgementStr);
|
stuPaperScoreDO.setScore(dangSource);
|
||||||
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
stuPaperScoreDO.setContent(judgementStr);
|
||||||
stuPaperScoreDO.setSubjectName(name);
|
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
||||||
stuPaperScoreDO.setIsTrue(pptxpojo.getScore() == 0 ? 1 : pptxpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
stuPaperScoreDO.setSubjectName(name);
|
||||||
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
stuPaperScoreDO.setIsTrue(pptxpojo.getScore() == 0 ? 1 : pptxpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
||||||
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
||||||
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
||||||
} else {
|
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
||||||
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
} else {
|
||||||
insertInfo.setStuId(stuInfoVo.getStuId());
|
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
||||||
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
insertInfo.setStuId(stuInfoVo.getStuId());
|
||||||
insertInfo.setQuId(quId);
|
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
||||||
insertInfo.setScore(dangSource);
|
insertInfo.setQuId(quId);
|
||||||
insertInfo.setContent(judgementStr);
|
insertInfo.setScore(dangSource);
|
||||||
insertInfo.setSort(educationPaperQu.getSort());
|
insertInfo.setContent(judgementStr);
|
||||||
insertInfo.setSubjectName(name);
|
insertInfo.setSort(educationPaperQu.getSort());
|
||||||
insertInfo.setTrueScore(new BigDecimal(quScore));
|
insertInfo.setSubjectName(name);
|
||||||
insertInfo.setTenantId(systemTenant.getId());
|
insertInfo.setTrueScore(new BigDecimal(quScore));
|
||||||
insertInfo.setIsTrue(pptxpojo.getScore() == 0 ? 1 : pptxpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
insertInfo.setTenantId(systemTenant.getId());
|
||||||
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
insertInfo.setIsTrue(pptxpojo.getScore() == 0 ? 1 : pptxpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
||||||
|
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -50,71 +50,73 @@ public class JudgementForWordServiceImpl implements JudgementForWordService {
|
|||||||
File folder = new File(filePath);
|
File folder = new File(filePath);
|
||||||
// 2、获取到学生文件
|
// 2、获取到学生文件
|
||||||
File[] files = folder.listFiles();
|
File[] files = folder.listFiles();
|
||||||
for (File file : files) {
|
// 获取到题型
|
||||||
File csFiles = new File(file.getPath());
|
for (File txFile : files) {
|
||||||
String quId = csFiles.getName();
|
String name = txFile.getName();
|
||||||
File[] csFileList = csFiles.listFiles();
|
if ("文字".equals(name)) {
|
||||||
if (csFileList == null) {
|
File[] txFileList = txFile.listFiles();
|
||||||
System.err.println("子目录读取失败: " + csFiles.getAbsolutePath());
|
for (File stFile : txFileList) {
|
||||||
continue;
|
// 获取试题编号和试题ID
|
||||||
}
|
String quId = stFile.getName().split("@")[1];
|
||||||
for (File csFile : csFileList) {
|
String quNumber = stFile.getName().split("@")[0];
|
||||||
String name = csFile.getName();
|
File[] wjFiles = stFile.listFiles();
|
||||||
if ("文字".equals(name)) {
|
for (File wjFile : wjFiles) {
|
||||||
File[] cs_file_list = csFile.listFiles();
|
if ("文件".equals(wjFile.getName())) {
|
||||||
// 3、根据题号进行查询试题的相关信息
|
// 3、根据题号进行查询试题的相关信息
|
||||||
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
Optional<EducationPaperScheme> result = educationPaperSchemeList.stream().filter(quLists -> quLists.getSpName().equals(name)).findFirst();
|
||||||
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
Optional<EducationPaperQu> results = educationPaperQus.stream().filter(quLists -> quLists.getQuId().equals(quId)).findFirst();
|
||||||
|
EducationPaperScheme educationPaperScheme = result.get();
|
||||||
EducationPaperScheme educationPaperScheme = result.get();
|
EducationPaperQu educationPaperQu = results.get();
|
||||||
EducationPaperQu educationPaperQu = results.get();
|
String quScore = educationPaperScheme.getQuScores();
|
||||||
String quScore = educationPaperScheme.getQuScores();
|
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
||||||
ExamQuestion examQuestion = examQuestionService.selectExamQuestionByQuId(quId);
|
System.out.println(wjFile);
|
||||||
for (File lastFile : cs_file_list) {
|
File[] lastFiles = wjFile.listFiles();
|
||||||
if (lastFile.getName().contains("文档")) {
|
for (File lastFile : lastFiles) {
|
||||||
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
if (lastFile.getName().contains("文档")) {
|
||||||
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
String judgementStr = "<p>-----------------------------------------------------------</p>";
|
||||||
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
judgementStr += "<p>试题序号:" + educationPaperQu.getSort() + "</p>";
|
||||||
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
judgementStr += "<p>试题编号:" + examQuestion.getQuNum() + "</p>";
|
||||||
judgementStr += "<p>试题名称:" + name + "</p>";
|
judgementStr += "<p>试题分数:" + Double.parseDouble(quScore) + "</p>";
|
||||||
SourceAndText wordpojo = judgementWpsWordService.judgementWpsWord(Double.parseDouble(quScore), lastFile.getPath(), lastFile.getPath(), examQuestion, judgementStr);
|
judgementStr += "<p>试题名称:" + name + "</p>";
|
||||||
score = score.add(new BigDecimal(wordpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
SourceAndText wordpojo = judgementWpsWordService.judgementWpsWord(Double.parseDouble(quScore), lastFile.getPath(), lastFile.getPath(), examQuestion, judgementStr);
|
||||||
judgementStr = wordpojo.getText();
|
score = score.add(new BigDecimal(wordpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP));
|
||||||
BigDecimal dangSource = new BigDecimal(wordpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP);
|
judgementStr = wordpojo.getText();
|
||||||
judgementStr += "<p>试题得分:" + dangSource + "</p>";
|
BigDecimal dangSource = new BigDecimal(wordpojo.getScore()).setScale(1, BigDecimal.ROUND_HALF_UP);
|
||||||
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
judgementStr += "<p>试题得分:" + dangSource + "</p>";
|
||||||
// 通过 quId,stuId,paperId 查询
|
// 4、需要更新学生试题得分,首先需要查询试题的数据库是否保存信息
|
||||||
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
// 通过 quId,stuId,paperId 查询
|
||||||
if (stuPaperScoreDO != null) {
|
StuPaperScoreDO stuPaperScoreDO = stuPaperScoreService.getStuScoreByPaperIdAndQuid(stuInfoVo.getStuId(), stuInfoVo.getPaperId(), quId);
|
||||||
// 说明已经是做过该题,需要更新数据
|
if (stuPaperScoreDO != null) {
|
||||||
stuPaperScoreDO.setScore(dangSource);
|
// 说明已经是做过该题,需要更新数据
|
||||||
stuPaperScoreDO.setContent(judgementStr);
|
stuPaperScoreDO.setScore(dangSource);
|
||||||
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
stuPaperScoreDO.setContent(judgementStr);
|
||||||
stuPaperScoreDO.setSubjectName(name);
|
stuPaperScoreDO.setSort(educationPaperQu.getSort());
|
||||||
stuPaperScoreDO.setIsTrue(wordpojo.getScore() == 0 ? 1 : wordpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
stuPaperScoreDO.setSubjectName(name);
|
||||||
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
stuPaperScoreDO.setIsTrue(wordpojo.getScore() == 0 ? 1 : wordpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
||||||
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
stuPaperScoreDO.setTrueScore(new BigDecimal(quScore));
|
||||||
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
stuPaperScoreDO.setTenantId(systemTenant.getId());
|
||||||
} else {
|
stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO);
|
||||||
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
} else {
|
||||||
insertInfo.setStuId(stuInfoVo.getStuId());
|
StuPaperScoreDO insertInfo = new StuPaperScoreDO();
|
||||||
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
insertInfo.setStuId(stuInfoVo.getStuId());
|
||||||
insertInfo.setQuId(quId);
|
insertInfo.setPaperId(stuInfoVo.getPaperId());
|
||||||
insertInfo.setScore(dangSource);
|
insertInfo.setQuId(quId);
|
||||||
insertInfo.setContent(judgementStr);
|
insertInfo.setScore(dangSource);
|
||||||
insertInfo.setSort(educationPaperQu.getSort());
|
insertInfo.setContent(judgementStr);
|
||||||
insertInfo.setSubjectName(name);
|
insertInfo.setSort(educationPaperQu.getSort());
|
||||||
insertInfo.setTrueScore(new BigDecimal(quScore));
|
insertInfo.setSubjectName(name);
|
||||||
insertInfo.setTenantId(systemTenant.getId());
|
insertInfo.setTrueScore(new BigDecimal(quScore));
|
||||||
insertInfo.setIsTrue(wordpojo.getScore() == 0 ? 1 : wordpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
insertInfo.setTenantId(systemTenant.getId());
|
||||||
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
insertInfo.setIsTrue(wordpojo.getScore() == 0 ? 1 : wordpojo.getScore() >= Double.parseDouble(quScore) ? 0 : 2);
|
||||||
|
stuPaperScoreService.insertStuPaperScore(insertInfo);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return score;
|
return score;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user