feat: copy application
This commit is contained in:
parent
ef51afb96e
commit
fa842b0d13
@ -100,4 +100,5 @@ export default {
|
||||
deleteConfirm: 'Confirm delete',
|
||||
expand: 'Expand',
|
||||
collapse: 'Collapse',
|
||||
copyTitle: 'Copy',
|
||||
}
|
||||
|
||||
@ -10,7 +10,6 @@ export default {
|
||||
workflowPlaceholder:
|
||||
'Suitable for advanced users to build complex logic AI assistants using low-code drag-and-drop',
|
||||
appTest: 'Debug Preview',
|
||||
copy: 'Copy',
|
||||
searchBar: {
|
||||
placeholder: 'Search by name',
|
||||
},
|
||||
|
||||
@ -104,4 +104,5 @@ export default {
|
||||
deleteConfirm: '是否删除',
|
||||
expand: '展开',
|
||||
collapse: '收起',
|
||||
copyTitle: '副本',
|
||||
}
|
||||
|
||||
@ -9,7 +9,6 @@ export default {
|
||||
simplePlaceholder: '适用于初级用户使用表单设置构建AI对话助手',
|
||||
workflowPlaceholder: '适用于高级用户使用低代码拖拉拽方式构建复杂逻辑的AI对话助手',
|
||||
appTest: '调试预览',
|
||||
copy: '副本',
|
||||
searchBar: {
|
||||
placeholder: '按名称搜索',
|
||||
},
|
||||
|
||||
@ -28,10 +28,6 @@ export default {
|
||||
saveMessage: '当前的更改尚未保存,确认退出吗?',
|
||||
},
|
||||
form: {
|
||||
title: {
|
||||
copy: '副本',
|
||||
baseInfo: '基础信息',
|
||||
},
|
||||
toolName: {
|
||||
label: '名称',
|
||||
name: '工具名称',
|
||||
|
||||
@ -100,4 +100,5 @@ export default {
|
||||
deleteConfirm: '是否刪除',
|
||||
expand: '展開',
|
||||
collapse: '收起',
|
||||
copyTitle: '副本',
|
||||
}
|
||||
|
||||
@ -9,7 +9,6 @@ export default {
|
||||
simplePlaceholder: '適用於初級用戶使用表單設定構建AI對話助手',
|
||||
workflowPlaceholder: '適用於高階用戶使用低代碼拖拉拽方式構建複雜邏輯的AI對話助手',
|
||||
appTest: '調試預覽',
|
||||
copy: '副本',
|
||||
searchBar: {
|
||||
placeholder: '按名稱搜尋',
|
||||
},
|
||||
|
||||
@ -104,6 +104,8 @@ const rules = reactive<FormRules<ApplicationFormType>>({
|
||||
],
|
||||
})
|
||||
|
||||
const currentFolder = ref('')
|
||||
|
||||
watch(dialogVisible, (bool) => {
|
||||
if (!bool) {
|
||||
applicationForm.value = {
|
||||
@ -133,10 +135,11 @@ watch(dialogVisible, (bool) => {
|
||||
}
|
||||
})
|
||||
|
||||
const open = (data: any) => {
|
||||
const open = (data: any, folder: string) => {
|
||||
currentFolder.value = folder
|
||||
const obj = cloneDeep(data)
|
||||
delete obj['id']
|
||||
obj['name'] = obj['name'] + ` ${t('views.application.form.title.copy')}`
|
||||
obj['name'] = obj['name'] + ` ${t('common.copyTitle')}`
|
||||
applicationForm.value = obj
|
||||
dialogVisible.value = true
|
||||
}
|
||||
@ -160,7 +163,9 @@ const submitHandle = async (formEl: FormInstance | undefined) => {
|
||||
if (!formEl) return
|
||||
await formEl.validate((valid) => {
|
||||
if (valid) {
|
||||
applicationApi.postApplication(applicationForm.value, loading).then((res) => {
|
||||
applicationApi
|
||||
.postApplication({ ...applicationForm.value, folder_id: currentFolder.value }, loading)
|
||||
.then((res) => {
|
||||
MsgSuccess(t('common.createSuccess'))
|
||||
if (isWorkFlow(applicationForm.value.type)) {
|
||||
router.push({ path: `/application/${res.data.id}/workflow` })
|
||||
|
||||
@ -244,7 +244,13 @@
|
||||
<AppIcon iconName="app-migrate"></AppIcon>
|
||||
{{ $t('common.moveTo') }}
|
||||
</el-dropdown-item>
|
||||
|
||||
<el-dropdown-item
|
||||
@click="copyApplication(item)"
|
||||
v-if="permissionPrecise.create()"
|
||||
>
|
||||
<AppIcon iconName="app-copy"></AppIcon>
|
||||
{{ $t('common.copy') }}
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
divided
|
||||
@click.stop="exportApplication(item)"
|
||||
@ -405,15 +411,14 @@ const apiInputParams = ref([])
|
||||
function copyApplication(row: any) {
|
||||
application.asyncGetApplicationDetail(row.id, loading).then((res: any) => {
|
||||
if (res?.data) {
|
||||
CopyApplicationDialogRef.value.open({ ...res.data, model_id: res.data.model })
|
||||
CopyApplicationDialogRef.value.open(
|
||||
{ ...res.data, model_id: res.data.model },
|
||||
folder.currentFolder?.id || 'default',
|
||||
)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
const is_show_copy_button = (row: any) => {
|
||||
return user.userInfo ? user.userInfo.id == row.user_id : false
|
||||
}
|
||||
|
||||
function settingApplication(row: any) {
|
||||
if (isWorkFlow(row.type)) {
|
||||
router.push({ path: `/application/${row.id}/workflow` })
|
||||
|
||||
@ -481,7 +481,7 @@ async function copyTool(row: any) {
|
||||
)
|
||||
const obj = cloneDeep(res.data)
|
||||
delete obj['id']
|
||||
obj['name'] = obj['name'] + ` ${t('views.tool.form.title.copy')}`
|
||||
obj['name'] = obj['name'] + ` ${t('common.copyTitle')}`
|
||||
ToolFormDrawerRef.value.open(obj)
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user