| | |
| | | <div class="products"> |
| | | <div class="title">全部产品</div> |
| | | <div class="productList"> |
| | | <div |
| | | class="productItem" |
| | | v-for="(item, index) in productList" |
| | | :key="index" |
| | | @click="jump(item)" |
| | | > |
| | | <div class="productItem" v-for="(item, index) in productList" :key="index" @click="jump(item)"> |
| | | <img :src="item.icon" alt="" /> |
| | | <div class="name">{{ item.name }}</div> |
| | | </div> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import IndexHeader from "@/components/IndexHeader"; |
| | | import Footer from "@/components/Footer"; |
| | | import * as echarts from "echarts"; |
| | | import "echarts/map/js/china.js"; |
| | | import IndexHeader from "@/components/IndexHeader" |
| | | import Footer from "@/components/Footer" |
| | | import * as echarts from "echarts" |
| | | import "echarts/map/js/china.js" |
| | | |
| | | export default { |
| | | components: { |
| | | IndexHeader, |
| | | Footer, |
| | | Footer |
| | | }, |
| | | created() { |
| | | this.getInfo(); |
| | | this.getInfo() |
| | | }, |
| | | mounted() { |
| | | // this.initBar(); |
| | | this.initMap(); |
| | | this.initMap() |
| | | // this.initScatter(); |
| | | // this.initPie(); |
| | | }, |
| | |
| | | icon: "/images/manageCenter/manage.png", |
| | | openPath: "/equipmentManagement", |
| | | path: "/equipmentList", |
| | | permission: "deviceMng", |
| | | permission: "deviceMng" |
| | | }, |
| | | |
| | | { |
| | |
| | | icon: "/images/manageCenter/manage2.png", |
| | | openPath: "/hashrate", |
| | | path: "/hashrateDetail", |
| | | permission: "analysisMng", |
| | | permission: "analysisMng" |
| | | }, |
| | | |
| | | { |
| | |
| | | icon: "/images/manageCenter/search.png", |
| | | openPath: "/searchOpen", |
| | | path: "/search", |
| | | permission: "statisticMng", |
| | | permission: "statisticMng" |
| | | }, |
| | | |
| | | /* { |
| | | name: "GB28181", |
| | | icon: "/images/manageCenter/search.png", |
| | | openPath: "/GB28181Open", |
| | | path: "/GB28181Open", |
| | | permission: "statisticMng", |
| | | }, */ |
| | | { |
| | | name: "告警管理", |
| | | icon: "/images/manageCenter/manage2.png", |
| | | openPath: "/report", |
| | | path: "/report", |
| | | permission: "statisticMng" |
| | | } |
| | | ], |
| | | timeList: [ |
| | | { name: "20.103服务器", time: "9天12小时44分39秒" }, |
| | |
| | | { name: "20.103服务器", time: "9天12小时44分39秒" }, |
| | | { name: "20.103服务器", time: "9天12小时44分39秒" }, |
| | | { name: "20.103服务器", time: "9天12小时44分39秒" }, |
| | | { name: "20.103服务器", time: "9天12小时44分39秒" }, |
| | | { name: "20.103服务器", time: "9天12小时44分39秒" } |
| | | ], |
| | | barOption: { |
| | | legend: { |
| | |
| | | y: "top", |
| | | itemHeight: 12, |
| | | itemWidth: 12, |
| | | icon: "circle", |
| | | icon: "circle" |
| | | }, |
| | | tooltip: {}, |
| | | dataset: { |
| | |
| | | ["16:00", 850, 30], |
| | | ["18:00", 980, 0], |
| | | ["20:00", 750, 130], |
| | | ["22:00", 750, 130], |
| | | ], |
| | | ["22:00", 750, 130] |
| | | ] |
| | | }, |
| | | xAxis: { |
| | | type: "category", |
| | | axisTick: { |
| | | show: false, |
| | | show: false |
| | | }, |
| | | axisLabel: { |
| | | color: "#666", |
| | | }, |
| | | color: "#666" |
| | | } |
| | | }, |
| | | yAxis: { |
| | | axisTick: { |
| | | show: false, |
| | | show: false |
| | | }, |
| | | axisLine: { |
| | | //y轴 |
| | | show: false, |
| | | show: false |
| | | }, |
| | | axisLabel: { |
| | | color: "#666", |
| | | color: "#666" |
| | | }, |
| | | splitLine: { |
| | | //网格线 |
| | | lineStyle: { |
| | | color: "rgb(230, 230, 230)", |
| | | type: "dashed", //设置网格线类型 dotted:虚线 solid:实线 |
| | | type: "dashed" //设置网格线类型 dotted:虚线 solid:实线 |
| | | }, |
| | | show: true, //隐藏或显示 |
| | | }, |
| | | show: true //隐藏或显示 |
| | | } |
| | | }, |
| | | // Declare several bar series, each will be mapped |
| | | // to a column of dataset.source by default. |
| | |
| | | { |
| | | offset: 0, |
| | | color: "#0066FF", // 0% 处的颜色 |
| | | radius: ["50%", "80%"], |
| | | radius: ["50%", "80%"] |
| | | }, |
| | | { |
| | | offset: 1, |
| | | color: "rgba(0, 102, 255, 0.25)", // 100% 处的颜色 |
| | | }, |
| | | color: "rgba(0, 102, 255, 0.25)" // 100% 处的颜色 |
| | | } |
| | | ], |
| | | global: false, // 缺省为 false |
| | | global: false // 缺省为 false |
| | | }, |
| | | itemStyle: { |
| | | //柱形图圆角,鼠标移上去效果,如果只是一个数字则说明四个参数全部设置为那么多 |
| | | normal: { |
| | | //柱形图圆角,初始化效果 |
| | | barBorderRadius: [15, 15, 0, 0], |
| | | }, |
| | | }, |
| | | barBorderRadius: [15, 15, 0, 0] |
| | | } |
| | | } |
| | | }, |
| | | { |
| | | type: "bar", |
| | |
| | | { |
| | | offset: 0, |
| | | color: "#FF4B33", // 0% 处的颜色 |
| | | radius: ["50%", "80%"], |
| | | radius: ["50%", "80%"] |
| | | }, |
| | | { |
| | | offset: 1, |
| | | color: "rgba(255,75,51,0.25)", // 100% 处的颜色 |
| | | }, |
| | | color: "rgba(255,75,51,0.25)" // 100% 处的颜色 |
| | | } |
| | | ], |
| | | global: false, // 缺省为 false |
| | | global: false // 缺省为 false |
| | | }, |
| | | itemStyle: { |
| | | //柱形图圆角,鼠标移上去效果,如果只是一个数字则说明四个参数全部设置为那么多 |
| | | normal: { |
| | | //柱形图圆角,初始化效果 |
| | | barBorderRadius: [15, 15, 0, 0], |
| | | }, |
| | | }, |
| | | }, |
| | | ], |
| | | barBorderRadius: [15, 15, 0, 0] |
| | | } |
| | | } |
| | | } |
| | | ] |
| | | }, |
| | | mapOption: { |
| | | visualMap: { |
| | |
| | | min: 0, |
| | | max: 10, |
| | | inRange: { |
| | | color: ["#FCFDFF", "#0065FF"], |
| | | color: ["#FCFDFF", "#0065FF"] |
| | | }, |
| | | itemWidth: 56, |
| | | itemHeight: 200, |
| | | text: ["10", "0"], |
| | | calculable: false, |
| | | calculable: false |
| | | }, |
| | | geo: { |
| | | //中国地图设置 |
| | | map: "china", |
| | | scaleLimit: { |
| | | min: 1, |
| | | max: 2, |
| | | max: 2 |
| | | }, |
| | | zoom: 1, |
| | | top: 120, |
| | | label: { |
| | | normal: { |
| | | show: false, |
| | | show: false |
| | | }, |
| | | emphasis: { |
| | | show: false, |
| | | }, |
| | | }, |
| | | show: false |
| | | } |
| | | } |
| | | }, |
| | | tooltip: { |
| | | //显示悬浮窗口 |
| | |
| | | backgroundColor: "#FFFFFF", |
| | | textStyle: { |
| | | color: "#0064FF", |
| | | fontSize: "14", |
| | | fontSize: "14" |
| | | }, |
| | | formatter: function (params) { |
| | | const msg = params.data.name + ":" + params.data.value; |
| | | return msg; |
| | | }, |
| | | formatter: function(params) { |
| | | const msg = params.data.name + ":" + params.data.value |
| | | return msg |
| | | } |
| | | }, |
| | | |
| | | series: [ |
| | |
| | | import: 10, |
| | | compare: 10, |
| | | common: 40, |
| | | specail: 20, |
| | | specail: 20 |
| | | }, |
| | | { |
| | | name: "北京", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "天津", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "上海", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "重庆", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "河北", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "河南", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "云南", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "辽宁", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "黑龙江", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "湖南", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "安徽", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "山东", |
| | | value: 4, |
| | | value: 4 |
| | | }, |
| | | { |
| | | name: "新疆", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "江苏", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "浙江", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "江西", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "湖北", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "广西", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "甘肃", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "山西", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "内蒙古", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "陕西", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "吉林", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "福建", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "贵州", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "广东", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "青海", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "西藏", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "四川", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "宁夏", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "海南", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "台湾", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "香港", |
| | | value: 0, |
| | | value: 0 |
| | | }, |
| | | { |
| | | name: "澳门", |
| | | value: 0, |
| | | }, |
| | | ], |
| | | }, |
| | | ], |
| | | value: 0 |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | }, |
| | | scatterOption: { |
| | | xAxis: { |
| | | axisTick: { |
| | | show: false, |
| | | show: false |
| | | }, |
| | | axisLine: { |
| | | //y轴 |
| | | show: false, |
| | | show: false |
| | | }, |
| | | splitLine: { |
| | | //网格线 |
| | | lineStyle: { |
| | | color: "rgb(230, 230, 230)", |
| | | type: "dashed", //设置网格线类型 dotted:虚线 solid:实线 |
| | | type: "dashed" //设置网格线类型 dotted:虚线 solid:实线 |
| | | }, |
| | | show: true, //隐藏或显示 |
| | | }, |
| | | show: true //隐藏或显示 |
| | | } |
| | | }, |
| | | yAxis: { |
| | | axisTick: { |
| | | show: false, |
| | | show: false |
| | | }, |
| | | axisLine: { |
| | | //y轴 |
| | | show: false, |
| | | show: false |
| | | }, |
| | | splitLine: { |
| | | //网格线 |
| | | lineStyle: { |
| | | color: "rgb(230, 230, 230)", |
| | | type: "dashed", //设置网格线类型 dotted:虚线 solid:实线 |
| | | type: "dashed" //设置网格线类型 dotted:虚线 solid:实线 |
| | | }, |
| | | show: true, //隐藏或显示 |
| | | }, |
| | | show: true //隐藏或显示 |
| | | } |
| | | }, |
| | | |
| | | series: [ |
| | |
| | | [12.0, 6.26], |
| | | [12.0, 8.84], |
| | | [7.08, 5.82], |
| | | [5.02, 5.68], |
| | | [5.02, 5.68] |
| | | ], |
| | | color: "rgba(0, 101, 255, 0.5)", |
| | | type: "scatter", |
| | | }, |
| | | ], |
| | | type: "scatter" |
| | | } |
| | | ] |
| | | }, |
| | | pieOption: { |
| | | color: [ |
| | |
| | | "rgb(255, 178, 36)", |
| | | "rgb(0, 190, 231)", |
| | | "rgb(255, 124, 31)", |
| | | "rgb(165, 96, 255)", |
| | | "rgb(165, 96, 255)" |
| | | ], |
| | | series: [ |
| | | { |
| | |
| | | center: ["50%", "50%"], |
| | | roseType: "area", |
| | | itemStyle: { |
| | | borderRadius: 8, |
| | | borderRadius: 8 |
| | | }, |
| | | data: [ |
| | | { value: 22.45, name: "离岗" }, |
| | |
| | | { value: 17.96, name: "车辆识别" }, |
| | | { value: 15.71, name: "睡岗" }, |
| | | { value: 12.86, name: "安全帽检测" }, |
| | | { value: 10.82, name: "个体静止" }, |
| | | ], |
| | | }, |
| | | ], |
| | | { value: 10.82, name: "个体静止" } |
| | | ] |
| | | } |
| | | ] |
| | | }, |
| | | dataList: [ |
| | | { |
| | |
| | | mem: "78%", |
| | | gpu: "60%", |
| | | cpu: "23%", |
| | | dist: "10%", |
| | | dist: "10%" |
| | | }, |
| | | { |
| | | name: "2.154", |
| | |
| | | mem: "78%", |
| | | gpu: "60%", |
| | | cpu: "23%", |
| | | dist: "10%", |
| | | dist: "10%" |
| | | }, |
| | | { |
| | | name: "2.154", |
| | |
| | | mem: "78%", |
| | | gpu: "60%", |
| | | cpu: "23%", |
| | | dist: "10%", |
| | | dist: "10%" |
| | | }, |
| | | { |
| | | name: "2.154", |
| | |
| | | mem: "78%", |
| | | gpu: "60%", |
| | | cpu: "23%", |
| | | dist: "10%", |
| | | dist: "10%" |
| | | }, |
| | | { |
| | | name: "2.154", |
| | |
| | | mem: "78%", |
| | | gpu: "60%", |
| | | cpu: "23%", |
| | | dist: "10%", |
| | | dist: "10%" |
| | | }, |
| | | { |
| | | name: "2.154", |
| | |
| | | mem: "78%", |
| | | gpu: "60%", |
| | | cpu: "23%", |
| | | dist: "10%", |
| | | dist: "10%" |
| | | }, |
| | | { |
| | | name: "2.154", |
| | |
| | | mem: "78%", |
| | | gpu: "60%", |
| | | cpu: "23%", |
| | | dist: "10%", |
| | | dist: "10%" |
| | | }, |
| | | { |
| | | name: "2.154", |
| | |
| | | mem: "78%", |
| | | gpu: "60%", |
| | | cpu: "23%", |
| | | dist: "10%", |
| | | }, |
| | | dist: "10%" |
| | | } |
| | | ], |
| | | page: 1, |
| | | size: 5, |
| | | total: 30, |
| | | }; |
| | | total: 30 |
| | | } |
| | | }, |
| | | methods: { |
| | | getInfo() { |
| | | if (sessionStorage.getItem("userInfo")) { |
| | | this.userName = JSON.parse(sessionStorage.getItem("userInfo")).username; |
| | | this.userName = JSON.parse(sessionStorage.getItem("userInfo")).username |
| | | } |
| | | |
| | | let date = new Date(); |
| | | let year = date.getFullYear(); //获取完整的年份(4位) |
| | | let month = date.getMonth() + 1; //获取当前月份(0-11,0代表1月) |
| | | let day = date.getDate(); //获取当前月份(0-11,0代表1月) |
| | | let weekDay = ""; |
| | | let date = new Date() |
| | | let year = date.getFullYear() //获取完整的年份(4位) |
| | | let month = date.getMonth() + 1 //获取当前月份(0-11,0代表1月) |
| | | let day = date.getDate() //获取当前月份(0-11,0代表1月) |
| | | let weekDay = "" |
| | | switch (date.getDay()) { |
| | | case 0: |
| | | weekDay = "星期日"; |
| | | break; |
| | | weekDay = "星期日" |
| | | break |
| | | |
| | | case 1: |
| | | weekDay = "星期一"; |
| | | break; |
| | | weekDay = "星期一" |
| | | break |
| | | |
| | | case 2: |
| | | weekDay = "星期二"; |
| | | break; |
| | | weekDay = "星期二" |
| | | break |
| | | |
| | | case 3: |
| | | weekDay = "星期三"; |
| | | break; |
| | | weekDay = "星期三" |
| | | break |
| | | |
| | | case 4: |
| | | weekDay = "星期四"; |
| | | break; |
| | | weekDay = "星期四" |
| | | break |
| | | |
| | | case 5: |
| | | weekDay = "星期五"; |
| | | break; |
| | | weekDay = "星期五" |
| | | break |
| | | |
| | | case 6: |
| | | weekDay = "星期六"; |
| | | break; |
| | | weekDay = "星期六" |
| | | break |
| | | } |
| | | this.timeMsg = |
| | | "今日, " + year + "年" + month + "月" + day + "日" + weekDay; |
| | | this.timeMsg = "今日, " + year + "年" + month + "月" + day + "日" + weekDay |
| | | }, |
| | | select(value, type) { |
| | | this[type] = value; |
| | | this[type] = value |
| | | }, |
| | | initBar() { |
| | | let bartDom = document.getElementById("bar"); |
| | | let myChart = echarts.init(bartDom); |
| | | myChart.setOption(this.barOption); |
| | | let bartDom = document.getElementById("bar") |
| | | let myChart = echarts.init(bartDom) |
| | | myChart.setOption(this.barOption) |
| | | }, |
| | | initMap() { |
| | | let mapDom = document.getElementById("mapChart"); |
| | | let myChart = echarts.init(mapDom); |
| | | myChart.setOption(this.mapOption); |
| | | let mapDom = document.getElementById("mapChart") |
| | | let myChart = echarts.init(mapDom) |
| | | myChart.setOption(this.mapOption) |
| | | }, |
| | | initScatter() { |
| | | let scatterDom = document.getElementById("scatterChart"); |
| | | let myChart = echarts.init(scatterDom); |
| | | myChart.setOption(this.scatterOption); |
| | | let scatterDom = document.getElementById("scatterChart") |
| | | let myChart = echarts.init(scatterDom) |
| | | myChart.setOption(this.scatterOption) |
| | | }, |
| | | initPie() { |
| | | let pieDom = document.getElementById("pieChart"); |
| | | let myChart = echarts.init(pieDom); |
| | | myChart.setOption(this.pieOption); |
| | | let pieDom = document.getElementById("pieChart") |
| | | let myChart = echarts.init(pieDom) |
| | | myChart.setOption(this.pieOption) |
| | | }, |
| | | jump(route) { |
| | | const userInfo = JSON.parse(sessionStorage.getItem("userInfo")); |
| | | const userInfo = JSON.parse(sessionStorage.getItem("userInfo")) |
| | | |
| | | const val = userInfo.permissions.find((item) => { |
| | | return item == route.permission; |
| | | }); |
| | | return item == route.permission |
| | | }) |
| | | if (val) { |
| | | if (route.path === "/search") { |
| | | const { href } = this.$router.resolve({ |
| | | path: "/search", |
| | | }); |
| | | window.open(href, "_blank"); |
| | | return; |
| | | path: "/search" |
| | | }) |
| | | window.open(href, "_blank") |
| | | return |
| | | } |
| | | this.$router.push(route.path); |
| | | this.$router.push(route.path) |
| | | } else if (!userInfo.parentId) { |
| | | this.$router.push(route.openPath); |
| | | this.$router.push(route.openPath) |
| | | } |
| | | }, |
| | | refrash() {}, |
| | | handleSizeChange() {}, |
| | | }, |
| | | }; |
| | | handleSizeChange() {} |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | |
| | | } |
| | | |
| | | &:nth-child(1) { |
| | | background: linear-gradient( |
| | | 108deg, |
| | | #0065ff -8%, |
| | | #0065ff -8%, |
| | | #99cfff 100%, |
| | | #99cfff 100% |
| | | ); |
| | | background: linear-gradient(108deg, #0065ff -8%, #0065ff -8%, #99cfff 100%, #99cfff 100%); |
| | | } |
| | | |
| | | &:nth-child(2) { |
| | | background: linear-gradient( |
| | | 108deg, |
| | | #ff6a00 0%, |
| | | #ff6a00 0%, |
| | | #ffb599 100%, |
| | | #ffb599 100% |
| | | ); |
| | | background: linear-gradient(108deg, #ff6a00 0%, #ff6a00 0%, #ffb599 100%, #ffb599 100%); |
| | | } |
| | | |
| | | &:nth-child(3) { |
| | | background: linear-gradient( |
| | | 108deg, |
| | | #6d44e5 1%, |
| | | #6d44e5 1%, |
| | | #b299ff 100%, |
| | | #b299ff 100% |
| | | ); |
| | | background: linear-gradient(108deg, #6d44e5 1%, #6d44e5 1%, #b299ff 100%, #b299ff 100%); |
| | | } |
| | | |
| | | &:nth-child(4) { |
| | | background: linear-gradient( |
| | | 108deg, |
| | | #40b63a 0%, |
| | | #40b63a 0%, |
| | | #89e5bc 100%, |
| | | #89e5bc 100% |
| | | ); |
| | | background: linear-gradient(108deg, #40b63a 0%, #40b63a 0%, #89e5bc 100%, #89e5bc 100%); |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | } |
| | | } |
| | | </style> |
| | | </style> |