Commit 25f28eb2 authored by 陈立彬's avatar 陈立彬

问答新会话bugfix

parent 6a85315d
......@@ -63,14 +63,14 @@ public class ExamineRecordMobileDto implements Serializable {
*/
@Schema(description = "综合评分")
@JsonProperty("overall_score")
private Float overallScore;
private int overallScore;
/**
* 平均分
*/
@Schema(description = "平均分")
@JsonProperty("avg_score")
private Float avgScore;
private int avgScore;
/**
* 综合评价
......
......@@ -327,17 +327,8 @@ public class AppChatCompletionService {
public UserAskResultMobileDto userAsk(UserPrincipal userPrincipal, UserQaMobileRequestDto request) {
UserAskResultMobileDto result = new UserAskResultMobileDto();
// 获取会话详情
UserQaRequestModel requestModel = new UserQaRequestModel();
requestModel.setChatCompletionId(request.getChatCompletionId());
requestModel.setUserId(userPrincipal.getUserId());
UserChatCompletionResponseModel ccModel = chatCompletionService.userQaDetail(requestModel);
// dify session id
String sessionId = "";
if(Objects.nonNull(ccModel) && StrUtil.isNotEmpty(ccModel.getSessionId())) {
sessionId = ccModel.getSessionId();
}
// 更新会话信息
UserChatCompletionSaveModel saveModel = new UserChatCompletionSaveModel();
saveModel.setUserId(userPrincipal.getUserId());
......@@ -346,10 +337,20 @@ public class AppChatCompletionService {
saveModel.setLastQuestion(request.getContent());
saveModel.setShopId(userPrincipal.getShopId());
saveModel.setShopName(userPrincipal.getShopName());
// 首次提问
if(Objects.isNull(request.getChatCompletionId()) || (Objects.nonNull(ccModel) && StrUtil.isEmpty(ccModel.getFirstQuestion()))) {
// 新会话首次提问
if(Objects.isNull(request.getChatCompletionId())) {
saveModel.setCreateTime(new Date());
saveModel.setFirstQuestion(request.getContent());
} else {
// 获取会话详情
UserQaRequestModel requestModel = new UserQaRequestModel();
requestModel.setChatCompletionId(request.getChatCompletionId());
requestModel.setUserId(userPrincipal.getUserId());
UserChatCompletionResponseModel ccModel = chatCompletionService.userQaDetail(requestModel);
if(Objects.nonNull(ccModel) && StrUtil.isNotEmpty(ccModel.getSessionId())) {
sessionId = ccModel.getSessionId();
}
}
Integer chatCompletionId = chatCompletionService.saveUserQaSession(saveModel);
......@@ -386,17 +387,8 @@ public class AppChatCompletionService {
* @return
*/
public Flux<ServerSentEvent<UserAskResultMobileDto>> userAsk4Stream(UserPrincipal userPrincipal, UserQaMobileRequestDto request) {
// 获取会话详情
UserQaRequestModel requestModel = new UserQaRequestModel();
requestModel.setChatCompletionId(request.getChatCompletionId());
requestModel.setUserId(userPrincipal.getUserId());
UserChatCompletionResponseModel ccModel = chatCompletionService.userQaDetail(requestModel);
// dify session id
String sessionId = "";
if(Objects.nonNull(ccModel) && StrUtil.isNotEmpty(ccModel.getSessionId())) {
sessionId = ccModel.getSessionId();
}
// 更新会话信息
UserChatCompletionSaveModel saveModel = new UserChatCompletionSaveModel();
saveModel.setUserId(userPrincipal.getUserId());
......@@ -405,10 +397,20 @@ public class AppChatCompletionService {
saveModel.setLastQuestion(request.getContent());
saveModel.setShopId(userPrincipal.getShopId());
saveModel.setShopName(userPrincipal.getShopName());
// 首次提问
if(Objects.isNull(request.getChatCompletionId()) || (Objects.nonNull(ccModel) && StrUtil.isEmpty(ccModel.getFirstQuestion()))) {
// 新会话首次提问
if(Objects.isNull(request.getChatCompletionId())) {
saveModel.setCreateTime(new Date());
saveModel.setFirstQuestion(request.getContent());
} else {
// 获取会话详情
UserQaRequestModel requestModel = new UserQaRequestModel();
requestModel.setChatCompletionId(request.getChatCompletionId());
requestModel.setUserId(userPrincipal.getUserId());
UserChatCompletionResponseModel ccModel = chatCompletionService.userQaDetail(requestModel);
if(Objects.nonNull(ccModel) && StrUtil.isNotEmpty(ccModel.getSessionId())) {
sessionId = ccModel.getSessionId();
}
}
Integer chatCompletionId = chatCompletionService.saveUserQaSession(saveModel);
......
......@@ -590,7 +590,7 @@ public class AppExamineService {
}
return detail;
}).collect(Collectors.toList());
result.setAvgScore(avgScore.floatValue());
result.setAvgScore(avgScore.intValue());
result.setDetails(details);
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment