You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streampark.apache.org by be...@apache.org on 2022/11/30 14:02:32 UTC
[incubator-streampark] branch dev updated: [Fix]: dependency upload jar bug fix (#2115)
This is an automated email from the ASF dual-hosted git repository.
benjobs pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/incubator-streampark.git
The following commit(s) were added to refs/heads/dev by this push:
new 9bd050f1e [Fix]: dependency upload jar bug fix (#2115)
9bd050f1e is described below
commit 9bd050f1e988484d97192a3a5ec05313eede42b2
Author: WSZ <12...@qq.com>
AuthorDate: Wed Nov 30 22:02:26 2022 +0800
[Fix]: dependency upload jar bug fix (#2115)
* [Fix]: dependency upload jar bug fix
* [Fix]: select component use limit
---
.../src/views/flink/app/components/Dependency.vue | 50 ++++++++++++++--------
1 file changed, 33 insertions(+), 17 deletions(-)
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/app/components/Dependency.vue b/streampark-console/streampark-console-webapp/src/views/flink/app/components/Dependency.vue
index 0adec3903..65c7bd816 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/app/components/Dependency.vue
+++ b/streampark-console/streampark-console-webapp/src/views/flink/app/components/Dependency.vue
@@ -29,7 +29,7 @@
import { getMonacoOptions } from '../data';
import { Icon } from '/@/components/Icon';
import { useMonaco } from '/@/hooks/web/useMonaco';
- import { Select, Tabs, Alert, Tag, Space } from 'ant-design-vue';
+ import { Select, Tabs, Alert, Tag, Space, Form } from 'ant-design-vue';
import { useMessage } from '/@/hooks/web/useMessage';
import { fetchUpload } from '/@/api/flink/app/app';
import { fetchUploadJars } from '/@/api/flink/app/flinkHistory';
@@ -53,6 +53,7 @@
const selectedHistoryUploadJars = ref<string[]>([]);
const dependencyRecords = ref<DependencyType[]>([]);
const uploadJars = ref<string[]>([]);
+ const historyUploadJars = ref<string[]>([]);
const loading = ref(false);
const emit = defineEmits(['update:value']);
@@ -208,11 +209,11 @@
async function handleReloadHistoryUploads() {
selectedHistoryUploadJars.value = [];
const res = await fetchUploadJars();
- uploadJars.value = res;
+ historyUploadJars.value = res;
}
const filteredHistoryUploadJarsOptions = computed(() => {
- return uploadJars.value.filter((o) => !Reflect.has(dependency.jar, o));
+ return historyUploadJars.value.filter((o) => !Reflect.has(dependency.jar, o));
});
function handleRemoveJar(jar: string) {
delete dependency.jar[jar];
@@ -242,6 +243,14 @@
dependency.jar[fileName] = fileName;
});
}
+ function addHistoryUploadJar(item: string) {
+ dependency.jar[item] = item;
+ handleUpdateDependency();
+ }
+ function deleteHistoryUploadJar(item: string) {
+ delete dependency.jar[item];
+ handleUpdateDependency();
+ }
onMounted(() => {
handleReloadHistoryUploads();
});
@@ -271,20 +280,27 @@
</TabPane>
<TabPane key="jar" tab="Upload Jar">
<template v-if="isK8sExecMode(formModel?.executionMode)">
- <Select
- mode="multiple"
- placeholder="Search History Uploads"
- v-model:value="selectedHistoryUploadJars"
- style="width: 100%"
- :showArrow="true"
- >
- <SelectOption v-for="item in filteredHistoryUploadJarsOptions" :key="item" :value="item">
- <template #suffixIcon>
- <Icon icon="ant-design:file-done-outlined" />
- </template>
- {{ item }}
- </SelectOption>
- </Select>
+ <Form.ItemRest>
+ <Select
+ mode="multiple"
+ placeholder="Search History Uploads"
+ v-model:value="selectedHistoryUploadJars"
+ @select="addHistoryUploadJar"
+ @deselect="deleteHistoryUploadJar"
+ style="width: 100%"
+ >
+ <SelectOption
+ v-for="item in filteredHistoryUploadJarsOptions"
+ :key="item"
+ :value="item"
+ >
+ <template #suffixIcon>
+ <Icon icon="ant-design:file-done-outlined" />
+ </template>
+ {{ item }}
+ </SelectOption>
+ </Select>
+ </Form.ItemRest>
</template>
<UploadJobJar :custom-request="handleCustomDepsRequest" v-model:loading="loading" />