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/12/16 16:19:30 UTC

[incubator-streampark] 01/02: [Improve] webui async function improve

This is an automated email from the ASF dual-hosted git repository.

benjobs pushed a commit to branch webui-bugfix
in repository https://gitbox.apache.org/repos/asf/incubator-streampark.git

commit d9e3ec34d200c8c58b5722e1782f7c9156fbfe3e
Author: benjobs <be...@apache.org>
AuthorDate: Fri Dec 16 19:51:40 2022 +0800

    [Improve] webui async function  improve
---
 .../src/enums/flinkEnum.ts                         |  2 ++
 .../src/views/flink/app/Add.vue                    | 28 ++++++++++------------
 .../src/views/flink/app/Detail.vue                 |  9 ++++---
 .../src/views/flink/app/EditFlink.vue              |  6 ++---
 .../src/views/flink/app/EditStreamPark.vue         | 13 +++++-----
 .../src/views/flink/app/View.vue                   |  2 +-
 .../src/views/flink/app/components/AppConf.tsx     |  6 +----
 .../src/views/flink/app/components/Dependency.vue  |  2 +-
 .../src/views/flink/app/components/FlinkSql.vue    |  4 ++--
 .../flink/app/components/HadoopConfDrawer.vue      |  4 ++--
 .../src/views/flink/app/hooks/useCreateSchema.ts   |  7 +++---
 .../src/views/flink/app/utils/index.ts             |  6 +----
 .../src/views/flink/project/Edit.vue               |  2 +-
 .../src/views/flink/project/useProject.tsx         | 12 +++++++---
 .../src/views/flink/variable/View.vue              |  2 +-
 .../flink/variable/components/VariableDrawer.vue   |  4 ++--
 16 files changed, 52 insertions(+), 57 deletions(-)

diff --git a/streampark-console/streampark-console-webapp/src/enums/flinkEnum.ts b/streampark-console/streampark-console-webapp/src/enums/flinkEnum.ts
index 5b38c0d83..2c495635f 100644
--- a/streampark-console/streampark-console-webapp/src/enums/flinkEnum.ts
+++ b/streampark-console/streampark-console-webapp/src/enums/flinkEnum.ts
@@ -159,6 +159,8 @@ export enum ConfigTypeEnum {
   PROPERTIES = 2,
   /** HOCON config type */
   HOCON = 3,
+  /** unknown */
+  UNKNOWN = 0
 }
 
 export enum CandidateTypeEnum {
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/app/Add.vue b/streampark-console/streampark-console-webapp/src/views/flink/app/Add.vue
index e8365b602..30931f152 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/app/Add.vue
+++ b/streampark-console/streampark-console-webapp/src/views/flink/app/Add.vue
@@ -103,8 +103,7 @@
     if (v) {
       Object.assign(defaultValue, { versionId: v.id });
     }
-
-    setFieldsValue(defaultValue);
+    await setFieldsValue(defaultValue);
   }
 
   /* Open the sqlConf drawer */
@@ -122,7 +121,7 @@
       }
     } else {
       openConfDrawer(false);
-      setFieldsValue({ isSetConfig: false, configOverride: null });
+      await setFieldsValue({ isSetConfig: false, configOverride: null });
     }
   }
 
@@ -137,7 +136,7 @@
         jar: path,
       });
       uploadLoading.value = false;
-      setFieldsValue({ mainClass: res });
+      await setFieldsValue({ mainClass: res });
     } catch (error) {
       console.error(error);
       uploadLoading.value = false;
@@ -180,13 +179,12 @@
         params['resourceFrom'] = ResourceFromEnum.CICD;
         //streampark flink
         if (values.appType == AppTypeEnum.STREAMPARK_FLINK) {
-          const configVal = values['config'];
+          const configVal = values.config;
           params['format'] = getAppConfType(configVal);
           if (values.configOverride == null) {
-            const res = await fetchAppConf({
+            params['config'] = await fetchAppConf({
               config: configVal,
             });
-            params['config'] = res;
           } else {
             params['config'] = decodeByBase64(values.configOverride);
           }
@@ -194,7 +192,7 @@
           params['jar'] = values.jar || null;
           params['mainClass'] = values.mainClass || null;
         }
-        handleCreateApp(params);
+        await handleCreateApp(params);
       } else {
         // from upload
         Object.assign(params, {
@@ -203,7 +201,7 @@
           jar: unref(uploadJar),
           mainClass: values.mainClass,
         });
-        handleCreateApp(params);
+        await handleCreateApp(params);
       }
     }
   }
@@ -227,7 +225,7 @@
     }
 
     let config = values.configOverride;
-    if (config != null && config !== undefined && config.trim() != '') {
+    if (config != null && config.trim() != '') {
       config = encryptByBase64(config);
     } else {
       config = null;
@@ -246,7 +244,7 @@
           : JSON.stringify(dependency),
     };
     handleSubmitParams(params, values, k8sTemplate);
-    handleCreateApp(params);
+    await handleCreateApp(params);
   }
   /* Submit to create */
   async function handleAppCreate(formValue: Recordable) {
@@ -264,9 +262,9 @@
         }
       }
       if (formValue.jobType === 'customcode') {
-        handleSubmitCustomJob(formValue);
+        await handleSubmitCustomJob(formValue);
       } else {
-        handleSubmitSQL(formValue);
+        await handleSubmitSQL(formValue);
       }
     } catch (error) {
       submitLoading.value = false;
@@ -277,7 +275,7 @@
     const param = {};
     for (const k in params) {
       const v = params[k];
-      if (v != null && v !== undefined) {
+      if (v != null) {
         param[k] = v;
       }
     }
@@ -294,7 +292,7 @@
   }
 
   onMounted(async () => {
-    handleInitForm();
+    await handleInitForm();
   });
 </script>
 
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/app/Detail.vue b/streampark-console/streampark-console-webapp/src/views/flink/app/Detail.vue
index 5cccd05aa..57722510a 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/app/Detail.vue
+++ b/streampark-console/streampark-console-webapp/src/views/flink/app/Detail.vue
@@ -153,9 +153,9 @@
           ExecModeEnum.YARN_APPLICATION,
         ].includes(res.executionMode)
       ) {
-        handleYarn();
+        await handleYarn();
       }
-      handleDetailTabs();
+      await handleDetailTabs();
     }
     Object.assign(app, res);
   }
@@ -180,8 +180,7 @@
 
   /* Get yarn data */
   async function handleYarn() {
-    const res = await fetchYarn();
-    yarn.value = res;
+    yarn.value = await fetchYarn();
   }
 
   /* copyCurl */
@@ -208,7 +207,7 @@
         baseUrl: baseUrl(),
         path: urlPath,
       });
-      copy(res);
+      await copy(res);
       createMessage.success(t('flink.app.detail.detailTab.copySuccess'));
     }
   }
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/app/EditFlink.vue b/streampark-console/streampark-console-webapp/src/views/flink/app/EditFlink.vue
index 53925d714..21395bfac 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/app/EditFlink.vue
+++ b/streampark-console/streampark-console-webapp/src/views/flink/app/EditFlink.vue
@@ -111,7 +111,7 @@
       if (!executionMode) {
         Object.assign(defaultParams, { executionMode: app.executionMode });
       }
-      setFieldsValue(defaultParams);
+      await setFieldsValue(defaultParams);
       app.args && programArgRef.value?.setContent(app.args);
       setTimeout(() => {
         unref(podTemplateRef)?.handleChoicePodTemplate('ptVisual', app.k8sPodTemplate);
@@ -131,7 +131,7 @@
         jar: path,
       });
       uploadLoading.value = false;
-      setFieldsValue({ mainClass: res, jar: unref(uploadJar) });
+      await setFieldsValue({ mainClass: res, jar: unref(uploadJar) });
     } catch (error) {
       console.error(error);
       uploadLoading.value = false;
@@ -171,7 +171,7 @@
       return;
     }
     const value = await handleGetApplication();
-    setFieldsValue(value);
+    await setFieldsValue(value);
     if (app.resourceFrom == ResourceFromEnum.CICD) {
       jars.value = await fetchListJars({
         id: app.projectId,
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/app/EditStreamPark.vue b/streampark-console/streampark-console-webapp/src/views/flink/app/EditStreamPark.vue
index 46a98f46c..6405194c5 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/app/EditStreamPark.vue
+++ b/streampark-console/streampark-console-webapp/src/views/flink/app/EditStreamPark.vue
@@ -125,7 +125,6 @@
         k8sNamespace: app.k8sNamespace,
         ...resetParams,
       };
-      console.log('resetParams', resetParams);
       if (!executionMode) {
         Object.assign(defaultParams, { executionMode: app.executionMode });
       }
@@ -142,7 +141,7 @@
       uploadJar.value = data.file.name;
       const res = await fetchMain({ jar: path });
       uploadLoading.value = false;
-      setFieldsValue({ jar: uploadJar.value, mainClass: res });
+      await setFieldsValue({jar: uploadJar.value, mainClass: res});
     } catch (error) {
       console.error(error);
       uploadLoading.value = false;
@@ -154,7 +153,7 @@
     try {
       submitLoading.value = true;
       if (app.jobType == JobTypeEnum.JAR) {
-        handleSubmitCustomJob(values);
+        await handleSubmitCustomJob(values);
       } else {
         if (app.jobType == JobTypeEnum.SQL) {
           if (values.flinkSql == null || values.flinkSql.trim() === '') {
@@ -238,7 +237,7 @@
         config,
       };
       handleSubmitParams(params, values, k8sTemplate);
-      handleUpdateApp(params);
+      await handleUpdateApp(params);
     } catch (error) {
       console.error('error', error);
       submitLoading.value = false;
@@ -291,7 +290,7 @@
         [item.key]: item.defaultValue,
       });
     });
-    setFieldsValue({
+    await setFieldsValue({
       jobType: res.jobType,
       executionMode: res.executionMode,
       flinkSql: res.flinkSql ? decodeByBase64(res.flinkSql) : '',
@@ -305,7 +304,7 @@
       project: app.projectId,
       ...defaultFormValue,
     });
-    nextTick(() => {
+    await nextTick(() => {
       unref(flinkSql)?.setContent(decodeByBase64(res.flinkSql));
 
       setTimeout(() => {
@@ -357,7 +356,7 @@
       <template #args="{ model }">
         <ProgramArgs
           ref="programArgRef"
-          v-if="model.args != null && model.args != undefined"
+          v-if="model.args != null"
           v-model:value="model.args"
           :suggestions="suggestions"
           @preview="(value) => openReviewDrawer(true, { value, suggestions })"
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/app/View.vue b/streampark-console/streampark-console-webapp/src/views/flink/app/View.vue
index 6dc6e0a41..919af0fbc 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/app/View.vue
+++ b/streampark-console/streampark-console-webapp/src/views/flink/app/View.vue
@@ -140,7 +140,7 @@
       app['optionState'] === OptionStateEnum.SAVEPOINTING
     ) {
       // yarn-per-job|yarn-session|yarn-application
-      handleView(app, unref(yarn));
+      await handleView(app, unref(yarn));
     }
   }
 
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/app/components/AppConf.tsx b/streampark-console/streampark-console-webapp/src/views/flink/app/components/AppConf.tsx
index e99dea77b..b5dd0aa9f 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/app/components/AppConf.tsx
+++ b/streampark-console/streampark-console-webapp/src/views/flink/app/components/AppConf.tsx
@@ -105,11 +105,7 @@ export default defineComponent({
 
             <Button
               disabled={
-                unref(model).strategy == UseStrategyEnum.USE_EXIST
-                  ? false
-                  : unref(model).config
-                  ? false
-                  : true
+                unref(model).strategy == UseStrategyEnum.USE_EXIST ? false : !unref(model).config
               }
               type="primary"
               class="ml-10px w-50px"
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 a1c7bb4b5..dd92cf930 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
@@ -147,7 +147,7 @@
       return;
     }
     handleUpdateDependency();
-    setContent(defaultValue);
+    await setContent(defaultValue);
   }
 
   function alertInvalidDependency(scalaVersion, invalidArtifact) {
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/app/components/FlinkSql.vue b/streampark-console/streampark-console-webapp/src/views/flink/app/components/FlinkSql.vue
index 247b0d84c..1c3106fde 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/app/components/FlinkSql.vue
+++ b/streampark-console/streampark-console-webapp/src/views/flink/app/components/FlinkSql.vue
@@ -85,7 +85,7 @@
         if (success) {
           vertifyRes.verified = true;
           vertifyRes.errorMsg = '';
-          syntaxError();
+          await syntaxError();
           return true;
         } else {
           vertifyRes.errorStart = parseInt(data.start);
@@ -101,7 +101,7 @@
               vertifyRes.errorMsg = data.message;
               break;
           }
-          syntaxError();
+          await syntaxError();
           return false;
         }
       } catch (error) {
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/app/components/HadoopConfDrawer.vue b/streampark-console/streampark-console-webapp/src/views/flink/app/components/HadoopConfDrawer.vue
index 7cb2fded9..65450bb3a 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/app/components/HadoopConfDrawer.vue
+++ b/streampark-console/streampark-console-webapp/src/views/flink/app/components/HadoopConfDrawer.vue
@@ -60,7 +60,7 @@
         <Empty v-if="isHadoopEmpty" />
         <template v-else>
           <Tabs tabPosition="left">
-            <TabPane v-for="(content, fname) in hadoopConfContent.hadoop" :key="fname" :tab="fname">
+            <TabPane v-for="(content, item) in hadoopConfContent.hadoop" :key="item" :tab="item">
               <pre class="my-20px" style="font-size: 12px">{{ content }}</pre>
             </TabPane>
           </Tabs>
@@ -70,7 +70,7 @@
         <Empty v-if="isHiveEmpty" />
         <template v-else>
           <Tabs tabPosition="left">
-            <TabPane v-for="(content, fname) in hadoopConfContent.hive" :key="fname" :tab="fname">
+            <TabPane v-for="(content, item) in hadoopConfContent.hive" :key="item" :tab="item">
               <pre class="my-20px" style="font-size: 12px">{{ content }}</pre>
             </TabPane>
           </Tabs>
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/app/hooks/useCreateSchema.ts b/streampark-console/streampark-console-webapp/src/views/flink/app/hooks/useCreateSchema.ts
index 85109b861..bc562c790 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/app/hooks/useCreateSchema.ts
+++ b/streampark-console/streampark-console-webapp/src/views/flink/app/hooks/useCreateSchema.ts
@@ -18,7 +18,7 @@ import { FormSchema } from '/@/components/Table';
 import { computed, h, Ref, ref, unref } from 'vue';
 import { executionModes } from '../data';
 import { fetchCheckHadoop } from '/@/api/flink/setting';
-import { ExecModeEnum } from '/@/enums/flinkEnum';
+import { AppTypeEnum, ConfigTypeEnum, ExecModeEnum } from '/@/enums/flinkEnum';
 
 import Icon, { SvgIcon } from '/@/components/Icon';
 import { useCreateAndEditSchema } from './useCreateAndEditSchema';
@@ -27,9 +27,8 @@ import { modules, fetchListConf, fetchListJars } from '/@/api/flink/project';
 import { RuleObject } from 'ant-design-vue/lib/form';
 import { StoreValue } from 'ant-design-vue/lib/form/interface';
 import { renderResourceFrom } from './useFlinkRender';
-import { checkAppConfType, filterOption, getAppConfType } from '../utils';
+import { filterOption, getAppConfType } from '../utils';
 import { useI18n } from '/@/hooks/web/useI18n';
-import { AppTypeEnum } from '/@/enums/flinkEnum';
 const { t } = useI18n();
 
 const getJobTypeOptions = () => {
@@ -76,7 +75,7 @@ export const useCreateSchema = (dependencyRef: Ref) => {
   function handleCheckConfig(_rule: RuleObject, value: StoreValue) {
     if (value) {
       const confType = getAppConfType(value);
-      if (!checkAppConfType(confType)) {
+      if (confType === ConfigTypeEnum.UNKNOWN) {
         return Promise.reject('The configuration file must be (.properties|.yaml|.yml |.conf)');
       } else {
         return Promise.resolve();
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/app/utils/index.ts b/streampark-console/streampark-console-webapp/src/views/flink/app/utils/index.ts
index 6b4b42916..da0273cda 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/app/utils/index.ts
+++ b/streampark-console/streampark-console-webapp/src/views/flink/app/utils/index.ts
@@ -212,11 +212,7 @@ export function getAppConfType(configFile: string): number {
   } else if (config.endsWith('.conf')) {
     return ConfigTypeEnum.HOCON;
   }
-  return 0;
-}
-
-export function checkAppConfType(confType: number): boolean {
-  return [ConfigTypeEnum.YAML, ConfigTypeEnum.PROPERTIES, ConfigTypeEnum.HOCON].includes(confType);
+  return ConfigTypeEnum.UNKNOWN;
 }
 
 export function handleDependencyJsonToPom(json, pomMap, jarMap) {
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/project/Edit.vue b/streampark-console/streampark-console-webapp/src/views/flink/project/Edit.vue
index 84f44d44d..ae40bc5d3 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/project/Edit.vue
+++ b/streampark-console/streampark-console-webapp/src/views/flink/project/Edit.vue
@@ -77,7 +77,7 @@
         router.go(-1);
         createMessage.success('update successfully');
       } else {
-        createErrorSwal('Project update failed ..>﹏<.. <br><br>' + data['message']);
+        await createErrorSwal('Project update failed ..>﹏<.. <br><br>' + data['message']);
       }
     } catch (error: any) {
       if (error?.data?.message) {
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/project/useProject.tsx b/streampark-console/streampark-console-webapp/src/views/flink/project/useProject.tsx
index 191a1bc7f..b78ccb4c9 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/project/useProject.tsx
+++ b/streampark-console/streampark-console-webapp/src/views/flink/project/useProject.tsx
@@ -110,7 +110,13 @@ export const useProject = () => {
           },
         ],
       },
-      { field: 'gitProtocol', label: '', component: 'Input', show: false, defaultValue: GitProtocolEnum.HTTPS },
+      {
+        field: 'gitProtocol',
+        label: '',
+        component: 'Input',
+        show: false,
+        defaultValue: GitProtocolEnum.HTTPS,
+      },
       { field: 'url', label: '', component: 'Input', show: false },
       {
         field: 'repositoryUrl',
@@ -261,8 +267,8 @@ export const useProject = () => {
         if (!branchList.value.find((v) => v.value == values.branches)) {
           createErrorSwal(
             'branch [' +
-            values.branches +
-            '] does not exist<br>or authentication error,please check',
+              values.branches +
+              '] does not exist<br>or authentication error,please check',
           );
         } else {
           await FetchAction(values);
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/variable/View.vue b/streampark-console/streampark-console-webapp/src/views/flink/variable/View.vue
index 0fa6a97b2..12b783909 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/variable/View.vue
+++ b/streampark-console/streampark-console-webapp/src/views/flink/variable/View.vue
@@ -147,7 +147,7 @@
     });
     if (data.status === 'success') {
       createMessage.success(t('flink.variable.deleteVariable') + t('flink.variable.success'));
-      reload();
+      await reload();
     } else {
       createMessage.error(t('flink.variable.deleteVariable') + t('flink.variable.fail'));
     }
diff --git a/streampark-console/streampark-console-webapp/src/views/flink/variable/components/VariableDrawer.vue b/streampark-console/streampark-console-webapp/src/views/flink/variable/components/VariableDrawer.vue
index 4f1e4628c..880aac1f8 100644
--- a/streampark-console/streampark-console-webapp/src/views/flink/variable/components/VariableDrawer.vue
+++ b/streampark-console/streampark-console-webapp/src/views/flink/variable/components/VariableDrawer.vue
@@ -150,7 +150,7 @@
     async (data: Recordable) => {
       try {
         variableId.value = null;
-        resetFields();
+        await resetFields();
         setValidateStatus('');
         setHelp('');
         setDrawerProps({ confirmLoading: false });
@@ -169,7 +169,7 @@
           }
 
           variableId.value = data.record.id;
-          setFieldsValue(variableInfo);
+          await setFieldsValue(variableInfo);
         }
       } catch (error) {
         changeLoading(false);