From 2166c1a14f9629aa49a5f3bb849ce878df4c4892 Mon Sep 17 00:00:00 2001
From: yangbin <yangbin@qq.com>
Date: 星期三, 28 八月 2024 17:23:25 +0800
Subject: [PATCH] 2

---
 lxzn-module-ai/src/main/java/org/jeecg/modules/ai/service/imp/LanguageModelServiceImpl.java |   92 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 92 insertions(+), 0 deletions(-)

diff --git a/lxzn-module-ai/src/main/java/org/jeecg/modules/ai/service/imp/LanguageModelServiceImpl.java b/lxzn-module-ai/src/main/java/org/jeecg/modules/ai/service/imp/LanguageModelServiceImpl.java
new file mode 100644
index 0000000..b708af3
--- /dev/null
+++ b/lxzn-module-ai/src/main/java/org/jeecg/modules/ai/service/imp/LanguageModelServiceImpl.java
@@ -0,0 +1,92 @@
+package org.jeecg.modules.ai.service.imp;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.shiro.SecurityUtils;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.modules.ai.entity.LanguageModel;
+import org.jeecg.modules.ai.mapper.LanguageModelMapper;
+import org.jeecg.modules.ai.service.ILanguageModelService;
+import org.jeecg.modules.system.util.SecurityUtil;
+import org.jeecg.modules.utils.BeanMapper;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * @author clown
+ * * @date 2024/8/19
+ */
+@Service
+public class LanguageModelServiceImpl extends ServiceImpl<LanguageModelMapper,LanguageModel> implements ILanguageModelService {
+
+    @Override
+    public boolean addLanguageModel(LanguageModel languageModel) {
+        if (languageModel == null || languageModel.getAiType() == null) {
+            return false;
+        }
+        LanguageModel model = new LanguageModel();
+        if (languageModel.getAiType() == 1) {
+            boolean one =super.save(languageModel);
+            if (one) {
+                model.setProblem(languageModel.getProblem());
+                model.setParentId(languageModel.getId());
+                model.setAiType(2);
+                super.save(model);
+                return true;
+            }
+        }
+        else  if (languageModel.getAiType() == 2 || languageModel.getAiType() == 3) {
+            //鏌ヨ鐖剁被ID
+            super.save(languageModel);
+            return true;
+        }
+        return false;
+    }
+
+    @Override
+    public LanguageModel selectParentId(Integer aiType, String aiId) {
+        LanguageModel info = new LanguageModel();
+        List<LanguageModel> list = super.list(new LambdaQueryWrapper<LanguageModel>().
+                eq(LanguageModel::getAiType, aiType).
+                eq(LanguageModel::getAiId, aiId).
+                orderByDesc(LanguageModel::getCreateTime)
+        );
+        if (list == null || list.isEmpty()) {
+            return null;
+        }
+        BeanMapper.copy(list.get(0),info);
+        return info;
+    }
+
+    @Override
+    public List<LanguageModel> findListAiTitles() {
+        LoginUser user = (LoginUser)SecurityUtils.getSubject().getPrincipal();
+        List<LanguageModel> list = super.list(new LambdaQueryWrapper<LanguageModel>().
+                eq(LanguageModel::getAiType, 1).
+                eq(LanguageModel::getCreateBy, user.getUsername()).
+                orderByDesc(LanguageModel::getCreateTime)
+        );
+        if (list == null || list.isEmpty()) {
+            return null;
+        }
+        return list;
+    }
+
+    @Override
+    public List<LanguageModel> languageProblems(String id) {
+        LoginUser user = (LoginUser)SecurityUtils.getSubject().getPrincipal();
+        LambdaQueryWrapper<LanguageModel> wrapperL = new LambdaQueryWrapper<>();
+        wrapperL.eq(LanguageModel::getCreateBy, user.getUsername());
+        wrapperL.eq(LanguageModel::getParentId, id);
+        wrapperL.and((wrapper)->wrapper.eq(LanguageModel::getAiType, 2).
+                        or().
+                        eq(LanguageModel::getAiType, 3));
+        wrapperL.orderByAsc(LanguageModel::getCreateTime);
+        List<LanguageModel> list = super.list(wrapperL);
+        if (list == null || list.isEmpty()) {
+            return null;
+        }
+        return list;
+    }
+}

--
Gitblit v1.9.3