|
...
|
...
|
@@ -20,6 +20,7 @@ import org.jeecg.modules.airag.app.entity.AiragLog; |
|
|
|
import org.jeecg.modules.airag.app.entity.Embeddings;
|
|
|
|
import org.jeecg.modules.airag.app.entity.QuestionEmbedding;
|
|
|
|
import org.jeecg.modules.airag.app.mapper.AiragButtonMapper;
|
|
|
|
import org.jeecg.modules.airag.app.service.IAiragButtonService;
|
|
|
|
import org.jeecg.modules.airag.app.service.IAiragLogService;
|
|
|
|
import org.jeecg.modules.airag.app.service.IEmbeddingsService;
|
|
|
|
import org.jeecg.modules.airag.app.service.IQuestionEmbeddingService;
|
|
...
|
...
|
@@ -67,7 +68,7 @@ public class AiragLogController extends JeecgController<AiragLog, IAiragLogServi |
|
|
|
private IEmbeddingsService embeddingsService;
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
private AiragButtonMapper airagButtonMapper;
|
|
|
|
private IAiragButtonService airagButtonService;
|
|
|
|
/**
|
|
|
|
* 分页列表查询
|
|
|
|
*
|
|
...
|
...
|
@@ -88,65 +89,24 @@ public class AiragLogController extends JeecgController<AiragLog, IAiragLogServi |
|
|
|
|
|
|
|
QueryWrapper<AiragLog> queryWrapper = QueryGenerator.initQueryWrapper(airagLog, req.getParameterMap());
|
|
|
|
Page<AiragLog> page = new Page<AiragLog>(pageNo, pageSize);
|
|
|
|
// IPage<AiragLog> pageList = airagLogService.page(page, queryWrapper);
|
|
|
|
IPage<AiragLog> pageList = airagLogService.pageList(airagLog,page);
|
|
|
|
/*if(airagLog != null && StringUtils.isNotBlank(airagLog.getName())) {
|
|
|
|
QueryWrapper<AiragModel> queryWrapper2 = new QueryWrapper<>();
|
|
|
|
queryWrapper2.eq("model_id", airagLog.getName());
|
|
|
|
IPage<AiragLog> page1 = airagLogService.list1(airagLog,page);
|
|
|
|
return Result.ok(page1);
|
|
|
|
}*/
|
|
|
|
|
|
|
|
List<AiragModel> list = airagModelService.list();
|
|
|
|
Map<String,String> nameMap = new HashMap<String,String>();
|
|
|
|
for(AiragModel airagModel : list){
|
|
|
|
nameMap.put(airagModel.getId(), airagModel.getName());
|
|
|
|
}
|
|
|
|
|
|
|
|
Map<String, String> nameMap = airagModelService.list().
|
|
|
|
stream().
|
|
|
|
collect(Collectors.toMap
|
|
|
|
(AiragModel::getId, AiragModel::getModelName));
|
|
|
|
|
|
|
|
Map<String, String> buttonMap = airagButtonService.list().
|
|
|
|
stream().
|
|
|
|
collect(Collectors.toMap
|
|
|
|
(AiragButton::getCode, AiragButton::getButtonName));
|
|
|
|
|
|
|
|
// 收集所有需要查询的按钮名称
|
|
|
|
Set<String> buttonNames = new HashSet<>();
|
|
|
|
for (AiragLog log : pageList.getRecords()) {
|
|
|
|
List<AiragLog> records = pageList.getRecords();
|
|
|
|
for(AiragLog log : records){
|
|
|
|
String modelId = log.getModelId();
|
|
|
|
log.setName(nameMap.get(modelId));
|
|
|
|
|
|
|
|
// 收集快捷按钮提问的问题内容
|
|
|
|
if (log.getCodeType() == 1 && StringUtils.isNotBlank(log.getQuestion())) {
|
|
|
|
buttonNames.add(log.getQuestion());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// 批量查询按钮code
|
|
|
|
Map<String, String> buttonCodeMap = new HashMap<>();
|
|
|
|
if (!buttonNames.isEmpty()) {
|
|
|
|
LambdaQueryWrapper<AiragButton> buttonWrapper = new LambdaQueryWrapper<>();
|
|
|
|
buttonWrapper.in(AiragButton::getButtonName, buttonNames);
|
|
|
|
List<AiragButton> buttons = airagButtonMapper.selectList(buttonWrapper);
|
|
|
|
|
|
|
|
for (AiragButton button : buttons) {
|
|
|
|
buttonCodeMap.put(button.getButtonName(), button.getCode());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// 设置按钮code
|
|
|
|
for (AiragLog log : pageList.getRecords()) {
|
|
|
|
if (log.getCodeType() == 0) {
|
|
|
|
// 输入框提问,按钮code为空
|
|
|
|
log.setCode("null");
|
|
|
|
} else if (log.getCodeType() == 1) {
|
|
|
|
// 快捷按钮提问
|
|
|
|
if (StringUtils.isNotBlank(log.getQuestion())) {
|
|
|
|
String code = buttonCodeMap.get(log.getQuestion());
|
|
|
|
if (StringUtils.isNotBlank(code)) {
|
|
|
|
log.setCode(code);
|
|
|
|
airagLogService.updateById(log);
|
|
|
|
} else {
|
|
|
|
// 未找到匹配按钮
|
|
|
|
log.setCode("INPUT_QUESTION");
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
log.setCode(null);
|
|
|
|
}
|
|
|
|
if(StringUtils.isNotBlank(log.getCode()) && log.getCode().equals(buttonMap.get("code"))){
|
|
|
|
log.setButtonName(buttonMap.get("name"));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
...
|
...
|
|