From bce5128f2b33735774e0777b00bca4ca4a61962a Mon Sep 17 00:00:00 2001
From: wangting <wangting@vci-tech.com>
Date: 星期五, 27 十二月 2024 18:16:27 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/plt-web/plt-web-ui/src/views/systemModel/systemMonitor/index.vue | 71 +++++++++++++----
Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue | 48 +++++++++--
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/systemModel/mangeModel/index.vue | 49 +++++++++---
5 files changed, 144 insertions(+), 43 deletions(-)
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/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