diff --git a/src/App.vue b/src/App.vue
index 3775a7c..761d55e 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -3,7 +3,7 @@
-
+
@@ -37,12 +37,16 @@ const openAiAssistantMenu = () => {
};
-
diff --git a/src/api/ai/base/aiFormSetting/index.ts b/src/api/ai/base/aiFormSetting/index.ts
index d7a458f..601fac0 100644
--- a/src/api/ai/base/aiFormSetting/index.ts
+++ b/src/api/ai/base/aiFormSetting/index.ts
@@ -78,6 +78,7 @@ export function getAiFormSettingList (query) {
+
// 获取数据源名称
export const getDataNames = () => {
return request({
@@ -104,3 +105,17 @@ export const listDbTableColumn = (query: DbTableQuery): AxiosPromise => {
+ return request({
+ url: '/ai/assistant/aiFillForm',
+ method: 'post',
+ data: data,
+ timeout: 1000000
+ });
+};
+
+
+export const asr = (data: any) => {
+ return request({
+ url: '/ai/api/speech/recognize',
+ method: 'post',
+ data: data,
+ timeout: 1000000
+ });
+};
+
+export const uploadFile = (data: any) => {
+ return request({
+ url: '/resource/oss/upload',
+ method: 'post',
+ data: data
+ });
+};
+
+export const recognizeSpeechByUrl = (audioUrl: string) => {
+ return request({
+ url: '/ai/asr/recognizeSpeechByUrl',
+ method: 'post',
+ params: {audioUrl}
+ });
+};
+
+
diff --git a/src/api/ai/skill/aiAssistant/types.ts b/src/api/ai/skill/aiAssistant/types.ts
new file mode 100644
index 0000000..924d2d7
--- /dev/null
+++ b/src/api/ai/skill/aiAssistant/types.ts
@@ -0,0 +1,22 @@
+import {AiFormSettingDetailVO} from "@/api/ai/base/aiFormSetting/types";
+
+export interface AIFillFormRequestVO {
+ /**
+ * AI表单设置ID
+ */
+ formSettingId: number;
+
+
+ /**
+ * 提问的问题(prompt)
+ */
+ naturalLanguageQuery: string;
+
+ /**
+ * AI表单设置属性详情列表
+ */
+ formSettingDetailList: AiFormSettingDetailVO[];
+
+
+}
+
diff --git a/src/layout/components/TopBar/aiAssistant.vue b/src/layout/components/TopBar/aiAssistant.vue
index b9fee4e..9734170 100644
--- a/src/layout/components/TopBar/aiAssistant.vue
+++ b/src/layout/components/TopBar/aiAssistant.vue
@@ -1,25 +1,24 @@
-
-
+
+
-
+
-
+
🤖
@@ -70,8 +72,13 @@
{{ list.title }}
- handleSelectOption(opt)" :type="selectedOption === opt ? 'primary' : 'default'">{{ opt }}
- openSelectDialog(list)">更多
+ handleSelectOption(opt)"
+ :type="selectedOption === opt ? 'primary' : 'default'">{{ opt }}
+
+ openSelectDialog(list)">更多
+
@@ -97,13 +104,18 @@
style="margin-bottom: 12px;"
/>
- handleSelectOption(opt)" :type="selectedOption === opt ? 'primary' : 'default'">{{ opt }}
+ handleSelectOption(opt)" :type="selectedOption === opt ? 'primary' : 'default'">
+ {{ opt }}
+
@@ -137,19 +156,23 @@
-