|
@@ -20,6 +20,7 @@ import org.jeecg.modules.airag.app.entity.AiragLog; |
|
@@ -20,6 +20,7 @@ import org.jeecg.modules.airag.app.entity.AiragLog; |
|
20
|
import org.jeecg.modules.airag.app.entity.Embeddings;
|
20
|
import org.jeecg.modules.airag.app.entity.Embeddings;
|
|
21
|
import org.jeecg.modules.airag.app.entity.QuestionEmbedding;
|
21
|
import org.jeecg.modules.airag.app.entity.QuestionEmbedding;
|
|
22
|
import org.jeecg.modules.airag.app.mapper.AiragButtonMapper;
|
22
|
import org.jeecg.modules.airag.app.mapper.AiragButtonMapper;
|
|
|
|
23
|
+import org.jeecg.modules.airag.app.service.IAiragButtonService;
|
|
23
|
import org.jeecg.modules.airag.app.service.IAiragLogService;
|
24
|
import org.jeecg.modules.airag.app.service.IAiragLogService;
|
|
24
|
import org.jeecg.modules.airag.app.service.IEmbeddingsService;
|
25
|
import org.jeecg.modules.airag.app.service.IEmbeddingsService;
|
|
25
|
import org.jeecg.modules.airag.app.service.IQuestionEmbeddingService;
|
26
|
import org.jeecg.modules.airag.app.service.IQuestionEmbeddingService;
|
|
@@ -67,7 +68,7 @@ public class AiragLogController extends JeecgController<AiragLog, IAiragLogServi |
|
@@ -67,7 +68,7 @@ public class AiragLogController extends JeecgController<AiragLog, IAiragLogServi |
|
67
|
private IEmbeddingsService embeddingsService;
|
68
|
private IEmbeddingsService embeddingsService;
|
|
68
|
|
69
|
|
|
69
|
@Autowired
|
70
|
@Autowired
|
|
70
|
- private AiragButtonMapper airagButtonMapper;
|
71
|
+ private IAiragButtonService airagButtonService;
|
|
71
|
/**
|
72
|
/**
|
|
72
|
* 分页列表查询
|
73
|
* 分页列表查询
|
|
73
|
*
|
74
|
*
|
|
@@ -88,65 +89,24 @@ public class AiragLogController extends JeecgController<AiragLog, IAiragLogServi |
|
@@ -88,65 +89,24 @@ public class AiragLogController extends JeecgController<AiragLog, IAiragLogServi |
|
88
|
|
89
|
|
|
89
|
QueryWrapper<AiragLog> queryWrapper = QueryGenerator.initQueryWrapper(airagLog, req.getParameterMap());
|
90
|
QueryWrapper<AiragLog> queryWrapper = QueryGenerator.initQueryWrapper(airagLog, req.getParameterMap());
|
|
90
|
Page<AiragLog> page = new Page<AiragLog>(pageNo, pageSize);
|
91
|
Page<AiragLog> page = new Page<AiragLog>(pageNo, pageSize);
|
|
91
|
-// IPage<AiragLog> pageList = airagLogService.page(page, queryWrapper);
|
|
|
|
92
|
IPage<AiragLog> pageList = airagLogService.pageList(airagLog,page);
|
92
|
IPage<AiragLog> pageList = airagLogService.pageList(airagLog,page);
|
|
93
|
- /*if(airagLog != null && StringUtils.isNotBlank(airagLog.getName())) {
|
|
|
|
94
|
- QueryWrapper<AiragModel> queryWrapper2 = new QueryWrapper<>();
|
|
|
|
95
|
- queryWrapper2.eq("model_id", airagLog.getName());
|
|
|
|
96
|
- IPage<AiragLog> page1 = airagLogService.list1(airagLog,page);
|
|
|
|
97
|
- return Result.ok(page1);
|
|
|
|
98
|
- }*/
|
|
|
|
99
|
-
|
|
|
|
100
|
- List<AiragModel> list = airagModelService.list();
|
|
|
|
101
|
- Map<String,String> nameMap = new HashMap<String,String>();
|
|
|
|
102
|
- for(AiragModel airagModel : list){
|
|
|
|
103
|
- nameMap.put(airagModel.getId(), airagModel.getName());
|
|
|
|
104
|
- }
|
|
|
|
105
|
|
93
|
|
|
|
|
94
|
+ Map<String, String> nameMap = airagModelService.list().
|
|
|
|
95
|
+ stream().
|
|
|
|
96
|
+ collect(Collectors.toMap
|
|
|
|
97
|
+ (AiragModel::getId, AiragModel::getModelName));
|
|
|
|
98
|
+
|
|
|
|
99
|
+ Map<String, String> buttonMap = airagButtonService.list().
|
|
|
|
100
|
+ stream().
|
|
|
|
101
|
+ collect(Collectors.toMap
|
|
|
|
102
|
+ (AiragButton::getCode, AiragButton::getButtonName));
|
|
106
|
|
103
|
|
|
107
|
- // 收集所有需要查询的按钮名称
|
|
|
|
108
|
- Set<String> buttonNames = new HashSet<>();
|
|
|
|
109
|
- for (AiragLog log : pageList.getRecords()) {
|
104
|
+ List<AiragLog> records = pageList.getRecords();
|
|
|
|
105
|
+ for(AiragLog log : records){
|
|
110
|
String modelId = log.getModelId();
|
106
|
String modelId = log.getModelId();
|
|
111
|
log.setName(nameMap.get(modelId));
|
107
|
log.setName(nameMap.get(modelId));
|
|
112
|
-
|
|
|
|
113
|
- // 收集快捷按钮提问的问题内容
|
|
|
|
114
|
- if (log.getCodeType() == 1 && StringUtils.isNotBlank(log.getQuestion())) {
|
|
|
|
115
|
- buttonNames.add(log.getQuestion());
|
|
|
|
116
|
- }
|
|
|
|
117
|
- }
|
|
|
|
118
|
-
|
|
|
|
119
|
- // 批量查询按钮code
|
|
|
|
120
|
- Map<String, String> buttonCodeMap = new HashMap<>();
|
|
|
|
121
|
- if (!buttonNames.isEmpty()) {
|
|
|
|
122
|
- LambdaQueryWrapper<AiragButton> buttonWrapper = new LambdaQueryWrapper<>();
|
|
|
|
123
|
- buttonWrapper.in(AiragButton::getButtonName, buttonNames);
|
|
|
|
124
|
- List<AiragButton> buttons = airagButtonMapper.selectList(buttonWrapper);
|
|
|
|
125
|
-
|
|
|
|
126
|
- for (AiragButton button : buttons) {
|
|
|
|
127
|
- buttonCodeMap.put(button.getButtonName(), button.getCode());
|
|
|
|
128
|
- }
|
|
|
|
129
|
- }
|
|
|
|
130
|
-
|
|
|
|
131
|
- // 设置按钮code
|
|
|
|
132
|
- for (AiragLog log : pageList.getRecords()) {
|
|
|
|
133
|
- if (log.getCodeType() == 0) {
|
|
|
|
134
|
- // 输入框提问,按钮code为空
|
|
|
|
135
|
- log.setCode("null");
|
|
|
|
136
|
- } else if (log.getCodeType() == 1) {
|
|
|
|
137
|
- // 快捷按钮提问
|
|
|
|
138
|
- if (StringUtils.isNotBlank(log.getQuestion())) {
|
|
|
|
139
|
- String code = buttonCodeMap.get(log.getQuestion());
|
|
|
|
140
|
- if (StringUtils.isNotBlank(code)) {
|
|
|
|
141
|
- log.setCode(code);
|
|
|
|
142
|
- airagLogService.updateById(log);
|
|
|
|
143
|
- } else {
|
|
|
|
144
|
- // 未找到匹配按钮
|
|
|
|
145
|
- log.setCode("INPUT_QUESTION");
|
|
|
|
146
|
- }
|
|
|
|
147
|
- } else {
|
|
|
|
148
|
- log.setCode(null);
|
|
|
|
149
|
- }
|
108
|
+ if(StringUtils.isNotBlank(log.getCode()) && log.getCode().equals(buttonMap.get("code"))){
|
|
|
|
109
|
+ log.setButtonName(buttonMap.get("name"));
|
|
150
|
}
|
110
|
}
|
|
151
|
}
|
111
|
}
|
|
152
|
|
112
|
|