manage : 修改bug(批量导入疾病问题 锁超时)

dev_2.1.0
xueqingkun 1 year ago
parent 19e9d93b21
commit d2b76a4f4e

@ -42,7 +42,6 @@
<hutool.version>5.8.16</hutool.version>
<knife4j.version>3.0.3</knife4j.version>
<lombok.version>1.18.20</lombok.version>
<knife4j.version>3.0.3</knife4j.version>
<tinyPinyin.version>2.0.3.RELEASE</tinyPinyin.version>
<poi-ooxml.version>4.1.2</poi-ooxml.version>
<freemarker.version>2.3.31</freemarker.version>

@ -48,7 +48,7 @@ public class AskQuestionLibraryManageController {
@PostMapping("/saveQuestionLibrary")
public String saveQuestionLibrary(@RequestBody AskTemplateQuestionLibrary askTemplateQuestionLibrary) {
return askQuestionLibraryManageService.saveQuestionLibrary(askTemplateQuestionLibrary);
return askQuestionLibraryManageService.saveQuestionLibrary(askTemplateQuestionLibrary,true);
}

@ -20,6 +20,8 @@ public interface AskQuestionLibraryManageService {
String saveQuestionLibrary(AskTemplateQuestionLibrary askTemplateQuestionLibrary);
String saveQuestionLibrary(AskTemplateQuestionLibrary askTemplateQuestionLibrary,boolean refreshQaKnowledge);
boolean updateQuestionLibrary(AskTemplateQuestionLibrary askTemplateQuestionLibrary);
boolean deleteQuestionLibrary(String id);

@ -86,6 +86,7 @@ public class AskQuestionLibraryManageServiceImpl implements AskQuestionLibraryMa
}
@Override
@Transactional(rollbackFor = Exception.class)
public String saveQuestionLibrary(AskTemplateQuestionLibrary askTemplateQuestionLibrary) {
assertSave(askTemplateQuestionLibrary);
@ -107,8 +108,7 @@ public class AskQuestionLibraryManageServiceImpl implements AskQuestionLibraryMa
}
one.setQuestion(question);
askTemplateQuestionLibraryService.updateById(one);
// 对问题库进行更新操作
qaKnowledgeManageService.refreshQaKnowledge();
return one.getId();
}else {
// 新增数据
@ -139,10 +139,21 @@ public class AskQuestionLibraryManageServiceImpl implements AskQuestionLibraryMa
askTemplateQuestionLibrary.setDefaultAnswerCode(nextDefaultCode);
askTemplateQuestionLibraryService.save(askTemplateQuestionLibrary);
return askTemplateQuestionLibrary.getId();
}
}
@Override
@Transactional(rollbackFor = Exception.class)
public String saveQuestionLibrary(AskTemplateQuestionLibrary askTemplateQuestionLibrary, boolean refreshQaKnowledge) {
String questionLibraryId = this.saveQuestionLibrary(askTemplateQuestionLibrary);
if (refreshQaKnowledge) {
// 对问题库进行更新操作
qaKnowledgeManageService.refreshQaKnowledge();
return askTemplateQuestionLibrary.getId();
}
return questionLibraryId;
}
@Override
@ -155,9 +166,8 @@ public class AskQuestionLibraryManageServiceImpl implements AskQuestionLibraryMa
Assert.notNull(library, "知识库不存在");
Assert.isTrue(askTemplateQuestionLibrary.getDictId().equals(library.getDictId()), "不允许修改类目");
this.saveQuestionLibrary(askTemplateQuestionLibrary);
this.saveQuestionLibrary(askTemplateQuestionLibrary,true);
// 对问题库进行更新操作
qaKnowledgeManageService.refreshQaKnowledge();
return true;
}
@ -197,7 +207,7 @@ public class AskQuestionLibraryManageServiceImpl implements AskQuestionLibraryMa
}
questionLibrary.setDescription(currentDTO.getQuestion());
questionLibrary.setDefaultAnswer(currentDTO.getAnswer());
this.saveQuestionLibrary(questionLibrary);
this.saveQuestionLibrary(questionLibrary,false);
}
// 对问题库进行更新操作
qaKnowledgeManageService.refreshQaKnowledge();

@ -15,6 +15,7 @@ import com.supervision.manage.pojo.vo.MedicalRecQaVO;
import com.supervision.manage.service.AnswerVideoResourceService;
import com.supervision.manage.service.AskQuestionLibraryManageService;
import com.supervision.manage.service.FileManageService;
import com.supervision.manage.service.QaKnowledgeManageService;
import com.supervision.model.*;
import com.supervision.service.*;
import lombok.RequiredArgsConstructor;
@ -49,6 +50,9 @@ public class OfflineAnswerVideoResource implements AnswerVideoResourceService {
private final FileManageService fileManageService;
private final CommonDicService commonDicService;
private final QaKnowledgeManageService qaKnowledgeManageService;
private final String MEDICAL_ANSWER_TEMPLATE_ERROR_EXCEL_PATH = "classpath:template/medical_answer_template_error.xlsx";
@ -69,11 +73,17 @@ public class OfflineAnswerVideoResource implements AnswerVideoResourceService {
medicalRecAnswerExcelDoAction(medicalId, medicalRecAnswerExcelDTOS);
// 扩充知识库
timer.restart();
medicalRecAnswerExcelDTOS.stream().filter(dto -> CollUtil.isEmpty(dto.getErrorCodeEnums()))
.forEach(dto -> {
String questionLibraryId = askQuestionLibraryManageService.saveQuestionLibrary(dto.toAskTemplateQuestionLibrary());
String questionLibraryId = askQuestionLibraryManageService.saveQuestionLibrary(dto.toAskTemplateQuestionLibrary(),false);
dto.setLibraryQuestionId(questionLibraryId);
});
log.info("generationMedicalAnswerVideo : 扩充知识库耗时:{} s" , timer.intervalSecond());
timer.restart();
qaKnowledgeManageService.refreshQaKnowledge();
log.info("generationMedicalAnswerVideo : 刷新知识库耗时:{} s" , timer.intervalSecond());
timer.restart();
// 生成错误信息excel

@ -1,5 +1,7 @@
package com.supervision.manage.service.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.date.TimeInterval;
import com.supervision.dto.QaKnowledgeDTO;
import com.supervision.manage.feign.QaKnowledgeManageClient;
import com.supervision.manage.service.QaKnowledgeManageService;
@ -20,7 +22,9 @@ public class QaKnowledgeManageServiceImpl implements QaKnowledgeManageService {
private final QaKnowledgeManageClient qaKnowledgeManageClient;
public void refreshQaKnowledge() {
TimeInterval timer = DateUtil.timer();
List<QaKnowledgeDTO> queryQaKnowledge = askTemplateQuestionLibraryService.queryQaKnowledge();
qaKnowledgeManageClient.refreshQuestionList(queryQaKnowledge);
log.info("QaKnowledgeManageServiceImpl : refreshQaKnowledge耗时{} s" , timer.intervalSecond());
}
}

@ -1,7 +1,7 @@
package com.supervision;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.file.PathUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.model.AskPatientAnswer;
import com.supervision.model.AskTemplateQuestionLibrary;
import com.supervision.model.FileResource;
@ -12,6 +12,8 @@ import com.supervision.service.AskService;
import com.supervision.service.AskTemplateQuestionLibraryService;
import com.supervision.service.FileResourceService;
import com.supervision.util.MinioUtil;
import com.supervision.vo.manage.AskQuestionLibraryReqVo;
import com.supervision.vo.manage.AskQuestionLibraryResVo;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;
import org.junit.runner.RunWith;
@ -109,5 +111,17 @@ public class VideoUpdateTest {
System.out.println(talkResultResVO.getAnswerMessage());
}
@Test
public void talkTest1() throws Exception {
AskQuestionLibraryReqVo askQuestionLibraryReqVo = new AskQuestionLibraryReqVo();
askQuestionLibraryReqVo.setCode("2");
Page<AskQuestionLibraryResVo> askQuestionLibraryResVoPage = askTemplateQuestionLibraryService.queryPageList(1, 10,askQuestionLibraryReqVo );
System.out.println(askQuestionLibraryResVoPage);
}
}

Loading…
Cancel
Save