package com.iailab.module.ai.service.questiontemplate;
|
|
import jakarta.annotation.Resource;
|
import org.springframework.stereotype.Service;
|
import org.springframework.validation.annotation.Validated;
|
|
import com.iailab.module.ai.controller.admin.questiontemplate.vo.*;
|
import com.iailab.module.ai.dal.dataobject.questiontemplate.QuestionTemplateDO;
|
import com.iailab.framework.common.pojo.PageResult;
|
import com.iailab.framework.common.util.object.BeanUtils;
|
|
import com.iailab.module.ai.dal.mysql.questiontemplate.QuestionTemplateMapper;
|
|
import static com.iailab.framework.common.exception.util.ServiceExceptionUtil.exception;
|
import static com.iailab.module.ai.enums.ErrorCodeConstants.*;
|
|
/**
|
* 大模型问题模板 Service 实现类
|
*
|
* @author 超级管理员
|
*/
|
@Service
|
@Validated
|
public class QuestionTemplateServiceImpl implements QuestionTemplateService {
|
|
@Resource
|
private QuestionTemplateMapper questionTemplateMapper;
|
|
@Override
|
public String createQuestionTemplate(QuestionTemplateSaveReqVO createReqVO) {
|
// 插入
|
QuestionTemplateDO questionTemplate = BeanUtils.toBean(createReqVO, QuestionTemplateDO.class);
|
questionTemplateMapper.insert(questionTemplate);
|
// 返回
|
return questionTemplate.getId();
|
}
|
|
@Override
|
public void updateQuestionTemplate(QuestionTemplateSaveReqVO updateReqVO) {
|
// 校验存在
|
validateQuestionTemplateExists(updateReqVO.getId());
|
// 更新
|
QuestionTemplateDO updateObj = BeanUtils.toBean(updateReqVO, QuestionTemplateDO.class);
|
questionTemplateMapper.updateById(updateObj);
|
}
|
|
@Override
|
public void deleteQuestionTemplate(String id) {
|
// 校验存在
|
validateQuestionTemplateExists(id);
|
// 删除
|
questionTemplateMapper.deleteById(id);
|
}
|
|
private void validateQuestionTemplateExists(String id) {
|
if (questionTemplateMapper.selectById(id) == null) {
|
throw exception(QUESTION_TEMPLATE_NOT_EXISTS);
|
}
|
}
|
|
@Override
|
public QuestionTemplateDO getQuestionTemplate(String id) {
|
return questionTemplateMapper.selectById(id);
|
}
|
|
@Override
|
public PageResult<QuestionTemplateDO> getQuestionTemplatePage(QuestionTemplatePageReqVO pageReqVO) {
|
return questionTemplateMapper.selectPage(pageReqVO);
|
}
|
|
}
|