From 0325d413502474062e1d400df319bfd390e94956 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 17 Sep 2025 16:12:40 +0800
Subject: [PATCH] feat(ai): 新增 AI 陪练相关功能

---
 src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberAnswerServiceImpl.java |   40 +++++++++++++++++++++++++++++++++++-----
 1 files changed, 35 insertions(+), 5 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberAnswerServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberAnswerServiceImpl.java
index 56576c6..faac604 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberAnswerServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberAnswerServiceImpl.java
@@ -1,6 +1,7 @@
 package cc.mrbird.febs.ai.service.impl;
 
 import cc.mrbird.febs.ai.entity.*;
+import cc.mrbird.febs.ai.enumerates.AiTypeEnum;
 import cc.mrbird.febs.ai.mapper.AiMemberAnswerMapper;
 import cc.mrbird.febs.ai.req.memberAnswer.*;
 import cc.mrbird.febs.ai.res.memberAnswer.*;
@@ -253,11 +254,11 @@
             throw new FebsException("答题记录不存在");
         }
 
-        String companyId = aiMemberAnswer.getCompanyId();
+        Date nowTime = new Date();
 
-        Date createdTime = new Date();
+        String companyId = aiMemberAnswer.getCompanyId();
         AiMemberAnswerItem aiMemberAnswerItem = aiMemberAnswerItemService.getById(memberAnswerItemId);
-        aiMemberAnswerItem.setUpdatedTime(createdTime);
+        aiMemberAnswerItem.setUpdatedTime(nowTime);
         AiProductQuestion aiProductQuestion = aiProductQuestionService.getById(productQuestionId);
 
         LambdaQueryWrapper<AiProductQuestionItem> productQuestionItemLambdaQueryWrapper = Wrappers.lambdaQuery(AiProductQuestionItem.class);
@@ -282,14 +283,14 @@
         }else{
             aiMemberAnswerItem.setIsCollected(0);
         }
+        aiMemberAnswerItem.setCompanyId(companyId);
         aiMemberAnswerItemService.updateById(aiMemberAnswerItem);
 
         aiMemberAnswer.setDoneCnt(aiMemberAnswer.getDoneCnt() + 1);
         if (aiMemberAnswerItem.getMemberAnswerState() == 1){
             aiMemberAnswer.setCorrectCnt(aiMemberAnswer.getCorrectCnt() + 1);
         }
-        aiMemberAnswerItem.setCompanyId(companyId);
-        aiMemberAnswer.setUpdatedTime(createdTime);
+        aiMemberAnswer.setUpdatedTime(nowTime);
         aiMemberAnswerMapper.updateById(aiMemberAnswer);
 
         apiQuestionItemInfoVo.setAnswerAnalysis(aiMemberAnswerItem.getAnswerAnalysis());
@@ -396,4 +397,33 @@
 
         return new FebsResponse().success().data(pageListByQuery);
     }
+
+    @Override
+    public void updateMemberAnswerUpdateTime(String memberAnswerId, Date updateTime) {
+        aiMemberAnswerMapper.update(
+                null,
+                Wrappers.lambdaUpdate(AiMemberAnswer.class)
+                .set(AiMemberAnswer::getUpdatedTime,updateTime)
+                .eq(AiMemberAnswer::getId,memberAnswerId)
+        );
+    }
+
+    @Override
+    public List<AiMemberAnswer> getListByCompanyId(String companyId) {
+        return aiMemberAnswerMapper.selectList(
+                Wrappers.lambdaQuery(AiMemberAnswer.class)
+                .eq(AiMemberAnswer::getCompanyId, companyId)
+                .eq(AiMemberAnswer::getState, AiTypeEnum.AI_MEMBER_ANSWER_STATE_DONE.getCode())
+        );
+    }
+
+    @Override
+    public List<AiMemberAnswer> getListByCompanyIdAndMemberUuid(String companyId, String memberUuid) {
+        return aiMemberAnswerMapper.selectList(
+                Wrappers.lambdaQuery(AiMemberAnswer.class)
+                        .eq(AiMemberAnswer::getCompanyId, companyId)
+                        .eq(AiMemberAnswer::getMemberId, memberUuid)
+                        .eq(AiMemberAnswer::getState, AiTypeEnum.AI_MEMBER_ANSWER_STATE_DONE.getCode())
+        );
+    }
 }

--
Gitblit v1.9.1