diff --git a/src/main/java/Tools/MaxKb/Model/MaxKbModel.java b/src/main/java/Tools/MaxKb/Model/MaxKbModel.java index da7b074d..09262a8c 100644 --- a/src/main/java/Tools/MaxKb/Model/MaxKbModel.java +++ b/src/main/java/Tools/MaxKb/Model/MaxKbModel.java @@ -21,7 +21,7 @@ public class MaxKbModel { * @return */ public List getDocumentListByDataSetId(String dataset_id) { - String sql = "select * from document where dataset_id=? order by create_time desc"; + String sql = "select * from document where dataset_id=?::uuid order by create_time desc"; return Db.find(sql, dataset_id); } } diff --git a/src/main/java/Tools/MaxKb/UploadMaxKBFile.java b/src/main/java/Tools/MaxKb/UploadMaxKBFile.java index 8bc3c463..e631420f 100644 --- a/src/main/java/Tools/MaxKb/UploadMaxKBFile.java +++ b/src/main/java/Tools/MaxKb/UploadMaxKBFile.java @@ -36,27 +36,26 @@ public class UploadMaxKBFile { return; } //数据集ID - String dataSetId = list.getFirst().getStr("id"); + String zskId = list.getFirst().getStr("id"); //在上传文档前,需要删除掉旧的同名文档 File fi = new File(uploadFile); String fileName = fi.getName(); - - List listDocuments = mm.getDocumentListByDataSetId(dataSetId); + //获取身份识别 + 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); } } - - //获取身份识别 -// String authCode = MaxKbCallUtil.getAuthorization(); -// //测试上传文件到知识库 -// String id = MaxKbCallUtil.uploadQA(authCode, zskId, uploadFile); -// System.out.println("生成的文档ID=" + id); + //上传新的文档 + MaxKbCallUtil.uploadQA(authCode, zskId, uploadFile); + System.out.println("恭喜,所有操作成功完成!"); } } \ No newline at end of file diff --git a/src/main/java/Tools/MaxKb/Util/MaxKbCallUtil.java b/src/main/java/Tools/MaxKb/Util/MaxKbCallUtil.java index be68246a..58d019bb 100644 --- a/src/main/java/Tools/MaxKb/Util/MaxKbCallUtil.java +++ b/src/main/java/Tools/MaxKb/Util/MaxKbCallUtil.java @@ -92,4 +92,25 @@ public class MaxKbCallUtil { StrUtil.isBlank(errorBody) ? "无错误信息" : errorBody)); } } + + /** + * 删除知识库文档 + * @param authCode 身份识别码 + * @param zskId 知识库id + * @param documentId 文档id + * @return + */ + public static com.alibaba.fastjson.JSONObject delDocument(String authCode, String zskId, String documentId) { + String url = baseUrl + "/api/dataset/" + zskId + "/document/" + documentId + "?dep=[object+Object]&__v_isRef=true&__v_isShallow=false&_rawValue=false&_value=false"; + HttpResponse response = HttpRequest.delete(url) + .header("Accept", "application/json, text/plain, */*") + .header("Accept-Encoding", "gzip,deflate") + .header("Accept-Language", "zh-CN,zh;q=0.9") + .header("Authorization", authCode)// 添加header + .header("Connection", "keep-alive") + .header("Content-Type", "application/json") + .header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36") + .execute(); + return com.alibaba.fastjson.JSONObject.parseObject(response.body()); + } }