This is an automated email from the ASF dual-hosted git repository.
casion pushed a commit to branch dev-1.4.0
in repository https://gitbox.apache.org/repos/asf/linkis.git
The following commit(s) were added to refs/heads/dev-1.4.0 by this push:
new 6b2c4ee3d web optimize for 1.4.0 (#4444)
6b2c4ee3d is described below
commit 6b2c4ee3d2af654d8aee9e0602b8be584907081e
Author: Yonghao Mei <[email protected]>
AuthorDate: Wed May 24 19:14:33 2023 +0800
web optimize for 1.4.0 (#4444)
* bug fix
* modify package.json
* close codequery entrance
* upd license
---
linkis-web/package.json | 35 ++++++++++++----------
.../release-docs/licenses/LICENSE-autoprefixer.txt | 20 +++++++++++++
.../release-docs/licenses/LICENSE-postcss.txt | 20 +++++++++++++
.../apps/URM/module/functionManagement/index.vue | 2 +-
.../src/apps/URM/module/udfManagement/index.vue | 2 +-
.../src/apps/linkis/components/variable/index.scss | 1 +
linkis-web/src/apps/linkis/i18n/common/en.json | 10 +++----
linkis-web/src/apps/linkis/i18n/common/zh.json | 10 +++----
.../src/apps/linkis/module/ECM/engineConn.vue | 3 +-
linkis-web/src/apps/linkis/module/ECM/log.vue | 6 +++-
.../apps/linkis/module/datasourceAccess/index.vue | 1 +
.../linkis/module/datasourceEnv/EditForm/index.vue | 2 +-
.../src/apps/linkis/module/datasourceEnv/index.vue | 13 ++++----
.../apps/linkis/module/datasourceType/index.vue | 1 +
.../apps/linkis/module/datasourceTypeKey/index.vue | 2 +-
.../src/apps/linkis/module/errorCode/index.vue | 3 +-
.../apps/linkis/module/gatewayAuthToken/index.vue | 4 +--
.../module/globalHistoryManagement/viewHistory.vue | 1 +
.../apps/linkis/module/ipListManagement/index.vue | 2 +-
.../module/resourceManagement/engineConn.vue | 1 +
.../apps/linkis/module/resourceManagement/log.vue | 6 +++-
.../module/rmExternalResourceProvider/index.vue | 11 +++----
.../src/apps/linkis/module/setting/setting.vue | 11 ++++---
.../linkis/module/tenantTagManagement/index.vue | 27 +++++++++--------
.../src/apps/linkis/module/udfManager/index.vue | 3 +-
.../src/apps/linkis/module/udfTree/index.vue | 15 +++++-----
linkis-web/src/common/i18n/en.json | 1 +
linkis-web/src/common/i18n/zh.json | 1 +
.../components/consoleComponent/resultSetList.vue | 6 ++--
.../src/components/consoleComponent/toolbar.vue | 7 +++++
30 files changed, 150 insertions(+), 77 deletions(-)
diff --git a/linkis-web/package.json b/linkis-web/package.json
index 006750ec1..064566871 100644
--- a/linkis-web/package.json
+++ b/linkis-web/package.json
@@ -23,7 +23,7 @@
},
"dependencies": {
"@form-create/iview": "2.5.27",
- "axios": "^0.21.4",
+ "axios": "0.21.4",
"babel-polyfill": "6.26.0",
"core-js": "3.27.2",
"dexie": "3.2.3",
@@ -33,17 +33,18 @@
"highlight.js": "10.7.0",
"iview": "3.5.4",
"jsencrypt": "3.2.1",
- "lodash": "^4.17.21",
+ "lodash": "4.17.21",
"md5": "2.3.0",
"mitt": "1.2.0",
- "moment": "^2.29.4",
+ "moment": "2.29.4",
"monaco-editor": "0.30.1",
"object-to-formdata": "4.2.2",
- "path-browserify": "^1.0.1",
- "qs": "^6.11.0",
+ "path-browserify": "1.0.1",
+ "postcss": "8.4.21",
+ "qs": "6.11.0",
"reconnecting-websocket": "4.4.0",
"sql-formatter": "2.3.3",
- "svgo": "^3.0.2",
+ "svgo": "3.0.2",
"v-jsoneditor": "1.4.5",
"vue": "2.6.12",
"vue-i18n": "8.22.1",
@@ -54,25 +55,29 @@
},
"devDependencies": {
"@intlify/vue-i18n-loader": "1.0.0",
- "@vue/cli-plugin-babel": "^5.0.8",
- "@vue/cli-plugin-eslint": "^5.0.8",
- "@vue/cli-service": "^5.0.8",
+ "@vue/cli-plugin-babel": "5.0.8",
+ "@vue/cli-plugin-eslint": "5.0.8",
+ "@vue/cli-service": "5.0.8",
"@vue/eslint-config-standard": "4.0.0",
"archiver": "3.1.1",
+ "autoprefixer": "10.4.14",
"babel-eslint": "10.1.0",
- "copy-webpack-plugin": "^9.1.0",
+ "copy-webpack-plugin": "9.1.0",
"csp-html-webpack-plugin": "5.1.0",
- "filemanager-webpack-plugin": "^7.0.0",
+ "filemanager-webpack-plugin": "7.0.0",
"husky": "1.3.1",
- "lint-staged": "^13.1.1",
+ "lint-staged": "13.1.1",
"material-design-icons": "3.0.1",
"monaco-editor-webpack-plugin": "6.0.0",
- "node-sass": "^8.0.0",
- "npm-force-resolutions": "^0.0.10",
- "sass-loader": "^10.4.1",
+ "node-sass": "8.0.0",
+ "npm-force-resolutions": "0.0.10",
+ "sass-loader": "10.4.1",
"svg-sprite-loader": "6.0.0",
"vue-cli-plugin-mockjs": "0.1.3",
"vue-template-compiler": "2.6.12",
"webpack-virtual-modules": "0.3.2"
+ },
+ "resolutions": {
+ "postcss": "8.4.21"
}
}
diff --git a/linkis-web/release-docs/licenses/LICENSE-autoprefixer.txt
b/linkis-web/release-docs/licenses/LICENSE-autoprefixer.txt
new file mode 100644
index 000000000..1b21e2bc5
--- /dev/null
+++ b/linkis-web/release-docs/licenses/LICENSE-autoprefixer.txt
@@ -0,0 +1,20 @@
+The MIT License (MIT)
+
+Copyright 2013 Andrey Sitnik <[email protected]>
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/linkis-web/release-docs/licenses/LICENSE-postcss.txt
b/linkis-web/release-docs/licenses/LICENSE-postcss.txt
new file mode 100644
index 000000000..1b21e2bc5
--- /dev/null
+++ b/linkis-web/release-docs/licenses/LICENSE-postcss.txt
@@ -0,0 +1,20 @@
+The MIT License (MIT)
+
+Copyright 2013 Andrey Sitnik <[email protected]>
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/linkis-web/src/apps/URM/module/functionManagement/index.vue
b/linkis-web/src/apps/URM/module/functionManagement/index.vue
index c756513fa..389b1003c 100644
--- a/linkis-web/src/apps/URM/module/functionManagement/index.vue
+++ b/linkis-web/src/apps/URM/module/functionManagement/index.vue
@@ -573,7 +573,7 @@ export default {
if (!args.row) return
this.$Modal.confirm({
title: this.$t('message.linkis.modal.modalTitle'),
- content: this.$t('message.linkis.modal.modalDelete', {envName:
args.row.udfName}),
+ content: this.$t('message.linkis.modal.modalDelete', {name:
args.row.udfName}),
onOk: ()=>{
api
.fetch(`/udf/delete/${args.row.id}`, {}, 'post')
diff --git a/linkis-web/src/apps/URM/module/udfManagement/index.vue
b/linkis-web/src/apps/URM/module/udfManagement/index.vue
index da73981ae..870b6ddf2 100644
--- a/linkis-web/src/apps/URM/module/udfManagement/index.vue
+++ b/linkis-web/src/apps/URM/module/udfManagement/index.vue
@@ -567,7 +567,7 @@ export default {
if (!args.row) return
this.$Modal.confirm({
title: this.$t('message.linkis.modal.modalTitle'),
- content: this.$t('message.linkis.modal.modalDelete', {envName:
args.row.udfName}),
+ content: this.$t('message.linkis.modal.modalDelete', {name:
args.row.udfName}),
onOk: ()=>{
api.fetch(`/udf/delete/${args.row.id}`, {}, 'post')
.then(() => {
diff --git a/linkis-web/src/apps/linkis/components/variable/index.scss
b/linkis-web/src/apps/linkis/components/variable/index.scss
index 643948e8b..9140e16a3 100644
--- a/linkis-web/src/apps/linkis/components/variable/index.scss
+++ b/linkis-web/src/apps/linkis/components/variable/index.scss
@@ -50,6 +50,7 @@
line-height: 24px;
display: flex;
align-items: center;
+ position: relative;
@media only screen and (max-width: 1480px){
.we-variable-content-label-group {
display: flex !important;
diff --git a/linkis-web/src/apps/linkis/i18n/common/en.json
b/linkis-web/src/apps/linkis/i18n/common/en.json
index 845b6fe03..aba5ff0c6 100644
--- a/linkis-web/src/apps/linkis/i18n/common/en.json
+++ b/linkis-web/src/apps/linkis/i18n/common/en.json
@@ -194,7 +194,7 @@
},
"modal": {
"modalTitle": "Prompt message ",
- "modalDelete": "Confirm whether to delete the [{envName} option?",
+ "modalDelete": "Confirm whether to delete the [{name} option?",
"modalDeleteRecord": "Confirm whether to delete the record?",
"modalDeleteTask": "Confirm whether to stop the selected task?",
"modalDeleteInstance": "Determines whether to stop the current
selected instance?",
@@ -398,7 +398,7 @@
"addSuccessful": "Successfully Addded",
"editSuccessful": "Successfully edited",
"confirmDel": "Confirm Deletion",
- "isConfirmDel": "Are you sure you want to delete this tag"
+ "isConfirmDel": "Are you sure you want to delete this tag({name})"
},
"ipListManagement": {
"userName": "User Name",
@@ -433,7 +433,7 @@
"addSuccessful": "Successfully Addded",
"editSuccessful": "Successfully edited",
"confirmDel": "Confirm Deletion",
- "isConfirmDel": "Are you sure you want to delete this tag"
+ "isConfirmDel": "Are you sure you want to delete this tag({name})"
},
"codeQuery": {
"executionCode": "Execution Code",
@@ -468,8 +468,8 @@
"cancel": "Cancel",
"modalTitle": "Info",
"modalFormat": "Confirm deleting the {0} record?",
- "modalDelete1": "Confirm that the record [{username}] should be
deleted?",
- "modalDelete": "Confirm that the record [{envName}] should be
deleted?",
+ "modalDelete1": "Confirm that the record [{name}] should be
deleted?",
+ "modalDelete": "Confirm that the record [{name}] should be deleted?",
"modalDeleteSuccess": "Successfully delete",
"modalDeleteFail": "Fail to delete",
"modalAddSuccess": "Successfully added",
diff --git a/linkis-web/src/apps/linkis/i18n/common/zh.json
b/linkis-web/src/apps/linkis/i18n/common/zh.json
index cc04f4ab6..49950288c 100644
--- a/linkis-web/src/apps/linkis/i18n/common/zh.json
+++ b/linkis-web/src/apps/linkis/i18n/common/zh.json
@@ -194,7 +194,7 @@
},
"modal": {
"modalTitle": "提示信息",
- "modalDelete": "确认是否删除[{envName}]项?",
+ "modalDelete": "确认是否删除[{name}]项?",
"modalDeleteRecord": "确认是否删除该记录?",
"modalDeleteTask": "确认是否停止当前选择任务?",
"modalDeleteInstance": "确认是否停止当前选择实例?",
@@ -396,7 +396,7 @@
"userIsExisted": "用户标签已存在",
"addSuccessful": "添加成功",
"confirmDel": "确认删除",
- "isConfirmDel": "确定要删除这条数据吗"
+ "isConfirmDel": "确定要删除这条数据吗({name})"
},
"ipListManagement": {
"userName": "用户名",
@@ -430,7 +430,7 @@
"userIsExisted": "用户标签已存在",
"addSuccessful": "添加成功",
"confirmDel": "确认删除",
- "isConfirmDel": "确定要删除这条数据吗"
+ "isConfirmDel": "确定要删除这条数据吗({name})"
},
"basedataManagement": {
"add": "新增",
@@ -446,8 +446,8 @@
"cancel": "取消",
"modalTitle": "提示信息",
"modalFormat": "确定删除 {0} 这条记录?",
- "modalDelete1": "确认是否删除[{username}]该记录?",
- "modalDelete": "确认是否删除[{envName}]该记录?",
+ "modalDelete1": "确认是否删除[{name}]该记录?",
+ "modalDelete": "确认是否删除[{name}]该记录?",
"modalDeleteSuccess": "删除成功",
"modalDeleteFail": "删除失败",
"modalAddSuccess": "添加成功",
diff --git a/linkis-web/src/apps/linkis/module/ECM/engineConn.vue
b/linkis-web/src/apps/linkis/module/ECM/engineConn.vue
index d0004694b..5fd9c221c 100644
--- a/linkis-web/src/apps/linkis/module/ECM/engineConn.vue
+++ b/linkis-web/src/apps/linkis/module/ECM/engineConn.vue
@@ -226,7 +226,8 @@ export default {
this.$refs.logPanel.getLogs(0, {
emInstance: params.row.emInstance,
instance: params.row.instance,
- applicationName: params.row.applicationName
+ applicationName: params.row.applicationName,
+ engineType: params.row.engineType,
})
}
}
diff --git a/linkis-web/src/apps/linkis/module/ECM/log.vue
b/linkis-web/src/apps/linkis/module/ECM/log.vue
index d7a54586c..c186edaf4 100644
--- a/linkis-web/src/apps/linkis/module/ECM/log.vue
+++ b/linkis-web/src/apps/linkis/module/ECM/log.vue
@@ -20,6 +20,8 @@
<Tabs @on-click="onClickTabs" :value="tabName">
<TabPane name="stdout" label="stdout"></TabPane>
<TabPane name="stderr" label="stderr"></TabPane>
+ <TabPane name="gc" label="gc"></TabPane>
+ <TabPane v-if="['hive', 'spark'].includes(engineType)" name="yarnApp"
label="yarnApp"></TabPane>
</Tabs>
<Button class="backButton" type="primary"
@click="back">{{$t('message.linkis.back')}}</Button>
<log :logs="logs" :scriptViewState="scriptViewState"/>
@@ -55,7 +57,8 @@ export default {
},
scriptViewState: {
bottomContentHeight: window.innerHeight - 353
- }
+ },
+ engineType: '',
};
},
computed: {
@@ -80,6 +83,7 @@ export default {
async getLogs(fromLine, param) {
if (param) {
this.param = param
+ this.engineType = param.engineType
}
if (this.param) {
const params = {
diff --git a/linkis-web/src/apps/linkis/module/datasourceAccess/index.vue
b/linkis-web/src/apps/linkis/module/datasourceAccess/index.vue
index 8386ba939..33f30de9b 100644
--- a/linkis-web/src/apps/linkis/module/datasourceAccess/index.vue
+++ b/linkis-web/src/apps/linkis/module/datasourceAccess/index.vue
@@ -242,6 +242,7 @@ export default {
duration: 3,
content: "添加成功"
})
+ this.load()
}else{
this.$Message.success({
duration: 3,
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 d54077ffd..ca19bd336 100644
--- a/linkis-web/src/apps/linkis/module/datasourceEnv/EditForm/index.vue
+++ b/linkis-web/src/apps/linkis/module/datasourceEnv/EditForm/index.vue
@@ -247,7 +247,7 @@ export default {
}
// radio
this.rule[4].hidden = !(['hive', 'kafka'].includes(dataSourceTypeName))
-
+
// keytab value
this.rule[6].hidden = !newV.keytab;
// upload
diff --git a/linkis-web/src/apps/linkis/module/datasourceEnv/index.vue
b/linkis-web/src/apps/linkis/module/datasourceEnv/index.vue
index c3e291338..553817e8c 100644
--- a/linkis-web/src/apps/linkis/module/datasourceEnv/index.vue
+++ b/linkis-web/src/apps/linkis/module/datasourceEnv/index.vue
@@ -204,7 +204,7 @@ export default {
init() {
this.load();
},
- load() {
+ async load() {
let params = {
searchName: this.searchName,
currentPage: this.page.pageNow,
@@ -223,7 +223,7 @@ export default {
let filter = options.filter(optionsItem=>{
return optionsItem.value === item.datasourceTypeId
})
- item.name = filter[0]?.label || '';
+ item.name = filter[0]?.label || '';
})
})
})
@@ -287,8 +287,8 @@ export default {
}
this.modalEditData.hasKeyTab = false;
},
- onModalOk(){
- this.$refs.editForm.formModel.submit((formData)=>{
+ async onModalOk(){
+ this.$refs.editForm.formModel.submit(async (formData)=>{
if (!('parameter' in formData)) {
formData['parameter'] = {}
}
@@ -313,13 +313,14 @@ export default {
if('keytab' in formData) delete formData['keytab'];
if('uris' in formData) delete formData['uris'];
if(this.modalAddMode=='add') {
- add(formData).then((data)=>{
+ await add(formData).then((data)=>{
//window.console.log(data)
if(data.result) {
this.$Message.success({
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddSuccess')
})
+ this.load();
}else{
this.$Message.success({
duration: 3,
@@ -328,7 +329,7 @@ export default {
}
})
}else {
- edit(formData).then((data)=>{
+ await edit(formData).then((data)=>{
//window.console.log(data)
if(data.result) {
this.$Message.success({
diff --git a/linkis-web/src/apps/linkis/module/datasourceType/index.vue
b/linkis-web/src/apps/linkis/module/datasourceType/index.vue
index 5a78fd92b..5dbb8bf6f 100644
--- a/linkis-web/src/apps/linkis/module/datasourceType/index.vue
+++ b/linkis-web/src/apps/linkis/module/datasourceType/index.vue
@@ -247,6 +247,7 @@ export default {
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddSuccess')
})
+ this.load()
}else{
this.$Message.success({
duration: 3,
diff --git a/linkis-web/src/apps/linkis/module/datasourceTypeKey/index.vue
b/linkis-web/src/apps/linkis/module/datasourceTypeKey/index.vue
index 42823c657..124faa352 100644
--- a/linkis-web/src/apps/linkis/module/datasourceTypeKey/index.vue
+++ b/linkis-web/src/apps/linkis/module/datasourceTypeKey/index.vue
@@ -295,13 +295,13 @@ export default {
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddSuccess')
})
+ this.load()
}else{
this.$Message.success({
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddFail')
})
}
- this.load()
})
}else {
edit(formData).then((data)=>{
diff --git a/linkis-web/src/apps/linkis/module/errorCode/index.vue
b/linkis-web/src/apps/linkis/module/errorCode/index.vue
index 332bb3405..cd0439499 100644
--- a/linkis-web/src/apps/linkis/module/errorCode/index.vue
+++ b/linkis-web/src/apps/linkis/module/errorCode/index.vue
@@ -222,13 +222,13 @@ export default {
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddSuccess')
})
+ this.load()
}else{
this.$Message.success({
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddFail')
})
}
- this.load()
})
}else {
edit(formData).then((data)=>{
@@ -246,7 +246,6 @@ export default {
})
}
})
- this.load()
}
this.modalLoading=false
this.modalShow = false
diff --git a/linkis-web/src/apps/linkis/module/gatewayAuthToken/index.vue
b/linkis-web/src/apps/linkis/module/gatewayAuthToken/index.vue
index 19197f9c5..91a3eaaf0 100644
--- a/linkis-web/src/apps/linkis/module/gatewayAuthToken/index.vue
+++ b/linkis-web/src/apps/linkis/module/gatewayAuthToken/index.vue
@@ -234,7 +234,7 @@ export default {
onTableDelete(row){
this.$Modal.confirm({
title: this.$t('message.linkis.basedataManagement.modal.modalTitle'),
- content:
this.$t('message.linkis.basedataManagement.modal.modalDelete', {envName:
row.tokenName}),
+ content:
this.$t('message.linkis.basedataManagement.modal.modalDelete', {name:
row.tokenName}),
onOk: ()=>{
let params = {
id: row.id
@@ -268,13 +268,13 @@ export default {
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddSuccess')
})
+ this.load()
}else{
this.$Message.success({
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddFail')
})
}
- this.load()
})
}else {
edit(formData).then((data)=>{
diff --git
a/linkis-web/src/apps/linkis/module/globalHistoryManagement/viewHistory.vue
b/linkis-web/src/apps/linkis/module/globalHistoryManagement/viewHistory.vue
index 069068c74..8742188b9 100644
--- a/linkis-web/src/apps/linkis/module/globalHistoryManagement/viewHistory.vue
+++ b/linkis-web/src/apps/linkis/module/globalHistoryManagement/viewHistory.vue
@@ -286,6 +286,7 @@ export default {
let jobhistory = await api.fetch(`/jobhistory/${jobId}/get`, 'get')
const option = jobhistory.task
this.jobhistoryTask = option
+ this.script.runType = option.runType
if (!jobhistory.task.logPath) {
const errCode = jobhistory.task.errCode
? `\n${this.$t('message.linkis.errorCode')}:${
diff --git a/linkis-web/src/apps/linkis/module/ipListManagement/index.vue
b/linkis-web/src/apps/linkis/module/ipListManagement/index.vue
index 770795ce2..e411dc781 100644
--- a/linkis-web/src/apps/linkis/module/ipListManagement/index.vue
+++ b/linkis-web/src/apps/linkis/module/ipListManagement/index.vue
@@ -389,7 +389,7 @@ export default {
delete(data) {
this.$Modal.confirm({
title: this.$t('message.linkis.ipListManagement.confirmDel'),
- content: this.$t('message.linkis.ipListManagement.isConfirmDel'),
+ content: this.$t('message.linkis.ipListManagement.isConfirmDel',
{name: `id:${data.id}`}),
onOk: async () => {
await this.confirmDelete(data);
await this.getTableData();
diff --git
a/linkis-web/src/apps/linkis/module/resourceManagement/engineConn.vue
b/linkis-web/src/apps/linkis/module/resourceManagement/engineConn.vue
index 8e71ef864..f8da125f7 100644
--- a/linkis-web/src/apps/linkis/module/resourceManagement/engineConn.vue
+++ b/linkis-web/src/apps/linkis/module/resourceManagement/engineConn.vue
@@ -203,6 +203,7 @@ export default {
emInstance: params.row.ecmInstance,
instance: params.row.serviceInstance,
ticketId: params.row.ticketId,
+ engineType: params.row.engineType,
logDirSuffix: params.row.logDirSuffix,
})
}
diff --git a/linkis-web/src/apps/linkis/module/resourceManagement/log.vue
b/linkis-web/src/apps/linkis/module/resourceManagement/log.vue
index acf96cbb4..39f79b003 100644
--- a/linkis-web/src/apps/linkis/module/resourceManagement/log.vue
+++ b/linkis-web/src/apps/linkis/module/resourceManagement/log.vue
@@ -20,6 +20,8 @@
<Tabs @on-click="onClickTabs" :value="tabName">
<TabPane name="stdout" label="stdout"></TabPane>
<TabPane name="stderr" label="stderr"></TabPane>
+ <TabPane name="gc" label="gc"></TabPane>
+ <TabPane v-if="['hive', 'spark'].includes(engineType)" name="yarnApp"
label="yarnApp"></TabPane>
</Tabs>
<Button class="backButton" type="primary"
@click="back">{{$t('message.linkis.back')}}</Button>
<log :logs="logs" :scriptViewState="scriptViewState"/>
@@ -55,7 +57,8 @@ export default {
},
scriptViewState: {
bottomContentHeight: window.innerHeight - 353
- }
+ },
+ engineType: '',
};
},
computed: {
@@ -80,6 +83,7 @@ export default {
async getLogs(fromLine, param) {
if (param) {
this.param = param
+ this.engineType = param.engineType
}
if (this.param) {
const params = {
diff --git
a/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/index.vue
b/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/index.vue
index 98181836d..9e2f175e9 100644
--- a/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/index.vue
+++ b/linkis-web/src/apps/linkis/module/rmExternalResourceProvider/index.vue
@@ -160,7 +160,7 @@ export default {
init() {
window.console.log(this.$route.query.isSkip);
},
- load() {
+ async load() {
let params = {
searchName: this.searchName,
currentPage: this.page.pageNow,
@@ -219,18 +219,19 @@ export default {
})
},
- onModalOk(){
- this.$refs.errorCodeForm.formModel.submit((formData)=>{
+ async onModalOk(){
+ this.$refs.errorCodeForm.formModel.submit(async (formData)=>{
this.modalLoading = true
formData.config = JSON.stringify(formData.config)
if(this.modalAddMode=='add') {
- add(formData).then((data)=>{
+ await add(formData).then((data)=>{
window.console.log(data)
if(data.result) {
this.$Message.success({
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddSuccess')
})
+ this.load()
}else{
this.$Message.success({
duration: 3,
@@ -239,7 +240,7 @@ export default {
}
})
}else {
- edit(formData).then((data)=>{
+ await edit(formData).then((data)=>{
window.console.log(data)
if(data.result) {
this.$Message.success({
diff --git a/linkis-web/src/apps/linkis/module/setting/setting.vue
b/linkis-web/src/apps/linkis/module/setting/setting.vue
index 565503866..3fed0420f 100644
--- a/linkis-web/src/apps/linkis/module/setting/setting.vue
+++ b/linkis-web/src/apps/linkis/module/setting/setting.vue
@@ -330,7 +330,7 @@ export default {
{
creator: parameter[0], // Specify a first-level directory(指定一级目录)
engineType: parameter[1], // Specify the engine (secondary
directory) if there is only a first-level directory, it will be automatically
undefined and no parameters will be passed(指定引擎(二级目录)如果只有一级目录则自动为undefined不会传参)
- version: parameter[2], // The corresponding engine currently only
supports the corresponding version. For example, spark will pass version-3.2.1.
If there is only a first-level directory, it will be automatically undefined
and no parameters will be
passed.(对应的引擎目前只支持对应的版本,如spark就传version-3.2.1,如果只有一级目录则自动为undefined不会传参)
+ version: parameter[2], // The corresponding engine currently only
supports the corresponding version. For example, spark will pass version-2.4.3.
If there is only a first-level directory, it will be automatically undefined
and no parameters will be
passed.(对应的引擎目前只支持对应的版本,如spark就传version-2.4.3,如果只有一级目录则自动为undefined不会传参)
},
"get"
)
@@ -565,11 +565,10 @@ export default {
//Find the data in the menuList of the tab you clicked to
delete(找到点击删除的tab 在menuList里的数据)
let menuItem = this.menuList.find((item) => item.categoryName === name);
//Determine whether the current active tab is the same as the tab
currently clicked to delete(判断当前的活动tab是否和当前点击删除的tab一样)
- if (this.currentTabName === name) {
- let ItemIndex = this.menuList.findIndex(
- (item) => item.categoryName === this.currentTabName
- );
- this.menuList.splice(ItemIndex, 1);
+ const activeIndex = this.menuList.findIndex((item) => item.categoryName
=== this.currentTabName) + 1;
+ const curIndex = this.menuList.findIndex((item) => item.categoryName ===
name);
+ if (curIndex === activeIndex) {
+ this.menuList.splice(curIndex, 1);
api
.fetch(
"/configuration/deleteCategory",
diff --git a/linkis-web/src/apps/linkis/module/tenantTagManagement/index.vue
b/linkis-web/src/apps/linkis/module/tenantTagManagement/index.vue
index fccbe7f35..a7aab7740 100644
--- a/linkis-web/src/apps/linkis/module/tenantTagManagement/index.vue
+++ b/linkis-web/src/apps/linkis/module/tenantTagManagement/index.vue
@@ -106,7 +106,7 @@
<div style="margin-top: 60px">
<span style="width: 60px">{{
$t('message.linkis.tenantTagManagement.yourTagMapping') }}</span>
<Input class="input" v-model="mapping" style="width: 220px;
margin-left: 10px" disabled></Input>
- <Button type="primary" @click="checkUserTag" style="margin-left:
10px"
:loading="isRequesting">{{$t('message.linkis.tenantTagManagement.check')}}</Button>
+ <Button v-if="mode !== 'edit'" type="primary" @click="checkUserTag"
style="margin-left: 10px"
:loading="isRequesting">{{$t('message.linkis.tenantTagManagement.check')}}</Button>
</div>
</div>
<div slot="footer">
@@ -223,7 +223,7 @@ export default {
],
creator: [
{required: true, message:
this.$t('message.linkis.tenantTagManagement.notEmpty'), trigger: 'blur'},
- {pattern: /^[0-9a-zA-Z_]+$/, message:
this.$t('message.linkis.tenantTagManagement.contentError1'), type: 'string'}
+ {pattern: /^[0-9a-zA-Z_\*]+$/, message:
this.$t('message.linkis.tenantTagManagement.contentError'), type: 'string'}
],
tenantValue: [
{required: true, message:
this.$t('message.linkis.tenantTagManagement.notEmpty'), trigger: 'blur'},
@@ -313,22 +313,22 @@ export default {
if(this.isRequesting) return;
this.$refs.createTenantForm.validate(async (valid) => {
if(valid) {
- const {user, creator} = this.modalData;
+ const { user, creator, id } = this.modalData;
if(this.mode === 'edit' && user === this.editData.user && creator
=== this.editData.creator) {
this.tagIsExist = false;
return;
}
try {
- this.isRequesting = true
- await api.fetch("/configuration/tenant-mapping/check-user-creator",
- {
- user,
- creator
- }, "get").then((res) => {
+ this.isRequesting = true;
+ const checkBody = {user, creator};
+ if(this.mode === 'edit') {
+ checkBody.id = id;
+ }
+ await
api.fetch("/configuration/tenant-mapping/check-user-creator", checkBody,
"get").then((res) => {
if (res.exist) {
this.$Message.error(this.$t('message.linkis.tenantTagManagement.userIsExisted'))
}
- this.tagIsExist = res.exist;
+ this.tagIsExist = !res.exist;
})
this.isRequesting = false
} catch (err) {
@@ -399,12 +399,13 @@ export default {
id, user, creator, tenantValue, bussinessUser, desc
};
this.showCreateModal = true;
+ this.tagIsExist = false;
this.mode = 'edit';
},
delete(data) {
this.$Modal.confirm({
title: this.$t('message.linkis.tenantTagManagement.confirmDel'),
- content: this.$t('message.linkis.tenantTagManagement.isConfirmDel'),
+ content: this.$t('message.linkis.tenantTagManagement.isConfirmDel',
{name: `id:${data.id}`}),
onOk: async () => {
await this.confirmDelete(data);
await this.getTableData();
@@ -422,7 +423,9 @@ export default {
}
},
async handleChange() {
- this.tagIsExist = true;
+ if(this.mode !== 'edit') {
+ this.tagIsExist = true;
+ }
},
async changePage(val) {
this.page.pageNow = val;
diff --git a/linkis-web/src/apps/linkis/module/udfManager/index.vue
b/linkis-web/src/apps/linkis/module/udfManager/index.vue
index 66319cd16..b1f425acb 100644
--- a/linkis-web/src/apps/linkis/module/udfManager/index.vue
+++ b/linkis-web/src/apps/linkis/module/udfManager/index.vue
@@ -211,13 +211,13 @@ export default {
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddSuccess')
})
+ this.load()
}else{
this.$Message.success({
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddFail')
})
}
- this.load()
})
}else {
edit(formData).then((data)=>{
@@ -234,7 +234,6 @@ export default {
content:
this.$t('message.linkis.basedataManagement.modal.modalEditFail')
})
}
- this.load()
})
}
this.modalLoading=false
diff --git a/linkis-web/src/apps/linkis/module/udfTree/index.vue
b/linkis-web/src/apps/linkis/module/udfTree/index.vue
index 0ef454f9c..214ed2fff 100644
--- a/linkis-web/src/apps/linkis/module/udfTree/index.vue
+++ b/linkis-web/src/apps/linkis/module/udfTree/index.vue
@@ -91,7 +91,7 @@
import mixin from '@/common/service/mixin';
import ErrorCodeForm from './EditForm/index'
import {add, del, edit, getList} from "./service";
-import {formatDate} from "iview/src/components/date-picker/util";
+// import {formatDate} from "iview/src/components/date-picker/util";
export default {
mixins: [mixin],
components: {ErrorCodeForm},
@@ -151,7 +151,7 @@ export default {
align: 'center',
render: (h,params)=>{
return h('div',
- formatDate(new Date(params.row.createTime),'yyyy-MM-dd hh:mm:ss')
+ new Date(params.row.createTime).toLocaleString()
)
}
},
@@ -163,7 +163,7 @@ export default {
align: 'center',
render: (h,params)=>{
return h('div',
- formatDate(new Date(params.row.updateTime),'yyyy-MM-dd hh:mm:ss')
+ new Date(params.row.updateTime).toLocaleString()
)
}
},
@@ -224,7 +224,7 @@ export default {
this.$Modal.confirm({
title: this.$t('message.linkis.basedataManagement.modal.modalTitle'),
- content:
this.$t('message.linkis.basedataManagement.modal.modalDelete'),
+ content:
this.$t('message.linkis.basedataManagement.modal.modalDelete', {name:
row.name}),
onOk: ()=>{
let params = {
id: row.id
@@ -248,16 +248,17 @@ export default {
},
onModalOk(){
- this.$refs.errorCodeForm.formModel.submit((formData)=>{
+ this.$refs.errorCodeForm.formModel.submit(async (formData)=>{
this.modalLoading = true
if(this.modalAddMode=='add') {
- add(formData).then((data)=>{
+ await add(formData).then((data)=>{
window.console.log(data)
if(data.result) {
this.$Message.success({
duration: 3,
content:
this.$t('message.linkis.basedataManagement.modal.modalAddSuccess')
})
+ this.load();
}else{
this.$Message.success({
duration: 3,
@@ -266,7 +267,7 @@ export default {
}
})
}else {
- edit(formData).then((data)=>{
+ await edit(formData).then((data)=>{
window.console.log(data)
if(data.result) {
this.$Message.success({
diff --git a/linkis-web/src/common/i18n/en.json
b/linkis-web/src/common/i18n/en.json
index bd0a869d1..db26f2218 100644
--- a/linkis-web/src/common/i18n/en.json
+++ b/linkis-web/src/common/i18n/en.json
@@ -309,6 +309,7 @@
"resultGroupLineFilter": "Result Group Line Filter",
"resultGroup": "Result Group",
"all": "all",
+ "autoFormat": "Auto Format",
"downloadMode": "Download Mode :",
"deepAnalysis": "Deep Analysis",
"success": {
diff --git a/linkis-web/src/common/i18n/zh.json
b/linkis-web/src/common/i18n/zh.json
index 9491068ee..a38fa3deb 100644
--- a/linkis-web/src/common/i18n/zh.json
+++ b/linkis-web/src/common/i18n/zh.json
@@ -315,6 +315,7 @@
"resultGroupLineFilter": "对结果集的列进行筛选",
"resultGroup": "结果集",
"all": "是否全量",
+ "autoFormat": "自动格式化",
"downloadMode": "下载方式:",
"deepAnalysis": "分 析 进 阶",
"success": {
diff --git a/linkis-web/src/components/consoleComponent/resultSetList.vue
b/linkis-web/src/components/consoleComponent/resultSetList.vue
index 22f4e24e7..80c8a99d7 100644
--- a/linkis-web/src/components/consoleComponent/resultSetList.vue
+++ b/linkis-web/src/components/consoleComponent/resultSetList.vue
@@ -45,7 +45,7 @@
v-for="(item, index) in list"
:class="{current: current-0 === index}"
:data-index="index"
- :key="item.path">{{$t('message.common.resultList')}}{{ index+1
}}</li>
+ :key="item.path">{{$t('message.common.resultList')}}{{
+item.name.split('.')[0].substring(1) + 1 }}</li>
</virtual-list>
</div>
</div>
@@ -73,7 +73,9 @@ export default {
},
data() {
return {
- resultList: this.list,
+ resultList: this.list.sort((a, b) => {
+ return +(a.name.split('.')[0].substring(1)) -
+(b.name.split('.')[0].substring(1))
+ }),
show: false,
};
},
diff --git a/linkis-web/src/components/consoleComponent/toolbar.vue
b/linkis-web/src/components/consoleComponent/toolbar.vue
index ccbc4f738..20bcd8e67 100644
--- a/linkis-web/src/components/consoleComponent/toolbar.vue
+++ b/linkis-web/src/components/consoleComponent/toolbar.vue
@@ -150,6 +150,9 @@
<Row>
<Checkbox
v-model="allDownload">{{$t('message.common.toolbar.all')}}</Checkbox>
</Row>
+ <Row>
+ <Checkbox
v-model="autoFormat">{{$t('message.common.toolbar.autoFormat')}}</Checkbox>
+ </Row>
</div>
<Row class="confirm">
<Col span="10">
@@ -267,6 +270,7 @@ export default {
isIconLabelShow: true,
iconSize: 14,
allDownload: false, // whether to download all result sets(是否下载全部结果集)
+ autoFormat: false, // whether to format result sets
resultsShowType: '2',
separators: [
{ key: ',', label: this.$t('message.common.separator.comma'), value:
'1', span: 4, offset: 0},
@@ -369,6 +373,9 @@ export default {
let separator = encodeURIComponent(separatorItem.key || '');
url += `&csvSeparator=${separator}`
}
+ if(this.isAll) {
+ url += `&autoFormat=${this.autoFormat}`
+ }
// Before downloading, use the heartbeat interface to confirm whether to
log in(下载之前条用心跳接口确认是否登录)
await api.fetch('/user/heartbeat', 'get');
const link = document.createElement('a');
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]