From f948362d1bc625714f3deca2183a5fcdd9640e92 Mon Sep 17 00:00:00 2001 From: wangys <3401275564@qq.com> Date: Thu, 8 Jan 2026 17:59:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=97=A5=E5=BF=97=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker/dify/.env.example | 2 +- .../java/org/xyzh/ai/client/DifyApiClient.java | 13 ++++++++----- .../service/impl/KnowledgeFileLogServiceImpl.java | 2 +- .../resources/mapper/TbKnowledgeFileLogMapper.xml | 14 ++++++++++++-- 4 files changed, 22 insertions(+), 9 deletions(-) diff --git a/docker/dify/.env.example b/docker/dify/.env.example index 04088b72..0323f36e 100644 --- a/docker/dify/.env.example +++ b/docker/dify/.env.example @@ -797,7 +797,7 @@ CLICKZETTA_VECTOR_DISTANCE_FUNCTION=cosine_distance # ------------------------------ # Upload file size limit, default 15M. -UPLOAD_FILE_SIZE_LIMIT=15 +UPLOAD_FILE_SIZE_LIMIT=100 # The maximum number of files that can be uploaded at a time, default 5. UPLOAD_FILE_BATCH_LIMIT=5 diff --git a/urbanLifelineServ/ai/src/main/java/org/xyzh/ai/client/DifyApiClient.java b/urbanLifelineServ/ai/src/main/java/org/xyzh/ai/client/DifyApiClient.java index 8c7c5780..2bb53866 100644 --- a/urbanLifelineServ/ai/src/main/java/org/xyzh/ai/client/DifyApiClient.java +++ b/urbanLifelineServ/ai/src/main/java/org/xyzh/ai/client/DifyApiClient.java @@ -267,10 +267,16 @@ public class DifyApiClient { try { // 构建 data JSON 字符串(包含所有元数据) Map dataMap = new HashMap<>(); - if (uploadRequest.getName() != null) { + + // name 字段:如果提供则使用,否则使用文件名 + if (uploadRequest.getName() != null && !uploadRequest.getName().trim().isEmpty()) { dataMap.put("name", uploadRequest.getName()); + } else { + dataMap.put("name", originalFilename); } - if (uploadRequest.getIndexingTechnique() != null) { + + // indexing_technique 字段:只有在明确提供且非空时才添加 + if (uploadRequest.getIndexingTechnique() != null && !uploadRequest.getIndexingTechnique().trim().isEmpty()) { dataMap.put("indexing_technique", uploadRequest.getIndexingTechnique()); } @@ -284,9 +290,6 @@ public class DifyApiClient { dataMap.put("process_rule", defaultProcessRule); } - // 只保留官方支持的参数 - // doc_form 和 doc_language 不是请求参数,移除 - String dataJson = JSON.toJSONString(dataMap); logger.info("上传文档到知识库: datasetId={}, file={}, data={}", datasetId, originalFilename, dataJson); diff --git a/urbanLifelineServ/ai/src/main/java/org/xyzh/ai/service/impl/KnowledgeFileLogServiceImpl.java b/urbanLifelineServ/ai/src/main/java/org/xyzh/ai/service/impl/KnowledgeFileLogServiceImpl.java index bd765cba..66dbb6c1 100644 --- a/urbanLifelineServ/ai/src/main/java/org/xyzh/ai/service/impl/KnowledgeFileLogServiceImpl.java +++ b/urbanLifelineServ/ai/src/main/java/org/xyzh/ai/service/impl/KnowledgeFileLogServiceImpl.java @@ -39,7 +39,7 @@ public class KnowledgeFileLogServiceImpl implements KnowledgeFileLogService{ knowledgeFileLog.setOptsn(IdUtil.getOptsn()); knowledgeFileLog.setLogId(IdUtil.generateID()); ValidationResult rt = ValidationUtils.validate(knowledgeFileLog, Arrays.asList( - + ValidationUtils.requiredString("fileId", "文件id") )); if(!rt.isValid()){ return ResultDomain.failure("日志参数校验失败"); diff --git a/urbanLifelineServ/ai/src/main/resources/mapper/TbKnowledgeFileLogMapper.xml b/urbanLifelineServ/ai/src/main/resources/mapper/TbKnowledgeFileLogMapper.xml index d63322d6..69b270d8 100644 --- a/urbanLifelineServ/ai/src/main/resources/mapper/TbKnowledgeFileLogMapper.xml +++ b/urbanLifelineServ/ai/src/main/resources/mapper/TbKnowledgeFileLogMapper.xml @@ -26,8 +26,18 @@ optsn, log_id, knowledge_id, file_root_id, file_id, file_name, version, action, service, creator, creator_name, create_time ) VALUES ( - #{optsn}, #{logId}, #{knowledgeId}, #{fileRootId}, #{fileId}, #{fileName}, #{version}, - #{action}, #{service}, #{creator}, #{creatorName}, NOW() + #{optsn}, #{logId}, #{knowledgeId}, #{fileRootId}, #{fileId}, + + + + (SELECT COALESCE(file_name, '') FROM ai.tb_knowledge_file_log WHERE file_id = #{fileId} LIMIT 1) + + + + #{fileName} + + , + #{version}, #{action}, #{service}, #{creator}, #{creatorName}, NOW() )