You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@linkis.apache.org by pe...@apache.org on 2022/10/11 03:19:00 UTC

[incubator-linkis] branch dev-1.3.1 updated: feat:add jsoneditor for datasourceEnv and rmExternalResourceProvider (#3498)

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

peacewong pushed a commit to branch dev-1.3.1
in repository https://gitbox.apache.org/repos/asf/incubator-linkis.git


The following commit(s) were added to refs/heads/dev-1.3.1 by this push:
     new 167c87d02 feat:add jsoneditor for datasourceEnv and rmExternalResourceProvider (#3498)
167c87d02 is described below

commit 167c87d02461a1e92f94c288732dccbd46dbb4a5
Author: jacktao007 <ja...@gmail.com>
AuthorDate: Tue Oct 11 11:18:54 2022 +0800

    feat:add jsoneditor for datasourceEnv and rmExternalResourceProvider (#3498)
    
    * feat:add jsoneditor for datasourceEnv and rmExternalResourceProvider , format code
---
 linkis-web/package.json                            |  1 +
 .../linkis/module/datasourceEnv/EditForm/index.vue | 12 +++++---
 .../src/apps/linkis/module/datasourceEnv/index.vue |  1 +
 .../rmExternalResourceProvider/EditForm/index.vue  | 21 ++++++--------
 .../module/rmExternalResourceProvider/index.vue    |  1 +
 linkis-web/src/dss/view/login/index.vue            | 32 +++++++++++-----------
 linkis-web/src/main.js                             |  2 ++
 7 files changed, 37 insertions(+), 33 deletions(-)

diff --git a/linkis-web/package.json b/linkis-web/package.json
index 7b20c4de6..3229d7044 100644
--- a/linkis-web/package.json
+++ b/linkis-web/package.json
@@ -43,6 +43,7 @@
         "reconnecting-websocket": "4.4.0",
         "sql-formatter": "2.3.3",
         "svgo": "1.3.0",
+        "v-jsoneditor": "^1.4.5",
         "vue": "2.6.12",
         "vue-i18n": "8.22.1",
         "vue-router": "3.4.8",
diff --git a/linkis-web/src/apps/linkis/module/datasourceEnv/EditForm/index.vue b/linkis-web/src/apps/linkis/module/datasourceEnv/EditForm/index.vue
index 00ad38c5f..520a5d456 100644
--- a/linkis-web/src/apps/linkis/module/datasourceEnv/EditForm/index.vue
+++ b/linkis-web/src/apps/linkis/module/datasourceEnv/EditForm/index.vue
@@ -144,14 +144,17 @@ export default {
           },
         },
         {
-          type: 'input',
+          type: 'v-jsoneditor',
           title: "参数",
           field: 'parameter',
           value: '',
           props: {
-            placeholder: "",
-            "type": "textarea",
-            "rows": 5
+            type: 'form-create',
+            height: "280px",
+            options: { 
+              mode: "code",
+              modes: ['code','tree'],
+            }
           },
           validate: [
             {
@@ -172,6 +175,7 @@ export default {
   methods: {
     getData(data){
       this.formData = {...data}
+      this.formData.parameter = JSON.parse(this.formData.parameter)
     },
     changeSelector(options){
       console.log('test', options)
diff --git a/linkis-web/src/apps/linkis/module/datasourceEnv/index.vue b/linkis-web/src/apps/linkis/module/datasourceEnv/index.vue
index a6d727991..fd0aa9efd 100644
--- a/linkis-web/src/apps/linkis/module/datasourceEnv/index.vue
+++ b/linkis-web/src/apps/linkis/module/datasourceEnv/index.vue
@@ -287,6 +287,7 @@ export default {
         if('keytab' in formData) delete formData['keytab'];
         if('pic' in formData) delete formData['pic'];
         this.modalLoading = true
+        formData.parameter = JSON.stringify(formData.parameter)
         if(this.modalAddMode=='add') {
           add(formData).then((data)=>{
             //console.log(data)
diff --git a/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/EditForm/index.vue b/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/EditForm/index.vue
index 41baf4317..cab06d899 100644
--- a/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/EditForm/index.vue
+++ b/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/EditForm/index.vue
@@ -113,24 +113,18 @@ export default {
           ],
         },
         {
-          type: 'input',
+          type: 'v-jsoneditor',
           title: "配置信息",
           field: 'config',
           value: '',
           props: {
-            placeholder: "",
-            "type": "textarea",
-            "rows": 11
+            type: 'form-create',
+            height: "280px",
+            options: {
+              mode: "code",
+              modes: ['code','tree'],
+            }
           },
-          validate: [
-            {
-              required: true,
-              message: `${this.$t(
-                'message.linkis.datasource.pleaseInput'
-              )}"配置信息"`,
-              trigger: 'blur',
-            },
-          ],
         }
       ]
     }
@@ -141,6 +135,7 @@ export default {
   methods: {
     getData(data){
       this.formData = {...data}
+      this.formData.config = JSON.parse(this.formData.config)
     }
   },
   watch: {
diff --git a/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/index.vue b/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/index.vue
index 5aa95f351..43c581641 100644
--- a/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/index.vue
+++ b/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/index.vue
@@ -210,6 +210,7 @@ export default {
     onModalOk(){
       this.$refs.errorCodeForm.formModel.submit((formData)=>{
         this.modalLoading = true
+        formData.config = JSON.stringify(formData.config)
         if(this.modalAddMode=='add') {
           add(formData).then((data)=>{
             console.log(data)
diff --git a/linkis-web/src/dss/view/login/index.vue b/linkis-web/src/dss/view/login/index.vue
index 0adc3f513..86f6c4012 100644
--- a/linkis-web/src/dss/view/login/index.vue
+++ b/linkis-web/src/dss/view/login/index.vue
@@ -117,22 +117,22 @@ export default {
           this.loginForm.user = this.loginForm.user.toLocaleLowerCase();
           // 需要判断是否需要给密码加密
           let password = this.loginForm.password;
-           let params = {};
-           if (this.publicKeyData && this.publicKeyData.enableLoginEncrypt) {
-             const key = `-----BEGIN PUBLIC KEY-----${this.publicKeyData.publicKey}-----END PUBLIC KEY-----`;
-             const encryptor = new JSEncrypt()
-             encryptor.setPublicKey(key)
-             password = encryptor.encrypt(this.loginForm.password);
-             params = {
-               userName: this.loginForm.user,
-               password
-             };
-           } else {
-             params = {
-               userName: this.loginForm.user,
-               password
-             };
-           }
+          let params = {};
+          if (this.publicKeyData && this.publicKeyData.enableLoginEncrypt) {
+            const key = `-----BEGIN PUBLIC KEY-----${this.publicKeyData.publicKey}-----END PUBLIC KEY-----`;
+            const encryptor = new JSEncrypt()
+            encryptor.setPublicKey(key)
+            password = encryptor.encrypt(this.loginForm.password);
+            params = {
+              userName: this.loginForm.user,
+              password
+            };
+          } else {
+            params = {
+              userName: this.loginForm.user,
+              password
+            };
+          }
           // 登录清掉本地缓存
           // 连续两次退出登录后,会导致数据丢失,所以得判断是否已存切没有使用
           let tabs = await tab.get() || [];
diff --git a/linkis-web/src/main.js b/linkis-web/src/main.js
index 687233e8b..67904bcd8 100644
--- a/linkis-web/src/main.js
+++ b/linkis-web/src/main.js
@@ -26,6 +26,7 @@ import App from './dss/view/app.vue'
 import router from './router'
 import i18n from './common/i18n'
 import mixinDispatch from './common/service/moduleMixin'
+import VJsoneditor from 'v-jsoneditor'
 
 import 'iview/dist/styles/iview.css'
 
@@ -55,6 +56,7 @@ Vue.use(iView, {
   i18n: (key, value) => i18n.t(key, value)
 })
 Vue.use(formCreate)
+Vue.use(VJsoneditor)
 
 Vue.config.productionTip = false
 Vue.prototype.$Message.config({


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@linkis.apache.org
For additional commands, e-mail: commits-help@linkis.apache.org