diff --git a/ruoyi-common/hwmom-common-mom/src/main/java/org/dromara/common/constant/HwMomAiConstants.java b/ruoyi-common/hwmom-common-mom/src/main/java/org/dromara/common/constant/HwMomAiConstants.java
new file mode 100644
index 00000000..c484cdf8
--- /dev/null
+++ b/ruoyi-common/hwmom-common-mom/src/main/java/org/dromara/common/constant/HwMomAiConstants.java
@@ -0,0 +1,15 @@
+package org.dromara.common.constant;
+
+/**
+ * MES常量信息
+ *
+ * @author xins
+ */
+public interface HwMomAiConstants {
+
+ /**
+ * redis存储数据库表结构key
+ */
+ public static final String AI_DATABASE_SCHEMA_KEY_PREFIX = "ai:database:schema:";
+
+}
diff --git a/ruoyi-modules/hwmom-ai/pom.xml b/ruoyi-modules/hwmom-ai/pom.xml
index b93f97e7..c2fd184d 100644
--- a/ruoyi-modules/hwmom-ai/pom.xml
+++ b/ruoyi-modules/hwmom-ai/pom.xml
@@ -190,6 +190,15 @@
0.18.0
+
+
+ com.alibaba
+ dashscope-sdk-java
+
+ 2.18.2
+
+
+
org.tensorflow
@@ -300,6 +309,17 @@
2.13.0
+
+ org.anyline
+ anyline-data-jdbc-mssql
+ ${anyline.version}
+
+
+
+ org.anyline
+ anyline-environment-spring-data-jdbc
+ ${anyline.version}
+
diff --git a/ruoyi-modules/hwmom-ai/src/main/java/org/dromara/ai/controller/AiAssistantController.java b/ruoyi-modules/hwmom-ai/src/main/java/org/dromara/ai/controller/AiAssistantController.java
index 2ae4dc46..ab8ce136 100644
--- a/ruoyi-modules/hwmom-ai/src/main/java/org/dromara/ai/controller/AiAssistantController.java
+++ b/ruoyi-modules/hwmom-ai/src/main/java/org/dromara/ai/controller/AiAssistantController.java
@@ -131,6 +131,16 @@ public class AiAssistantController extends BaseController {
}
+ /**
+ * 根绝用户输入生成sql,传入参数包括用户输入、AIModelID, AIPLATFORMID
+ * @param request
+ * @return
+ */
+ @PostMapping(value = "/generateSql")
+ public String generateSql(AIRequest request) {
+ return aiAssistantService.generateSQL(request);
+ }
+
diff --git a/ruoyi-modules/hwmom-ai/src/main/java/org/dromara/ai/controller/AiModelController.java b/ruoyi-modules/hwmom-ai/src/main/java/org/dromara/ai/controller/AiModelController.java
index 9dca7076..80807ccf 100644
--- a/ruoyi-modules/hwmom-ai/src/main/java/org/dromara/ai/controller/AiModelController.java
+++ b/ruoyi-modules/hwmom-ai/src/main/java/org/dromara/ai/controller/AiModelController.java
@@ -142,7 +142,7 @@ public class AiModelController extends BaseController {
/**
- * 测试配置是否正确
+ * 测试配置是否正确,主要验证AI模型的apikey,apisecret等信息
*/
@PostMapping("/testAIModel")
public R testAIModel(@RequestParam("provider") String provider, @RequestBody AIRequest request) {
diff --git a/ruoyi-modules/hwmom-ai/src/main/java/org/dromara/ai/controller/AiSqlTableController.java b/ruoyi-modules/hwmom-ai/src/main/java/org/dromara/ai/controller/AiSqlTableController.java
new file mode 100644
index 00000000..7f7ae647
--- /dev/null
+++ b/ruoyi-modules/hwmom-ai/src/main/java/org/dromara/ai/controller/AiSqlTableController.java
@@ -0,0 +1,181 @@
+package org.dromara.ai.controller;
+
+import java.util.List;
+
+import cn.hutool.core.convert.Convert;
+import lombok.RequiredArgsConstructor;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.constraints.*;
+import cn.dev33.satoken.annotation.SaCheckPermission;
+import org.dromara.ai.domain.AiSqlTable;
+import org.dromara.ai.domain.dto.AiSqlTableDelete;
+import org.dromara.common.mybatis.helper.DataBaseHelper;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.validation.annotation.Validated;
+import org.dromara.common.idempotent.annotation.RepeatSubmit;
+import org.dromara.common.log.annotation.Log;
+import org.dromara.common.web.core.BaseController;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.core.domain.R;
+import org.dromara.common.core.validate.AddGroup;
+import org.dromara.common.core.validate.EditGroup;
+import org.dromara.common.log.enums.BusinessType;
+import org.dromara.common.excel.utils.ExcelUtil;
+import org.dromara.ai.domain.vo.AiSqlTableVo;
+import org.dromara.ai.domain.bo.AiSqlTableBo;
+import org.dromara.ai.service.IAiSqlTableService;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+
+/**
+ * AI生成sql信息
+ * 前端访问路由地址为:/ai/aiSqlTable
+ *
+ * @author xins
+ * @date 2025-09-04
+ */
+@Validated
+@RequiredArgsConstructor
+@RestController
+@RequestMapping("/aiSqlTable")
+public class AiSqlTableController extends BaseController {
+
+ private final IAiSqlTableService aiSqlTableService;
+
+ /**
+ * 查询AI生成sql信息列表
+ */
+ @SaCheckPermission("ai:aiSqlTable:list")
+ @GetMapping("/list")
+ public TableDataInfo list(AiSqlTableBo bo, PageQuery pageQuery) {
+ return aiSqlTableService.queryPageList(bo, pageQuery);
+ }
+
+ /**
+ * 导出AI生成sql信息列表
+ */
+ @SaCheckPermission("ai:aiSqlTable:export")
+ @Log(title = "AI生成sql信息", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(AiSqlTableBo bo, HttpServletResponse response) {
+ List list = aiSqlTableService.queryList(bo);
+ ExcelUtil.exportExcel(list, "AI生成sql信息", AiSqlTableVo.class, response);
+ }
+
+ /**
+ * 获取AI生成sql信息详细信息
+ *
+ * @param tableId 主键
+ */
+ @SaCheckPermission("ai:aiSqlTable:query")
+ @GetMapping("/{tableId}")
+ public R getInfo(@NotNull(message = "主键不能为空")
+ @PathVariable Long tableId) {
+ return R.ok(aiSqlTableService.queryById(tableId));
+ }
+
+ /**
+ * 新增AI生成sql信息
+ */
+ @SaCheckPermission("ai:aiSqlTable:add")
+ @Log(title = "AI生成sql信息", businessType = BusinessType.INSERT)
+ @RepeatSubmit()
+ @PostMapping()
+ public R add(@Validated(AddGroup.class) @RequestBody AiSqlTableBo bo) {
+ return toAjax(aiSqlTableService.insertByBo(bo));
+ }
+
+ /**
+ * 修改AI生成sql信息
+ */
+ @SaCheckPermission("ai:aiSqlTable:edit")
+ @Log(title = "AI生成sql信息", businessType = BusinessType.UPDATE)
+ @RepeatSubmit()
+ @PutMapping()
+ public R edit(@Validated(EditGroup.class) @RequestBody AiSqlTableBo bo) {
+ return toAjax(aiSqlTableService.updateByBo(bo));
+ }
+
+ /**
+ * 删除AI生成sql信息
+ *
+ * @param tableIds 主键串
+ */
+ @SaCheckPermission("ai:aiSqlTable:remove")
+ @Log(title = "AI生成sql信息", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{tableIds}")
+ public R remove(@NotEmpty(message = "主键不能为空")
+ @PathVariable Long[] tableIds) {
+ return toAjax(aiSqlTableService.deleteWithValidByIds(List.of(tableIds), true));
+ }
+
+
+ /**
+ * 下拉框查询AI生成sql信息列表
+ */
+
+ @GetMapping("/getAiSqlTableList")
+ public R> getAiSqlTableList(AiSqlTableBo bo) {
+ List list = aiSqlTableService.queryList(bo);
+ return R.ok(list);
+ }
+
+
+ /**
+ * 查询数据源名称列表
+ */
+ @SaCheckPermission("ai:aiSqlTable:list")
+ @GetMapping(value = "/getDataNames")
+ public R