Skip to content

Commit 6d97fae

Browse files
fix: workflow tool
1 parent bf1062f commit 6d97fae

File tree

1 file changed

+32
-25
lines changed

1 file changed

+32
-25
lines changed

ui/src/views/application-workflow/component/DropdownMenu.vue

Lines changed: 32 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@
7777
:currentNodeKey="folder.currentFolder?.id"
7878
@handleNodeClick="folderClickHandle"
7979
:shareTitle="$t('views.shared.shared_tool')"
80-
:showShared="user.isEE()"
80+
:showShared="permissionPrecise['is_share']()"
8181
class="p-8"
8282
:canOperation="false"
8383
/>
@@ -120,14 +120,18 @@
120120
import { ref, onMounted, computed } from 'vue'
121121
import { menuNodes, toolLibNode, applicationNode } from '@/workflow/common/data'
122122
import { iconComponent } from '@/workflow/icons/utils'
123-
import ToolApi from '@/api/tool/tool'
123+
import { loadSharedApi } from '@/utils/dynamics-api/shared-api'
124124
import { isWorkFlow } from '@/utils/application'
125125
import useStore from '@/stores'
126126
import NodeContent from './NodeContent.vue'
127127
import { SourceTypeEnum } from '@/enums/common'
128128
import sharedWorkspaceApi from '@/api/shared-workspace'
129129
import ApplicationApi from '@/api/application/application'
130-
const { user } = useStore()
130+
import permissionMap from '@/permission'
131+
import { useRoute } from 'vue-router'
132+
const route = useRoute()
133+
const { user, folder } = useStore()
134+
131135
const search_text = ref<string>('')
132136
const props = defineProps({
133137
show: {
@@ -141,9 +145,24 @@ const props = defineProps({
141145
workflowRef: Object,
142146
})
143147
144-
const { folder } = useStore()
145148
const emit = defineEmits(['clickNodes', 'onmousedown'])
146149
150+
const apiType = computed(() => {
151+
if (route.path.includes('shared')) {
152+
return 'systemShare'
153+
} else if (route.path.includes('resource-management')) {
154+
return 'systemManage'
155+
} else {
156+
return 'workspace'
157+
}
158+
})
159+
const permissionPrecise = computed(() => {
160+
return permissionMap['tool'][apiType.value]
161+
})
162+
const isShared = computed(() => {
163+
return folder.currentFolder.id === 'share'
164+
})
165+
147166
const loading = ref(false)
148167
const activeName = ref('base')
149168
@@ -226,32 +245,23 @@ function onmousedown(item: any, data?: any, type?: string) {
226245
227246
const toolTreeData = ref<any[]>([])
228247
const toolList = ref<any[]>([])
229-
const sharedToolList = ref<any[]>([])
230248
231249
async function getToolFolder() {
232250
const res: any = await folder.asyncGetFolder(SourceTypeEnum.TOOL, {}, loading)
233251
toolTreeData.value = res.data
234252
folder.setCurrentFolder(res.data?.[0] || {})
235253
}
236254
237-
async function getShareTool() {
238-
try {
239-
const res = await sharedWorkspaceApi.getToolList(loading)
240-
sharedToolList.value = res.data
241-
} catch (error: any) {
242-
console.error(error)
243-
}
244-
}
245-
246255
async function getToolList() {
247-
if (folder.currentFolder.id === 'share') {
248-
toolList.value = sharedToolList.value
249-
} else {
250-
const res = await ToolApi.getToolList({
251-
folder_id: folder.currentFolder?.id || user.getWorkspaceId(),
252-
})
253-
toolList.value = res.data.tools
254-
}
256+
const res = await loadSharedApi({
257+
type: 'tool',
258+
isShared: isShared.value,
259+
systemType: apiType.value,
260+
}).getToolList({
261+
folder_id: folder.currentFolder?.id || user.getWorkspaceId(),
262+
})
263+
toolList.value = res.data?.tools || res.data || []
264+
toolList.value = toolList.value?.filter((item: any) => item.is_active)
255265
}
256266
257267
const applicationTreeData = ref<any[]>([])
@@ -283,9 +293,6 @@ function folderClickHandle(row: any) {
283293
async function handleClick(val: string) {
284294
console.log(val)
285295
if (val === 'tool') {
286-
if (user.isEE()) {
287-
await getShareTool()
288-
}
289296
await getToolFolder()
290297
getToolList()
291298
} else if (val === 'application') {

0 commit comments

Comments
 (0)