From fe70ca5db711b458714bfbe4a6eda6cf7d8a0421 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Tue, 16 Sep 2025 13:58:46 +0800 Subject: [PATCH] feat(member): 添加会员公司ID并更新相关服务 --- src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberAnswerServiceImpl.java | 17 ++++++++++++----- 1 files changed, 12 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 58c9830..56576c6 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 @@ -9,6 +9,7 @@ import cc.mrbird.febs.ai.service.*; import cc.mrbird.febs.ai.utils.UUID; import cc.mrbird.febs.common.entity.FebsResponse; +import cc.mrbird.febs.common.exception.FebsException; import cc.mrbird.febs.common.utils.LoginUserUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUnit; @@ -61,8 +62,9 @@ String productId = dto.getId(); AiProduct aiProduct = aiProductService.getById(productId); if(ObjectUtil.isNull(aiProduct)){ - throw new RuntimeException("产品不存在"); + throw new FebsException("产品不存在"); } + String companyId = aiProduct.getCompanyId(); //验证产品分类下是否有题目 String productCategoryId = aiProduct.getProductCategoryId(); LambdaQueryWrapper<AiProductQuestion> questionLambdaQueryWrapper = Wrappers.lambdaQuery(AiProductQuestion.class); @@ -72,7 +74,7 @@ List<AiProductQuestion> aiProductQuestions = aiProductQuestionService.getListByQuery(questionLambdaQueryWrapper); if(CollUtil.isEmpty(aiProductQuestions)){ // todo 没有题目采用AI生成题目 - throw new RuntimeException("产品没有题目"); + throw new FebsException("产品没有题目"); } //判断该产品是否有正在进行的练习 Date createdTime = new Date(); @@ -85,6 +87,7 @@ Integer questionCount = aiProduct.getQuestionCount(); aiMemberAnswer = new AiMemberAnswer(); aiMemberAnswer.setId(UUID.getSimpleUUIDString()); + aiMemberAnswer.setCompanyId(companyId); aiMemberAnswer.setCreatedTime(createdTime); aiMemberAnswer.setUpdatedTime(createdTime); aiMemberAnswer.setProductId(aiProduct.getId()); @@ -101,6 +104,7 @@ AiProductQuestion aiProductQuestion = aiProductQuestionService.createQuestion(aiProduct.getId()); AiMemberAnswerItem aiMemberAnswerItem = new AiMemberAnswerItem(); aiMemberAnswerItem.setId(UUID.getSimpleUUIDString()); + aiMemberAnswerItem.setCompanyId(companyId); aiMemberAnswerItem.setCreatedTime(createdTime); aiMemberAnswerItem.setAnswerId(aiMemberAnswer.getId()); aiMemberAnswerItem.setProductId(aiMemberAnswer.getProductId()); @@ -134,7 +138,7 @@ String productId = dto.getId(); AiProduct aiProduct = aiProductService.getById(productId); if(ObjectUtil.isNull(aiProduct)){ - throw new RuntimeException("产品不存在"); + throw new FebsException("产品不存在"); } //验证产品分类下是否有题目 String productCategoryId = aiProduct.getProductCategoryId(); @@ -145,7 +149,7 @@ List<AiProductQuestion> aiProductQuestions = aiProductQuestionService.getListByQuery(questionLambdaQueryWrapper); if(CollUtil.isEmpty(aiProductQuestions)){ // todo 没有题目采用AI生成题目 - throw new RuntimeException("产品没有题目"); + throw new FebsException("产品没有题目"); } //判断该产品是否有正在进行的练习 Date createdTime = new Date(); @@ -246,8 +250,10 @@ AiMemberAnswer aiMemberAnswer = this.getById(memberAnswerId); if(ObjectUtil.isNull(aiMemberAnswer)){ - throw new RuntimeException("答题记录不存在"); + throw new FebsException("答题记录不存在"); } + + String companyId = aiMemberAnswer.getCompanyId(); Date createdTime = new Date(); AiMemberAnswerItem aiMemberAnswerItem = aiMemberAnswerItemService.getById(memberAnswerItemId); @@ -282,6 +288,7 @@ if (aiMemberAnswerItem.getMemberAnswerState() == 1){ aiMemberAnswer.setCorrectCnt(aiMemberAnswer.getCorrectCnt() + 1); } + aiMemberAnswerItem.setCompanyId(companyId); aiMemberAnswer.setUpdatedTime(createdTime); aiMemberAnswerMapper.updateById(aiMemberAnswer); -- Gitblit v1.9.1