From 70e46bbb1f93f774ef9c21fabf8c572d68f80630 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E6=B5=B7?= <10402852@qq.com> Date: Thu, 26 Dec 2024 14:10:33 +0800 Subject: [PATCH] 'commit' --- Doc/MaxKB/MaxKB学习.txt | 9 +- Doc/MaxKB/结果.xlsx | Bin 0 -> 36858 bytes src/main/java/UnitTest/TestMaxKB.java | 173 ++++++++++++++++++++++++++ 3 files changed, 181 insertions(+), 1 deletion(-) create mode 100644 Doc/MaxKB/结果.xlsx create mode 100644 src/main/java/UnitTest/TestMaxKB.java diff --git a/Doc/MaxKB/MaxKB学习.txt b/Doc/MaxKB/MaxKB学习.txt index 89863243..192f7759 100644 --- a/Doc/MaxKB/MaxKB学习.txt +++ b/Doc/MaxKB/MaxKB学习.txt @@ -18,4 +18,11 @@ Dsideal4r5t6y7u!@# (1) 知识库-上传文档-QA问答对 1、点击下载对应模版并完善信息: 2、上传的表格文件中每个 sheet 会作为一个文档,sheet名称为文档名称 -3、每次最多上传 50 个文件,每个文件不超过 100MB \ No newline at end of file +3、每次最多上传 50 个文件,每个文件不超过 100MB + +# 预置问题 +1、某个区下学生数最多的学校。 +2、某个区下专任教师数最多的学校。 +3、某个区下的学校列表。 +4、某个区下班级数大于20个的学校列表 +5、各个区中学生数最多的学校列表 \ No newline at end of file diff --git a/Doc/MaxKB/结果.xlsx b/Doc/MaxKB/结果.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..6103bf3ee40e747895f9e631d9a8715ad0afd668 GIT binary patch literal 36858 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 areaSet = new HashSet<>(); + for (Row row : sheetSource) { + String jyjName = getStringValue(row.getCell(1));//教育局 + areaSet.add(jyjName); + } + + //2、记录每个区下有多少个学校,多少个班级,多少个教师,多少个专任教师 + Map> schoolMap = new HashMap<>(); + for (Row row : sheetSource) { + String schoolName = getStringValue(row.getCell(0));//学位名称 + String jyjName = getStringValue(row.getCell(1));//教育局 + String classCount = getStringValue(row.getCell(2));//班级数量 + String studentCount = getStringValue(row.getCell(3));//学生数量 + String teacherCount = getStringValue(row.getCell(4));//教师数量 + String zhuanRenCount = getStringValue(row.getCell(5));//专任教师数量 + + List list = new ArrayList<>(); + if (schoolMap.containsKey(jyjName)) { + list = schoolMap.get(jyjName); + } + list.add("学校名称:" + schoolName + ",所属教育局:" + jyjName + ",班级数量:" + classCount + ",学生数量:" + studentCount + ",教师数量:" + teacherCount + ",专任教师数量:" + zhuanRenCount + ";"); + schoolMap.put(jyjName, list); + } + //将数据写入到EXCEL + for (int i = 0; i < areaSet.size(); i++) { + String area = areaSet.toArray()[i].toString(); + Row row = sheetTemplate.getRow(i + 1); // 放过表头 + if (row == null) { + row = sheetTemplate.createRow(i + 1);//创建行 + } + //(1)问题名称 + Cell cell = row.getCell(0); + if (cell == null) { + cell = row.createCell(0); + } + cell.setCellValue(area + "下的学校列表"); + cell.setCellStyle(style); + + //(2)回答 + cell = row.getCell(1); + if (cell == null) { + cell = row.createCell(1); + } + + String content = ""; + for (String s : schoolMap.get(area)) { + content = content + s + "\n"; + } + cell.setCellValue(content); + cell.setCellStyle(style); + + //(3)可选问题名称 + cell = row.getCell(2); + if (cell == null) { + cell = row.createCell(2); + } + cell.setCellValue(area + "下的学校列表"); + cell.setCellStyle(style); + } + // 保存文件 + FileOutputStream fileOut = new FileOutputStream(outputPath); + workbookTemplate.write(fileOut); + + //关闭文件 + fSource.close(); + workbook.close(); + } +}