From d87f85f6214f8c250b6def2627830d6e99a18725 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E6=B5=B7?= <10402852@qq.com> Date: Fri, 27 Dec 2024 11:28:42 +0800 Subject: [PATCH] 'commit' --- .../MaxKbImpl.java} | 14 +++-- .../Tools/MaxKb/Service/MaxKbService.java | 54 +++++++++++++++++++ src/main/java/Tools/MaxKb/UploadQA.java | 47 ++-------------- 3 files changed, 67 insertions(+), 48 deletions(-) rename src/main/java/Tools/MaxKb/{Util/MaxKbCallUtil.java => Impl/MaxKbImpl.java} (92%) create mode 100644 src/main/java/Tools/MaxKb/Service/MaxKbService.java diff --git a/src/main/java/Tools/MaxKb/Util/MaxKbCallUtil.java b/src/main/java/Tools/MaxKb/Impl/MaxKbImpl.java similarity index 92% rename from src/main/java/Tools/MaxKb/Util/MaxKbCallUtil.java rename to src/main/java/Tools/MaxKb/Impl/MaxKbImpl.java index 58d019bb..3ed587c7 100644 --- a/src/main/java/Tools/MaxKb/Util/MaxKbCallUtil.java +++ b/src/main/java/Tools/MaxKb/Impl/MaxKbImpl.java @@ -1,15 +1,20 @@ -package Tools.MaxKb.Util; +package Tools.MaxKb.Impl; +import Tools.MaxKb.Model.MaxKbModel; import cn.hutool.core.util.StrUtil; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.jfinal.kit.PropKit; +import com.jfinal.plugin.activerecord.Record; import java.io.File; +import java.util.List; + +public class MaxKbImpl { + public static MaxKbModel mm = new MaxKbModel(); -public class MaxKbCallUtil { //MaxKB的url static final String baseUrl = PropKit.get("baseUrl"); //获取身份识别码接口 @@ -95,8 +100,9 @@ public class MaxKbCallUtil { /** * 删除知识库文档 - * @param authCode 身份识别码 - * @param zskId 知识库id + * + * @param authCode 身份识别码 + * @param zskId 知识库id * @param documentId 文档id * @return */ diff --git a/src/main/java/Tools/MaxKb/Service/MaxKbService.java b/src/main/java/Tools/MaxKb/Service/MaxKbService.java new file mode 100644 index 00000000..e12bafe0 --- /dev/null +++ b/src/main/java/Tools/MaxKb/Service/MaxKbService.java @@ -0,0 +1,54 @@ +package Tools.MaxKb.Service; + +import Tools.MaxKb.Impl.MaxKbImpl; +import Tools.MaxKb.Model.MaxKbModel; +import com.jfinal.kit.PropKit; +import com.jfinal.plugin.activerecord.Record; + +import java.io.File; +import java.util.List; + +public class MaxKbService { + public static MaxKbModel mm = new MaxKbModel(); + + /** + * 上传文件到知识库 + * + * @param uploadFile 文件路径 + */ + public static void uploadQA(String uploadFile) { + //获取数据集名称 + String dataSetName = PropKit.get("dataSetName"); + List list = mm.getDataSetList(dataSetName); + if (list.size() > 1) { + System.out.println("数据集:【" + dataSetName + "】名称重复,请检查后重新运行!"); + return; + } + if (list.isEmpty()) { + System.out.println("数据集:【" + dataSetName + "】不存在,请检查后重新运行!"); + return; + } + //数据集ID + String zskId = list.getFirst().getStr("id"); + + //在上传文档前,需要删除掉旧的同名文档 + File fi = new File(uploadFile); + String fileName = fi.getName(); + //获取身份识别 + String authCode = MaxKbImpl.getAuthorization(); + //上传文档 + List listDocuments = mm.getDocumentListByDataSetId(zskId); + for (Record record : listDocuments) { + String documentName = record.getStr("name"); + if (documentName.equals(fileName)) { + String documentId = record.getStr("id"); + //准备删除掉旧的文档 + MaxKbImpl.delDocument(authCode, zskId, documentId); + System.out.println("删除旧的文档成功:" + documentName); + } + } + //上传新的文档 + MaxKbImpl.uploadQA(authCode, zskId, uploadFile); + System.out.println("恭喜,所有操作成功完成!"); + } +} diff --git a/src/main/java/Tools/MaxKb/UploadQA.java b/src/main/java/Tools/MaxKb/UploadQA.java index f4517886..11caec8b 100644 --- a/src/main/java/Tools/MaxKb/UploadQA.java +++ b/src/main/java/Tools/MaxKb/UploadQA.java @@ -1,61 +1,20 @@ package Tools.MaxKb; -import Tools.MaxKb.Model.MaxKbModel; -import Tools.MaxKb.Util.MaxKbCallUtil; +import Tools.MaxKb.Service.MaxKbService; import Tools.MaxKb.Util.MaxKbDb; import com.jfinal.kit.PropKit; -import com.jfinal.plugin.activerecord.Record; - -import java.io.File; -import java.util.List; public class UploadQA { - public static MaxKbModel mm = new MaxKbModel(); - - //要上传的QA知识内容 static String uploadFile = "D:\\dsWork\\QingLong\\Doc\\MaxKB\\各学校人员和班级统计【结果】.xlsx"; public static void main(String[] args) throws Exception { //加载配置文件 PropKit.use("MaxKb.properties"); - //初始化数据库 MaxKbDb.Init(); - - //获取数据集名称 - String dataSetName = PropKit.get("dataSetName"); - List list = mm.getDataSetList(dataSetName); - if (list.size() > 1) { - System.out.println("数据集:【" + dataSetName + "】名称重复,请检查后重新运行!"); - return; - } - if (list.isEmpty()) { - System.out.println("数据集:【" + dataSetName + "】不存在,请检查后重新运行!"); - return; - } - //数据集ID - String zskId = list.getFirst().getStr("id"); - - //在上传文档前,需要删除掉旧的同名文档 - File fi = new File(uploadFile); - String fileName = fi.getName(); - //获取身份识别 - String authCode = MaxKbCallUtil.getAuthorization(); - //上传文档 - List listDocuments = mm.getDocumentListByDataSetId(zskId); - for (Record record : listDocuments) { - String documentName = record.getStr("name"); - if (documentName.equals(fileName)) { - String documentId = record.getStr("id"); - //准备删除掉旧的文档 - MaxKbCallUtil.delDocument(authCode, zskId, documentId); - System.out.println("删除旧的文档成功:" + documentName); - } - } - //上传新的文档 - MaxKbCallUtil.uploadQA(authCode, zskId, uploadFile); - System.out.println("恭喜,所有操作成功完成!"); + //上传文件 + MaxKbService.uploadQA(uploadFile); } } \ No newline at end of file