From 9503c1ebb3fbb68fb8259bea87097d010846e2d5 Mon Sep 17 00:00:00 2001
From: houzhongjian <houzhongyi@126.com>
Date: 星期三, 18 六月 2025 08:59:16 +0800
Subject: [PATCH] Merge remote-tracking branch 'refs/remotes/origin/dev-test' into feature/ai

---
 iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/service/schedulesuggest/ScheduleSuggestServiceImpl.java |   86 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 86 insertions(+), 0 deletions(-)

diff --git a/iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/service/schedulesuggest/ScheduleSuggestServiceImpl.java b/iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/service/schedulesuggest/ScheduleSuggestServiceImpl.java
new file mode 100644
index 0000000..e3897e3
--- /dev/null
+++ b/iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/service/schedulesuggest/ScheduleSuggestServiceImpl.java
@@ -0,0 +1,86 @@
+package com.iailab.module.ai.service.schedulesuggest;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import org.springframework.stereotype.Service;
+import jakarta.annotation.Resource;
+import org.springframework.validation.annotation.Validated;
+
+import com.iailab.module.ai.controller.admin.schedulesuggest.vo.*;
+import com.iailab.module.ai.dal.dataobject.schedulesuggest.ScheduleSuggestDO;
+import com.iailab.framework.common.pojo.PageResult;
+import com.iailab.framework.common.util.object.BeanUtils;
+
+import com.iailab.module.ai.dal.mysql.schedulesuggest.ScheduleSuggestMapper;
+
+import java.util.List;
+
+import static com.iailab.framework.common.exception.util.ServiceExceptionUtil.exception;
+import static com.iailab.module.ai.enums.ErrorCodeConstants.*;
+
+/**
+ * 大模型调度建议 Service 实现类
+ *
+ * @author 超级管理员
+ */
+@Service
+@Validated
+public class ScheduleSuggestServiceImpl implements ScheduleSuggestService {
+
+    @Resource
+    private ScheduleSuggestMapper scheduleSuggestMapper;
+
+    @Override
+    public Long createScheduleSuggest(ScheduleSuggestSaveReqVO createReqVO) {
+        // 插入
+        ScheduleSuggestDO scheduleSuggest = BeanUtils.toBean(createReqVO, ScheduleSuggestDO.class);
+        scheduleSuggestMapper.insert(scheduleSuggest);
+        // 返回
+        return scheduleSuggest.getId();
+    }
+
+    @Override
+    public void updateScheduleSuggest(ScheduleSuggestSaveReqVO updateReqVO) {
+        // 校验存在
+        validateScheduleSuggestExists(updateReqVO.getId());
+        // 更新
+        ScheduleSuggestDO updateObj = BeanUtils.toBean(updateReqVO, ScheduleSuggestDO.class);
+        scheduleSuggestMapper.updateById(updateObj);
+    }
+
+    @Override
+    public void deleteScheduleSuggest(Long id) {
+        // 校验存在
+        validateScheduleSuggestExists(id);
+        // 删除
+        scheduleSuggestMapper.deleteById(id);
+    }
+
+    private void validateScheduleSuggestExists(Long id) {
+        if (scheduleSuggestMapper.selectById(id) == null) {
+            throw exception(SCHEDULE_SUGGEST_NOT_EXISTS);
+        }
+    }
+
+    @Override
+    public ScheduleSuggestDO getScheduleSuggest(Long id) {
+        return scheduleSuggestMapper.selectById(id);
+    }
+
+    @Override
+    public void operateScheduleSuggest(ScheduleSuggestDO scheduleSuggestDO) {
+        scheduleSuggestMapper.updateById(scheduleSuggestDO);
+    }
+
+    @Override
+    public List<ScheduleSuggestDO> getTopScheduleSuggests(Long top) {
+        return scheduleSuggestMapper.selectList(new LambdaQueryWrapper<ScheduleSuggestDO>()
+                .orderByDesc(ScheduleSuggestDO::getCreateTime)
+                .last("limit " + top));
+    }
+
+    @Override
+    public PageResult<ScheduleSuggestDO> getScheduleSuggestPage(ScheduleSuggestPageReqVO pageReqVO) {
+        return scheduleSuggestMapper.selectPage(pageReqVO);
+    }
+
+}
\ No newline at end of file

--
Gitblit v1.9.3