From d3fbd83787573e9e67067b7b65ae9d5ce8ecb0b8 Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@smartai.com> Date: 星期二, 16 八月 2022 10:03:20 +0800 Subject: [PATCH] 添加统计分析大屏 --- public/images/data-v/online.png | 0 public/images/data-v/top10.png | 0 public/images/data-v/ksh40.png | 0 public/images/data-v/data-m.png | 0 src/views/dataView/index.vue | 578 ++++++++++++++++++++++++++++++++++++++ public/images/data-v/ksh31.png | 0 public/images/data-v/ksh45.png | 0 public/images/data-v/ksh37.png | 0 public/images/data-v/lineup.png | 0 src/views/dataView/fonts/yjsz.TTF | 0 public/images/data-v/offline.png | 0 public/images/data-v/ksh41.png | 0 public/images/data-v/ksh35.png | 0 public/images/data-v/head.png | 0 public/images/data-v/jzxz2.png | 0 public/images/data-v/ksh44.png | 0 src/components/Footer.vue | 22 public/images/data-v/ksh32.png | 0 public/images/data-v/center.png | 0 public/images/data-v/ksh36.png | 0 public/images/data-v/type.png | 0 public/images/data-v/ksh34.png | 0 src/views/equipmentManagement/equipmentList/components/FormList.vue | 12 public/images/data-v/d-total.png | 0 public/index.html | 43 +- public/images/data-v/ksh42.png | 0 src/components/IndexHeader.vue | 122 +++---- src/views/equipmentManagement/equipmentList/index.vue | 28 src/views/hashrate/hashrateDetail/index.vue | 15 public/images/data-v/week.png | 0 src/router/index.js | 6 public/images/data-v/ksh39.png | 0 public/images/data-v/data08.png | 0 src/views/manageCenter/index.vue | 11 public/images/data-v/ksh33.png | 0 public/images/data-v/ksh43.png | 0 public/images/data-v/jzxz1.png | 0 src/views/video/index.vue | 16 src/views/report/index.vue | 15 public/images/data-v/jcdsj_logo.png | 0 public/images/data-v/ksh38.png | 0 public/images/data-v/bg.jpg | 0 42 files changed, 726 insertions(+), 142 deletions(-) diff --git a/public/images/data-v/bg.jpg b/public/images/data-v/bg.jpg new file mode 100644 index 0000000..533f5e3 --- /dev/null +++ b/public/images/data-v/bg.jpg Binary files differ diff --git a/public/images/data-v/center.png b/public/images/data-v/center.png new file mode 100644 index 0000000..ab44e0e --- /dev/null +++ b/public/images/data-v/center.png Binary files differ diff --git a/public/images/data-v/d-total.png b/public/images/data-v/d-total.png new file mode 100644 index 0000000..e92ba76 --- /dev/null +++ b/public/images/data-v/d-total.png Binary files differ diff --git a/public/images/data-v/data-m.png b/public/images/data-v/data-m.png new file mode 100644 index 0000000..d46070d --- /dev/null +++ b/public/images/data-v/data-m.png Binary files differ diff --git a/public/images/data-v/data08.png b/public/images/data-v/data08.png new file mode 100644 index 0000000..2140942 --- /dev/null +++ b/public/images/data-v/data08.png Binary files differ diff --git a/public/images/data-v/head.png b/public/images/data-v/head.png new file mode 100644 index 0000000..a2ce0af --- /dev/null +++ b/public/images/data-v/head.png Binary files differ diff --git a/public/images/data-v/jcdsj_logo.png b/public/images/data-v/jcdsj_logo.png new file mode 100644 index 0000000..3939cfc --- /dev/null +++ b/public/images/data-v/jcdsj_logo.png Binary files differ diff --git a/public/images/data-v/jzxz1.png b/public/images/data-v/jzxz1.png new file mode 100644 index 0000000..c45b708 --- /dev/null +++ b/public/images/data-v/jzxz1.png Binary files differ diff --git a/public/images/data-v/jzxz2.png b/public/images/data-v/jzxz2.png new file mode 100644 index 0000000..8cc258c --- /dev/null +++ b/public/images/data-v/jzxz2.png Binary files differ diff --git a/public/images/data-v/ksh31.png b/public/images/data-v/ksh31.png new file mode 100644 index 0000000..eabfca6 --- /dev/null +++ b/public/images/data-v/ksh31.png Binary files differ diff --git a/public/images/data-v/ksh32.png b/public/images/data-v/ksh32.png new file mode 100644 index 0000000..a71abda --- /dev/null +++ b/public/images/data-v/ksh32.png Binary files differ diff --git a/public/images/data-v/ksh33.png b/public/images/data-v/ksh33.png new file mode 100644 index 0000000..fca5372 --- /dev/null +++ b/public/images/data-v/ksh33.png Binary files differ diff --git a/public/images/data-v/ksh34.png b/public/images/data-v/ksh34.png new file mode 100644 index 0000000..879aaf6 --- /dev/null +++ b/public/images/data-v/ksh34.png Binary files differ diff --git a/public/images/data-v/ksh35.png b/public/images/data-v/ksh35.png new file mode 100644 index 0000000..337915f --- /dev/null +++ b/public/images/data-v/ksh35.png Binary files differ diff --git a/public/images/data-v/ksh36.png b/public/images/data-v/ksh36.png new file mode 100644 index 0000000..28a81ca --- /dev/null +++ b/public/images/data-v/ksh36.png Binary files differ diff --git a/public/images/data-v/ksh37.png b/public/images/data-v/ksh37.png new file mode 100644 index 0000000..05e9f96 --- /dev/null +++ b/public/images/data-v/ksh37.png Binary files differ diff --git a/public/images/data-v/ksh38.png b/public/images/data-v/ksh38.png new file mode 100644 index 0000000..0584178 --- /dev/null +++ b/public/images/data-v/ksh38.png Binary files differ diff --git a/public/images/data-v/ksh39.png b/public/images/data-v/ksh39.png new file mode 100644 index 0000000..bebd65e --- /dev/null +++ b/public/images/data-v/ksh39.png Binary files differ diff --git a/public/images/data-v/ksh40.png b/public/images/data-v/ksh40.png new file mode 100644 index 0000000..05cf4da --- /dev/null +++ b/public/images/data-v/ksh40.png Binary files differ diff --git a/public/images/data-v/ksh41.png b/public/images/data-v/ksh41.png new file mode 100644 index 0000000..09839d8 --- /dev/null +++ b/public/images/data-v/ksh41.png Binary files differ diff --git a/public/images/data-v/ksh42.png b/public/images/data-v/ksh42.png new file mode 100644 index 0000000..afbb2f4 --- /dev/null +++ b/public/images/data-v/ksh42.png Binary files differ diff --git a/public/images/data-v/ksh43.png b/public/images/data-v/ksh43.png new file mode 100644 index 0000000..42176c1 --- /dev/null +++ b/public/images/data-v/ksh43.png Binary files differ diff --git a/public/images/data-v/ksh44.png b/public/images/data-v/ksh44.png new file mode 100644 index 0000000..3781641 --- /dev/null +++ b/public/images/data-v/ksh44.png Binary files differ diff --git a/public/images/data-v/ksh45.png b/public/images/data-v/ksh45.png new file mode 100644 index 0000000..10b0467 --- /dev/null +++ b/public/images/data-v/ksh45.png Binary files differ diff --git a/public/images/data-v/lineup.png b/public/images/data-v/lineup.png new file mode 100644 index 0000000..331b416 --- /dev/null +++ b/public/images/data-v/lineup.png Binary files differ diff --git a/public/images/data-v/offline.png b/public/images/data-v/offline.png new file mode 100644 index 0000000..905d2fb --- /dev/null +++ b/public/images/data-v/offline.png Binary files differ diff --git a/public/images/data-v/online.png b/public/images/data-v/online.png new file mode 100644 index 0000000..c636b6f --- /dev/null +++ b/public/images/data-v/online.png Binary files differ diff --git a/public/images/data-v/top10.png b/public/images/data-v/top10.png new file mode 100644 index 0000000..f37fc73 --- /dev/null +++ b/public/images/data-v/top10.png Binary files differ diff --git a/public/images/data-v/type.png b/public/images/data-v/type.png new file mode 100644 index 0000000..3a790f9 --- /dev/null +++ b/public/images/data-v/type.png Binary files differ diff --git a/public/images/data-v/week.png b/public/images/data-v/week.png new file mode 100644 index 0000000..d467fc8 --- /dev/null +++ b/public/images/data-v/week.png Binary files differ diff --git a/public/index.html b/public/index.html index 506eb2c..8e35ac4 100644 --- a/public/index.html +++ b/public/index.html @@ -1,25 +1,24 @@ <!DOCTYPE html> <html lang="en"> + <head> + <meta charset="utf-8" /> + <meta http-equiv="X-UA-Compatible" content="IE=edge" /> + <meta name="viewport" content="width=device-width,initial-scale=1.0" /> + <link rel="icon" href="<%= BASE_URL %>favicon.ico" /> + <link rel="stylesheet" href="/fonts/iconfont.css" /> + <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" /> + <title>sass鏅烘収鐩戞帶绠$悊涓績</title> + <style></style> + </head> -<head> - <meta charset="utf-8"> - <meta http-equiv="X-UA-Compatible" content="IE=edge"> - <meta name="viewport" content="width=device-width,initial-scale=1.0"> - <link rel="icon" href="<%= BASE_URL %>favicon.ico"> - <link rel="stylesheet" href="/fonts/iconfont.css"> - <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico"> - <title>sass</title> - <style> - </style> -</head> - -<body> - <noscript> - <strong>We're sorry but system-2.0 doesn't work properly without JavaScript enabled. Please enable it to - continue.</strong> - </noscript> - <div id="app"></div> - <!-- built files will be auto injected --> -</body> - -</html> \ No newline at end of file + <body> + <noscript> + <strong + >We're sorry but system-2.0 doesn't work properly without JavaScript enabled. Please enable it to + continue.</strong + > + </noscript> + <div id="app"></div> + <!-- built files will be auto injected --> + </body> +</html> diff --git a/src/components/Footer.vue b/src/components/Footer.vue index e1915b2..79d62d7 100644 --- a/src/components/Footer.vue +++ b/src/components/Footer.vue @@ -1,5 +1,5 @@ <template> - <div class="Footer" :class="{ isBlack: isBlack }"> + <div class="Footer"> <!-- <div class="left"> 漏 2009-2019 smartai.com 鐗堟潈鎵�鏈� ICP璇侊細45456566 鍏綉瀹夊 436435455鍙� </div> @@ -19,18 +19,18 @@ props: { isBlack: { type: Boolean, - default: false, - }, + default: false + } }, methods: { jump() { - window.open("http://www.smartai.com/about"); + window.open("http://www.smartai.com/about") }, jump2() { - window.open("http://www.smartai.com/consult"); - }, - }, -}; + window.open("http://www.smartai.com/consult") + } + } +} </script> <style lang="scss" scoped> @@ -39,8 +39,8 @@ justify-content: space-between; align-items: center; box-sizing: border-box; - padding: 26px 20px; - height: 100px; + // padding: 26px 20px; + height: 10px; min-width: 1280px; background: #f3f5f8; @@ -68,4 +68,4 @@ } } } -</style> \ No newline at end of file +</style> diff --git a/src/components/IndexHeader.vue b/src/components/IndexHeader.vue index 084bbf3..65a8d61 100644 --- a/src/components/IndexHeader.vue +++ b/src/components/IndexHeader.vue @@ -10,6 +10,8 @@ <div class="label" @click="$router.push('/')">棣栭〉</div> <!-- <div class="label">浜戞湇鍔�</div> --> <div class="label" @click="$router.push('/manageCenter')">绠$悊涓績</div> + <div class="label" @click="$router.push('/dataView')">鏁版嵁鍒嗘瀽</div> + <!-- <div class="label" @click="dataView">鏁版嵁鍒嗘瀽</div> --> <div class="label" @click="$router.push('/product')">搴旂敤鍟嗗煄</div> </div> @@ -23,28 +25,16 @@ > <div class="iconList" slot="suffix"> <i class="search iconfont" v-if="!isShow"></i> - <i class="search iconfont" @click="search" v-if="isShow" - ></i - > - <i class="del iconfont" v-if="isShow" @click="showInputBox(false)" - ></i - > + <i class="search iconfont" @click="search" v-if="isShow"></i> + <i class="del iconfont" v-if="isShow" @click="showInputBox(false)"></i> </div> </el-input> <!-- 鏈櫥褰曟儏鍐� --> - <div - class="headerLogin" - v-if="!userInfo" - @click="$router.push('/login')" - > + <div class="headerLogin" v-if="!userInfo" @click="$router.push('/login')"> 鐧诲綍 </div> - <div - class="register" - v-if="!userInfo" - @click="$router.push('/register')" - > + <div class="register" v-if="!userInfo" @click="$router.push('/register')"> 鍏嶈垂娉ㄥ唽 </div> @@ -62,12 +52,7 @@ </div> <!-- 鐢ㄦ埛涓嬫媺妗� --> - <div - class="userBox" - v-if="userInfo && isShowUserBox" - @mouseenter="showUserBox" - @mouseleave="hiddenUserBox" - > + <div class="userBox" v-if="userInfo && isShowUserBox" @mouseenter="showUserBox" @mouseleave="hiddenUserBox"> <div class="userName">{{ userInfo.username }}</div> <ul> <!-- <li class="money"> @@ -83,9 +68,7 @@ <router-link to="/personalCenter">涓汉涓績</router-link> </div> - <div class="content"> - <span class="iconfont"></span> 宸插疄鍚嶈璇� - </div> + <div class="content"><span class="iconfont"></span> 宸插疄鍚嶈璇�</div> </li> <li> @@ -118,12 +101,7 @@ <div class="hotKey"> <div class="title">鐑棬鎼滅储</div> <ul class="keyCard"> - <li - class="keyItem" - @click="jumpToSearch(item)" - v-for="(item, index) in hotKeyArr" - :key="index" - > + <li class="keyItem" @click="jumpToSearch(item)" v-for="(item, index) in hotKeyArr" :key="index"> {{ item }} </li> </ul> @@ -150,19 +128,19 @@ </template> <script> -import { logout } from "@/api/login"; +import { logout } from "@/api/login" export default { props: { opacity: { type: Boolean, - default: true, - }, + default: true + } }, name: "Header", created() { //灏濊瘯浠巗ession涓嬁鐢ㄦ埛淇℃伅 - this.userInfo = JSON.parse(sessionStorage.getItem("userInfo")); + this.userInfo = JSON.parse(sessionStorage.getItem("userInfo")) /* document.addEventListener("click", () => { this.showUserBox = false; }); */ @@ -176,82 +154,88 @@ isShowBox: false, //杈撳叆涓嬫媺妗� userInfo: null, //鐢ㄦ埛淇℃伅 isShowUserBox: false, //鐢ㄦ埛淇℃伅寮瑰眰 - UserTimer: null, // 鎺у埗寮瑰眰鐨勫畾鏃跺櫒 - }; + UserTimer: null // 鎺у埗寮瑰眰鐨勫畾鏃跺櫒 + } }, methods: { + dataView() { + const { href } = this.$router.resolve({ + path: "/dataView" + }) + window.open(href, "_blank") + }, // 鎺у埗杈撳叆妗哹ox showInputBox(toggle) { - this.isShow = toggle; - this.isShowBox = toggle; - this.keyWord = ""; - this.$emit("showInputBox", toggle); + this.isShow = toggle + this.isShowBox = toggle + this.keyWord = "" + this.$emit("showInputBox", toggle) }, //鎺у埗鐢ㄦ埛淇℃伅box showUserBox() { if (this.UserTimer) { - clearTimeout(this.UserTimer); - this.UserTimer = null; + clearTimeout(this.UserTimer) + this.UserTimer = null } - this.isShowUserBox = true; + this.isShowUserBox = true }, hiddenUserBox() { - const _this = this; + const _this = this this.UserTimer = setTimeout(() => { - _this.isShowUserBox = false; - }, 200); + _this.isShowUserBox = false + }, 200) }, logOut() { logout().then(() => { - sessionStorage.removeItem("loginedInfo"); - sessionStorage.removeItem("expires_in"); - sessionStorage.removeItem("userInfo"); + sessionStorage.removeItem("loginedInfo") + sessionStorage.removeItem("expires_in") + sessionStorage.removeItem("userInfo") this.$router.push({ - path: "/login", - }); + path: "/login" + }) this.$notify({ title: "鎻愮ず", type: "success", message: "閫�鍑烘垚鍔燂紒", duration: 2500, - offset: 57, - }); - }); + offset: 57 + }) + }) }, jump(id, type) { if (type) { - sessionStorage.setItem("type", type); + sessionStorage.setItem("type", type) } this.$router.push({ path: "/personalCenter", query: { - id: id, - }, - }); + id: id + } + }) }, search() { this.$router.push({ path: "/product", query: { - keyWord: this.keyWord, - }, - }); + keyWord: this.keyWord + } + }) }, jumpToSearch(keyWord) { this.$router.push({ path: "/product", query: { - keyWord, - }, - }); - }, - }, -}; + keyWord + } + }) + } + } +} </script> <style lang="scss" scoped> @@ -534,4 +518,4 @@ } } } -</style> \ No newline at end of file +</style> diff --git a/src/router/index.js b/src/router/index.js index cb6a972..cb04519 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -118,6 +118,12 @@ path: "/video", name: "video", component: () => import(/* webpackChunkName: "about" */ "../views/video") + }, + { + // 鏁版嵁鍙鍖� + path: "/dataView", + name: "dataView", + component: () => import(/* webpackChunkName: "about" */ "../views/dataView") } ] diff --git a/src/views/dataView/fonts/yjsz.TTF b/src/views/dataView/fonts/yjsz.TTF new file mode 100644 index 0000000..6928f9b --- /dev/null +++ b/src/views/dataView/fonts/yjsz.TTF Binary files differ diff --git a/src/views/dataView/index.vue b/src/views/dataView/index.vue new file mode 100644 index 0000000..7942f46 --- /dev/null +++ b/src/views/dataView/index.vue @@ -0,0 +1,578 @@ +<template> + <div class="data-view"> + <div id="load" v-show="loading"> + <div class="load_img"> + <!-- 鍔犺浇鍔ㄧ敾 --> + <img class="jzxz1" src="/images/data-v/jzxz1.png" /> + <img class="jzxz2" src="/images/data-v/jzxz2.png" /> + </div> + </div> + <div class="head_top"><span>鏅烘収宸ュ巶鍙鍖栭┚椹惰埍</span></div> + <div class="visual"> + <div class="left-top10"> + <div class="title"> + <span>閮ㄩ棬鍛婅鏁伴噺 TOP10</span> + </div> + </div> + <div class="center"> + <div class="center-left"> + <div class="center-count"> + <b>219</b> + <p style="margin-top:2px">褰撳墠鐩戞祴鐐规�婚噺</p> + <p style="margin-top:35px">鍦烘櫙鎬婚噺: 800</p> + <p style="margin-top:5px">绠楁硶鎬婚噺: 11</p> + </div> + </div> + </div> + <div class="right-week"> + <div class="title"> + <span>杩�7鏃ユ暣鏀规暟閲忕粺璁�</span> + </div> + <div id="barChart" style="width: 100%;height:100%"></div> + </div> + <div class="right-device"> + <div class="title"> + <span>鏁版嵁鐩戞帶</span> + </div> + <div class="device-count"> + <img src="/images/data-v/d-total.png" alt="" /> + <div + style="position: absolute; + top: 43%; + left: 36%; + font-size: 26px; + color: #d9d6d6;" + > + 璁惧鎬婚噺 + </div> + <div + style="position: absolute; + top: 59%; + left: 45%; + font-size: 26px; + color: #ffffff;" + > + 6 + </div> + + <div + class="online" + style="position: absolute; + right: 23%; + top: 17%;" + > + <img src="/images/data-v/online.png" alt="" /> + </div> + <div + class="offline" + style="position: absolute; + right: 23%; + top: 58%;" + > + <img src="/images/data-v/offline.png" alt="" /> + </div> + </div> + </div> + <div class="right-type"> + <div class="title"> + <span>鍛婅绫诲瀷鍗犳瘮</span> + </div> + <div id="pieChart" style="width: 100%;height:100%"></div> + </div> + <div class="bottom-line"> + <div class="title"> + <span>鍛婅鏁伴噺瓒嬪娍</span> + </div> + <div id="lineChart" style="width: 100%;height:100%"></div> + </div> + <div class="clear"></div> + </div> + </div> +</template> + +<script> +import * as echarts from "echarts" +export default { + components: {}, + data() { + return { + loading: false, + lineChart: {}, + pieChart: {}, + barChart: {}, + lineChartOption: { + grid: { + left: "3%", + right: "3%", + bottom: "20%", + containLabel: true + }, + legend: { + x: "right", + y: "top", + itemHeight: 2, + itemWidth: 2, + icon: "circle" + }, + tooltip: {}, + xAxis: { + type: "category", + boundaryGap: false, + axisTick: { + show: false + }, + axisLabel: { + color: "#666" + }, + data: ["1", "2", "3", "4", "5", "6", "7"] + }, + yAxis: { + axisTick: { + show: false + }, + axisLine: { + //y杞� + show: false + }, + axisLabel: { + color: "#666" + }, + splitLine: { + //缃戞牸绾� + lineStyle: { + color: "rgb(230, 230, 230)", + type: "dashed" //璁剧疆缃戞牸绾跨被鍨� dotted锛氳櫄绾� solid:瀹炵嚎 + }, + show: false //闅愯棌鎴栨樉绀� + } + }, + // Declare several bar series, each will be mapped + // to a column of dataset.source by default. + series: [ + { + type: "line", + data: [55, 33, 22, 33, 55, 43, 11], + areaStyle: { + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ + { + offset: 0, + color: "#0066FF" + }, + { + offset: 1, + color: "rgba(0, 102, 255, 0.25)" + } + ]) + }, + color: { + type: "linear", + x: 0.02, + y: 0.02, + x2: 1, + y2: 1, + colorStops: [ + { + offset: 0, + color: "#0066FF" // 0% 澶勭殑棰滆壊 + // radius: ["50%", "80%"] + }, + { + offset: 1, + color: "rgba(0, 102, 255, 0.25)" // 100% 澶勭殑棰滆壊 + } + ], + global: false // 缂虹渷涓� false + }, + itemStyle: { + //鏌卞舰鍥惧渾瑙掞紝榧犳爣绉讳笂鍘绘晥鏋滐紝濡傛灉鍙槸涓�涓暟瀛楀垯璇存槑鍥涗釜鍙傛暟鍏ㄩ儴璁剧疆涓洪偅涔堝 + normal: { + //鏌卞舰鍥惧渾瑙掞紝鍒濆鍖栨晥鏋� + barBorderRadius: [15, 15, 0, 0] + } + } + } + ] + }, + barChartOption: { + grid: { + left: "10%", + right: "20%", + bottom: "20%", + containLabel: true + }, + legend: { + x: "right", + y: "top", + itemHeight: 2, + itemWidth: 2, + icon: "circle" + }, + tooltip: {}, + xAxis: { + type: "category", + boundaryGap: false, + axisTick: { + show: false + }, + axisLabel: { + color: "#666" + }, + data: ["鐑熼浘", "鏄庣伀", "绂诲矖", "鑱氶泦"] + }, + yAxis: { + axisTick: { + show: false + }, + axisLine: { + //y杞� + show: false + }, + axisLabel: { + color: "#666" + }, + splitLine: { + //缃戞牸绾� + lineStyle: { + color: "rgb(230, 230, 230)", + type: "dashed" //璁剧疆缃戞牸绾跨被鍨� dotted锛氳櫄绾� solid:瀹炵嚎 + }, + show: false //闅愯棌鎴栨樉绀� + } + }, + // Declare several bar series, each will be mapped + // to a column of dataset.source by default. + series: [ + { + type: "bar", + data: [55, 33, 22, 33], + areaStyle: { + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ + { + offset: 0, + color: "#0066FF" + }, + { + offset: 1, + color: "rgba(0, 102, 255, 0.25)" + } + ]) + }, + color: { + type: "linear", + x: 0.02, + y: 0.02, + x2: 1, + y2: 1, + colorStops: [ + { + offset: 0, + color: "#0066FF" // 0% 澶勭殑棰滆壊 + // radius: ["50%", "80%"] + }, + { + offset: 1, + color: "rgba(0, 102, 255, 0.25)" // 100% 澶勭殑棰滆壊 + } + ], + global: false // 缂虹渷涓� false + }, + itemStyle: { + //鏌卞舰鍥惧渾瑙掞紝榧犳爣绉讳笂鍘绘晥鏋滐紝濡傛灉鍙槸涓�涓暟瀛楀垯璇存槑鍥涗釜鍙傛暟鍏ㄩ儴璁剧疆涓洪偅涔堝 + normal: { + //鏌卞舰鍥惧渾瑙掞紝鍒濆鍖栨晥鏋� + barBorderRadius: [15, 15, 0, 0] + } + } + } + ] + }, + pieChartOption: { + legend: { + top: "bottom" + }, + color: [ + "rgb(54, 60, 231)", + "rgb(54, 178, 74)", + "rgb(255, 178, 36)", + "rgb(240, 190, 231)", + "rgb(255, 124, 31)", + "rgb(165, 96, 255)" + ], + series: [ + { + name: "Nightingale Chart", + type: "pie", + radius: [20, 160], + center: ["50%", "50%"], + roseType: "area", + itemStyle: { + borderRadius: 8 + }, + label: { + show: false + }, + data: [23, 55, 11, 33, 22, 66] + } + ] + } + } + }, + mounted() { + setTimeout(() => { + this.loading = false + }, 3000) + + this.$nextTick(() => { + this.initLineChart() + this.initPieChart() + this.initBarChart() + }) + }, + methods: { + initLineChart() { + console.log("lineChart") + let chartDom = document.getElementById("lineChart") + this.lineChart = echarts.init(chartDom) + this.lineChart.setOption(this.lineChartOption) + this.lineChart.resize() + console.log(this.lineChart) + }, + initPieChart() { + console.log("pieChart") + let chartDom = document.getElementById("pieChart") + this.pieChart = echarts.init(chartDom) + this.pieChart.setOption(this.pieChartOption) + this.pieChart.resize() + console.log(this.pieChart) + }, + initBarChart() { + console.log("barChart") + let chartDom = document.getElementById("barChart") + this.barChart = echarts.init(chartDom) + this.barChart.setOption(this.barChartOption) + this.barChart.resize() + console.log(this.barChart) + } + } +} +</script> + +<style scoped> +@font-face { + font-family: yjsz; + src: url("./fonts/yjsz.TTF"); /* IE9+,鍙互鏄叿浣撶殑瀹為檯閾炬帴 */ +} +ul { + padding: 0; + margin: 0; +} +a { + text-decoration: none !important; +} +.clear { + clear: both; +} + +.title { + margin-top: 27px; + margin-left: 25px; + font-size: 15px; + font-weight: 700; + color: #fff; +} + +.data-view { + width: 100%; + height: 100%; + /* padding: 15px; */ + background: #0c194d; + /* background: url(/images/data-v/bg.jpg); */ + background-repeat: no-repeat; + background-size: 100% 100%; + background-size: cover; + overflow: hidden; + position: absolute; + z-index: -2; +} + +/* 鍔犺浇鏃嬭浆鍔ㄧ敾 */ +#load { + width: 100%; + height: 100%; + position: absolute; + background: url(/images/data-v/data08.png) no-repeat #061537; + background-size: cover; + top: 0; + left: 0; + z-index: 999; +} + +#load .load_img { + position: absolute; + left: calc(50% - 182px); + top: calc(50% - 182px); +} + +.load_img img { + position: absolute; + left: 0; + top: 0; +} + +.load_img .jzxz1 { + animation: xz1 8s infinite linear; +} + +@keyframes xz1 { + from { + transform: rotate(0deg); + } + 50% { + transform: rotate(180deg); + } + to { + transform: rotate(360deg); + } +} + +.load_img .jzxz2 { + animation: xz2 7s infinite linear; +} + +@keyframes xz2 { + from { + transform: rotate(0deg); + } + 50% { + transform: rotate(-180deg); + } + to { + transform: rotate(-360deg); + } +} + +.head_top { + position: relative; + background: url(/images/data-v/head.png) no-repeat center center; + height: 120px; + line-height: 120px; + font-style: italic; +} + +.head_top span { + text-align: center; + height: 100%; + display: flex; + justify-content: center; + align-items: center; + font-size: 55px; + font-weight: 700; + background: linear-gradient(0deg, #fff, #fff); + background-size: cover; + -webkit-background-clip: text; + background-clip: text; + -webkit-text-fill-color: transparent; + /* text-fill-color: transparent; font-weight: bolder; cursor: text; */ +} +.head_top img { + width: 90%; + margin: auto; +} +.head_top p { + width: 100%; + text-align: center; + color: #55bfff; + position: absolute; + bottom: -18px; + left: -10px; +} +.head_top p span { + font-family: "yjsz"; + font-size: 20px; +} + +.left-top10 { + background: url(/images/data-v/top10.png); + background-repeat: no-repeat; + background-size: 100% 100%; + height: 53%; + width: 20%; + position: absolute; + top: 12%; + left: 2%; +} + +.center { + /* background: #edeef1; */ + width: 46%; + height: 52%; + position: absolute; + left: 23%; + top: 11%; +} + +.center .center-left { + background: url(/images/data-v/center.png) no-repeat center center; + width: 75%; + height: 100%; + text-align: center; +} + +.center .center-count { + position: relative; + top: 60%; + color: #fff; +} + +.right-week { + background: url(/images/data-v/week.png); + background-repeat: no-repeat; + background-size: 100% 100%; + height: 33%; + width: 28%; + position: absolute; + top: 8%; + right: 2%; +} + +.right-device { + background: url(/images/data-v/data-m.png); + background-repeat: no-repeat; + background-size: 100% 100%; + height: 23%; + width: 28%; + position: absolute; + top: 43%; + right: 2%; +} + +.right-type { + background: url(/images/data-v/type.png); + background-repeat: no-repeat; + background-size: 100% 100%; + height: 30%; + width: 28%; + position: absolute; + bottom: 2%; + right: 2%; +} + +.bottom-line { + background: url(/images/data-v/lineup.png); + background-repeat: no-repeat; + background-size: 100% 100%; + /* height: 31%; + width: 66%; */ + height: 309px; + width: 1268px; + position: absolute; + bottom: 2%; + left: 2%; +} + +.device-count { + width: 50%; + margin-top: 35px; + margin-left: 68px; +} +</style> diff --git a/src/views/equipmentManagement/equipmentList/components/FormList.vue b/src/views/equipmentManagement/equipmentList/components/FormList.vue index 84f9ee9..7bce9b9 100644 --- a/src/views/equipmentManagement/equipmentList/components/FormList.vue +++ b/src/views/equipmentManagement/equipmentList/components/FormList.vue @@ -53,7 +53,7 @@ <el-table-column label="搴忓彿" width="80" class-name="index"> <template slot-scope="scope">{{ scope.$index + 1 + (page - 1) * size }}</template> </el-table-column> - <el-table-column prop="devId" label="璁惧ID" min-width="185" show-overflow-tooltip></el-table-column> + <el-table-column prop="devId" label="璁惧ID" min-width="210" show-overflow-tooltip></el-table-column> <el-table-column prop="devName" label="璁惧鍚嶇О" min-width="140" show-overflow-tooltip></el-table-column> <el-table-column prop="devIp" label="IP鍦板潃" min-width="150"></el-table-column> <el-table-column label="瀹夎鏃堕棿" min-width="159"> @@ -393,10 +393,6 @@ Temp = document.createElement("a") Temp.href = window.URL.createObjectURL(blob) - - console.log(result) - console.log(result.fileName) - Temp.download = window.decodeURI(result.fileName) Temp.setAttribute("download", result.fileName) @@ -421,7 +417,7 @@ .search { display: flex; justify-content: space-between; - padding: 60px 0 30px 0; + padding: 20px 0 30px 0; font-size: 14px; border-bottom: 1px solid #e9ebee; background-color: #fff; @@ -531,6 +527,10 @@ } } + .table-area { + min-height: 600px; + } + .btns { display: flex; margin: 30px 0; diff --git a/src/views/equipmentManagement/equipmentList/index.vue b/src/views/equipmentManagement/equipmentList/index.vue index cbe38fc..ed7e4d4 100644 --- a/src/views/equipmentManagement/equipmentList/index.vue +++ b/src/views/equipmentManagement/equipmentList/index.vue @@ -3,13 +3,11 @@ <!-- 椤靛ご --> <IndexHeader :opacity="false"></IndexHeader> <!-- 闈㈠寘灞� --> - <div class="heart"> - <el-breadcrumb separator=">"> - <el-breadcrumb-item :to="{ path: '/manageCenter' }" - >绠$悊涓績</el-breadcrumb-item - > + <div class="breadcrumb"> + <!-- <el-breadcrumb separator=">"> + <el-breadcrumb-item :to="{ path: '/manageCenter' }">绠$悊涓績</el-breadcrumb-item> <el-breadcrumb-item>璁惧绠$悊</el-breadcrumb-item> - </el-breadcrumb> + </el-breadcrumb> --> </div> <!-- 涓昏鍐呭 --> @@ -21,23 +19,25 @@ </template> <script> -import IndexHeader from "@/components/IndexHeader"; -import Content from "@/views/equipmentManagement/equipmentList/components/Content"; -import Footer from "@/components/Footer"; +import IndexHeader from "@/components/IndexHeader" +import Content from "@/views/equipmentManagement/equipmentList/components/Content" +import Footer from "@/components/Footer" export default { components: { IndexHeader, Content, - Footer, - }, -}; + Footer + } +} </script> <style lang="scss" scoped> .equipmentList { background-color: rgb(243, 245, 248); - + .breadcrumb { + height: 10px; + } .el-breadcrumb { margin-top: 48px; margin-bottom: 24px; @@ -47,4 +47,4 @@ } } } -</style> \ No newline at end of file +</style> diff --git a/src/views/hashrate/hashrateDetail/index.vue b/src/views/hashrate/hashrateDetail/index.vue index 01583f5..44d0dec 100644 --- a/src/views/hashrate/hashrateDetail/index.vue +++ b/src/views/hashrate/hashrateDetail/index.vue @@ -5,11 +5,12 @@ <!-- 鍏ㄥ睆鐗堝績 --> <div class="fullScreenheart"> <!-- 闈㈠寘灞� --> - <el-breadcrumb separator=">"> - <el-breadcrumb-item :to="{ path: '/manageCenter' }">绠$悊涓績</el-breadcrumb-item> - <el-breadcrumb-item>绠楀姏绠$悊</el-breadcrumb-item> - </el-breadcrumb> - + <div class="breadcrumb"> + <!-- <el-breadcrumb separator=">"> + <el-breadcrumb-item :to="{ path: '/manageCenter' }">绠$悊涓績</el-breadcrumb-item> + <el-breadcrumb-item>绠楀姏绠$悊</el-breadcrumb-item> + </el-breadcrumb> --> + </div> <!-- tab鏍� --> <div class="tabs"> <div @@ -67,7 +68,9 @@ .fullScreenheart { min-height: calc(100vh - 210px); } - + .breadcrumb { + height: 10px; + } .el-breadcrumb { margin-top: 48px; margin-bottom: 24px; diff --git a/src/views/manageCenter/index.vue b/src/views/manageCenter/index.vue index 2b64b8c..cdb76cc 100644 --- a/src/views/manageCenter/index.vue +++ b/src/views/manageCenter/index.vue @@ -295,6 +295,13 @@ path: "/search", permission: "statisticMng" }, + { + name: "缁熻鍒嗘瀽", + icon: "/images/manageCenter/search.png", + openPath: "/dataView", + path: "/dataView", + permission: "statisticMng" + }, { name: "鎺ㄩ�佺鐞�", @@ -700,9 +707,9 @@ return item == route.permission }) if (val) { - if (route.path === "/search") { + if (route.path === "/search" || route.path === "/dataView") { const { href } = this.$router.resolve({ - path: "/search" + path: route.path }) window.open(href, "_blank") return diff --git a/src/views/report/index.vue b/src/views/report/index.vue index d417d2e..0d8a62e 100644 --- a/src/views/report/index.vue +++ b/src/views/report/index.vue @@ -1,13 +1,13 @@ <template> - <div class="GB28181"> + <div class="data-report"> <!-- 椤靛ご --> <IndexHeader :opacity="false"></IndexHeader> <!-- 闈㈠寘灞� --> - <div class="heart"> - <el-breadcrumb separator=">"> + <div class="breadcrumb"> + <!-- <el-breadcrumb separator=">"> <el-breadcrumb-item :to="{ path: '/manageCenter' }">绠$悊涓績</el-breadcrumb-item> <el-breadcrumb-item>鎺ㄩ�佺鐞�</el-breadcrumb-item> - </el-breadcrumb> + </el-breadcrumb> --> </div> <!-- 涓昏鍐呭 --> @@ -35,11 +35,14 @@ </script> <style lang="scss" scoped> -.GB28181 { +.data-report { background-color: rgb(243, 245, 248); position: relative; - min-height: 200vh; + min-height: 50vh; + .breadcrumb { + height: 10px; + } .el-breadcrumb { margin-top: 48px; margin-bottom: 24px; diff --git a/src/views/video/index.vue b/src/views/video/index.vue index 1145b16..88f636d 100644 --- a/src/views/video/index.vue +++ b/src/views/video/index.vue @@ -4,12 +4,13 @@ <IndexHeader :opacity="false"></IndexHeader> <!-- 鍏ㄥ睆鐗堝績 --> <div class="fullScreenheart"> - <!-- 闈㈠寘灞� --> - <el-breadcrumb separator=">"> - <el-breadcrumb-item :to="{ path: '/manageCenter' }">绠$悊涓績</el-breadcrumb-item> - <el-breadcrumb-item>瀹炴椂鐩戞帶</el-breadcrumb-item> - </el-breadcrumb> - + <div class="breadcrumb"> + <!-- 闈㈠寘灞� --> + <!-- <el-breadcrumb separator=">"> + <el-breadcrumb-item :to="{ path: '/manageCenter' }">绠$悊涓績</el-breadcrumb-item> + <el-breadcrumb-item>瀹炴椂鐩戞帶</el-breadcrumb-item> + </el-breadcrumb> --> + </div> <!-- tab鏍� --> <Video></Video> </div> @@ -45,6 +46,9 @@ .fullScreenheart { min-height: calc(100vh - 210px); + .breadcrumb { + height: 10px; + } } .el-breadcrumb { -- Gitblit v1.8.0