| | |
| | | window.app = { |
| | | fly: window.sceneConfig.fly, |
| | | mainUrl: location.href.substring(0, location.href.lastIndexOf("/") + 1) |
| | | |
| | | } |
| | | document.writeln("<link href='./layui-v2.6.8/css/layui.css?" + new Date().getTime() + "' rel='stylesheet' \/>"); |
| | | document.writeln("<link href='./css/index.css?" + new Date().getTime() + "' rel='stylesheet' \/>"); |
| | |
| | | initSG: function () { |
| | | SG = TEWinEx.CreateInstance("TerraExplorerX.SGWorld74"); // SGWorld74,SGWorld71,SGWorld66 |
| | | SG.AttachEvent("OnLoadFinished", this.loadFinished); |
| | | |
| | | |
| | | |
| | | SG.Open(app.fly); |
| | | }, |
| | | loadFinished: function () { |
| | |
| | | // var ipConfig = location.hostname; |
| | | var ipConfig = '192.168.20.205'; |
| | | var isWeb = location.hostname.indexOf("103.85.165.") > -1; |
| | | |
| | | var webHost = isWeb ? location.hostname + ":8052" : '192.168.20.205' + ":8088"; |
| | | |
| | | var fmeHost = isWeb ? location.hostname + ":8051" : '192.168.20.205' + ":88"; |
| | | |
| | | var iisHost = isWeb ? location.hostname + ":8050" : '192.168.20.205' + ":80"; |
| | | |
| | | var menuStartName = "管éåºç¡å¤§æ°æ®å¹³å°"; |
| | | |
| | | var LFData = "http://" + ipConfig + "/LFData"; |
| | | var LFData = "http://" + iisHost + "/LFData"; |
| | | |
| | | var BASE_URL = 'http://' + ipConfig + ':8088/server'; |
| | | var BASE_URL = 'http://' + webHost + '/server'; |
| | | |
| | | //webSocket æå¡å°å |
| | | var socketUrl = 'ws://' + ipConfig + ':8088/server/ws/select'; |
| | | // WebSocket æå¡å°å |
| | | var socketUrl = 'ws://' + webHost + '/server/ws/select'; |
| | | |
| | | //æ°æ®åºçæ§å°å |
| | | var sql_Url = 'http://' + ipConfig + ':8081/admin/druid/sql.html'; |
| | | // GeoServerUrl |
| | | var geoServerURl = '/geoserver/LF/wms'; |
| | | |
| | | //è·¯å¾åæå°å |
| | | var wnsUrl = 'http://' + ipConfig + ':9055/gisserver/wnsserver/beijingdaohang_wns'; |
| | | var geoserverWFS = '/geoserver/LF/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=LF%3Abs_project&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=projname='; |
| | | |
| | | //gisserver |
| | | var gisServerUrl = 'http://' + ipConfig + ':9055/gisserver'; |
| | | var geoserverWFSLine = '/geoserver/LF/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=LF%3Am_pipeline&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=projname='; |
| | | |
| | | //geoServerUrl |
| | | var geoserver = 'http://' + ipConfig + ':8088'; |
| | | var geoServerURl = geoserver + '/geoserver/LF/wms'; |
| | | var geoserverWFS = geoserver + '/geoserver/LF/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=LF%3Abs_project&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=projname='; |
| | | var geoserverWFSLine = geoserver + '/geoserver/LF/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=LF%3Am_pipeline&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=projname='; |
| | | // 模åå è½½å°å |
| | | var modelUrl = LFData + '/tileset/SN/tileset.json'; |
| | | |
| | | //模åå è½½å°å |
| | | var modelUrl = 'http://' + ipConfig + '/LFData/tileset/SN/tileset.json'; |
| | | |
| | | //DEM |
| | | var demLayer = 'http://' + ipConfig + '/LFData/dem'; |
| | | // DEM |
| | | var demLayer = LFData + '/dem'; |
| | | |
| | | // 综åå±ç¤º |
| | | window.sceneConfig = { |
| | | // sdkè®¸å¯ |
| | | licenseServer: 'http://localhost/LFServer', |
| | | // æå¡å°å |
| | | // baseURL: 'http://183.162.245.49:8888/', |
| | | // MPTåç§° |
| | | // mptName: "china_5m.Ei.397334", |
| | | // // SGå°å |
| | | SGUrl: "http://" + ipConfig + "/SG/Elevation", |
| | | //flyå°å |
| | | fly: 'http://' + ipConfig + '/LFData/fly/' + (ipConfig.indexOf("103.21.") ? "lfy_web.fly" : "lf_127.fly"), |
| | | mptName: 'zhufeng.397336.mpt', |
| | | positionBtn: [], |
| | | // Sdkè®¸å¯ |
| | | licenseServer: 'http://' + iisHost + '/LFServer', |
| | | // MPTåç§° |
| | | mptName: "china_5m.Ei.397334", |
| | | // SGå°å |
| | | SGUrl: "http://" + iisHost + "/SG/Elevation", |
| | | // Flyå°å |
| | | fly: 'http://' + iisHost + '/LFData/fly/' + (isWeb ? "lfy_web.fly" : "lf_127.fly"), |
| | | // |
| | | positionBtn: [], |
| | | }; |
| | | |
| | | var gaoDeBaseUrl = [{ |
| | | url: 'http://webrd02.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}', |
| | | label: 'é«å¾·ç¢é', |
¶Ô±ÈÐÂÎļþ |
| | |
| | | // var ipConfig = location.hostname; |
| | | var ipConfig = '192.168.20.205'; |
| | | var menuStartName = "管éåºç¡å¤§æ°æ®å¹³å°"; |
| | | |
| | | var LFData = "http://" + ipConfig + "/LFData"; |
| | | |
| | | var BASE_URL = 'http://' + ipConfig + ':8088/server'; |
| | | |
| | | //webSocket æå¡å°å |
| | | var socketUrl = 'ws://' + ipConfig + ':8088/server/ws/select'; |
| | | |
| | | //æ°æ®åºçæ§å°å |
| | | var sql_Url = 'http://' + ipConfig + ':8081/admin/druid/sql.html'; |
| | | |
| | | //è·¯å¾åæå°å |
| | | var wnsUrl = 'http://' + ipConfig + ':9055/gisserver/wnsserver/beijingdaohang_wns'; |
| | | |
| | | //gisserver |
| | | var gisServerUrl = 'http://' + ipConfig + ':9055/gisserver'; |
| | | |
| | | //geoServerUrl |
| | | var geoserver = 'http://' + ipConfig + ':8088'; |
| | | var geoServerURl = geoserver + '/geoserver/LF/wms'; |
| | | var geoserverWFS = geoserver + '/geoserver/LF/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=LF%3Abs_project&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=projname='; |
| | | var geoserverWFSLine = geoserver + '/geoserver/LF/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=LF%3Am_pipeline&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=projname='; |
| | | |
| | | //模åå è½½å°å |
| | | var modelUrl = 'http://' + ipConfig + '/LFData/tileset/SN/tileset.json'; |
| | | |
| | | //DEM |
| | | var demLayer = 'http://' + ipConfig + '/LFData/dem'; |
| | | |
| | | // 综åå±ç¤º |
| | | window.sceneConfig = { |
| | | // sdkè®¸å¯ |
| | | licenseServer: 'http://localhost/LFServer', |
| | | // æå¡å°å |
| | | // baseURL: 'http://183.162.245.49:8888/', |
| | | // MPTåç§° |
| | | // mptName: "china_5m.Ei.397334", |
| | | // // SGå°å |
| | | SGUrl: "http://" + ipConfig + "/SG/Elevation", |
| | | //flyå°å |
| | | fly: 'http://' + ipConfig + '/LFData/fly/' + (ipConfig.indexOf("103.21.") ? "lfy_web.fly" : "lf_127.fly"), |
| | | mptName: 'zhufeng.397336.mpt', |
| | | positionBtn: [], |
| | | }; |
| | | var gaoDeBaseUrl = [{ |
| | | url: 'http://webrd02.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}', |
| | | label: 'é«å¾·ç¢é', |
| | | }, { |
| | | url: 'https://webst02.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}', |
| | | label: 'é«å¾·å½±å', |
| | | }, { |
| | | url: 'http://webst02.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scale=1&style=8', |
| | | label: 'é«å¾·å½±åæ æ³¨' |
| | | }]; |
| | |
| | | methods: { |
| | | showChangeIfream(res) { |
| | | |
| | | if (res.indexOf('{host}') != -1) { |
| | | if (res.indexOf('{fmeHost}') != -1) { |
| | | |
| | | res = res.replace('{host}',ipConfig ) |
| | | res = res.replace('{fmeHost}',fmeHost ) |
| | | } |
| | | |
| | | if (res.indexOf('token=') != -1) { |
| | | res = res + getToken(); |
| | | } |
| | |
| | | methods: { |
| | | handleSelectionChange() { }, |
| | | getUrl() { |
| | | |
| | | |
| | | var url = this.$store.state.iframeMsg; |
| | | if (url.indexOf('{host}') != -1) { |
| | | url = url.replace('{host}', ipConfig) |
| | | if (url.indexOf('{webHost}') != -1) { |
| | | url = url.replace('{webHost}', webHost) |
| | | } |
| | | |
| | | if (url.indexOf('token=') != -1) { |
| | |
| | | } |
| | | }, |
| | | showPermsMenu(res) { |
| | | |
| | | switch (res.tag) { |
| | | case '/delete': |
| | | this.menuStatus.delete = true; |
| | |
| | | getPerms() { |
| | | var val = this.$store.state.currentPerms; |
| | | var permsEntity = this.$store.state.permsEntity; |
| | | |
| | | if (permsEntity.length == 0) { |
| | | getPerms().then((res) => { |
| | | if (res.code == 200) { |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div class="systemMonitoring_box"> |
| | | <My-bread :list="[ |
| | | `${$t('operatManage.operatManage')}`, |
| | | `${$t('operatManage.systemMonitoring')}`, |
| | | ]"></My-bread> |
| | | <el-divider /> |
| | | <div class="content_Box"> |
| | | <div class="cloumn_Box1"> |
| | | <div class="flex_Box1"> |
| | | <el-tabs |
| | | v-model="activeName" |
| | | @tab-click="handleClick" |
| | | > |
| | | <el-tab-pane |
| | | :label="$t('operatManage.systemMonitoringObj.abnormalResources')" |
| | | name="first" |
| | | > |
| | | <el-table |
| | | :data="resInfo" |
| | | style="width: 100%; height: 310px" |
| | | > |
| | | <el-table-column |
| | | prop="id" |
| | | :label="$t('operatManage.systemMonitoringObj.resourceID')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="name" |
| | | :label="$t('operatManage.systemMonitoringObj.resourceName')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="bak" |
| | | :label="$t('operatManage.systemMonitoringObj.resourceState')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="createTime" |
| | | :label="$t('operatManage.systemMonitoringObj.abnormaltime')" |
| | | show-overflow-tooltip |
| | | > |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-tab-pane> |
| | | <el-tab-pane |
| | | :label=" |
| | | $t('operatManage.systemMonitoringObj.serviceResourceStatus') |
| | | " |
| | | name="second" |
| | | > |
| | | |
| | | <div |
| | | id="resUseChart" |
| | | style="width:101vh; height: 30vh; " |
| | | ></div> |
| | | |
| | | </el-tab-pane> |
| | | <el-tab-pane |
| | | :label="$t('operatManage.systemMonitoringObj.userloginStatus')" |
| | | name="third" |
| | | > |
| | | <div |
| | | id="userLoginChart" |
| | | style="width:101vh; height: 30vh; " |
| | | ></div> |
| | | </el-tab-pane> |
| | | <el-tab-pane |
| | | :label=" |
| | | $t('operatManage.systemMonitoringObj.resourceOperationStatus') |
| | | " |
| | | name="fourth" |
| | | > |
| | | <div |
| | | id="operateCountChart" |
| | | style="width:101vh; height: 30vh; " |
| | | ></div> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </div> |
| | | <div class="flex_Box"> |
| | | <div> |
| | | <div |
| | | style="line-height: 32px" |
| | | class="imageTitle" |
| | | > |
| | | {{ $t('operatManage.systemMonitoringObj.onlinePersonnel') }} |
| | | </div> |
| | | </div> |
| | | <el-table |
| | | :data="tableData" |
| | | style="width: 100%" |
| | | height="90%" |
| | | > |
| | | <el-table-column |
| | | align="center" |
| | | type="index" |
| | | :label="$t('operatManage.ELM.index')" |
| | | width="100px" |
| | | /> |
| | | <el-table-column |
| | | prop="uid" |
| | | :label="$t('operatManage.systemMonitoringObj.userID')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="uname" |
| | | :label="$t('operatManage.systemMonitoringObj.username')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="loginTime" |
| | | :label="$t('operatManage.systemMonitoringObj.onlineTime')" |
| | | fixed="right" |
| | | > |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </div> |
| | | <div class="cloumn_Box"> |
| | | <div class="flex_Box"> |
| | | <div style="width: 100%; height: 20px"> |
| | | <div class="image1"></div> |
| | | <div class="imageTitle"> |
| | | {{ $t('operatManage.systemMonitoringObj.memoryMonitoring') }} |
| | | </div> |
| | | </div> |
| | | <div class="top_Box1"> |
| | | <div class="top_box_left"> |
| | | <div class="left_title"> |
| | | <div class="height_title"> |
| | | <label> |
| | | {{ |
| | | $t('operatManage.systemMonitoringObj.haveBeenUsed') |
| | | }}</label> |
| | | <p>{{ memInfo.use }}</p> |
| | | </div> |
| | | <div class="height_title"> |
| | | <label> |
| | | {{ |
| | | $t('operatManage.systemMonitoringObj.usageRate') |
| | | }}</label> |
| | | <p>{{ memInfo.usage }}</p> |
| | | </div> |
| | | </div> |
| | | <div class="left_title"> |
| | | <div class="height_title"> |
| | | <label> |
| | | {{ |
| | | $t('operatManage.systemMonitoringObj.totalMemory') |
| | | }}</label> |
| | | <p>{{ memInfo.totalMem }}</p> |
| | | </div> |
| | | <div class="height_title"> |
| | | <label> |
| | | {{ |
| | | $t('operatManage.systemMonitoringObj.remainingMemory') |
| | | }}</label> |
| | | <p>{{ memInfo.remainMem }}</p> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div |
| | | id="fathershuiWen" |
| | | class="top_box_right" |
| | | > |
| | | <div id="shuiwen"></div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="flex_Box"> |
| | | <div> |
| | | <div class="image2"></div> |
| | | <div |
| | | style="line-height: 32px" |
| | | class="imageTitle" |
| | | > |
| | | {{ $t('operatManage.systemMonitoringObj.cpuMonitoring') }} |
| | | </div> |
| | | </div> |
| | | <div |
| | | id="Sys_cpu_chart" |
| | | style="width: 100%; height: 86%; margin-top: 8%" |
| | | ></div> |
| | | </div> |
| | | <div class="flex_Box"> |
| | | <div style="width: 100%; height: 34px"> |
| | | <div class="image3"></div> |
| | | <div |
| | | style="line-height: 32px" |
| | | class="imageTitle" |
| | | > |
| | | {{ $t('operatManage.systemMonitoringObj.heteroconstant') }} |
| | | </div> |
| | | </div> |
| | | <div class="ycContent"> |
| | | <div class="ycsBox"> |
| | | <div style="width:100%;height:100%"> |
| | | <div class="ycTltle">{{ resInfoCount }}</div> |
| | | <div class="heteroTitle"> |
| | | {{ $t('operatManage.systemMonitoringObj.numberOfExceptions') }} |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | <!-- <div class="inform_box"> |
| | | <div class="content_box"> |
| | | <div class="top_box"> |
| | | <div style="width: 100%; height: 100%"> |
| | | <div |
| | | style="width: 30%; height: 100%; float: left; margin-left: 20%" |
| | | > |
| | | <div class="Syslabel"> |
| | | <p style="line-height: 25px"> |
| | | {{ $t('operatManage.systemMonitoringObj.haveBeenUsed') }} |
| | | {{ memInfo.use }} |
| | | </p> |
| | | <br /> |
| | | <p style="line-height: 25px"> |
| | | {{ $t('operatManage.systemMonitoringObj.totalMemory') }} |
| | | {{ memInfo.totalMem }} |
| | | </p> |
| | | </div> |
| | | </div> |
| | | <div |
| | | id="shuiwen" |
| | | style=" |
| | | width: 40%; |
| | | height: 100%; |
| | | |
| | | float: left; |
| | | " |
| | | ></div> |
| | | </div> |
| | | </div> |
| | | <div class="bottom_box"> |
| | | {{ $t('operatManage.systemMonitoringObj.systemMemory') }} |
| | | </div> |
| | | </div> |
| | | <div class="content_box"> |
| | | <div class="top_box"> |
| | | <div class="Syslabel"> |
| | | {{ $t('operatManage.systemMonitoringObj.CPUusage') }} |
| | | </div> |
| | | <div class="details">{{ cpuInfo.cpuSysUsage }}</div> |
| | | <div id="Sys_cpu_chart"></div> |
| | | </div> |
| | | <div class="bottom_box"> |
| | | {{ $t('operatManage.systemMonitoringObj.CPUsystemUsage') }} |
| | | </div> |
| | | </div> |
| | | <div class="content_box"> |
| | | <div class="top_box"> |
| | | <div class="Syslabel"> |
| | | {{ $t('operatManage.systemMonitoringObj.numberOfExceptions') }} |
| | | </div> |
| | | <div class="details">{{ resInfoCount }}</div> |
| | | </div> |
| | | <div class="bottom_box"> |
| | | {{ $t('operatManage.systemMonitoringObj.numberOfAbnormalSystems') }} |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="chart_box"> |
| | | <el-tabs v-model="activeName" @tab-click="handleClick"> |
| | | <el-tab-pane |
| | | :label="$t('operatManage.systemMonitoringObj.abnormalResources')" |
| | | name="first" |
| | | ><el-table :data="resInfo" style="width: 100%"> |
| | | <el-table-column |
| | | prop="id" |
| | | :label="$t('operatManage.systemMonitoringObj.resourceID')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="name" |
| | | :label="$t('operatManage.systemMonitoringObj.resourceName')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="bak" |
| | | :label="$t('operatManage.systemMonitoringObj.resourceState')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="createTime" |
| | | :label="$t('operatManage.systemMonitoringObj.abnormaltime')" |
| | | show-overflow-tooltip |
| | | > |
| | | </el-table-column> </el-table |
| | | ></el-tab-pane> |
| | | <el-tab-pane label="æå¡èµæºç¶æ" name="second"> |
| | | <div id="resUseChart" style="width: 1515px; height: 243px"></div> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="ç¨æ·ç»å½ç¶æ" name="third"> |
| | | <div id="userLoginChart" style="width: 1515px; height: 243px"></div> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="èµæºæä½ç¶æ" name="fourth" |
| | | ><div |
| | | id="operateCountChart" |
| | | style="width: 1515px; height: 243px" |
| | | ></div |
| | | ></el-tab-pane> |
| | | </el-tabs> |
| | | <!-- <p class="title_box"> |
| | | {{ $t('operatManage.systemMonitoringObj.abnormalResources') }} |
| | | </p> --> |
| | | <!-- <el-table :data="resInfo" style="width: 100%"> |
| | | <el-table-column |
| | | prop="id" |
| | | :label="$t('operatManage.systemMonitoringObj.resourceID')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="name" |
| | | :label="$t('operatManage.systemMonitoringObj.resourceName')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="bak" |
| | | :label="$t('operatManage.systemMonitoringObj.resourceState')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="createTime" |
| | | :label="$t('operatManage.systemMonitoringObj.abnormaltime')" |
| | | show-overflow-tooltip |
| | | > |
| | | </el-table-column> |
| | | </el-table> --> |
| | | <!-- <div style="margin-top: 10px" class="pagination_box"> |
| | | <el-pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | :current-page="currentPage4" |
| | | :page-sizes="[10, 20, 30, 40]" |
| | | :page-size="10" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="4" |
| | | > |
| | | </el-pagination> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="left"> |
| | | <p class="title_box"> |
| | | {{ $t('operatManage.systemMonitoringObj.onlinePersonnel') }} |
| | | </p> |
| | | <el-table :data="tableData" style="width: 100%"> |
| | | <el-table-column |
| | | align="center" |
| | | type="index" |
| | | :label="$t('operatManage.ELM.index')" |
| | | width="100px" |
| | | /> |
| | | <el-table-column |
| | | prop="uid" |
| | | :label="$t('operatManage.systemMonitoringObj.userID')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="uname" |
| | | :label="$t('operatManage.systemMonitoringObj.username')" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="loginTime" |
| | | :label="$t('operatManage.systemMonitoringObj.onlineTime')" |
| | | fixed="right" |
| | | > |
| | | </el-table-column> |
| | | </el-table> |
| | | |
| | | <!-- <div style="margin-top: 10px" class="pagination_box"> |
| | | <el-pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | :current-page="currentPage4" |
| | | :page-sizes="[10, 20, 30, 40]" |
| | | :page-size="10" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="4" |
| | | > |
| | | </el-pagination> |
| | | </div> |
| | | </div> --> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import MyBread from '../../components/MyBread.vue'; |
| | | import 'echarts-liquidfill'; |
| | | export default { |
| | | //importå¼å
¥çç»ä»¶éè¦æ³¨å
¥å°å¯¹è±¡ä¸æè½ä½¿ç¨ |
| | | components: { |
| | | MyBread, |
| | | }, |
| | | data() { |
| | | //è¿éåæ¾æ°æ® |
| | | return { |
| | | activeName: 'first', |
| | | ws: null, |
| | | tableData: [], |
| | | memInfo: { totalMem: 0, use: 0, usage: 0, remainMem: 0 }, |
| | | cpuInfo: { cpuSysUsage: 0 }, |
| | | resInfo: [], |
| | | resInfoCount: 0, |
| | | echartData: [], |
| | | resUseCount: {}, |
| | | userLoginCount: [], |
| | | operateCount: [], |
| | | }; |
| | | }, |
| | | //æ¹æ³éå |
| | | methods: { |
| | | SetTableData1(res) { |
| | | this.tableData = res.userInfo; |
| | | this.memInfo = res.memInfo; |
| | | this.cpuInfo = res.cpuInfo; |
| | | if (this.echartData.length == 7) { |
| | | this.echartData.splice(0, 1); |
| | | } |
| | | this.lineChart2(this.memInfo.usage); |
| | | this.echartData.push([' ', parseFloat(res.cpuInfo.cpuSysUsage)]); |
| | | this.lineChart1(); |
| | | }, |
| | | SetTableData2(res) { |
| | | this.resInfo = res.resInfo; |
| | | this.resInfoCount = res.resInfo.length; |
| | | }, |
| | | SetTableData3(res) { |
| | | this.resUseCount = res.resUseCount; |
| | | this.operateCount = res.operateCount.operateCount; |
| | | this.userLoginCount = res.userLoginCount.userLoginCount; |
| | | this.lineChart3(); |
| | | this.lineChart4(); |
| | | this.lineChart5(); |
| | | }, |
| | | handleClick(tab, event) { |
| | | switch (tab) { |
| | | case 'first': |
| | | break; |
| | | case 'second': |
| | | this.lineChart3(); |
| | | break; |
| | | case 'third': |
| | | this.lineChart4(); |
| | | break; |
| | | case 'fourth': |
| | | this.lineChart5(); |
| | | break; |
| | | } |
| | | }, |
| | | lineChart1() { |
| | | const valueList = this.echartData.map(function (item) { |
| | | return item[1]; |
| | | }); |
| | | |
| | | var option = { |
| | | // Make gradient line here |
| | | visualMap: [ |
| | | { |
| | | show: false, |
| | | type: 'continuous', |
| | | seriesIndex: 0, |
| | | }, |
| | | ], |
| | | toolbox: { |
| | | show: true, |
| | | feature: { |
| | | |
| | | saveAsImage: { show: true } |
| | | } |
| | | }, |
| | | title: [], |
| | | tooltip: { |
| | | trigger: 'axis', |
| | | }, |
| | | xAxis: { |
| | | type: 'category', |
| | | boundaryGap: false, |
| | | data: ['', '', '', '', '', '', ''], |
| | | }, |
| | | yAxis: [ |
| | | { |
| | | axisLabel: { |
| | | show: false, // 䏿¾ç¤ºåæ è½´ä¸çæå |
| | | }, |
| | | }, |
| | | ], |
| | | grid: [ |
| | | { |
| | | top: '10%', |
| | | bottom: '10%', |
| | | left: '10%', |
| | | right: '10%', |
| | | }, |
| | | ], |
| | | series: [ |
| | | { |
| | | type: 'line', |
| | | showSymbol: false, |
| | | data: valueList, |
| | | }, |
| | | ], |
| | | }; |
| | | |
| | | let myChart = this.$echarts.init( |
| | | document.getElementById('Sys_cpu_chart') |
| | | ); |
| | | myChart.setOption(option); |
| | | window.addEventListener('resize', function () { |
| | | myChart.resize(); |
| | | }); |
| | | }, |
| | | lineChart2(res) { |
| | | |
| | | |
| | | var a = 0; |
| | | if (res != 0) { |
| | | a = res.split('%').join(''); |
| | | } |
| | | |
| | | var data = { name: '1111', value: parseFloat(a) / 100 }; |
| | | var list = []; |
| | | let value = data.value; |
| | | list.push({ name: data.name, value: data.value }); |
| | | |
| | | for (let i = 0; i < 2; i++) { |
| | | if (value - 0.1 > 0) { |
| | | value -= 0.1; |
| | | list.push({ name: data.name, value: value }); |
| | | } |
| | | } |
| | | var options = { |
| | | // æç¤ºæ¡ç»ä»¶ |
| | | tooltip: { |
| | | show: false, |
| | | trigger: 'item', // 触åç±»å, æ°æ®é¡¹å¾å½¢è§¦åï¼ä¸»è¦å¨æ£ç¹å¾ï¼é¥¼å¾çæ ç±»ç®è½´çå¾è¡¨ä¸ä½¿ç¨ã |
| | | textStyle: { |
| | | show: false, |
| | | }, |
| | | formatter: function (value) { |
| | | return value.seriesName + ': ' + parseInt(value.value * 100) + '% '; |
| | | }, |
| | | }, |
| | | series: [ |
| | | { |
| | | type: 'liquidFill', |
| | | name: ' ', |
| | | radius: '40%', |
| | | center: ['30%', '30%'], |
| | | shape: 'circle', |
| | | phase: 0, |
| | | direction: 'right', |
| | | outline: { |
| | | show: true, |
| | | borderDistance: 0, // è¾¹æ¡çº¿ä¸å¾è¡¨çè·ç¦» æ°å |
| | | itemStyle: { |
| | | opacity: 1, |
| | | borderWidth: 0, |
| | | borderColor: '#2bf9ed', |
| | | }, |
| | | }, |
| | | // å¾å½¢æ ·å¼ |
| | | itemStyle: { |
| | | color: this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [ |
| | | { offset: 0, color: '#c5e87e' }, //æ±å¾æ¸åè² |
| | | { offset: 0.5, color: '#2bf9ed' }, //æ±å¾æ¸åè² //æ±å¾æ¸åè² |
| | | ]), |
| | | opacity: 0.5, |
| | | shadowBlur: 10, |
| | | }, |
| | | backgroundStyle: { |
| | | color: this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [ |
| | | { offset: 0, color: '#2bf9ed' }, //æ±å¾æ¸åè² |
| | | { offset: 0.4, color: '#44C0C1' }, //æ±å¾æ¸åè² //æ±å¾æ¸åè² |
| | | ]), |
| | | opacity: 0.5, |
| | | }, |
| | | // å¾å½¢çé«äº®æ ·å¼ |
| | | emphasis: { |
| | | itemStyle: { |
| | | opacity: 1, |
| | | }, |
| | | }, |
| | | // å¾å½¢ä¸çææ¬æ ç¾ |
| | | label: { |
| | | fontSize: 40, |
| | | fontWeight: 600, |
| | | color: '#fff', |
| | | }, |
| | | data: list, |
| | | }, |
| | | { |
| | | name: 'Access From', |
| | | type: 'pie', |
| | | radius: ['43%', '50%'], |
| | | center: ['30%', '30%'], |
| | | startAngle: 340, |
| | | avoidLabelOverlap: false, |
| | | itemStyle: { |
| | | borderRadius: 10, |
| | | }, |
| | | label: { |
| | | show: false, |
| | | position: 'center', |
| | | }, |
| | | emphasis: { |
| | | label: { |
| | | show: true, |
| | | fontSize: '40', |
| | | fontWeight: 'bold', |
| | | }, |
| | | }, |
| | | labelLine: { |
| | | show: false, |
| | | }, |
| | | data: [ |
| | | { |
| | | value: 0.4, |
| | | name: 'Direct', |
| | | itemStyle: { |
| | | color: '#2bf9ed', |
| | | }, |
| | | }, |
| | | { |
| | | value: 0.6, |
| | | name: 'Direct', |
| | | itemStyle: { |
| | | color: 'rgba(240, 248, 255, 0)', |
| | | }, |
| | | }, |
| | | ], |
| | | emphasis: { |
| | | disabled: true, |
| | | }, |
| | | tooltip: { |
| | | show: false, |
| | | }, |
| | | }, |
| | | ], |
| | | }; |
| | | |
| | | let myChart1 = this.$echarts.init(document.getElementById('shuiwen')); |
| | | myChart1.setOption(options); |
| | | window.addEventListener('resize', function () { |
| | | myChart1.resize(); |
| | | }); |
| | | }, |
| | | lineChart3() { |
| | | var data = [ |
| | | { name: 'å¯ç¨èµæº', value: this.resUseCount.resAbleCount }, |
| | | { name: 'ä¸å¯ç¨èµæº', value: this.resUseCount.resUnableCount }, |
| | | ]; |
| | | var option = { |
| | | tooltip: { |
| | | trigger: 'item', |
| | | }, |
| | | toolbox: { |
| | | show: true, |
| | | feature: { |
| | | |
| | | saveAsImage: { show: true } |
| | | } |
| | | }, |
| | | legend: { |
| | | top: '5%', |
| | | left: 'center', |
| | | textStyle: { |
| | | fontSize: 18, //åä½å¤§å° |
| | | color: '#ffffff', //åä½é¢è² |
| | | }, |
| | | }, |
| | | series: [ |
| | | { |
| | | name: ' ', |
| | | type: 'pie', |
| | | radius: ['40%', '70%'], |
| | | avoidLabelOverlap: false, |
| | | itemStyle: { |
| | | borderRadius: 10, |
| | | borderColor: '#fff', |
| | | borderWidth: 2, |
| | | }, |
| | | label: { |
| | | show: false, |
| | | position: 'center', |
| | | }, |
| | | emphasis: { |
| | | label: { |
| | | show: true, |
| | | fontSize: '40', |
| | | fontWeight: 'bold', |
| | | }, |
| | | }, |
| | | labelLine: { |
| | | show: false, |
| | | }, |
| | | data: data, |
| | | }, |
| | | ], |
| | | }; |
| | | let myChart2 = this.$echarts.init(document.getElementById('resUseChart')); |
| | | myChart2.setOption(option); |
| | | window.addEventListener('resize', function () { |
| | | myChart2.resize(); |
| | | }); |
| | | }, |
| | | lineChart4() { |
| | | var data1 = []; |
| | | var data2 = []; |
| | | for (var i in this.userLoginCount) { |
| | | data1.push(this.userLoginCount[i].optime); |
| | | data2.push(this.userLoginCount[i].count); |
| | | } |
| | | |
| | | var option = { |
| | | title: { |
| | | show: false, |
| | | }, |
| | | tooltip: { |
| | | trigger: 'axis', |
| | | }, |
| | | legend: { |
| | | show: false, |
| | | }, |
| | | grid: { |
| | | left: '3%', |
| | | right: '4%', |
| | | bottom: '3%', |
| | | containLabel: true, |
| | | }, |
| | | toolbox: { |
| | | feature: { |
| | | saveAsImage: {}, |
| | | }, |
| | | }, |
| | | xAxis: { |
| | | type: 'category', |
| | | boundaryGap: false, |
| | | data: data1, |
| | | }, |
| | | yAxis: { |
| | | type: 'value', |
| | | }, |
| | | series: [ |
| | | { |
| | | name: '', |
| | | type: 'line', |
| | | stack: 'Total', |
| | | data: data2, |
| | | }, |
| | | ], |
| | | }; |
| | | let myChart3 = this.$echarts.init( |
| | | document.getElementById('userLoginChart') |
| | | ); |
| | | myChart3.setOption(option); |
| | | }, |
| | | lineChart5() { |
| | | var data1 = []; |
| | | var data2 = []; |
| | | for (var i in this.operateCount) { |
| | | data1.push(this.operateCount[i].modular2); |
| | | data2.push(this.operateCount[i].count); |
| | | } |
| | | |
| | | var option = { |
| | | tooltip: { |
| | | trigger: 'axis', |
| | | axisPointer: { |
| | | type: 'shadow', |
| | | }, |
| | | }, |
| | | toolbox: { |
| | | show: true, |
| | | feature: { |
| | | |
| | | saveAsImage: { show: true } |
| | | } |
| | | }, |
| | | grid: { |
| | | left: '3%', |
| | | right: '4%', |
| | | bottom: '3%', |
| | | containLabel: true, |
| | | }, |
| | | xAxis: [ |
| | | { |
| | | type: 'category', |
| | | data: data1, |
| | | axisTick: { |
| | | alignWithLabel: true, |
| | | }, |
| | | }, |
| | | ], |
| | | yAxis: [ |
| | | { |
| | | type: 'value', |
| | | }, |
| | | ], |
| | | series: [ |
| | | { |
| | | name: 'Direct', |
| | | type: 'bar', |
| | | barWidth: '60%', |
| | | data: data2, |
| | | }, |
| | | ], |
| | | }; |
| | | let myChart4 = this.$echarts.init( |
| | | document.getElementById('operateCountChart') |
| | | ); |
| | | myChart4.setOption(option); |
| | | }, |
| | | }, |
| | | created() { |
| | | if (Window.ws != null) { |
| | | Window.ws.close(); |
| | | Window.ws.onclose = () => { |
| | | console.log('æå¡å¨å
³é'); |
| | | }; |
| | | Window.ws = null; |
| | | } |
| | | |
| | | Window.ws = new WebSocket(socketUrl); |
| | | Window.ws.option = () => { }; |
| | | var that = this; |
| | | Window.ws.onmessage = (msg) => { |
| | | // console.log('æ¥èªæå¡å¨ç«¯çæ°æ®ï¼' + msg.data); //ç嬿¥åæ¥èªæå¡ç«¯çä¿¡æ¯ |
| | | var data = JSON.parse(msg.data); |
| | | console.log(data); |
| | | if (data.userInfo != undefined) { |
| | | that.SetTableData1(data); |
| | | } else if (data.resInfo != undefined) { |
| | | that.SetTableData2(data); |
| | | } else if (data.operateCount != undefined) { |
| | | that.SetTableData3(data); |
| | | } |
| | | }; |
| | | }, |
| | | |
| | | mounted() { |
| | | var mywidth = $("#fathershuiWen").width(); |
| | | var mysright = $("#fathershuiWen").height(); |
| | | var width = (mywidth * 1.5) + "px" |
| | | var height = (mysright * 1.5) + "px" |
| | | $("#shuiwen").width(width); |
| | | $("#shuiwen").height(height); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | this.lineChart2(0); |
| | | }, |
| | | }; |
| | | </script> |
| | | <style lang="less" scoped> |
| | | //@import url(); å¼å
¥å
Œ
±cssç±» |
| | | .systemMonitoring_box { |
| | | height: 98%; |
| | | width: 98%; |
| | | padding: 1%; |
| | | position: absolute; |
| | | .content_Box { |
| | | width: 97%; |
| | | height: 85%; |
| | | position: absolute; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-around; |
| | | .cloumn_Box { |
| | | width: 100%; |
| | | height: 38%; |
| | | |
| | | display: flex; |
| | | justify-content: space-between; |
| | | .flex_Box { |
| | | width: 30.5%; |
| | | height: 88%; |
| | | border: 1px solid rgb(202, 201, 204); |
| | | border-radius: 5px; |
| | | padding: 1%; |
| | | background: rgb(21, 20, 20); |
| | | |
| | | .image1 { |
| | | width: 46px; |
| | | height: 20px; |
| | | float: left; |
| | | background: url("../../assets/img/systemMonitoring/å¾å± 38.png") |
| | | no-repeat; |
| | | background-size: 100% 100%; |
| | | } |
| | | .image2 { |
| | | width: 34px; |
| | | height: 34px; |
| | | float: left; |
| | | background: url("../../assets/img/systemMonitoring/å¾å± 37.png") |
| | | no-repeat; |
| | | background-size: 100% 100%; |
| | | } |
| | | .image3 { |
| | | width: 32px; |
| | | height: 32px; |
| | | float: left; |
| | | background: url("../../assets/img/systemMonitoring/å¾å± 40.png") |
| | | no-repeat; |
| | | background-size: 100% 100%; |
| | | } |
| | | } |
| | | .ycsBox { |
| | | width: 200px; |
| | | height: 200px; |
| | | background: url("../../assets/img/systemMonitoring/å¾å± 39.png") |
| | | no-repeat; |
| | | background-size: 100% 100%; |
| | | border: 1px; |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | .ycContent { |
| | | width: 100%; |
| | | padding: 1%; |
| | | height: 80%; |
| | | display: flex; |
| | | justify-content: center; |
| | | } |
| | | } |
| | | .imageTitle { |
| | | float: left; |
| | | color: white; |
| | | margin-left: 10px; |
| | | } |
| | | .ycTltle { |
| | | width: 100%; |
| | | margin-top: 8%; |
| | | font-size: 60px; |
| | | font-family: Microsoft YaHei; |
| | | font-weight: 300; |
| | | color: #009cff; |
| | | text-align: center; |
| | | } |
| | | .heteroTitle { |
| | | width: 100%; |
| | | text-align: center; |
| | | font-size: 16px; |
| | | font-family: Microsoft YaHei; |
| | | font-weight: 300; |
| | | color: #ffffff; |
| | | line-height: 49px; |
| | | |
| | | // margin-top: 20px; |
| | | |
| | | // text-align: center; |
| | | } |
| | | .top_Box1 { |
| | | width: 96%; |
| | | height: 91%; |
| | | margin-top: 2%; |
| | | margin-left: 4%; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | .top_box_left { |
| | | width: 59%; |
| | | height: 100%; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | .left_title { |
| | | width: 48%; |
| | | height: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-around; |
| | | .height_title { |
| | | width: 100%; |
| | | height: 48%; |
| | | label { |
| | | color: white; |
| | | } |
| | | p { |
| | | color: white; |
| | | margin-top: 3%; |
| | | font-size: 24px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .top_box_right { |
| | | width: 39%; |
| | | height: 100%; |
| | | } |
| | | } |
| | | |
| | | .cloumn_Box1 { |
| | | width: 100%; |
| | | height: 58%; |
| | | |
| | | display: flex; |
| | | justify-content: space-between; |
| | | .flex_Box1 { |
| | | width: 64%; |
| | | height: 92%; |
| | | padding: 1%; |
| | | border: 1px solid rgb(202, 201, 204); |
| | | border-radius: 5px; |
| | | background: rgb(21, 20, 20); |
| | | } |
| | | .flex_Box { |
| | | width: 30.5%; |
| | | height: 92%; |
| | | border: 1px solid rgb(202, 201, 204); |
| | | border-radius: 5px; |
| | | padding: 1%; |
| | | background: rgb(21, 20, 20); |
| | | } |
| | | } |
| | | } |
| | | /deep/.el-tabs__item { |
| | | color: white; |
| | | } |
| | | /deep/.el-tabs__item.is-active { |
| | | color: #009cff; |
| | | } |
| | | /*ä¿®æ¹table 表ä½çèæ¯é¢è²åæåé¢è²*/ |
| | | /deep/ .el-table { |
| | | background-color: transparent; |
| | | |
| | | th, |
| | | td { |
| | | background-color: transparent; |
| | | } |
| | | .el-table__expanded-cell { |
| | | background-color: transparent !important; |
| | | } |
| | | |
| | | // è¡¨å¤´èæ¯è² |
| | | th.el-table__cell { |
| | | background-color: #303030; |
| | | color: #fff; |
| | | } |
| | | tr > td { |
| | | background-color: #303030; |
| | | color: #fff; |
| | | } |
| | | |
| | | // hoverææ |
| | | tr:hover > td { |
| | | background-color: rgba(255, 255, 255, 0.3) !important; |
| | | } |
| | | |
| | | tbody tr:hover { |
| | | background-color: rgba(255, 255, 255, 0.3) !important; |
| | | // text-align: center; |
| | | } |
| | | |
| | | // æ»å¨æ¡å®½é« |
| | | .el-table__body-wrapper::-webkit-scrollbar { |
| | | width: 5px; |
| | | height: 5px; |
| | | } |
| | | |
| | | .el-table__body-wrapper::-webkit-scrollbar { |
| | | width: 5px; |
| | | /*æ»å¨æ¡å®½åº¦*/ |
| | | height: 10px; |
| | | /*æ»å¨æ¡é«åº¦*/ |
| | | } |
| | | /*å®ä¹æ»å¨æ¡è½¨é å
é´å½±+åè§*/ |
| | | .el-table__body-wrapper::-webkit-scrollbar-track { |
| | | box-shadow: 0px 1px 3px #216fe6 inset; |
| | | /*æ»å¨æ¡çèæ¯åºåçå
é´å½±*/ |
| | | border-radius: 10px; |
| | | } |
| | | |
| | | /*å®ä¹æ»å å
é´å½±+åè§*/ |
| | | .el-table__body-wrapper::-webkit-scrollbar-thumb { |
| | | box-shadow: 0px 1px 3px #216fe6 inset; |
| | | border-radius: 6px; |
| | | background-color: #216fe6; |
| | | } |
| | | } |
| | | } |
| | | </style> |