From 753df81a02287acd5af16ef83eccd0a295530584 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Thu, 30 Oct 2025 10:46:36 +0800
Subject: [PATCH] feat(ai): 简化AI对话项创建逻辑并新增连续对话类型 - 移除复杂的对话项更新逻辑,统一通过add方法创建新项 - 新增AiTalkOutputEnum枚举值CONTEXT_TALK用于AI陪练连续对话 - 更新ApiMemberTalkAnswerSavaDto注释以包含新的对话类型 - 修复对话项创建时类型参数未正确传递的问题 - 优化代码结构,减少冗余的条件判断和数据转换操作

---
 src/main/java/cc/mrbird/febs/ai/controller/member/ApiMemberController.java |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 54 insertions(+), 6 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/ai/controller/member/ApiMemberController.java b/src/main/java/cc/mrbird/febs/ai/controller/member/ApiMemberController.java
index 4c90cad..61a9470 100644
--- a/src/main/java/cc/mrbird/febs/ai/controller/member/ApiMemberController.java
+++ b/src/main/java/cc/mrbird/febs/ai/controller/member/ApiMemberController.java
@@ -1,9 +1,7 @@
 package cc.mrbird.febs.ai.controller.member;
 
-import cc.mrbird.febs.ai.req.member.ApiMemberPageDto;
-import cc.mrbird.febs.ai.req.memberPoint.ApiMemberPointDto;
-import cc.mrbird.febs.ai.res.member.ApiMemberPageVo;
-import cc.mrbird.febs.ai.res.memberAnswer.ApiMemberAnswerVoV2;
+import cc.mrbird.febs.ai.req.member.*;
+import cc.mrbird.febs.ai.res.member.*;
 import cc.mrbird.febs.ai.service.AiMemberService;
 import cc.mrbird.febs.common.entity.FebsResponse;
 import io.swagger.annotations.Api;
@@ -33,11 +31,61 @@
 
     @ApiOperation(value = "我的团队", notes = "我的团队")
     @ApiResponses({
-            @ApiResponse(code = 200, message = "success", response = ApiMemberPageVo.class)
+            @ApiResponse(code = 200, message = "success", response = ApiMemberTeamPageVo.class)
     })
     @PostMapping(value = "/myTeam")
-    public FebsResponse myTeam(@RequestBody @Validated ApiMemberPageDto dto) {
+    public FebsResponse myTeam(@RequestBody @Validated ApiMemberTeamPageDto dto) {
 
         return aiMemberService.myTeam(dto);
     }
+
+    @ApiOperation(value = "练习次数", notes = "练习次数")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = ApiMemberTeamPracticeVo.class)
+    })
+    @PostMapping(value = "/practice")
+    public FebsResponse practice(@RequestBody @Validated ApiMemberTeamPracticeDto dto) {
+
+        return aiMemberService.practice(dto);
+    }
+
+    @ApiOperation(value = "Ai陪练分页查询", notes = "Ai陪练分页查询")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = ApiMemberTalkPageVo.class)
+    })
+    @PostMapping(value = "/talkPage")
+    public FebsResponse talkPage(@RequestBody @Validated ApiMemberTalkPageDto dto) {
+
+        return aiMemberService.talkPage(dto);
+    }
+
+    @ApiOperation(value = "题目练习分页查询", notes = "题目练习分页查询")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = ApiMemberAnswerPageVo.class)
+    })
+    @PostMapping(value = "/answerPage")
+    public FebsResponse answerPage(@RequestBody @Validated ApiMemberAnswerPageDto dto) {
+
+        return aiMemberService.answerPage(dto);
+    }
+
+    @ApiOperation(value = "题目练习详情查询", notes = "题目练习详情查询")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = ApiMemberAnswerInfoVo.class)
+    })
+    @PostMapping(value = "/answerInfo")
+    public FebsResponse answerInfo(@RequestBody @Validated ApiMemberAnswerInfoDto dto) {
+
+        return aiMemberService.answerInfo(dto);
+    }
+
+    @ApiOperation(value = "学习时长", notes = "学习时长")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = ApiMemberTeamStudyVo.class)
+    })
+    @PostMapping(value = "/study")
+    public FebsResponse study(@RequestBody @Validated ApiMemberTeamStudyDto dto) {
+
+        return aiMemberService.study(dto);
+    }
 }

--
Gitblit v1.9.1