分段数量同步

This commit is contained in:
2025-11-07 15:26:24 +08:00
parent ab6c7c8576
commit 7edc4f3a35
5 changed files with 35 additions and 37 deletions

View File

@@ -159,9 +159,14 @@ public class DifyProxyController {
// 调用Dify API使用默认配置的API Key
String path = "/datasets/" + datasetId + "/documents/" + documentId + "/segments";
String response = difyApiClient.post(path, requestBody, null);
result.success("创建分段成功", response);
return result;
int i = uploadFileMapper.chunkSync(documentId, 1);
if (i>0) {
result.success("创建分段成功", response);
return result;
} else {
result.fail("创建分段失败: 分段同步失败");
return result;
}
} catch (Exception e) {
log.error("创建分段失败", e);
result.fail("创建分段失败: " + e.getMessage());
@@ -193,9 +198,14 @@ public class DifyProxyController {
String path = "/datasets/" + datasetId + "/documents/" + documentId +
"/segments/" + segmentId;
String response = difyApiClient.delete(path, null);
result.success("删除分段成功", response);
return result;
int i = uploadFileMapper.chunkSync(documentId, -1);
if (i>0) {
result.success("删除分段成功", response);
return result;
} else {
result.fail("删除分段失败: 分段同步失败");
return result;
}
} catch (Exception e) {
log.error("删除分段失败", e);
result.fail("删除分段失败: " + e.getMessage());

View File

@@ -89,4 +89,12 @@ public interface AiUploadFileMapper extends BaseMapper<TbAiUploadFile> {
* @return TbAiUploadFile 文件记录
*/
TbAiUploadFile selectFileByDifyDocumentId(@Param("difyDocumentId") String difyDocumentId);
/**
* 同步分段
* @param difyDocumentId Dify文档ID
* @param action 操作类型: 1-创建, -1-删除
* @return 影响行数
*/
int chunkSync(@Param("difyDocumentId") String difyDocumentId, @Param("action") int action);
}

View File

@@ -224,4 +224,12 @@
</foreach>
</insert>
<!-- chunkSync -->
<update id="chunkSync">
UPDATE tb_ai_upload_file
SET chunk_count = chunk_count + #{action}
WHERE dify_document_id = #{difyDocumentId}
AND deleted = 0
</update>
</mapper>