Skip to content

Commit 0c8d420

Browse files
fix: trigger
1 parent 21a38e2 commit 0c8d420

File tree

6 files changed

+124
-5
lines changed

6 files changed

+124
-5
lines changed

ui/src/locales/lang/en-US/views/trigger.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
export default {
22
title: 'Trigger',
3+
tip: 'When triggered, the system will automatically call task execution based on the input parameters settings',
34
task: 'Task',
45
type: {
56
scheduled: 'Scheduled Trigger',

ui/src/locales/lang/zh-CN/views/trigger.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
export default {
22
title: '触发器',
3+
tip: '触发时系统将会根据入参设置自动调用任务执行',
34
task: '任务',
45
type: {
56
scheduled: '定时触发',

ui/src/locales/lang/zh-Hant/views/trigger.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
export default {
22
title: '觸發器',
3+
tip: '觸發時系統將會根據入參設置自動調用任務執行',
34
task: '任務',
45
type: {
56
scheduled: '定時觸發',

ui/src/views/application/ApplicationSetting.vue

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -738,10 +738,40 @@
738738
</el-button>
739739
</div>
740740
</el-form-item>
741+
742+
<!-- 触发器 -->
743+
744+
<el-form-item>
745+
<template #label>
746+
<div class="flex-between">
747+
<div class="flex align-center">
748+
<span class="mr-4">{{ $t('views.trigger.title') }} </span>
749+
<el-tooltip
750+
effect="dark"
751+
:content="$t('views.trigger.tip')"
752+
placement="right"
753+
>
754+
<AppIcon iconName="app-warning" class="app-warning-icon"></AppIcon>
755+
</el-tooltip>
756+
</div>
757+
758+
<el-button type="primary" link @click="openCreateTriggerDrawer">
759+
<AppIcon iconName="app-add-outlined" class="mr-4"></AppIcon>
760+
</el-button>
761+
</div>
762+
</template>
763+
<el-card shadow="never" class="card-never" style="--el-card-padding: 12px">
764+
<div class="w-full">
765+
<!-- TO DO -->
766+
</div>
767+
</el-card>
768+
</el-form-item>
741769
</el-form>
742770
</el-scrollbar>
743771
</div>
744772
</el-col>
773+
774+
<!-- 预览 -->
745775
<el-col :span="14" class="p-24 border-l">
746776
<h4 class="title-decoration-1 mb-16">
747777
{{ $t('views.application.appTest') }}
@@ -773,6 +803,7 @@
773803
<McpServersDialog ref="mcpServersDialogRef" @refresh="submitMcpServersDialog" />
774804
<ToolDialog ref="toolDialogRef" @refresh="submitToolDialog" />
775805
<ApplicationDialog ref="applicationDialogRef" @refresh="submitApplicationDialog" />
806+
<TriggerDrawer @refresh="refreshTrigger" ref="triggerDrawerRef"></TriggerDrawer>
776807
</div>
777808
</template>
778809
<script setup lang="ts">
@@ -799,6 +830,7 @@ import { resetUrl } from '@/utils/common.ts'
799830
import McpServersDialog from '@/views/application/component/McpServersDialog.vue'
800831
import ToolDialog from '@/views/application/component/ToolDialog.vue'
801832
import ApplicationDialog from '@/views/application/component/ApplicationDialog.vue'
833+
import TriggerDrawer from '@/views/trigger/component/TriggerDrawer.vue'
802834
import useStore from '@/stores'
803835
const route = useRoute()
804836
const router = useRouter()
@@ -912,6 +944,19 @@ const knowledgeList = ref<Array<any>>([])
912944
const sttModelOptions = ref<any>(null)
913945
const ttsModelOptions = ref<any>(null)
914946
947+
const triggerDrawerRef = ref<InstanceType<typeof TriggerDrawer>>()
948+
949+
const openCreateTriggerDrawer = () => {
950+
triggerDrawerRef.value?.open()
951+
}
952+
const openEditTriggerDrawer = (trigger: any) => {
953+
triggerDrawerRef.value?.open(trigger.id)
954+
}
955+
956+
function refreshTrigger() {
957+
// do nothing, just to refresh the trigger list in the drawer
958+
}
959+
915960
function submitPrologueDialog(val: string) {
916961
applicationForm.value.prologue = val
917962
}

ui/src/views/tool/ToolFormDrawer.vue

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,26 @@
193193
</template>
194194
</el-table-column>
195195
</el-table>
196+
197+
<!-- 触发器 -->
198+
<div class="flex-between">
199+
<h4 class="title-decoration-1 mb-16">
200+
{{ $t('views.trigger.title') }}
201+
<el-text type="info" class="color-secondary">
202+
{{ $t('views.trigger.tip') }}
203+
</el-text>
204+
</h4>
205+
<el-button link type="primary" @click="openCreateTriggerDrawer()">
206+
<AppIcon iconName="app-add-outlined" class="mr-4"></AppIcon>
207+
{{ $t('common.add') }}
208+
</el-button>
209+
</div>
210+
<el-card shadow="never" class="card-never" style="--el-card-padding: 12px">
211+
<div class="w-full">
212+
<!-- TO DO -->
213+
</div>
214+
</el-card>
215+
196216
<h4 class="title-decoration-1 mb-16">
197217
{{ $t('views.tool.form.param.code') }}
198218
<span class="color-danger" style="margin-left: -10px">*</span>
@@ -258,6 +278,7 @@ import { isAppIcon } from '@/utils/common'
258278
import { useRoute } from 'vue-router'
259279
import useStore from '@/stores'
260280
import permissionMap from '@/permission'
281+
import TriggerDrawer from '@/views/trigger/component/TriggerDrawer.vue'
261282
import { loadSharedApi } from '@/utils/dynamics-api/shared-api'
262283
263284
const route = useRoute()
@@ -333,6 +354,20 @@ const rules = reactive({
333354
],
334355
})
335356
357+
358+
const triggerDrawerRef = ref<InstanceType<typeof TriggerDrawer>>()
359+
360+
const openCreateTriggerDrawer = () => {
361+
triggerDrawerRef.value?.open()
362+
}
363+
const openEditTriggerDrawer = (trigger: any) => {
364+
triggerDrawerRef.value?.open(trigger.id)
365+
}
366+
367+
function refreshTrigger() {
368+
// do nothing, just to refresh the trigger list in the drawer
369+
}
370+
336371
function submitCodemirrorEditor(val: string) {
337372
form.value.code = val
338373
}

ui/src/workflow/nodes/base-node/index.vue

Lines changed: 41 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,7 @@
4949
<template #label>
5050
<div class="flex-between">
5151
<div class="flex align-center">
52-
<span class="mr-4">{{
53-
$t('workflow.nodes.baseNode.fileUpload.label')
54-
}}</span>
52+
<span class="mr-4">{{ $t('workflow.nodes.baseNode.fileUpload.label') }}</span>
5553
<el-tooltip
5654
effect="dark"
5755
:content="$t('workflow.nodes.baseNode.fileUpload.tooltip')"
@@ -156,13 +154,38 @@
156154
</el-button>
157155
</div>
158156
</el-form-item>
157+
158+
<!-- 触发器 -->
159+
160+
<el-form-item>
161+
<template #label>
162+
<div class="flex-between">
163+
<div class="flex align-center">
164+
<span class="mr-4">{{ $t('views.trigger.title') }} </span>
165+
<el-tooltip effect="dark" :content="$t('views.trigger.tip')" placement="right">
166+
<AppIcon iconName="app-warning" class="app-warning-icon"></AppIcon>
167+
</el-tooltip>
168+
</div>
169+
170+
<el-button type="primary" link @click="openCreateTriggerDrawer">
171+
<AppIcon iconName="app-add-outlined" class="mr-4"></AppIcon>
172+
</el-button>
173+
</div>
174+
</template>
175+
<el-card shadow="never" class="card-never" style="--el-card-padding: 12px">
176+
<div class="w-full">
177+
<!-- TO DO -->
178+
</div>
179+
</el-card>
180+
</el-form-item>
159181
</el-form>
160182
<TTSModeParamSettingDialog ref="TTSModeParamSettingDialogRef" @refresh="refreshTTSForm" />
161183
<FileUploadSettingDialog
162184
ref="FileUploadSettingDialogRef"
163185
:node-model="nodeModel"
164186
@refresh="refreshFileUploadForm"
165187
/>
188+
<TriggerDrawer @refresh="refreshTrigger" ref="triggerDrawerRef"></TriggerDrawer>
166189
</NodeContainer>
167190
</template>
168191
<script setup lang="ts">
@@ -177,6 +200,7 @@ import ApiInputFieldTable from './component/ApiInputFieldTable.vue'
177200
import UserInputFieldTable from './component/UserInputFieldTable.vue'
178201
import FileUploadSettingDialog from '@/workflow/nodes/base-node/component/FileUploadSettingDialog.vue'
179202
import ChatFieldTable from './component/ChatFieldTable.vue'
203+
import TriggerDrawer from '@/views/trigger/component/TriggerDrawer.vue'
180204
import { useRoute } from 'vue-router'
181205
import { loadSharedApi } from '@/utils/dynamics-api/shared-api'
182206
const getResourceDetail = inject('getResourceDetail') as any
@@ -262,6 +286,19 @@ const validate = () => {
262286
}
263287
264288
const resource = getResourceDetail()
289+
290+
const triggerDrawerRef = ref<InstanceType<typeof TriggerDrawer>>()
291+
292+
const openCreateTriggerDrawer = () => {
293+
triggerDrawerRef.value?.open()
294+
}
295+
const openEditTriggerDrawer = (trigger: any) => {
296+
triggerDrawerRef.value?.open(trigger.id)
297+
}
298+
299+
function refreshTrigger() {
300+
// do nothing, just to refresh the trigger list in the drawer
301+
}
265302
function getSTTModel() {
266303
const obj =
267304
apiType.value === 'systemManage'
@@ -367,5 +404,4 @@ onMounted(() => {
367404
getSTTModel()
368405
})
369406
</script>
370-
<style lang="scss" scoped>
371-
</style>
407+
<style lang="scss" scoped></style>

0 commit comments

Comments
 (0)