From 88db8736c5946c542954f97be0ad7ae97cdaba6e Mon Sep 17 00:00:00 2001 From: xs Date: Fri, 12 Sep 2025 16:41:12 +0800 Subject: [PATCH] =?UTF-8?q?1.5.4=E5=89=8D=E7=AB=AF=20AI=E8=A1=A8=E5=8D=95?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/ai/base/aiFormSetting/index.ts | 106 ++++ src/api/ai/base/aiFormSetting/types.ts | 221 +++++++++ src/views/ai/base/aiFormSetting/index.vue | 458 ++++++++++++++++++ .../ai/base/aiFormSetting/selectTable.vue | 147 ++++++ 4 files changed, 932 insertions(+) create mode 100644 src/api/ai/base/aiFormSetting/index.ts create mode 100644 src/api/ai/base/aiFormSetting/types.ts create mode 100644 src/views/ai/base/aiFormSetting/index.vue create mode 100644 src/views/ai/base/aiFormSetting/selectTable.vue diff --git a/src/api/ai/base/aiFormSetting/index.ts b/src/api/ai/base/aiFormSetting/index.ts new file mode 100644 index 0000000..d7a458f --- /dev/null +++ b/src/api/ai/base/aiFormSetting/index.ts @@ -0,0 +1,106 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { AiFormSettingVO, AiFormSettingForm, AiFormSettingQuery,DbTableQuery,AiFormSettingDetailVO } from '@/api/ai/base/aiFormSetting/types'; + +/** + * 查询AI表单设置列表 + * @param query + * @returns {*} + */ + +export const listAiFormSetting = (query?: AiFormSettingQuery): AxiosPromise => { + return request({ + url: '/ai/aiFormSetting/list', + method: 'get', + params: query + }); +}; + +/** + * 查询AI表单设置详细 + * @param formSettingId + */ +export const getAiFormSetting = (formSettingId: string | number): AxiosPromise => { + return request({ + url: '/ai/aiFormSetting/' + formSettingId, + method: 'get' + }); +}; + +/** + * 新增AI表单设置 + * @param data + */ +export const addAiFormSetting = (data: AiFormSettingForm) => { + return request({ + url: '/ai/aiFormSetting', + method: 'post', + data: data + }); +}; + +/** + * 修改AI表单设置 + * @param data + */ +export const updateAiFormSetting = (data: AiFormSettingForm) => { + return request({ + url: '/ai/aiFormSetting', + method: 'put', + data: data + }); +}; + +/** + * 删除AI表单设置 + * @param formSettingId + */ +export const delAiFormSetting = (formSettingId: string | number | Array) => { + return request({ + url: '/ai/aiFormSetting/' + formSettingId, + method: 'delete' + }); +}; + + +/** + * 下拉框查询AI表单设置列表 + * @param query + * @returns {*} + */ +export function getAiFormSettingList (query) { + return request({ + url: '/ai/aiFormSetting/getAiFormSettingList', + method: 'get', + params: query + }); +}; + + + +// 获取数据源名称 +export const getDataNames = () => { + return request({ + url: '/ai/aiFormSetting/getDataNames', + method: 'get' + }); +}; + + +// 查询db数据库列表 +export const listDbTable = (query: DbTableQuery): AxiosPromise => { + return request({ + url: '/ai/aiFormSetting/db/list', + method: 'get', + params: query + }); +}; + +// 查询db数据库Column列表 +export const listDbTableColumn = (query: DbTableQuery): AxiosPromise => { + return request({ + url: '/ai/aiFormSetting/db/columnList', + method: 'get', + params: query + }); +}; diff --git a/src/api/ai/base/aiFormSetting/types.ts b/src/api/ai/base/aiFormSetting/types.ts new file mode 100644 index 0000000..b44f331 --- /dev/null +++ b/src/api/ai/base/aiFormSetting/types.ts @@ -0,0 +1,221 @@ +export interface AiFormSettingVO { + /** + * 主键 + */ + formSettingId: string | number; + + /** + * 表单类型(1单表,2主子表,3主form子table) + */ + formType: string; + + /** + * 表名称 + */ + dataName: string; + + /** + * 表名称 + */ + tableName: string; + + /** + * 表单名称 + */ + formName: string; + + /** + * 表单路径(与sys_menu中的component一样,例如/mes/info/index) + */ + formPath: string; + + /** + * 弹窗可见变量名称 + */ + dialogVisibleVariable: string; + + /** + * 子表名称 + */ + subTableName: string; + + /** + * 子表关联的外键名 + */ + subTableFkName: string; + + /** + * 客户端类型(1Web,2手机) + */ + clientType: string; + + /** + * 备注 + */ + remark: string; + +} + +export interface AiFormSettingForm extends BaseEntity { + /** + * 主键 + */ + formSettingId?: string | number; + + /** + * 表单类型(1单表,2主子表,3主form子table) + */ + formType?: string; + + /** + * 数据源名称 + */ + dataName?: string; + + + /** + * 表名称 + */ + tableName?: string; + + /** + * 表单名称 + */ + formName?: string; + + /** + * 表单路径(与sys_menu中的component一样,例如/mes/info/index) + */ + formPath?: string; + + /** + * 弹窗可见变量名称 + */ + dialogVisibleVariable?: string; + + /** + * 子表名称 + */ + subTableName?: string; + + /** + * 子表关联的外键名 + */ + subTableFkName?: string; + + /** + * 客户端类型(1Web,2手机) + */ + clientType?: string; + + /** + * 备注 + */ + remark?: string; + + /** + * AI表单设置详情 + */ + aiFormSettingDetailList: [] + + +} + +export interface AiFormSettingQuery extends PageQuery { + + /** + * 主键 + */ + formSettingId?: string | number; + + /** + * 表单类型(1单表,2主子表,3主form子table) + */ + formType?: string; + + /** + * 表名称 + */ + tableName?: string; + + /** + * 表单名称 + */ + formName?: string; + + /** + * 表单路径(与sys_menu中的component一样,例如/mes/info/index) + */ + formPath?: string; + + /** + * 弹窗可见变量名称 + */ + dialogVisibleVariable?: string; + + /** + * 子表名称 + */ + subTableName?: string; + + /** + * 子表关联的外键名 + */ + subTableFkName?: string; + + /** + * 客户端类型(1Web,2手机) + */ + clientType?: string; + + /** + * 日期范围参数 + */ + params?: any; +} + + +export interface DbTableQuery extends PageQuery { + dataName: string; + tableName: string; + tableComment: string; +} + + +export interface AiFormSettingDetailVO { + /** + * 主键 + */ + settingDetailId: string | number; + + /** + * AI表单设置ID,关联ai_form_setting + */ + formSettingId: string | number; + + /** + * 表名称(用于一个表单多个表的情况) + */ + tableName: string; + + /** + * 字段名称 + */ + fieldName: string; + + /** + * 字段描述(如果有关联表,则在此说明,例如关联表sys_dept,sys_dept中字段dept_name是部门名称) + */ + fieldDesc: string; + + /** + * 表单prop + */ + formProp: string; + + /** + * 设置标识(1是,0否),代表是否需要AI赋值 + */ + settingFlag: string; + +} diff --git a/src/views/ai/base/aiFormSetting/index.vue b/src/views/ai/base/aiFormSetting/index.vue new file mode 100644 index 0000000..ad9cdf7 --- /dev/null +++ b/src/views/ai/base/aiFormSetting/index.vue @@ -0,0 +1,458 @@ + + + + + diff --git a/src/views/ai/base/aiFormSetting/selectTable.vue b/src/views/ai/base/aiFormSetting/selectTable.vue new file mode 100644 index 0000000..e9eebea --- /dev/null +++ b/src/views/ai/base/aiFormSetting/selectTable.vue @@ -0,0 +1,147 @@ + + +