From 75d8b0ad39a7eb04f72ef8654dbb895322f07cfd Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 21 Oct 2025 13:41:42 +0800
Subject: [PATCH] feat(ai): 新增会员答题分页及详情查询功能 - 在 AiMemberAnswerMapper 中新增 getAnswerPage 方法及对应 XML 查询语句 - 新增 ApiMemberAnswerPageDto 和 ApiMemberAnswerPageVo 用于分页查询参数和返回结果 - 在 AiMemberAnswerService 及其实现类中添加 getAnswerPage 方法 - 在 AiMemberService 及其实现类中新增 answerPage 和 answerInfo 接口实现 - 新增 ApiMemberAnswerInfoDto 和 ApiMemberAnswerInfoVo 用于答题详情接口参数和响应 - 在 ApiMemberController 中增加 /answerPage 和 /answerInfo两个 POST 接口 - 优化 AiMemberTeamPracticeVo,增加 memberUuid 字段 - 统一导入包路径,简化代码结构

---
 src/main/java/cc/mrbird/febs/ai/strategy/Impl/AliApplicationLlmStrategyServiceImpl.java |   19 ++++++++++++++++++-
 1 files changed, 18 insertions(+), 1 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/ai/strategy/Impl/AliApplicationLlmStrategyServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/strategy/Impl/AliApplicationLlmStrategyServiceImpl.java
index bd1e116..95441da 100644
--- a/src/main/java/cc/mrbird/febs/ai/strategy/Impl/AliApplicationLlmStrategyServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/ai/strategy/Impl/AliApplicationLlmStrategyServiceImpl.java
@@ -1,5 +1,6 @@
 package cc.mrbird.febs.ai.strategy.Impl;
 
+import cc.mrbird.febs.ai.enumerates.AiTypeEnum;
 import cc.mrbird.febs.ai.strategy.LlmStrategyService;
 import cc.mrbird.febs.ai.strategy.enumerates.LlmApplicationAppIdEnum;
 import cc.mrbird.febs.ai.strategy.enumerates.LlmStrategyContextEnum;
@@ -38,6 +39,7 @@
     private final String bizParam_1 = "prompt_ai_system";
     private final String bizParam_2 = "question";
     private final String bizParam_3 = "query";
+    private final String bizParam_4 = "messages";
 
     private HashMap getPrompt(List<LlmStrategyDto> dto) {
         HashMap<String, String> bizParamsMap = new HashMap<>();
@@ -50,6 +52,9 @@
             }
             if (StrUtil.equals(dtoItem.getRole(),Role.USER.getValue())){
                 bizParamsMap.put(bizParam_3, dtoItem.getContent());
+            }
+            if (StrUtil.equals(dtoItem.getRole(),AiTypeEnum.MESSAGES.getName())){
+                bizParamsMap.put(bizParam_4, JSONUtil.toJsonStr(dtoItem.getMessages()));
             }
         }
         return bizParamsMap;
@@ -72,6 +77,17 @@
             if (StrUtil.equals(dtoItem.getRole(),Role.TOOL.getValue())){
                 int code = Integer.parseInt(dtoItem.getContent());
                 appId = LlmApplicationAppIdEnum.HIGH_LIGHT.getAppIdByCode(code);
+                break;
+            }
+        }
+        return appId;
+    }
+
+    private String getAppIdV2(List<LlmStrategyDto> dto) {
+        String appId = null;
+        for (LlmStrategyDto dtoItem : dto){
+            if (StrUtil.equals(dtoItem.getRole(),Role.TOOL.getValue())){
+                appId = dtoItem.getContent();
                 break;
             }
         }
@@ -161,7 +177,8 @@
         }
         HashMap prompt = getPrompt(dto);
         String query = getQuery(dto);
-        String appId = getAppId(dto);
+//        String appId = getAppId(dto);
+        String appId = getAppIdV2(dto);
         if (prompt == null || prompt.size() == 0){
             throw new FebsException("百炼工作流初始化异常");
         }

--
Gitblit v1.9.1