From 5388172791b961806c13c3ddd0af1fbdbb437940 Mon Sep 17 00:00:00 2001
From: ludc <ludc@vci-tech.com>
Date: 星期五, 27 十二月 2024 18:24:53 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Icons/index.vue | 5
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue | 175 +++++++++++++--------
Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue | 48 ++++-
Source/plt-web/plt-web-ui/src/styles/ui.scss | 7
Source/plt-web/plt-web-ui/src/api/systemModel/systemConfig/api.js | 8 +
Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue | 11 +
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue | 76 ++++++---
Source/plt-web/plt-web-ui/src/views/systemModel/mangeModel/index.vue | 49 ++++-
Source/plt-web/plt-web-ui/src/App.vue | 8
Source/plt-web/plt-web-ui/src/views/systemModel/systemMonitor/index.vue | 71 ++++++--
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue | 6
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue | 6
Source/plt-web/plt-web-ui/src/components/PLT-basic-component/input-icon.vue | 2
13 files changed, 322 insertions(+), 150 deletions(-)
diff --git a/Source/plt-web/plt-web-ui/src/App.vue b/Source/plt-web/plt-web-ui/src/App.vue
index 20bdc54..e32eb14 100644
--- a/Source/plt-web/plt-web-ui/src/App.vue
+++ b/Source/plt-web/plt-web-ui/src/App.vue
@@ -5,6 +5,9 @@
</div>
</template>
<script>
+import {getIcons} from "@/api/UI/Icons";
+import store from "@/store";
+
export default {
name: "app",
data() {
@@ -12,7 +15,10 @@
},
watch: {},
created() {
-
+ //鑾峰彇鎵�鏈夊浘鏍囷紝瀛樺湪session
+ getIcons().then(res => {
+ store.dispatch("setIcons", res.data.data);
+ })
},
methods: {},
computed: {}
diff --git a/Source/plt-web/plt-web-ui/src/api/systemModel/systemConfig/api.js b/Source/plt-web/plt-web-ui/src/api/systemModel/systemConfig/api.js
index 3af0926..b5e4592 100644
--- a/Source/plt-web/plt-web-ui/src/api/systemModel/systemConfig/api.js
+++ b/Source/plt-web/plt-web-ui/src/api/systemModel/systemConfig/api.js
@@ -17,6 +17,14 @@
});
}
+// 鑾峰彇褰撳墠鐢ㄦ埛鍦ㄧ嚎浜烘暟淇℃伅
+export function getOnlinUsers() {
+ return request({
+ url: "/api/hmSysModConfigController/getOnlinUsers",
+ method: "get",
+ });
+}
+
// 閰嶇疆椤规煡璇�
export function getAppConfigDetailsByID(params) {
return request({
diff --git a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/input-icon.vue b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/input-icon.vue
index 1b14178..a0596a1 100644
--- a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/input-icon.vue
+++ b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/input-icon.vue
@@ -14,7 +14,7 @@
@close="dialogClose">
<div style="display: flex;justify-content: space-between;flex-wrap: wrap">
<div class="tag-group">
- <span class="tag-group__title">鍒嗙被</span>
+ <span class="tag-group__title" v-if="types.length>0">鍒嗙粍</span>
<el-tag
v-for="item in types"
:key="item.key"
diff --git a/Source/plt-web/plt-web-ui/src/styles/ui.scss b/Source/plt-web/plt-web-ui/src/styles/ui.scss
index 19ebae7..bc94532 100644
--- a/Source/plt-web/plt-web-ui/src/styles/ui.scss
+++ b/Source/plt-web/plt-web-ui/src/styles/ui.scss
@@ -377,7 +377,7 @@
margin-top: 0 !important;
}
.avue-dialog .el-dialog__body{
- padding: 20px 20px 0px 20px; // 涓婂彸涓嬪乏 鍙栨秷琛ㄦ牸涓嬭竟璺濓紙浼氬嚭鐜版粴鍔ㄦ潯锛�
+ padding: 15px 15px 0px 15px; // 涓婂彸涓嬪乏 鍙栨秷琛ㄦ牸涓嬭竟璺濓紙浼氬嚭鐜版粴鍔ㄦ潯锛�
margin-bottom: 10px !important;
}
.avue-dialog .el-dialog__body .avue-form{
@@ -528,7 +528,7 @@
}
/*
-鏍�
+ 鏍�
*/
/***闅愯棌鏍戞噿鍔犺浇鏃惰妭鐐逛笂鐨刲oading锛岄槻姝㈣妭鐐规姈鍔�*****/
.el-tree .el-tree-node__loading-icon{
@@ -540,6 +540,9 @@
height: 14px !important;
margin-right: 3px;
}
+.el-tree-node__label [class*=" el-icon-"],.el-tree-node__label [class^=el-icon-]{
+ font-size: 14px;margin-top: 3px;
+}
.el-select{
width: 100%;
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue
index ed80440..fa491cb 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue
@@ -163,6 +163,7 @@
this.dialog.loading = false;
this.dialog.showDialog = false;
this.$refs.tree.setCurrentKey(null);
+ this.$emit('cancelAction',null);
},
submitDialog() {
if (this.selectList.length==0) {
@@ -179,8 +180,9 @@
this.$emit('updataAction', this.selectList[0]);
}
- this.cancelDialog();
-
+ this.dialog.loading = false;
+ this.dialog.showDialog = false;
+ this.$refs.tree.setCurrentKey(null);
},
// 宸︿晶鏍戣姹�
getTreeList(status) {
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue
index 19d7f72..fcf06d1 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue
@@ -23,28 +23,34 @@
<el-main>
<basic-container v-if="treeNodeRow.id === 'root' ">
- <div class="headerCon">
- <el-button v-if="permissionList.addBtn" icon="el-icon-plus" plain size="small" type="primary" @click="addTreeClickHandler">鍒涘缓
- </el-button>
- <!--<el-button v-if="permissionList.editBtn" icon="el-icon-edit" plain size="small" type="primary" @click="editTreeClickHandler">淇敼
- </el-button>
- <el-button v-if="permissionList.delBtn" icon="el-icon-delete" plain size="small" type="danger" @click="delTreeClickHandler">鍒犻櫎
- </el-button>-->
- <el-button v-if="permissionList.importBtn" icon="el-icon-upload2" plain size="small" type="primary" @click="uploadClickHandler">瀵煎叆
- </el-button>
- <el-button v-if="permissionList.exportBtn" icon="el-icon-download" plain size="small" type="primary" @click="exportClickHandler">瀵煎嚭
- </el-button>
- </div>
<div>
<avue-crud
ref="treeCrud"
v-model="treeForm"
- :data="treeData[0].childs"
+ :data="treeData[0].children"
:option="treeCrudOption"
@row-del="rowTreeDelHandler"
@row-save="rowTreeSaveHandler"
@row-update="rowTreeUpdataHandler"
@refresh-change="handleRefresh">
+ <template slot="menuLeft">
+ <el-button v-if="permissionList.addBtn" icon="el-icon-plus" plain size="small" type="primary" @click="addTreeClickHandler(treeNodeRow)">鍒涘缓
+ </el-button>
+ <!--<el-button v-if="permissionList.editBtn" icon="el-icon-edit" plain size="small" type="primary" @click="editTreeClickHandler">淇敼
+ </el-button>
+ <el-button v-if="permissionList.delBtn" icon="el-icon-delete" plain size="small" type="danger" @click="delTreeClickHandler">鍒犻櫎
+ </el-button>-->
+ <el-button v-if="permissionList.importBtn" icon="el-icon-upload2" plain size="small" type="primary" @click="uploadClickHandler">瀵煎叆
+ </el-button>
+ <el-button v-if="permissionList.exportBtn" icon="el-icon-download" plain size="small" type="primary" @click="exportClickHandler">瀵煎嚭
+ </el-button>
+ </template>
+ <template #menu="{ row, size }">
+ <el-button v-if="permissionList.addBtn" :size="size" icon="el-icon-plus"
+ text
+ type="text"
+ @click="addTreeClickHandler(row)">鏂板瀛愮骇</el-button>
+ </template>
</avue-crud>
</div>
</basic-container>
@@ -174,7 +180,7 @@
props: {
label: 'name',
value: 'id',
- children: 'childs'
+ children: 'children'
}
},
treeData: []
@@ -206,10 +212,13 @@
addBtn: false,
calcHeight: -50,
highlightCurrentRow: true,
- menuWidth: 160,
+ rowKey: 'id',
+ rowParentKey: 'pid',
+ menuWidth: 300,
span: 24,
labelWidth: 100,
dialogWidth: '800',
+ align:'left',
column: [{
label: '鍒嗙被鍚嶇О',
prop: 'name',
@@ -229,11 +238,6 @@
}, {
label: '鐖朵富绫�',
prop: 'pidName',
- formatter:function(row){
- if(row.pid=='root'){
- return 'Action鍒嗙被'
- }
- },
disabled: true,
span: 24
}, {
@@ -396,7 +400,7 @@
}
getActionTree(params).then(res => {
const data = res.data.obj;
- this.treeData = [data];
+ this.treeData = this.treeDataFormAtter([data],'Action鍒嗙被');
const selectTreeData = this.option.column.find(item => item.prop === 'plActionCls'); // 鎵惧埌action娣诲姞鍒嗙被鏍�
const dicData=[data];
dicData[0].disabled=true;//鏍硅妭鐐逛笉鑳介��
@@ -404,11 +408,25 @@
})
},
+ treeDataFormAtter(items,pidName) {
+ return items.map(item => {
+ // 杞崲褰撳墠鑺傜偣鐨勫睘鎬�
+ const formList = {
+ ...item,
+ pidName:pidName,
+ children: item.childs && item.childs.length > 0 ? this.treeDataFormAtter(item.childs,item.name) : undefined
+ };
+ return formList;
+ });
+ },
+
// 宸︿晶鏍戣鐐瑰嚮
nodeClick(row) {
this.treeNodeRow = row;
- this.getRightTableList(row);
- this.bottomData = [];
+ if(this.treeNodeRow.id !== 'root'){
+ this.getRightTableList(row);
+ this.bottomData = [];
+ }
},
// 澶撮儴鍒锋柊鎸夐挳
@@ -675,16 +693,20 @@
},
// 宸︿晶鏍戝垱寤�
- addTreeClickHandler() {
- if (func.isEmptyObject(this.treeNodeRow)) {
+ addTreeClickHandler(row) {
+ let parentRow=row;
+ if(!row || !row.id){
+ parentRow=this.treeNodeRow
+ }
+ if (func.isEmptyObject(parentRow)) {
this.$message.error('璇烽�夋嫨涓�鏉″垎绫昏繘琛屾坊鍔�');
return;
}
- if (!this.treeNodeRow.id && this.treeNodeRow.name=='鏈垎绫�') {
+ if (!parentRow.id && parentRow.name=='鏈垎绫�') {
this.$message.error('鏈垎绫讳笅涓嶈兘鍒涘缓瀛愬垎绫�');
return;
}
- const {createTime, creator, name, id, description} = this.treeNodeRow;
+ const {createTime, creator, name, id, description} = parentRow;
this.$set(this.treeForm, 'createTime', func.formattedDate(createTime));
this.$set(this.treeForm, 'creator', creator);
this.$set(this.treeForm, 'pid', id);
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Icons/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Icons/index.vue
index 6836e8e..17f529e 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Icons/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Icons/index.vue
@@ -4,7 +4,7 @@
<basic-container>
<div style="display: flex;justify-content: space-between;flex-wrap: wrap">
<div class="tag-group">
- <span class="tag-group__title">鍒嗙粍</span>
+ <span class="tag-group__title" v-if="types.length>0">鍒嗙粍</span>
<el-tag
v-for="item in types"
:key="item.key"
@@ -226,7 +226,8 @@
},
created() {
this.getGroups();
- this.initList(); },
+ this.initList();
+ },
methods:{
getGroups() {
getDicts('EnumIconGroups').then(res => {
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue
index 8f682cd..ad32bea 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue
@@ -109,28 +109,28 @@
append-to-body="true"
class="avue-dialog"
title="閰嶇疆鎸夐挳"
- width="75%"
- @close="dialogClose">
+ width="1200px"
+ @close="$refs.form.clearValidate();disabledBtn=true;">
<el-container v-loading="dialogLoading">
- <el-header style="height: 40px !important;">
+ <el-header style="height: 40px !important;padding-left: 5px;">
<div style="display: flex">
- <el-button :disabled="!disabledBtn" plain size="mini" type="primary" @click="addClickBtnHandler">娣诲姞
+ <el-button v-show="disabledBtn" :disabled="!disabledBtn" plain size="mini" type="primary" @click="addClickBtnHandler">娣诲姞
</el-button>
- <el-button :disabled="!disabledBtn" plain size="mini" type="primary" @click="editClickBtnHandler">淇敼
+ <el-button v-show="disabledBtn" :disabled="!disabledBtn" plain size="mini" type="primary" @click="editClickBtnHandler">淇敼
</el-button>
- <el-button :disabled="!disabledBtn" plain size="mini" type="danger" @click="delClickBtnHandler">鍒犻櫎
+ <el-button v-show="disabledBtn" :disabled="!disabledBtn" plain size="mini" type="danger" @click="delClickBtnHandler">鍒犻櫎
</el-button>
- <el-button :disabled="disabledBtn" plain size="mini" type="primary" @click="saveClickBtnHandler">淇濆瓨
+ <el-button v-show="!disabledBtn" :disabled="disabledBtn" plain size="mini" icon="el-icon-check" type="success" @click="saveClickBtnHandler">淇濆瓨
</el-button>
- <el-button :disabled="disabledBtn" plain size="mini" type="primary" @click="escClickBtnHandler">鍙栨秷
+ <el-button v-show="!disabledBtn" :disabled="disabledBtn" plain size="mini" icon="el-icon-close" type="danger" @click="escClickBtnHandler">鍙栨秷
</el-button>
- <el-button plain size="mini" type="primary" @click="changeBottomBtnHandler">璋冩暣涓轰笅绾ф寜閽�</el-button>
- <el-button plain size="mini" type="primary" @click="changeTopBtnHandler">璋冩暣涓轰笂绾ф寜閽�</el-button>
- <el-button plain size="mini" type="primary" @click="cloneClickBtnHandler">澶嶅埗鍒板叾浠栫粍浠�</el-button>
+ <el-button v-show="disabledBtn" plain size="mini" type="primary" @click="changeBottomBtnHandler">璋冩暣涓轰笅绾ф寜閽�</el-button>
+ <el-button v-show="disabledBtn" plain size="mini" type="primary" @click="changeTopBtnHandler">璋冩暣涓轰笂绾ф寜閽�</el-button>
+ <el-button v-show="disabledBtn" plain size="mini" type="primary" @click="cloneClickBtnHandler">澶嶅埗鍒板叾浠栫粍浠�</el-button>
</div>
</el-header>
<el-container>
- <el-aside width="20%">
+ <el-aside width="25%">
<basic-container>
<div style="height:650px;">
<avue-tree
@@ -141,9 +141,10 @@
node-key="value"
@node-click="nodeTreeClick">
<span slot-scope="{ node, data }" class="el-tree-node__label">
- <span style="font-size: 14px">
- <i class="el-icon-s-promotion"></i>
- {{ (node || {}).label }}
+ <span style="display: flex">
+ <i v-if="data.oId=='parentNode'" class="iconShow el-icon-s-home"></i>
+ <icon-show v-else :name="data.iconPath"></icon-show>
+ {{ (node || {}).label }}
</span>
</span>
</avue-tree>
@@ -154,30 +155,29 @@
<el-main>
<basic-container>
<el-divider content-position="left">鍩虹淇℃伅</el-divider>
- <el-form ref="form" :model="basicForm" :rules="rules" label-width="90px" size="small"
+ <el-form ref="form" :model="basicForm" :rules="rules" label-width="100px" size="small"
style="margin-top: 20px">
<el-row>
- <el-form-item :inline-message='true' label="缂栧彿锛�" prop="seq">
- <el-input-number v-model="basicForm.seq" :disabled="disabledBtn" :max="9999" :min="1"
- controls-position="right"></el-input-number>
- </el-form-item>
+ <el-col :span="12">
+ <el-form-item :inline-message='true' label="缂栧彿锛�" prop="seq">
+ <el-input-number v-model="basicForm.seq" :disabled="disabledBtn" :max="9999" :min="1"
+ controls-position="right"></el-input-number>
+ </el-form-item>
+ </el-col>
- <el-form-item :inline-message='true' label="鍚嶇О锛�" prop="label">
- <el-col :span="14">
- <el-input v-model="basicForm.label" :readonly="disabledBtn"></el-input>
- </el-col>
- </el-form-item>
+ <el-col :span="12">
+ <el-form-item :inline-message='true' label="鍚嶇О锛�" prop="label">
+ <el-input v-model="basicForm.label" :disabled="disabledBtn"></el-input>
+ </el-form-item>
+ </el-col>
- <el-form-item label="Action锛�" prop="Action">
- <el-col :span="14">
- <div style="display: flex">
- <el-input v-model="basicForm.actionName" :readonly="disabledBtn"></el-input>
- <el-button :disabled="disabledBtn" size="mini" style="margin-left: 10px" type="success"
- @click="actionFoucus">閫夋嫨
- </el-button>
- </div>
- </el-col>
- </el-form-item>
+ <el-col :span="12">
+ <el-form-item label="Action锛�" prop="actionName">
+ <el-input v-model="basicForm.actionName" :disabled="disabledBtn" :clearable="true" @focus="actionFoucus" @clear="clearActionValue">
+ <i slot="suffix" class="el-input__icon el-icon-search" style="cursor: pointer" @click="actionFoucus"></i>
+ </el-input>
+ </el-form-item>
+ </el-col>
<el-col :span="12">
<el-form-item label="鏄惁鎺堟潈锛�" prop="authorization">
@@ -185,7 +185,8 @@
<el-radio v-model="basicForm.authorization" :disabled="disabledBtn" label="1">鍚�</el-radio>
</el-form-item>
</el-col>
-
+ <el-col :span="24">
+ </el-col>
<el-col :span="12">
<el-form-item label="鏄惁鏄剧ず锛�" prop="show">
<el-radio v-model="basicForm.show" :disabled="disabledBtn" label="0">鏄�</el-radio>
@@ -193,18 +194,22 @@
</el-form-item>
</el-col>
- <el-col :span="12">
+ <el-col :span="12" v-show="basicForm.show=='0'">
<el-form-item label="鏄剧ず鏂瑰紡锛�" prop="showType">
<el-radio v-model="basicForm.displayMode" :disabled="disabledBtn" label="text">鏂囧瓧</el-radio>
<el-radio v-model="basicForm.displayMode" :disabled="disabledBtn" label="image">鍥炬爣</el-radio>
- <el-radio v-model="basicForm.displayMode" :disabled="disabledBtn" label="textandimage">鏂囧瓧鍜屽浘鏍�
- </el-radio>
+ <el-radio v-model="basicForm.displayMode" :disabled="disabledBtn" label="textandimage">鏂囧瓧鍜屽浘鏍�</el-radio>
+ </el-form-item>
+ </el-col>
+ <el-col :span="24" v-show="basicForm.show=='0' && (basicForm.displayMode=='image'||basicForm.displayMode=='textandimage')">
+ <el-form-item label="鍥炬爣锛�" prop="iconPath">
+ <input-icon v-model="basicForm.iconPath" :disabled="disabledBtn"></input-icon>
</el-form-item>
</el-col>
- <el-col :span="12">
+ <el-col :span="24">
<el-form-item label="鎻愮ず淇℃伅锛�" prop="desc">
- <el-input v-model="basicForm.desc" :readonly="disabledBtn" type="textarea"></el-input>
+ <el-input v-model="basicForm.desc" :disabled="disabledBtn" type="textarea"></el-input>
</el-form-item>
</el-col>
@@ -241,7 +246,7 @@
</el-container>
</el-container>
</el-dialog>
- <action-dialog ref="actionDialog" @updataAction="actionSaveHandler"></action-dialog>
+ <action-dialog ref="actionDialog" @cancelAction="actionCancelHandler" @updataAction="actionSaveHandler"></action-dialog>
<clone-dialog ref="cloneDialog" :fromOid="fromOid" :sourceOId="sourceOId" paramsType="tab"
type="pageDef"></clone-dialog>
<clone-dialog ref="cloneBtnDialog" :fromOid="formBtnOid" :sourceOId="sourceBtnOid" paramsType="pageDef"
@@ -358,10 +363,13 @@
editBtn: false,
delBtn: false,
refreshBtn: false,
+ dialogWidth:'600',
+ menuWidth:'150',
column: [
{
label: '鍚嶇О',
prop: 'name',
+ width:180,
span: 24,
rules: [
{
@@ -374,6 +382,7 @@
{
label: '鍊�',
prop: 'value',
+ type:'textarea',
span: 24,
rules: [
{
@@ -391,6 +400,9 @@
],
label: [
{required: true, message: '璇疯緭鍏ュ悕绉�', trigger: 'blur'},
+ ],
+ actionName: [
+ {required: true, message: '璇烽�夋嫨Action', trigger: 'blur'},
],
},
// 鎸夐挳璁捐 鍩虹淇℃伅
@@ -1176,6 +1188,7 @@
value: value
})) : [];
this.disabledBtn = true;
+ this.$refs.form.clearValidate()
},
// 鎸夐挳璁捐鍙傛暟淇℃伅鍒犻櫎
@@ -1253,37 +1266,47 @@
// 鎸夐挳璁捐淇濆瓨
saveClickBtnHandler() {
- this.dialogLoading = true;
- const saveFunction = this.saveType === 'add' ? addTapButton : updateTapButton;
- const bottomParams = {};
- if (this.paramsData.length > 0) {
- this.paramsData.forEach(item => {
- bottomParams[item.name] = item.value
- })
+ if (this.basicForm.show == '0' && (this.basicForm.displayMode == 'image' || this.basicForm.displayMode == 'textandimage') && this.basicForm.iconPath == '') {
+ this.$message.error('璇烽�夋嫨鍥炬爣');
+ return;
}
+ this.$refs.form.validate((valid, done) => {
+ if (valid) {
+ this.dialogLoading = true;
+ const saveFunction = this.saveType === 'add' ? addTapButton : updateTapButton;
+ const bottomParams = {};
+ if (this.paramsData.length > 0) {
+ this.paramsData.forEach(item => {
+ bottomParams[item.name] = item.value
+ })
+ }
+ const params = this.saveType === 'add' ? {
+ ...this.basicForm,
+ parentId: this.nodeTreeRow.oId === 'parentNode' ? '' : this.nodeTreeRow.parentId,
+ buttonParams: bottomParams,
+ tableOId: this.selectList[0].id
+ } : {
+ ...this.basicForm,
+ buttonParams: bottomParams
+ }
- const params = this.saveType === 'add' ? {
- ...this.basicForm,
- parentId: this.nodeTreeRow.oId === 'parentNode' ? '' : this.nodeTreeRow.parentId,
- buttonParams: bottomParams,
- tableOId: this.selectList[0].id
- } : {
- ...this.basicForm,
- buttonParams: bottomParams
- }
-
- saveFunction(params).then(res => {
- if (res.data.code === 200) {
- this.$message.success(res.data.obj);
- this.disabledBtn = true;
- this.getTabBtnTree();
- this.basicForm = {};
- this.paramsData = [];
- this.dialogLoading = false;
+ saveFunction(params).then(res => {
+ if (res.data.code === 200) {
+ this.$message.success(res.data.obj);
+ this.disabledBtn = true;
+ this.getTabBtnTree();
+ this.basicForm = {};
+ this.paramsData = [];
+ this.dialogLoading = false;
+ }
+ }).catch(err => {
+ this.dialogLoading = false;
+ })
+ } else {
+ return false;
}
- }).catch(err => {
- this.dialogLoading = false;
- })
+ done();
+ });
},
// 鎸夐挳璁捐鍒犻櫎
@@ -1342,8 +1365,20 @@
actionSaveHandler(val) {
this.$set(this.basicForm, 'actionName', val.plName);
this.$set(this.basicForm, 'actionOId', val.plOId);
+ this.$refs.form.clearValidate('Action')
+ },
+ // action閫夋嫨寮圭獥鐩存帴鍏抽棴
+ actionCancelHandler() {
+ if(this.basicForm.actionOId){
+ this.$refs.form.clearValidate('Action')
+ }
},
+ //娓呴櫎action
+ clearActionValue(){
+ this.$set(this.basicForm, 'actionName', '');
+ this.$set(this.basicForm, 'actionOId', '');
+ },
// 鎵撳紑鍏嬮殕瀵硅瘽妗�
rowCloneHandler(row) {
this.fromOid = this.sourceData.plOId;
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue
index 1429d44..c1146d4 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue
@@ -54,7 +54,8 @@
</el-col>
<el-col :span="12">
<el-form-item label="搴忓彿锛�" prop="plSeq">
- <el-input v-model="form.plSeq"></el-input>
+ <el-input-number v-model="form.plSeq" :max="9999" :min="1"
+ controls-position="right"></el-input-number >
</el-form-item>
</el-col>
<el-col :span="12">
@@ -324,7 +325,7 @@
},
// 缂栬緫鎸夐挳
rowEditBtnClick(row) {
- this.form=row;
+ this.form=JSON.parse(JSON.stringify(row));
this.dialogType = 'edit';
this.dialogVisible = true;
},
@@ -388,6 +389,7 @@
} else {
return false;
}
+ done();
});
},
rowCloneHandler(row) {
diff --git a/Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue b/Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue
index 4942a5a..e8040ab 100644
--- a/Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue
@@ -69,15 +69,37 @@
<el-button icon="el-icon-close" plain size="small" type="danger" @click="deleteOperationClickHandler">鍒犻櫎
</el-button>
</div>
- <el-form ref="form" :model="form" label-width="85px" size="small" style="max-height: calc(100vh - 200px);overflow: auto;">
+ <el-form ref="form" :model="form" label-width="100px" size="small"
+ style="max-height: calc(100vh - 200px);overflow: auto;">
<span v-if="form.category !== 1">
- <el-form-item label="妯″潡鍚嶏細">
+ <el-form-item>
+ <span slot="label" style="display:inline-block;">
+ 鑿滃崟鏍囪瘑锛�
+ <el-tooltip class="item" content="璇疯緭鍏ヨ嫳鏂囧瓧绗︼紝骞朵繚璇佸敮涓�鎬э紒" effect="dark" placement="top-start">
+ <i class='el-icon-star-on' style="color: #F56C6C"/>
+ </el-tooltip>
+ </span>
+ <el-input v-model="form.alias" :disabled="!editStatus && !addStatus"
+ placeholder="璇疯緭鍏ヨ嫳鏂囧瓧绗︼紝骞朵繚璇佸敮涓�鎬э紒"></el-input>
+ </el-form-item>
+ <el-form-item>
+ <span slot="label" style="display:inline-block;">
+ 妯″潡鍚嶏細
+ <i class='el-icon-star-on' style="color: #F56C6C"/>
+ </span>
<el-input v-model="form.name" :disabled="!editStatus && !addStatus" placeholder="璇疯緭鍏ユā鍧楀悕"></el-input>
- </el-form-item>
- <el-form-item label="妯″潡鍒悕锛�">
- <el-input v-model="form.alias" :disabled="!editStatus && !addStatus" placeholder="妯″潡鍒悕鐢ㄦ潵璁板綍鏃ュ織浣跨敤"></el-input>
- </el-form-item>
- <el-form-item v-if="form.functionType === 0" label="C/S锛�">
+ </el-form-item>
+ <el-form-item>
+ <span slot="label" style="display:inline-block;">
+ 搴忓彿锛�
+ <el-tooltip class="item" content="鏁板瓧锛屾弿杩拌妯″潡鍦ㄥ叾鐖舵ā鍧椾笅鐨勬樉绀洪『搴�" effect="dark" placement="top-start">
+ <i class='el-icon-star-on' style="color: #F56C6C"/>
+ </el-tooltip>
+ </span>
+ <el-input v-model="form.sort" :disabled="!editStatus && !addStatus"
+ placeholder="鏁板瓧锛屾弿杩拌妯″潡鍦ㄥ叾鐖舵ā鍧椾笅鐨勬樉绀洪『搴�"></el-input>
+ </el-form-item>
+ <el-form-item v-if="form.functionType === 0" label="C/S锛�">
<el-input v-model="form.pathC" :disabled="!editStatus && !addStatus" :rows="2" placeholder="璇疯緭鍏/S璺緞"
type="textarea"></el-input>
</el-form-item>
@@ -88,10 +110,6 @@
<el-form-item v-if="form.functionType === 0" label=".NET锛�">
<el-input v-model="form.resourceDotNet" :disabled="!editStatus && !addStatus" :rows="2"
placeholder="璇疯緭鍏�.NET" type="textarea"></el-input>
- </el-form-item>
- <el-form-item label="搴忓彿锛�">
- <el-input v-model="form.sort" :disabled="!editStatus && !addStatus"
- placeholder="鏁板瓧锛屾弿杩拌妯″潡鍦ㄥ叾鐖舵ā鍧椾笅鐨勬樉绀洪『搴�"></el-input>
</el-form-item>
<el-form-item label="鍥炬爣锛�">
<input-icon v-model="form.source" :disabled="!editStatus && !addStatus" placeholder="璇烽�夋嫨鍥炬爣">
@@ -311,6 +329,10 @@
this.$message.error('妯″潡鍚嶄笉鑳戒负绌�');
return
}
+ if (!this.form.alias) {
+ this.$message.error('鑿滃崟鏍囪瘑涓嶈兘涓虹┖');
+ return
+ }
if (this.form.name.length > 128) {
this.$message.error('妯″潡鍚嶉暱搴︿笉鑳借秴杩�128锛�');
return
@@ -355,6 +377,10 @@
this.$message.error('妯″潡鍚嶄笉鑳戒负绌�');
return
}
+ if (!this.form.alias) {
+ this.$message.error('鑿滃崟鏍囪瘑涓嶈兘涓虹┖');
+ return
+ }
if (this.form.name.length > 128) {
this.$message.error('妯″潡鍚嶉暱搴﹁秴杩�128锛�');
return
diff --git a/Source/plt-web/plt-web-ui/src/views/systemModel/mangeModel/index.vue b/Source/plt-web/plt-web-ui/src/views/systemModel/mangeModel/index.vue
index 07d2c1a..6140b5b 100644
--- a/Source/plt-web/plt-web-ui/src/views/systemModel/mangeModel/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/systemModel/mangeModel/index.vue
@@ -69,18 +69,39 @@
<el-button icon="el-icon-close" plain size="small" type="danger" @click="deleteOperationClickHandler">鍒犻櫎
</el-button>
</div>
- <el-form ref="form" :model="form" label-width="85px" style="max-height: calc(100vh - 200px);overflow: auto;">
+ <el-form ref="form" :model="form" label-width="100px" style="max-height: calc(100vh - 200px);overflow: auto;">
<span v-if="form.category !== 1">
- <el-form-item label="妯″潡鍚嶏細">
+ <el-form-item>
+ <span slot="label" style="display:inline-block;">
+ 鑿滃崟鏍囪瘑锛�
+ <el-tooltip class="item" effect="dark" content="璇疯緭鍏ヨ嫳鏂囧瓧绗︼紝骞朵繚璇佸敮涓�鎬э紒" placement="top-start">
+ <i class='el-icon-star-on' style="color: #F56C6C"/>
+ </el-tooltip>
+ </span>
+ <el-input v-model="form.alias" :disabled="!editStatus && !addStatus"
+ placeholder="璇疯緭鍏ヨ嫳鏂囧瓧绗︼紝骞朵繚璇佸敮涓�鎬э紒"></el-input>
+ </el-form-item>
+ <el-form-item>
+ <span slot="label" style="display:inline-block;">
+ 妯″潡鍚嶏細
+ <i class='el-icon-star-on' style="color: #F56C6C"/>
+ </span>
<el-input v-model="form.name" :disabled="!editStatus && !addStatus" placeholder="璇疯緭鍏ユā鍧楀悕"></el-input>
- </el-form-item>
- <el-form-item label="妯″潡鍒悕锛�">
- <el-input v-model="form.alias" :disabled="!editStatus && !addStatus" placeholder="妯″潡鍒悕鐢ㄦ潵璁板綍鏃ュ織浣跨敤"></el-input>
- </el-form-item>
- <el-form-item v-if="form.functionType === 0" label="C/S锛�">
+ </el-form-item>
+ <el-form-item>
+ <span slot="label" style="display:inline-block;">
+ 搴忓彿锛�
+ <el-tooltip class="item" content="鏁板瓧锛屾弿杩拌妯″潡鍦ㄥ叾鐖舵ā鍧椾笅鐨勬樉绀洪『搴�" effect="dark" placement="top-start">
+ <i class='el-icon-star-on' style="color: #F56C6C"/>
+ </el-tooltip>
+ </span>
+ <el-input v-model="form.sort" :disabled="!editStatus && !addStatus"
+ placeholder="鏁板瓧锛屾弿杩拌妯″潡鍦ㄥ叾鐖舵ā鍧椾笅鐨勬樉绀洪『搴�"></el-input>
+ </el-form-item>
+ <el-form-item v-if="form.functionType === 0" label="C/S锛�">
<el-input v-model="form.pathC" :disabled="!editStatus && !addStatus" :rows="2" placeholder="璇疯緭鍏/S璺緞"
type="textarea"></el-input>
- </el-form-item>
+ </el-form-item>
<el-form-item v-if="form.functionType === 0" label="B/S锛�">
<el-input v-model="form.path" :disabled="!editStatus && !addStatus" :rows="2" placeholder="璇疯緭鍏/S璺緞"
type="textarea"></el-input>
@@ -88,10 +109,6 @@
<el-form-item v-if="form.functionType === 0" label=".NET锛�">
<el-input v-model="form.resourceDotNet" :disabled="!editStatus && !addStatus" :rows="2"
placeholder="璇疯緭鍏�.NET" type="textarea"></el-input>
- </el-form-item>
- <el-form-item label="搴忓彿锛�">
- <el-input v-model="form.sort" :disabled="!editStatus && !addStatus"
- placeholder="鏁板瓧锛屾弿杩拌妯″潡鍦ㄥ叾鐖舵ā鍧椾笅鐨勬樉绀洪『搴�"></el-input>
</el-form-item>
<el-form-item label="鍥炬爣锛�">
<input-icon v-model="form.source" :disabled="!editStatus && !addStatus" placeholder="璇烽�夋嫨鍥炬爣">
@@ -311,6 +328,10 @@
this.$message.error('妯″潡鍚嶄笉鑳戒负绌�');
return
}
+ if (!this.form.alias) {
+ this.$message.error('鑿滃崟鏍囪瘑涓嶈兘涓虹┖');
+ return
+ }
if (this.form.name.length > 128) {
this.$message.error('妯″潡鍚嶉暱搴︿笉鑳借秴杩�128锛�');
return
@@ -355,6 +376,10 @@
this.$message.error('妯″潡鍚嶄笉鑳戒负绌�');
return
}
+ if (!this.form.alias) {
+ this.$message.error('鑿滃崟鏍囪瘑涓嶈兘涓虹┖');
+ return
+ }
if (this.form.name.length > 128) {
this.$message.error('妯″潡鍚嶉暱搴﹁秴杩�128锛�');
return
diff --git a/Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue b/Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue
index 7f72b04..2a1127a 100644
--- a/Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue
@@ -6,8 +6,8 @@
<avue-tree :key="refresh" ref="tree" :data="treeData" :option="treeOption" node-key="id"
@node-click="nodeClick">
<span slot-scope="{ node, data }" class="el-tree-node__label">
- <span>
- <i class="el-icon-s-promotion"></i>
+ <span style="display: flex">
+ <icon-show :name="data.icon"></icon-show>
{{ (node || {}).label }}
</span>
</span>
@@ -53,6 +53,10 @@
</el-form-item>
<el-form-item label="鍒悕锛�">
<el-input v-model="form.alias" :disabled="!editStatus && !addStatus" placeholder="璇疯緭鍏ュ埆鍚�"></el-input>
+ </el-form-item>
+ <el-form-item label="鍥炬爣锛�">
+ <input-icon v-model="form.source" :disabled="!editStatus && !addStatus" placeholder="璇烽�夋嫨鍥炬爣">
+ </input-icon>
</el-form-item>
<el-form-item label="椤哄簭锛�">
<el-input-number v-model="form.sort" :disabled="!editStatus && !addStatus" :max="9999" :min="0"
@@ -106,7 +110,8 @@
...item,
id: item.id,
name: item.name,
- leaf: !item.hasChildren
+ leaf: !item.hasChildren,
+ icon: item.source || 'iconoir:home'
}
}))
})
diff --git a/Source/plt-web/plt-web-ui/src/views/systemModel/systemMonitor/index.vue b/Source/plt-web/plt-web-ui/src/views/systemModel/systemMonitor/index.vue
index 9fb216f..df30d90 100644
--- a/Source/plt-web/plt-web-ui/src/views/systemModel/systemMonitor/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/systemModel/systemMonitor/index.vue
@@ -1,41 +1,78 @@
<template>
<basic-container>
- <div class="container">
- <el-form ref="form" :model="form" label-width="150px">
- <el-form-item label="褰撳墠鍦ㄧ嚎鐢ㄦ埛浜烘暟">
- <div style="display: flex;">
- <el-input v-model="form.currentOnlineUser" :readOnly="true"></el-input>
- <el-button plain type="primary" style="margin-left: 10px" @click="getOnlineUsersNum"> 鍒锋柊</el-button>
- </div>
- </el-form-item>
- </el-form>
+ <div style="display: flex;justify-content: space-between;align-items: center">
+ <h3>褰撳墠鍦ㄧ嚎浜哄憳淇℃伅</h3>
+ <el-button type="primary" size="small" plain style="margin-right: 10px" @click="getOnlinUsersHandler">鍒锋柊</el-button>
</div>
+ <avue-crud :data="data" :option="option" :table-loading="loading" ></avue-crud>
</basic-container>
</template>
<script>
import {
- getOnlineUsersNum
+ getOnlinUsers
} from "@/api/systemModel/systemConfig/api"
+import basicOption from '@/util/basic-option';
+import func from "@/util/func";
export default {
name: "index",
data() {
return {
- form: {
- currentOnlineUser: '0'
+ loading:false,
+ data:[],
+ option:{
+ ...basicOption,
+ refreshBtn:false,
+ addBtn:false,
+ menu:false,
+ column:[
+ {
+ label:'鐢ㄦ埛OID',
+ prop:'oid',
+ overHidden:true,
+ },
+ {
+ label:'鐢ㄦ埛璐﹀彿',
+ prop:'userId'
+ },
+ {
+ label:'鐢ㄦ埛濮撳悕',
+ prop:'userName'
+ },
+ {
+ label:'鏈哄櫒ip',
+ prop:'ip'
+ },
+ {
+ label:'鐧诲綍鏃堕棿',
+ prop:'loginTime'
+ },
+ {
+ label:'鏈�鍚庢搷浣滄椂闂�',
+ prop:'lastRequestTs'
+ }
+ ]
}
}
},
created() {
- this.getOnlineUsersNum();
+ this.getOnlinUsersHandler();
},
methods: {
// 宸︿晶鏍戞煡璇�
- getOnlineUsersNum() {
- getOnlineUsersNum().then(res => {
+ getOnlinUsersHandler() {
+ this.loading = true;
+ getOnlinUsers().then(res => {
if (res.data.code === 200) {
- const data = res.data.obj;
- this.form.currentOnlineUser = data;
+ const data = res.data.data;
+ this.data = data.map(item => {
+ return{
+ ...item,
+ loginTime:func.formattedDate(item.loginTime),
+ lastRequestTs:func.formattedDate(item.lastRequestTs),
+ }
+ })
+ this.loading = false;
}
})
}
--
Gitblit v1.9.3