package org.jeecg.modules.ai.controller; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.modules.ai.entity.LanguageModel; import org.jeecg.modules.ai.service.ILanguageModelService; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * @author clown * * @date 2024/8/19 */ @Slf4j @Api(tags = "问答") @RestController @RequestMapping("/ai/languageModel") public class LanguageModelController extends JeecgController { /** * 新增 * * @param languageModel * @return */ @AutoLog("问答-新增") @ApiOperation(value = "问答-新增", notes = "问答-新增") @PostMapping("/addLanguage") public Result addLanguageModel(@RequestBody LanguageModel languageModel) { Boolean flag = super.service.addLanguageModel(languageModel); return flag ? Result.OK("新增成功") : Result.error("新增失败"); } @AutoLog("问答-会话列表") @ApiOperation(value = "问答-会话列表", notes = "问答-会话列表") @GetMapping("/languageTitles") public Result languageModelTitles() { List languageModels = super.service.findListAiTitles(); return Result.OK(languageModels); } @AutoLog("问答-列表") @ApiOperation(value = "问答-列表", notes = "问答-列表") @GetMapping("/languageProblems") public Result languageProblems(String id) { List models = super.service.languageProblems(id); return Result.OK(models); } @AutoLog("问答-删除") @ApiOperation(value = "问答-删除", notes = "问答-删除") @RequestMapping(value = "/deleteLanguage", method = RequestMethod.DELETE) public Result deleteLanguage(@RequestParam("id") String id) { if (StringUtils.isNotBlank(id)) { List models = super.service.languageProblems(id); if (models == null || models.isEmpty()){ super.service.removeById(id); } List strings = new ArrayList<>(); strings.add(id); for (LanguageModel model : models) { strings.add(model.getId()); } super.service.removeBatchByIds(strings); } return Result.ok("删除成功"); } }