|
|
|
|
<template>
|
|
|
|
|
<div class="container_box">
|
|
|
|
|
<div class="left_box">
|
|
|
|
|
<div class="left_top">
|
|
|
|
|
<div class="time_box">
|
|
|
|
|
<div style="font-size: 0.4rem; color: #fff">{{ time }}</div>
|
|
|
|
|
<div class="date_box">
|
|
|
|
|
<div style="font-size: 0.18rem; color: #fff">{{ date }}</div>
|
|
|
|
|
<div style="font-size: 0.18rem; color: #fff">{{ week }}</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="weather_box"></div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="left_cen">
|
|
|
|
|
<div class="title_box">
|
|
|
|
|
<div class="left_tit">收件量</div>
|
|
|
|
|
<div class="right_tit">
|
|
|
|
|
<div class="btn">收</div>
|
|
|
|
|
<div class="btn">发</div>
|
|
|
|
|
<div class="btn">到</div>
|
|
|
|
|
<div class="btn">派</div>
|
|
|
|
|
<div class="btn">签</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="cen_con"></div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="left_bot">
|
|
|
|
|
<div class="title_box">
|
|
|
|
|
<div class="tit">村点信息</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="table_box">
|
|
|
|
|
<table cellspacing=30>
|
|
|
|
|
<tr>
|
|
|
|
|
<th>站点名称</th>
|
|
|
|
|
<th>上行</th>
|
|
|
|
|
<th>下行</th>
|
|
|
|
|
</tr>
|
|
|
|
|
<tr v-for="item in villageData" :key="item.name">
|
|
|
|
|
<td>{{item.name}}</td>
|
|
|
|
|
<td>{{item.upData}}</td>
|
|
|
|
|
<td>{{item.downData}}</td>
|
|
|
|
|
</tr>
|
|
|
|
|
</table>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="center_box">
|
|
|
|
|
<div class="center_top">
|
|
|
|
|
<div class="top_tit">莒县物流服务中心</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="cen_data">
|
|
|
|
|
<div class="data_top">
|
|
|
|
|
<div class="left_btn">
|
|
|
|
|
<div class="txt txt_left" :class="active == 1 ? 'active' : ''" @click="changeData(1)">按日</div>
|
|
|
|
|
<div class="txt txt_right" :class="active == 2 ? 'active' : ''" @click="changeData(2)">按月</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="right_time">数据更新时间:2022-01-09</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="data_bot">
|
|
|
|
|
<div class="data_box" v-for="item in totalData" :key="item.name">
|
|
|
|
|
<div class="data_txt">{{item.name}}</div>
|
|
|
|
|
<div class="data_txt" style="font-size:0.38rem">{{item.data}}</div>
|
|
|
|
|
<div class="data_txt">环比{{item.huanbi}}</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="center_cen">
|
|
|
|
|
<PathMap></PathMap>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="cen_bot">
|
|
|
|
|
<div class="echarts">
|
|
|
|
|
<ShowMap></ShowMap>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="echarts">
|
|
|
|
|
<div id="trendChart" class="trend_box"></div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="right_box">
|
|
|
|
|
<div class="full_btn">
|
|
|
|
|
<img v-show="!isFullFlag" src="~@/assets/images/full.png" @click="clickFun" alt="">
|
|
|
|
|
<img v-show="isFullFlag" src="~@/assets/images/nofull.png" @click="clickFun" alt="">
|
|
|
|
|
</div>
|
|
|
|
|
<div class="right_top">
|
|
|
|
|
<div class="title_box">
|
|
|
|
|
<div class="tit">派件入库量占比</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="pie_box" id="pieChart"></div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="right_center">
|
|
|
|
|
<div class="title_box">
|
|
|
|
|
<div class="tit">车辆行驶里程</div>
|
|
|
|
|
</div>
|
|
|
|
|
<CarMile></CarMile>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="right_bot">
|
|
|
|
|
<div class="title_box">
|
|
|
|
|
<div class="tit">车辆报警</div>
|
|
|
|
|
</div>
|
|
|
|
|
<CarWarn></CarWarn>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
import axios from "axios";
|
|
|
|
|
import * as XLSX from "xlsx/xlsx.mjs";
|
|
|
|
|
import PathMap from '../components/pathMap';
|
|
|
|
|
import ShowMap from '../components/showmap';
|
|
|
|
|
import CarMile from '../components/carMile';
|
|
|
|
|
import CarWarn from '../components/carWarn';
|
|
|
|
|
export default {
|
|
|
|
|
components: {
|
|
|
|
|
PathMap,
|
|
|
|
|
CarMile,
|
|
|
|
|
CarWarn,
|
|
|
|
|
ShowMap,
|
|
|
|
|
},
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
timer: null,
|
|
|
|
|
day: "",
|
|
|
|
|
time: "",
|
|
|
|
|
date: "",
|
|
|
|
|
week: "",
|
|
|
|
|
isFullFlag:false,
|
|
|
|
|
isSupport:false,
|
|
|
|
|
dayData:[],
|
|
|
|
|
monthData:[],
|
|
|
|
|
totalData:[],
|
|
|
|
|
active:1,
|
|
|
|
|
xData:[],
|
|
|
|
|
yData1:[],
|
|
|
|
|
yData2:[],
|
|
|
|
|
villageData:[
|
|
|
|
|
]
|
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
created() {
|
|
|
|
|
this.getTime();
|
|
|
|
|
this.readExcelFile("http://192.168.1.35:8081/excel/wuliu.xlsx");
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
mounted() {
|
|
|
|
|
this.isSupport=document.fullscreenEnabled
|
|
|
|
|
},
|
|
|
|
|
methods: {
|
|
|
|
|
readExcelFile(url) {
|
|
|
|
|
axios
|
|
|
|
|
.get(url, {
|
|
|
|
|
responseType: "arraybuffer",
|
|
|
|
|
})
|
|
|
|
|
.then((res) => {
|
|
|
|
|
// console.log(res);
|
|
|
|
|
let data = new Uint8Array(res);
|
|
|
|
|
// console.log(data);
|
|
|
|
|
let wb = XLSX.read(data, {
|
|
|
|
|
type: "array",
|
|
|
|
|
});
|
|
|
|
|
// console.log(wb);
|
|
|
|
|
let sheets = wb.Sheets; // 获取文档数据
|
|
|
|
|
// console.log(sheets);
|
|
|
|
|
this.content = this.transformSheets(sheets);
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
transformSheets(sheets) {
|
|
|
|
|
const content1 = [];
|
|
|
|
|
for (const key in sheets) {
|
|
|
|
|
content1.push(XLSX.utils.sheet_to_json(sheets[key]));
|
|
|
|
|
}
|
|
|
|
|
console.log(content1);
|
|
|
|
|
this.dayData.push(
|
|
|
|
|
{name:'收件量',data:content1[0][0].日总收件量,huanbi:content1[0][0].收件量日总环比},
|
|
|
|
|
{name:'发件量',data:content1[0][0].日总发件量,huanbi:content1[0][0].发件量日总环比},
|
|
|
|
|
{name:'到件量',data:content1[0][0].日总到件量,huanbi:content1[0][0].到件量日总环比},
|
|
|
|
|
{name:'派件量',data:content1[0][0].日总派件量,huanbi:content1[0][0].派件量日总环比},
|
|
|
|
|
{name:'签件量',data:content1[0][0].日总签件量,huanbi:content1[0][0].签件量日总环比},
|
|
|
|
|
)
|
|
|
|
|
this.monthData.push(
|
|
|
|
|
{name:'收件量',data:content1[0][0].月总收件量,huanbi:content1[0][0].收件量月总环比},
|
|
|
|
|
{name:'发件量',data:content1[0][0].月总发件量,huanbi:content1[0][0].发件量月总环比},
|
|
|
|
|
{name:'到件量',data:content1[0][0].月总到件量,huanbi:content1[0][0].到件量月总环比},
|
|
|
|
|
{name:'派件量',data:content1[0][0].月总派件量,huanbi:content1[0][0].派件量月总环比},
|
|
|
|
|
{name:'签件量',data:content1[0][0].月总签件量,huanbi:content1[0][0].签件量月总环比},
|
|
|
|
|
)
|
|
|
|
|
this.totalData = this.dayData
|
|
|
|
|
content1[1].map(item =>{
|
|
|
|
|
this.xData.unshift(item.日期.substring(item.日期.length-5).replace('.','-'))
|
|
|
|
|
this.yData1.push(item.到件量)
|
|
|
|
|
this.yData2.push(item.派件量)
|
|
|
|
|
})
|
|
|
|
|
content1[3].map(item =>{
|
|
|
|
|
this.villageData.push({name:item.村点名称,upData:item.上行,downData:item.下行})
|
|
|
|
|
})
|
|
|
|
|
console.log(this.villageData)
|
|
|
|
|
this.$nextTick(() =>{
|
|
|
|
|
this.createChart()
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
// 按照日月更换数据
|
|
|
|
|
changeData(val){
|
|
|
|
|
this.active = val
|
|
|
|
|
if(val == 1){
|
|
|
|
|
this.totalData = this.dayData
|
|
|
|
|
}else if(val == 2){
|
|
|
|
|
this.totalData = this.monthData
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
clickFun(){
|
|
|
|
|
if (this.isSupport) {
|
|
|
|
|
if (document.fullscreenElement) {
|
|
|
|
|
//document.exitFullscreen()退出全屏模式的方法
|
|
|
|
|
document.exitFullscreen();
|
|
|
|
|
this.isFullFlag = false;
|
|
|
|
|
} else {
|
|
|
|
|
//requestFullscreen(),请求全屏的方法
|
|
|
|
|
document.documentElement.requestFullscreen();
|
|
|
|
|
this.isFullFlag = true;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
console.log(this.isFullFlag)
|
|
|
|
|
// this.isFullFlag =!this.isFullFlag
|
|
|
|
|
// if (!screenfull.enabled) {
|
|
|
|
|
// this.$message({
|
|
|
|
|
// message: 'Your browser does not work',
|
|
|
|
|
// type: 'warning'
|
|
|
|
|
// })
|
|
|
|
|
// return false
|
|
|
|
|
// }
|
|
|
|
|
// screenfull.toggle()
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
createChart() {
|
|
|
|
|
this.trendChart = this.$echarts.init(document.getElementById("trendChart"));
|
|
|
|
|
window.addEventListener("resize", function () {
|
|
|
|
|
this.trendChart.resize();
|
|
|
|
|
});
|
|
|
|
|
var option = {
|
|
|
|
|
color: ["#91cc75", "#4cabce", ],
|
|
|
|
|
title: {
|
|
|
|
|
text: "仓库收件量趋势",
|
|
|
|
|
textStyle: {
|
|
|
|
|
fontSize: 15,
|
|
|
|
|
color: "#fff",
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
legend: {
|
|
|
|
|
data: ["到件量", "派件量"],
|
|
|
|
|
textStyle: {
|
|
|
|
|
color: "#fff",
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
tooltip: {
|
|
|
|
|
trigger: "axis",
|
|
|
|
|
},
|
|
|
|
|
grid: {
|
|
|
|
|
left: "3%",
|
|
|
|
|
right: "4%",
|
|
|
|
|
bottom: "3%",
|
|
|
|
|
containLabel: true,
|
|
|
|
|
},
|
|
|
|
|
xAxis: {
|
|
|
|
|
type: "category",
|
|
|
|
|
boundaryGap: false,
|
|
|
|
|
data: this.xData,
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: {
|
|
|
|
|
color: "#fff"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
yAxis: {
|
|
|
|
|
type: "value",
|
|
|
|
|
axisLabel: {
|
|
|
|
|
show: true,
|
|
|
|
|
color: "#fff",
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
series: [
|
|
|
|
|
{
|
|
|
|
|
name: "到件量",
|
|
|
|
|
type: "line",
|
|
|
|
|
smooth: true,
|
|
|
|
|
data: this.yData1,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: "派件量",
|
|
|
|
|
type: "line",
|
|
|
|
|
smooth: true,
|
|
|
|
|
data:this.yData2,
|
|
|
|
|
},
|
|
|
|
|
],
|
|
|
|
|
};
|
|
|
|
|
this.trendChart.setOption(option);
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
fn(str) {
|
|
|
|
|
let num = null;
|
|
|
|
|
str >= 10 ? (num = str) : (num = "0" + str);
|
|
|
|
|
return num;
|
|
|
|
|
},
|
|
|
|
|
getWeek(e) {
|
|
|
|
|
let arr = ["周日", "周一", "周二", "周三", "周四", "周五", "周六"];
|
|
|
|
|
this.week = arr[e];
|
|
|
|
|
},
|
|
|
|
|
getTime() {
|
|
|
|
|
//获取当前时间
|
|
|
|
|
this.timer = setInterval(() => {
|
|
|
|
|
var date = new Date();
|
|
|
|
|
var year = date.getFullYear(); //当前年份
|
|
|
|
|
var month = date.getMonth(); //当前月份
|
|
|
|
|
var data = date.getDate(); //天
|
|
|
|
|
var hours = date.getHours(); //小时
|
|
|
|
|
var minute = date.getMinutes(); //分
|
|
|
|
|
var second = date.getSeconds(); //秒
|
|
|
|
|
this.day = date.getDay(); //获取当前星期几
|
|
|
|
|
this.getWeek(this.day);
|
|
|
|
|
this.time = this.fn(hours) + ":" + this.fn(minute) + ":" + this.fn(second);
|
|
|
|
|
this.date = year + "/" + (month + 1) + "/" + data;
|
|
|
|
|
}, 1000);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
};
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
|
|
.container_box {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
position: absolute;
|
|
|
|
|
background: url(~@/assets/images/index_bg.png);
|
|
|
|
|
background-size: 100% 100%;
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
|
|
.left_box {
|
|
|
|
|
width: 25%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
background: url(~@/assets/images/line_img.png) top right repeat-y;
|
|
|
|
|
|
|
|
|
|
.left_top {
|
|
|
|
|
width: 90%;
|
|
|
|
|
height: 12%;
|
|
|
|
|
border: 1px solid #0e94ea;
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
margin-top: 0.1rem;
|
|
|
|
|
|
|
|
|
|
.time_box {
|
|
|
|
|
width: 49%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
color: #fff;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: space-around;
|
|
|
|
|
|
|
|
|
|
.date_box {
|
|
|
|
|
width: 100%;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-around;
|
|
|
|
|
align-items: center;
|
|
|
|
|
color: #fff;
|
|
|
|
|
font-size: 0.18rem;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.left_cen {
|
|
|
|
|
width: 90%;
|
|
|
|
|
height: 45%;
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
margin-top: 0.1rem;
|
|
|
|
|
.title_box {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 0.42rem;
|
|
|
|
|
background: url(~@/assets/images/box_title.png) top left no-repeat;
|
|
|
|
|
background-size: 100% 100%;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
|
|
.left_tit {
|
|
|
|
|
color: #fff;
|
|
|
|
|
width: 30%;
|
|
|
|
|
display: flex;
|
|
|
|
|
padding-left: 0.4rem;
|
|
|
|
|
align-items: center;
|
|
|
|
|
font-size: 0.2rem;
|
|
|
|
|
}
|
|
|
|
|
.right_tit {
|
|
|
|
|
width: 65%;
|
|
|
|
|
color: #fff;
|
|
|
|
|
display: flex;
|
|
|
|
|
height: 70%;
|
|
|
|
|
border: 0.5px solid #0e94ea;
|
|
|
|
|
border-radius: 10px;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
align-items: center;
|
|
|
|
|
margin-right: 0.3rem;
|
|
|
|
|
|
|
|
|
|
.btn {
|
|
|
|
|
width: 20%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
border-right: 0.5px solid #0e94ea;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
font-size: 0.18rem;
|
|
|
|
|
color: #fff;
|
|
|
|
|
|
|
|
|
|
&:last-child {
|
|
|
|
|
border-right: none;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.cen_con {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 89%;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.left_bot {
|
|
|
|
|
width: 90%;
|
|
|
|
|
height: 39%;
|
|
|
|
|
// background: red;
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
margin-top: 0.1rem;
|
|
|
|
|
|
|
|
|
|
.title_box {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 0.42rem;
|
|
|
|
|
background: url(~@/assets/images/box_title.png) top left no-repeat;
|
|
|
|
|
background-size: 100% 100%;
|
|
|
|
|
|
|
|
|
|
.tit {
|
|
|
|
|
width: 30%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
font-size: 0.2rem;
|
|
|
|
|
color: #fff;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
padding-left: 0.4rem;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.table_box{
|
|
|
|
|
width: 100%;
|
|
|
|
|
height:88%;
|
|
|
|
|
overflow-y:auto ;
|
|
|
|
|
}
|
|
|
|
|
table{
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
|
|
|
|
tr{
|
|
|
|
|
th{
|
|
|
|
|
font-size: 0.18rem;
|
|
|
|
|
color: #fff;
|
|
|
|
|
padding: 0.1rem 0;
|
|
|
|
|
|
|
|
|
|
&:first-child{
|
|
|
|
|
width: 40%;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
td{
|
|
|
|
|
font-size:0.18rem;
|
|
|
|
|
color: #fff;
|
|
|
|
|
padding: 0.08rem 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.center_box {
|
|
|
|
|
width: 45%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
|
|
|
|
.center_top{
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 8.8%;
|
|
|
|
|
background: red;
|
|
|
|
|
background: url(~@/assets/images/title_border.png) bottom center no-repeat;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
|
|
.top_tit{
|
|
|
|
|
color: #cdddf7;
|
|
|
|
|
font-size: 0.52rem;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.cen_data{
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 15%;
|
|
|
|
|
|
|
|
|
|
.data_top{
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 30%;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
|
|
|
|
.left_btn{
|
|
|
|
|
width: 15%;
|
|
|
|
|
height: 65%;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
align-items: center;
|
|
|
|
|
border-radius: 0.1rem;
|
|
|
|
|
margin-left: 0.1rem;
|
|
|
|
|
|
|
|
|
|
.txt{
|
|
|
|
|
font-size: 0.18rem;
|
|
|
|
|
color: #fff;
|
|
|
|
|
width: 50%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
// border-right: 1px solid #0e94ea;
|
|
|
|
|
border: 1px solid #0e94ea;
|
|
|
|
|
align-items: center;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
|
|
|
|
|
&:last-child{
|
|
|
|
|
border-left: none;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.txt_left{
|
|
|
|
|
border-top-left-radius: 0.1rem;
|
|
|
|
|
border-bottom-left-radius: 0.1rem;
|
|
|
|
|
}
|
|
|
|
|
.txt_right{
|
|
|
|
|
border-top-right-radius: 0.1rem;
|
|
|
|
|
border-bottom-right-radius: 0.1rem;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.active{
|
|
|
|
|
background:#0e94ea ;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.right_time{
|
|
|
|
|
width: 25%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
color: #fff;
|
|
|
|
|
font-size: 0.18rem;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.data_bot{
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 70%;
|
|
|
|
|
display: flex;
|
|
|
|
|
// background: rebeccapurple;
|
|
|
|
|
|
|
|
|
|
.data_box{
|
|
|
|
|
width: 20%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
// background: green;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
justify-content: space-around;
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
|
|
.data_txt{
|
|
|
|
|
color: #fff;
|
|
|
|
|
font-size: 0.18rem;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.center_cen{
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 46%;
|
|
|
|
|
background: red;
|
|
|
|
|
}
|
|
|
|
|
.cen_bot{
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 30%;
|
|
|
|
|
display: flex;
|
|
|
|
|
// background: green;
|
|
|
|
|
|
|
|
|
|
.echarts{
|
|
|
|
|
width: 50%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
.trend_box{
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.right_box {
|
|
|
|
|
width: 30%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
background: url(~@/assets/images/line_img.png) top left repeat-y;
|
|
|
|
|
|
|
|
|
|
.full_btn{
|
|
|
|
|
width: 92%;
|
|
|
|
|
height: 3%;
|
|
|
|
|
// background: red;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: flex-end;
|
|
|
|
|
align-items: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.right_top{
|
|
|
|
|
width: 92%;
|
|
|
|
|
height: 30%;
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
margin-top: 0.1rem;
|
|
|
|
|
|
|
|
|
|
.title_box {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 0.42rem;
|
|
|
|
|
background: url(~@/assets/images/box_title.png) top left no-repeat;
|
|
|
|
|
background-size:100% 100% ;
|
|
|
|
|
|
|
|
|
|
.tit {
|
|
|
|
|
width: 30%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
font-size: 0.2rem;
|
|
|
|
|
color: #fff;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
padding-left: 0.4rem;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.pie_box{
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 80%;
|
|
|
|
|
// background: red;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.right_center{
|
|
|
|
|
width: 92%;
|
|
|
|
|
height: 45%;
|
|
|
|
|
// background: red;
|
|
|
|
|
margin:0 auto;
|
|
|
|
|
.title_box {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 0.42rem;
|
|
|
|
|
background: url(~@/assets/images/box_title.png) top left no-repeat;
|
|
|
|
|
background-size:100% 100% ;
|
|
|
|
|
|
|
|
|
|
.tit {
|
|
|
|
|
width: 30%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
font-size: 0.2rem;
|
|
|
|
|
color: #fff;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
padding-left: 0.4rem;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.right_bot{
|
|
|
|
|
width: 92%;
|
|
|
|
|
height: 20%;
|
|
|
|
|
// background: green;
|
|
|
|
|
margin:0 auto;
|
|
|
|
|
.title_box {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 0.42rem;
|
|
|
|
|
background: url(~@/assets/images/box_title.png) top left no-repeat;
|
|
|
|
|
background-size:100% 100% ;
|
|
|
|
|
|
|
|
|
|
.tit {
|
|
|
|
|
width: 30%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
font-size: 0.2rem;
|
|
|
|
|
color: #fff;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
padding-left: 0.4rem;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</style>
|