From a705d631a5fe39fb828b119c797d92e2f8dbe69e Mon Sep 17 00:00:00 2001
From: dongyukun <1208714201@qq.com>
Date: 星期二, 03 六月 2025 18:07:08 +0800
Subject: [PATCH] 问题模版配置

---
 iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/service/questiontemplate/QuestionTemplateServiceImpl.java |   29 +++++++++++++++++++++++++++--
 1 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/service/questiontemplate/QuestionTemplateServiceImpl.java b/iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/service/questiontemplate/QuestionTemplateServiceImpl.java
index 6689b59..98aec9a 100644
--- a/iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/service/questiontemplate/QuestionTemplateServiceImpl.java
+++ b/iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/service/questiontemplate/QuestionTemplateServiceImpl.java
@@ -1,5 +1,7 @@
 package com.iailab.module.ai.service.questiontemplate;
 
+import com.iailab.module.ai.dal.dataobject.questionparamsetting.QuestionParamSettingDO;
+import com.iailab.module.ai.dal.mysql.questionparamsetting.QuestionParamSettingMapper;
 import jakarta.annotation.Resource;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
@@ -10,6 +12,8 @@
 import com.iailab.framework.common.util.object.BeanUtils;
 
 import com.iailab.module.ai.dal.mysql.questiontemplate.QuestionTemplateMapper;
+
+import java.util.UUID;
 
 import static com.iailab.framework.common.exception.util.ServiceExceptionUtil.exception;
 import static com.iailab.module.ai.enums.ErrorCodeConstants.*;
@@ -26,10 +30,19 @@
     @Resource
     private QuestionTemplateMapper questionTemplateMapper;
 
+    @Resource
+    private QuestionParamSettingMapper questionParamSettingMapper;
+
     @Override
     public String createQuestionTemplate(QuestionTemplateSaveReqVO createReqVO) {
         // 插入
         QuestionTemplateDO questionTemplate = BeanUtils.toBean(createReqVO, QuestionTemplateDO.class);
+        String id = UUID.randomUUID().toString();
+        // 插入设置列表
+        createReqVO.getSettingList().forEach(setting -> {
+            setting.setTemplateId(id);
+            questionParamSettingMapper.insert(BeanUtils.toBean(setting, QuestionParamSettingDO.class));
+        });
         questionTemplateMapper.insert(questionTemplate);
         // 返回
         return questionTemplate.getId();
@@ -38,9 +51,17 @@
     @Override
     public void updateQuestionTemplate(QuestionTemplateSaveReqVO updateReqVO) {
         // 校验存在
-        validateQuestionTemplateExists(updateReqVO.getId());
+        String id = UUID.randomUUID().toString();
+        validateQuestionTemplateExists(id);
         // 更新
         QuestionTemplateDO updateObj = BeanUtils.toBean(updateReqVO, QuestionTemplateDO.class);
+        // 删除设置列表
+        questionParamSettingMapper.deleteByTemplateId(updateReqVO.getId());
+        // 更新设置列表
+        updateReqVO.getSettingList().forEach(setting -> {
+            setting.setTemplateId(id);
+            questionParamSettingMapper.insert(BeanUtils.toBean(setting, QuestionParamSettingDO.class));
+        });
         questionTemplateMapper.updateById(updateObj);
     }
 
@@ -50,6 +71,8 @@
         validateQuestionTemplateExists(id);
         // 删除
         questionTemplateMapper.deleteById(id);
+        // 删除设置列表
+        questionParamSettingMapper.deleteByTemplateId(id);
     }
 
     private void validateQuestionTemplateExists(String id) {
@@ -60,7 +83,9 @@
 
     @Override
     public QuestionTemplateDO getQuestionTemplate(String id) {
-        return questionTemplateMapper.selectById(id);
+        QuestionTemplateDO questionTemplateDO = questionTemplateMapper.selectById(id);
+        questionTemplateDO.setSettingList(BeanUtils.toBean(questionParamSettingMapper.selectList("template_id",id), QuestionTemplateSaveReqVO.class));
+        return questionTemplateDO;
     }
 
     @Override

--
Gitblit v1.9.3