Merge remote-tracking branch 'origin/dev' into dev

jinan_dev
yaxin 5 months ago
commit 738c2583d4

@ -50,7 +50,7 @@ public interface ModelCaseService extends IService<ModelCase> {
IPage<IndexDetail> getIndexDetail(IndexResultQuery query, Integer page, Integer size);
void initCaseKnowledgeBase(String caseId);
boolean initCaseKnowledgeBase(String caseId);
/**

@ -381,15 +381,21 @@ public class ModelCaseServiceImpl extends ServiceImpl<ModelCaseMapper, ModelCase
}
@Override
public void initCaseKnowledgeBase(String caseId) {
public boolean initCaseKnowledgeBase(String caseId) {
ModelCase modelCase = this.getById(caseId);
if (StrUtil.isEmpty(modelCase.getKnowledgeBaseId())){
log.info("案件:{} 尚未创建知识库,即将创建知识库库...",modelCase.getCaseName());
// 防止名称超长在这里统一采用案件id 作为知识库名称
String caseDetail = modelCase.getCaseDetail();
if (StrUtil.length(caseDetail) > 400){
caseDetail = StrUtil.sub(caseDetail,0,400);
log.info("案件:{} 描述内容太长已截取前400个字符",modelCase.getCaseName());
}
String knowledgeBaseId = difyApiUtil.createDataset(
StrUtil.join("_", modelCase.getCaseName(), modelCase.getCaseNo()), modelCase.getCaseDetail());
StrUtil.join("_", "case", modelCase.getId()), caseDetail);
if (StrUtil.isEmpty(knowledgeBaseId)){
log.error("案件:{} 创建知识库失败...",modelCase.getCaseName());
return;
return false;
}
modelCase.setKnowledgeBaseId(knowledgeBaseId);
modelCaseMapper.updateById(modelCase);
@ -400,12 +406,13 @@ public class ModelCaseServiceImpl extends ServiceImpl<ModelCaseMapper, ModelCase
if (null == modelCase.getCaseAnalysisSuccessTime()){
log.info("案件:{} 尚未完成案件分析,不进行笔录上传...",modelCase.getCaseName());
return;
return true;
}
log.info("案件:{} 开始上传笔录到知识库...",modelCase.getCaseName());
difyApiUtil.syncCaseFileToDifyKnowledgeBase(modelCase,this.listCaseFileIds(caseId));
log.info("案件:{} 上传笔录到知识库成功...",modelCase.getCaseName());
return true;
}
@Override
@ -421,16 +428,20 @@ public class ModelCaseServiceImpl extends ServiceImpl<ModelCaseMapper, ModelCase
try {
log.info("开始迁移案件:{} 笔录到知识库,当前总体进度:{}...",modelCase.getCaseName(),NumberUtil.formatPercent((success + fail)/(allModelCase.size()*1.0), 2));
timer.start(modelCase.getId());
initCaseKnowledgeBase(modelCase.getId());
log.info("案件:{} 迁移笔录到知识库成功,耗时:{}秒...",modelCase.getCaseName(),timer.intervalSecond(modelCase.getId()));
success++;
boolean ok = initCaseKnowledgeBase(modelCase.getId());
if (ok){
success++;
log.info("案件:{} 迁移笔录到知识库成功,耗时:{}秒...",modelCase.getCaseName(),timer.intervalSecond(modelCase.getId()));
}else {
fail++;
}
} catch (Exception e) {
log.error("案件:{} 迁移笔录到知识库失败..",modelCase.getCaseName(),e);
fail++;
}
}
log.info("===========>>>>>迁移笔录到知识库完成,成功个数:{},失败个数:{},总耗时:{}秒...<<<<<===========",success,allModelCase.size()-success,timer.intervalSecond());
log.info("===========>>>>>迁移笔录到知识库完成,成功个数:{},失败个数:{},总耗时:{}秒...<<<<<===========",success,fail,timer.intervalSecond());
}
@Override

Loading…
Cancel
Save