diff --git a/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/controller/admin/Wps/dto/WpsWordJudgementDto.java b/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/controller/admin/Wps/dto/WpsWordJudgementDto.java index 1c498f5e..9b9d4423 100644 --- a/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/controller/admin/Wps/dto/WpsWordJudgementDto.java +++ b/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/controller/admin/Wps/dto/WpsWordJudgementDto.java @@ -7,7 +7,8 @@ import lombok.Data; */ @Data public class WpsWordJudgementDto { - private String function; + private String content; private String contentIn; - private String type; + private String image; + private String scoreRate; } diff --git a/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/service/auto_tools/AutoToolsServiceImpl.java b/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/service/auto_tools/AutoToolsServiceImpl.java index d34384c3..e353bd90 100644 --- a/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/service/auto_tools/AutoToolsServiceImpl.java +++ b/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/service/auto_tools/AutoToolsServiceImpl.java @@ -214,7 +214,7 @@ public class AutoToolsServiceImpl implements AutoToolsService{ select_file.delete(); } // 2、判断文件路径是否存在 - if (stuPaperFileDO == null) { + if (stuPaperFileDO != null) { // return CommonResult.error(100031, "试题文件没有上传,无法判分!"); // 3、下载文件 String patn = downloadStudentFile(stuPaperFileDO.getUrl(), config.getValue()); @@ -275,7 +275,7 @@ public class AutoToolsServiceImpl implements AutoToolsService{ stuPaperScoreDO.setPaperId(paperId); isNull = true; } - if ("C语言编程题".equals(one_file.getName().split("\\.")[0])) { + if ("编程题".equals(one_file.getName().split("\\.")[0])) { double c_score = judgementService.ProgrammingC(15.0, one_file.getPath(), file_one.getName(), examQuestion); score += c_score; stuPaperScoreDO.setScore(new BigDecimal(c_score)); @@ -301,7 +301,7 @@ public class AutoToolsServiceImpl implements AutoToolsService{ break; } // wps 类型存在多级文文件夹,需要个性化设置 - if ("WPS文字".equals(one_file.getName().split("\\.")[0])) { + if ("文字".equals(one_file.getName().split("\\.")[0])) { double wps_word_score = judgementWpsWordService.judgementWpsWord(15.0, one_file.getPath(), file_one.getPath(), examQuestion); score += wps_word_score; stuPaperScoreDO.setScore(new BigDecimal(wps_word_score)); @@ -326,56 +326,56 @@ public class AutoToolsServiceImpl implements AutoToolsService{ System.out.println(wps_word_score+"wps_word得分"); break; } - if ("WPS演示".equals(one_file.getName().split("\\.")[0])) { - double wps_pptx_score = judgementWpsPptxService.judgementWpsPptx(15.0, one_file.getPath(), file_one.getPath(), examQuestion); - score += wps_pptx_score; - stuPaperScoreDO.setScore(new BigDecimal(wps_pptx_score)); - // 原始正确分数 - stuPaperScoreDO.setTrueScore(new BigDecimal("15.0")); - // 判断题是否正确 - if (wps_pptx_score == 15.0) { - stuPaperScoreDO.setIsTrue(0); - } else if (wps_pptx_score == 0) { - stuPaperScoreDO.setIsTrue(1); - } else { - stuPaperScoreDO.setIsTrue(2); - } - stuPaperScoreDO.setSubjectName(examQuestion.getSubjectName()); - if (isNull) { - // 如果之前没做过,则插入该题的分数 - stuPaperScoreService.insertStuPaperScore(stuPaperScoreDO); - } else { - // 如果之前做过,则更新该题的分数 - stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO); - } - System.out.println(wps_pptx_score+"wps_ppt得分"); - break; - } - if ("WPS表格".equals(one_file.getName().split("\\.")[0])) { - double wps_excel_score = judgementWpsExcelService.judgementWpsXlsx(15.0, one_file.getPath(), file_one.getPath(), examQuestion); - score += wps_excel_score; - stuPaperScoreDO.setScore(new BigDecimal(wps_excel_score)); - // 原始正确分数 - stuPaperScoreDO.setTrueScore(new BigDecimal("15.0")); - // 判断题是否正确 - if (wps_excel_score == 15.0) { - stuPaperScoreDO.setIsTrue(0); - } else if (wps_excel_score == 0) { - stuPaperScoreDO.setIsTrue(1); - } else { - stuPaperScoreDO.setIsTrue(2); - } - stuPaperScoreDO.setSubjectName(examQuestion.getSubjectName()); - if (isNull) { - // 如果之前没做过,则插入该题的分数 - stuPaperScoreService.insertStuPaperScore(stuPaperScoreDO); - } else { - // 如果之前做过,则更新该题的分数 - stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO); - } - System.out.println(wps_excel_score+"wps_excel得分"); - break; - } +// if ("演示".equals(one_file.getName().split("\\.")[0])) { +// double wps_pptx_score = judgementWpsPptxService.judgementWpsPptx(15.0, one_file.getPath(), file_one.getPath(), examQuestion); +// score += wps_pptx_score; +// stuPaperScoreDO.setScore(new BigDecimal(wps_pptx_score)); +// // 原始正确分数 +// stuPaperScoreDO.setTrueScore(new BigDecimal("15.0")); +// // 判断题是否正确 +// if (wps_pptx_score == 15.0) { +// stuPaperScoreDO.setIsTrue(0); +// } else if (wps_pptx_score == 0) { +// stuPaperScoreDO.setIsTrue(1); +// } else { +// stuPaperScoreDO.setIsTrue(2); +// } +// stuPaperScoreDO.setSubjectName(examQuestion.getSubjectName()); +// if (isNull) { +// // 如果之前没做过,则插入该题的分数 +// stuPaperScoreService.insertStuPaperScore(stuPaperScoreDO); +// } else { +// // 如果之前做过,则更新该题的分数 +// stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO); +// } +// System.out.println(wps_pptx_score+"wps_ppt得分"); +// break; +// } +// if ("表格".equals(one_file.getName().split("\\.")[0])) { +// double wps_excel_score = judgementWpsExcelService.judgementWpsXlsx(15.0, one_file.getPath(), file_one.getPath(), examQuestion); +// score += wps_excel_score; +// stuPaperScoreDO.setScore(new BigDecimal(wps_excel_score)); +// // 原始正确分数 +// stuPaperScoreDO.setTrueScore(new BigDecimal("15.0")); +// // 判断题是否正确 +// if (wps_excel_score == 15.0) { +// stuPaperScoreDO.setIsTrue(0); +// } else if (wps_excel_score == 0) { +// stuPaperScoreDO.setIsTrue(1); +// } else { +// stuPaperScoreDO.setIsTrue(2); +// } +// stuPaperScoreDO.setSubjectName(examQuestion.getSubjectName()); +// if (isNull) { +// // 如果之前没做过,则插入该题的分数 +// stuPaperScoreService.insertStuPaperScore(stuPaperScoreDO); +// } else { +// // 如果之前做过,则更新该题的分数 +// stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO); +// } +// System.out.println(wps_excel_score+"wps_excel得分"); +// break; +// } //windows文件处理 if ("文件处理".equals(one_file.getName().split("\\.")[0])) { File win_file = new File(one_file.getPath()); @@ -433,33 +433,33 @@ public class AutoToolsServiceImpl implements AutoToolsService{ break; } - if ("程序设计".equals(one_file.getName().split("\\.")[0])) { - System.out.println(one_file); - File mysql_file = new File(one_file.getPath()); - double judgement = mysqlServerice.Judgement(20.0,mysql_file, examQuestion); - score+=judgement; - stuPaperScoreDO.setScore(new BigDecimal(judgement)); - // 原始正确分数 - stuPaperScoreDO.setTrueScore(new BigDecimal("15.0")); - // 判断题是否正确 - if (judgement == 20.0) { - stuPaperScoreDO.setIsTrue(0); - } else if (judgement == 0) { - stuPaperScoreDO.setIsTrue(1); - } else { - stuPaperScoreDO.setIsTrue(2); - } - stuPaperScoreDO.setSubjectName(examQuestion.getSubjectName()); - if (isNull) { - // 如果之前没做过,则插入该题的分数 - stuPaperScoreService.insertStuPaperScore(stuPaperScoreDO); - } else { - // 如果之前做过,则更新该题的分数 - stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO); - } - System.out.println(judgement+"mysql得分"); - break; - } +// if ("程序设计".equals(one_file.getName().split("\\.")[0])) { +// System.out.println(one_file); +// File mysql_file = new File(one_file.getPath()); +// double judgement = mysqlServerice.Judgement(20.0,mysql_file, examQuestion); +// score+=judgement; +// stuPaperScoreDO.setScore(new BigDecimal(judgement)); +// // 原始正确分数 +// stuPaperScoreDO.setTrueScore(new BigDecimal("15.0")); +// // 判断题是否正确 +// if (judgement == 20.0) { +// stuPaperScoreDO.setIsTrue(0); +// } else if (judgement == 0) { +// stuPaperScoreDO.setIsTrue(1); +// } else { +// stuPaperScoreDO.setIsTrue(2); +// } +// stuPaperScoreDO.setSubjectName(examQuestion.getSubjectName()); +// if (isNull) { +// // 如果之前没做过,则插入该题的分数 +// stuPaperScoreService.insertStuPaperScore(stuPaperScoreDO); +// } else { +// // 如果之前做过,则更新该题的分数 +// stuPaperScoreService.updateStuPaperScore(stuPaperScoreDO); +// } +// System.out.println(judgement+"mysql得分"); +// break; +// } } } diff --git a/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/service/wps_word/JudgementWpsWordServiceImpl.java b/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/service/wps_word/JudgementWpsWordServiceImpl.java index 1ab0ed86..15fb37ab 100644 --- a/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/service/wps_word/JudgementWpsWordServiceImpl.java +++ b/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/service/wps_word/JudgementWpsWordServiceImpl.java @@ -113,10 +113,10 @@ public class JudgementWpsWordServiceImpl implements JudgementWpsWordService { boolean flag = false; double one_sorce = 0; for (WpsWordJudgementDto wordJudgementDto : judgementDtos) { - if (wordJudgementDto.getFunction() != null) { + if (wordJudgementDto.getContent() != null) { // for (String str : wordJudgementDto.getFunction()) { int index = 0; - if (wordJudgementDto.getFunction().equals(examQuestionAnswer.getContent())) { + if (wordJudgementDto.getContent().equals(examQuestionAnswer.getContent())) { flag = true; // 得分 根据权重进行得分 每个选项分值 = 总分 / 总权重 diff --git a/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/utils/wps_word/WpsWordUtils.java b/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/utils/wps_word/WpsWordUtils.java index 69492fb6..0f173874 100644 --- a/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/utils/wps_word/WpsWordUtils.java +++ b/exam-module-judgement/exam-module-judgement-biz/src/main/java/pc/exam/pp/module/judgement/utils/wps_word/WpsWordUtils.java @@ -87,22 +87,24 @@ public class WpsWordUtils { if (wpCursor.toNextSelection()) { if ("1".equals(wpsWordReqDto.getParameter())) { judgement.setContentIn(wpsWordReqDto.getChineseName() + "-" + chineseName + "true"); - judgement.setFunction(wpsWordReqDto.getEnglishName() + functionAll + "-/" + "true"); + judgement.setContent(wpsWordReqDto.getEnglishName() + functionAll + "-/" + "true"); } else { String value = wpCursor.getTextValue(); judgement.setContentIn(wpsWordReqDto.getChineseName() + "-" + chineseName + value); - judgement.setFunction(wpsWordReqDto.getEnglishName() + functionAll + "-/" + value); + judgement.setContent(wpsWordReqDto.getEnglishName() + functionAll + "-/" + value); } - judgement.setType(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setScoreRate("1"); + judgement.setImage(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); // 查询指定值,返回固定的文本 judgementList.add(judgement); } else { // 参数类型(0:值;1:判断) if ("1".equals(wpsWordReqDto.getParameter())) { judgement.setContentIn(wpsWordReqDto.getChineseName() + "-" + chineseName + "false"); - judgement.setFunction(wpsWordReqDto.getEnglishName() + functionAll + "-/" + "false"); - judgement.setType(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setContent(wpsWordReqDto.getEnglishName() + functionAll + "-/" + "false"); + judgement.setImage(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setScoreRate("1"); judgementList.add(judgement); } } @@ -146,8 +148,9 @@ public class WpsWordUtils { if (headerXml.toNextSelection()) { String value = headerXml.getTextValue(); judgement.setContentIn(wpsWordReqDto.getChineseName()+"-"+wpsWordReqDto.getFunction().get(0).getChineseName()+ "-"+ chineseType +"-" +wpsWordReqDto.getFunction().get(1).getChineseName()+"-"+value); - judgement.setFunction(wpsWordReqDto.getEnglishName()+"-"+wpsWordReqDto.getFunction().get(0).getFunction()+"-" +wpsWordReqDto.getFunction().get(1).getFunction()+"-/"+value+ "-"+ headerVo.getType()); - judgement.setType(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setContent(wpsWordReqDto.getEnglishName()+"-"+wpsWordReqDto.getFunction().get(0).getFunction()+"-" +wpsWordReqDto.getFunction().get(1).getFunction()+"-/"+value+ "-"+ headerVo.getType()); + judgement.setImage(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setScoreRate("1"); judgementList.add(judgement); } } @@ -165,8 +168,9 @@ public class WpsWordUtils { if (headerXml.toNextSelection()) { String value = headerXml.getTextValue(); judgement.setContentIn(wpsWordReqDto.getChineseName()+"-"+wpsWordReqDto.getFunction().get(0).getChineseName()+ "-"+ chineseType +"-" +wpsWordReqDto.getFunction().get(1).getChineseName()+"-"+value); - judgement.setFunction(wpsWordReqDto.getEnglishName()+"-"+wpsWordReqDto.getFunction().get(0).getFunction()+"-" +wpsWordReqDto.getFunction().get(1).getFunction()+"-/"+value+ "-"+ headerVo.getType()); - judgement.setType(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setContent(wpsWordReqDto.getEnglishName()+"-"+wpsWordReqDto.getFunction().get(0).getFunction()+"-" +wpsWordReqDto.getFunction().get(1).getFunction()+"-/"+value+ "-"+ headerVo.getType()); + judgement.setImage(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setScoreRate("1"); judgementList.add(judgement); } } @@ -183,8 +187,9 @@ public class WpsWordUtils { String value = sectPrXsml.getTextValue(); WpsWordJudgementDto judgement = new WpsWordJudgementDto(); judgement.setContentIn(wpsWordReqDto.getChineseName()+"-"+wpsWordReqDto.getFunction().get(0).getChineseName() +"-" +wpsWordReqDto.getFunction().get(1).getChineseName()+"-/"+value); - judgement.setFunction(wpsWordReqDto.getEnglishName()+"-"+wpsWordReqDto.getFunction().get(0).getFunction()+"-" +wpsWordReqDto.getFunction().get(1).getFunction()+"-/" + value); - judgement.setType(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setContent(wpsWordReqDto.getEnglishName()+"-"+wpsWordReqDto.getFunction().get(0).getFunction()+"-" +wpsWordReqDto.getFunction().get(1).getFunction()+"-/" + value); + judgement.setImage(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setScoreRate("1"); judgementList.add(judgement); } } @@ -207,22 +212,24 @@ public class WpsWordUtils { if (wpCursor.toNextSelection()) { if ("1".equals(wpsWordReqDto.getParameter())) { judgement.setContentIn(wpsWordReqDto.getChineseName() + "-" + chineseName + "true"); - judgement.setFunction(wpsWordReqDto.getEnglishName() + functionAll + "-/" + "true"); + judgement.setContent(wpsWordReqDto.getEnglishName() + functionAll + "-/" + "true"); } else { String value = wpCursor.getTextValue(); judgement.setContentIn(wpsWordReqDto.getChineseName() + "-" + chineseName + value); - judgement.setFunction(wpsWordReqDto.getEnglishName() + functionAll + "-/" + value); + judgement.setContent(wpsWordReqDto.getEnglishName() + functionAll + "-/" + value); } - judgement.setType(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setImage(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setScoreRate("1"); // 查询指定值,返回固定的文本 judgementList.add(judgement); } else { // 参数类型(0:值;1:判断) if ("1".equals(wpsWordReqDto.getParameter())) { judgement.setContentIn(wpsWordReqDto.getChineseName() + "-" + chineseName + "false"); - judgement.setFunction(wpsWordReqDto.getEnglishName() + functionAll + "-/" + "false"); - judgement.setType(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setContent(wpsWordReqDto.getEnglishName() + functionAll + "-/" + "false"); + judgement.setImage(wpsWordReqDto.getType()+"-"+wpsWordReqDto.getBelongTo()+"-"+wpsWordReqDto.getParameter()); + judgement.setScoreRate("1"); judgementList.add(judgement); } }