fix:修改APP端代理商员工和活动管理的接口
This commit is contained in:
parent
2d07ffc645
commit
b4d5112698
@ -231,25 +231,62 @@ public class AppParentAgentActivityService implements IAppParentAgentActivitySer
|
||||
private TestChildCharacterResp parseAiResponse(String aiResponse) {
|
||||
TestChildCharacterResp resp = new TestChildCharacterResp();
|
||||
|
||||
// 简单解析AI返回的内容
|
||||
String[] parts = aiResponse.split("\n");
|
||||
for (String part : parts) {
|
||||
if (part.startsWith("1. 性格分析:") || part.contains("性格分析")) {
|
||||
resp.setCharacterAnalysis(part.replaceFirst("^[0-9]+\\.\\s*", "").replace("性格分析:", "").trim());
|
||||
} else if (part.startsWith("2. 性格特征:") || part.contains("性格特征")) {
|
||||
resp.setCharacterTraits(part.replaceFirst("^[0-9]+\\.\\s*", "").replace("性格特征:", "").trim());
|
||||
} else if (part.startsWith("3. 教育建议:") || part.contains("教育建议")) {
|
||||
resp.setSuggestions(part.replaceFirst("^[0-9]+\\.\\s*", "").replace("教育建议:", "").trim());
|
||||
} else if (part.startsWith("4. 性格类型:") || part.contains("性格类型")) {
|
||||
resp.setCharacterType(part.replaceFirst("^[0-9]+\\.\\s*", "").replace("性格类型:", "").trim());
|
||||
String[] lines = aiResponse.split("\n");
|
||||
StringBuilder currentSection = new StringBuilder();
|
||||
String currentHeader = null;
|
||||
|
||||
for (String line : lines) {
|
||||
// 检查是否为新的章节头部
|
||||
if (line.matches("^\\d+\\.\\s*[\\u4e00-\\u9fa5]+:.*|^\\s*[\\u4e00-\\u9fa5]+:.*")) {
|
||||
// 保存之前的章节
|
||||
if (currentHeader != null && currentSection.length() > 0) {
|
||||
setResponseField(resp, currentHeader, currentSection.toString().trim());
|
||||
}
|
||||
|
||||
// 开始新章节
|
||||
String[] parts = line.split(":", 2);
|
||||
if (parts.length >= 2) {
|
||||
currentHeader = parts[0].replaceAll("^\\d+\\.\\s*", "").trim();
|
||||
currentSection = new StringBuilder(parts[1]);
|
||||
}
|
||||
} else if (currentHeader != null) {
|
||||
// 添加到当前章节内容
|
||||
if (currentSection.length() > 0) {
|
||||
currentSection.append("\n");
|
||||
}
|
||||
currentSection.append(line.trim());
|
||||
}
|
||||
}
|
||||
|
||||
// 如果解析失败,将整个内容作为性格分析
|
||||
// 处理最后一个章节
|
||||
if (currentHeader != null && currentSection.length() > 0) {
|
||||
setResponseField(resp, currentHeader, currentSection.toString().trim());
|
||||
}
|
||||
|
||||
if (resp.getCharacterAnalysis() == null || resp.getCharacterAnalysis().isEmpty()) {
|
||||
resp.setCharacterAnalysis(aiResponse);
|
||||
}
|
||||
|
||||
return resp;
|
||||
}
|
||||
|
||||
private void setResponseField(TestChildCharacterResp resp, String header, String content) {
|
||||
switch (header) {
|
||||
case "性格分析":
|
||||
resp.setCharacterAnalysis(content);
|
||||
break;
|
||||
case "性格特征":
|
||||
resp.setCharacterTraits(content);
|
||||
break;
|
||||
case "教育建议":
|
||||
resp.setSuggestions(content);
|
||||
break;
|
||||
case "性格类型":
|
||||
resp.setCharacterType(content);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user