update 导入接口每导入10个文件,调用一次回调

master
yinq 1 month ago
parent 8d3ae2768b
commit 8cf409628f

@ -59,6 +59,7 @@ public class KDocsServiceImpl implements IKDocsService {
// 异步执行导入任务
executorService.execute(() -> {
List<ApiContent> resList = new ArrayList<>();
int count = 0;
for (ApiContent apiContent : contentList) {
long startTime = System.currentTimeMillis();
ApiContent resContent = new ApiContent();
@ -75,12 +76,23 @@ public class KDocsServiceImpl implements IKDocsService {
resContent.setFields(errorFields);
}
resList.add(resContent);
count++;
long endTime = System.currentTimeMillis();
log.info("数据库导入完成 - ID: {}, 耗时: {}ms", apiContent.getId(), (endTime - startTime));
// 每处理10个数据就发送一次回调
if (count % 10 == 0) {
log.info("已处理{}条数据,发送回调", count);
httpClientUtils.sendResultToCallback(resList, ApiConstants.CALLBACK_URL, ApiConstants.DATA_IMPORT);
resList.clear(); // 清空列表,准备下一批数据
}
}
// 发送处理结果到回调接口
httpClientUtils.sendResultToCallback(resList, ApiConstants.CALLBACK_URL, ApiConstants.DATA_IMPORT);
// 处理剩余的数据不足10条的部分
if (!resList.isEmpty()) {
log.info("处理剩余{}条数据,发送回调", resList.size());
httpClientUtils.sendResultToCallback(resList, ApiConstants.CALLBACK_URL, ApiConstants.DATA_IMPORT);
}
});
return resApiContentList;

Loading…
Cancel
Save