|
|
@ -1,502 +0,0 @@
|
|
|
|
<template>
|
|
|
|
|
|
|
|
<div class="stritlBox">
|
|
|
|
|
|
|
|
<div class="stritl_left">
|
|
|
|
|
|
|
|
<div class="strLeftTop">
|
|
|
|
|
|
|
|
<h3>{{ numberUnits.name }}</h3>
|
|
|
|
|
|
|
|
<bar
|
|
|
|
|
|
|
|
v-if="flag.baizhang"
|
|
|
|
|
|
|
|
:legendData="unitXData"
|
|
|
|
|
|
|
|
:seriesData="unitYData"
|
|
|
|
|
|
|
|
:boxStyle="numberUnits.boxStyle"
|
|
|
|
|
|
|
|
></bar>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="strLeftMid">
|
|
|
|
|
|
|
|
<h3>{{ hazardClass.name }}</h3>
|
|
|
|
|
|
|
|
<pie
|
|
|
|
|
|
|
|
v-if="flag.baizhang"
|
|
|
|
|
|
|
|
:pieData="hazardPieData"
|
|
|
|
|
|
|
|
:boxStyle="hazardClass.boxStyle"
|
|
|
|
|
|
|
|
></pie>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="strLeftBottom">
|
|
|
|
|
|
|
|
<h3>{{ monitLine.name }}</h3>
|
|
|
|
|
|
|
|
<bar
|
|
|
|
|
|
|
|
v-if="flag.baizhang"
|
|
|
|
|
|
|
|
:legendData="lineXData"
|
|
|
|
|
|
|
|
:seriesData="lineYData"
|
|
|
|
|
|
|
|
:boxStyle="monitLine.boxStyle"
|
|
|
|
|
|
|
|
></bar>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="stritl_center">
|
|
|
|
|
|
|
|
<div class="strCenterTop">
|
|
|
|
|
|
|
|
<mapChart></mapChart>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="strCenterbottom">
|
|
|
|
|
|
|
|
<div class="bottomL">
|
|
|
|
|
|
|
|
<h3>{{ hazardType.name }}</h3>
|
|
|
|
|
|
|
|
<horizontalBar
|
|
|
|
|
|
|
|
:legendData="hazardTypeXData"
|
|
|
|
|
|
|
|
:seriesData="hazardTypeYData"
|
|
|
|
|
|
|
|
:boxStyle="hazardType.boxStyle"
|
|
|
|
|
|
|
|
></horizontalBar>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="bottomM">
|
|
|
|
|
|
|
|
<h3>{{ deviceInfo.name }}</h3>
|
|
|
|
|
|
|
|
<div class="infoBox">
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
|
|
|
<span>在运数</span>
|
|
|
|
|
|
|
|
<span>{{ infoData.deviceCount }}</span>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
|
|
|
<span>在线数</span>
|
|
|
|
|
|
|
|
<span>{{ infoData.hasPhotoCount }}</span>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
|
|
|
<span>杆塔覆盖率</span>
|
|
|
|
|
|
|
|
<span>{{ infoData.deviceCoverage }}%</span>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
|
|
|
<span>在线率</span>
|
|
|
|
|
|
|
|
<span>{{ infoData.hasPhotoRate }}%</span>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="bottomR">
|
|
|
|
|
|
|
|
<h3>{{ deviceOnline.name }}</h3>
|
|
|
|
|
|
|
|
<pie
|
|
|
|
|
|
|
|
:pieData="deviceOnline.onlineData"
|
|
|
|
|
|
|
|
:boxStyle="deviceOnline.boxStyle"
|
|
|
|
|
|
|
|
></pie>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="stritl_right">
|
|
|
|
|
|
|
|
<div class="strRightTop">
|
|
|
|
|
|
|
|
<h3>线路分布(总计:5)</h3>
|
|
|
|
|
|
|
|
<div class="tableBox">
|
|
|
|
|
|
|
|
<el-table :data="lineAllData" style="width: 100%">
|
|
|
|
|
|
|
|
<el-table-column
|
|
|
|
|
|
|
|
prop="voltageLevelStr"
|
|
|
|
|
|
|
|
label="电压等级"
|
|
|
|
|
|
|
|
align="center"
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
<el-table-column prop="lineCount" label="线路数" align="center">
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
<el-table-column prop="towerCount" label="安装数" align="center">
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
<el-table-column
|
|
|
|
|
|
|
|
prop="deviceCoverage"
|
|
|
|
|
|
|
|
label="安装覆盖率"
|
|
|
|
|
|
|
|
align="center"
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
</el-table>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<!-- <div class="strRightMid">5</div> -->
|
|
|
|
|
|
|
|
<div class="strRightBottom">
|
|
|
|
|
|
|
|
<h3>{{ patrolOpinions.name }}</h3>
|
|
|
|
|
|
|
|
<div class="suggest">
|
|
|
|
|
|
|
|
<p class="attention"><span>注意:</span>{{ patrolOpinions.month }}</p>
|
|
|
|
|
|
|
|
<p class="info">
|
|
|
|
|
|
|
|
<span>{{ patrolOpinions.info1 }}</span>
|
|
|
|
|
|
|
|
<span>{{ patrolOpinions.info2 }}</span>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<h4>往年同期隐患比例分布图</h4>
|
|
|
|
|
|
|
|
<radar
|
|
|
|
|
|
|
|
:radarName="radarName"
|
|
|
|
|
|
|
|
:radarValue="radarValue"
|
|
|
|
|
|
|
|
:boxStyle="patrolOpinions.boxStyle"
|
|
|
|
|
|
|
|
:radarTitle="radarTitle"
|
|
|
|
|
|
|
|
></radar>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
|
|
|
import bar from "./chartFiles/bar";
|
|
|
|
|
|
|
|
import horizontalBar from "./chartFiles/horizontalBar";
|
|
|
|
|
|
|
|
import pie from "./chartFiles/pie";
|
|
|
|
|
|
|
|
import radar from "./chartFiles/radar";
|
|
|
|
|
|
|
|
import mapChart from "./chartFiles/mapChart";
|
|
|
|
|
|
|
|
import {
|
|
|
|
|
|
|
|
getLineDataByVoltage,
|
|
|
|
|
|
|
|
getCapturePointDataByDanger,
|
|
|
|
|
|
|
|
getHostDeviceDataByVoltage,
|
|
|
|
|
|
|
|
getPhotoAlarmDataByAlarmType,
|
|
|
|
|
|
|
|
getCompanyDeviceInfo,
|
|
|
|
|
|
|
|
getByName,
|
|
|
|
|
|
|
|
getLastYearAlarmReasons,
|
|
|
|
|
|
|
|
} from "@/utils/api/index";
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
|
|
|
data() {
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
|
|
|
name: localStorage.getItem("ms_username"),
|
|
|
|
|
|
|
|
flag: {
|
|
|
|
|
|
|
|
baizhang: false, //是否开始渲染子组件
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
//装置数量统计
|
|
|
|
|
|
|
|
unitAllData: [],
|
|
|
|
|
|
|
|
unitXData: [],
|
|
|
|
|
|
|
|
unitYData: [],
|
|
|
|
|
|
|
|
numberUnits: {
|
|
|
|
|
|
|
|
name: "装置数量统计",
|
|
|
|
|
|
|
|
boxStyle: {
|
|
|
|
|
|
|
|
width: "100%",
|
|
|
|
|
|
|
|
height: "200px",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
//监控路线统计
|
|
|
|
|
|
|
|
lineAllData: [],
|
|
|
|
|
|
|
|
lineXData: [],
|
|
|
|
|
|
|
|
lineYData: [],
|
|
|
|
|
|
|
|
monitLine: {
|
|
|
|
|
|
|
|
name: "监控路线统计",
|
|
|
|
|
|
|
|
boxStyle: {
|
|
|
|
|
|
|
|
width: "100%",
|
|
|
|
|
|
|
|
height: "200px",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
//隐患分类统计
|
|
|
|
|
|
|
|
hazardData: [],
|
|
|
|
|
|
|
|
hazardPieData: [],
|
|
|
|
|
|
|
|
hazardClass: {
|
|
|
|
|
|
|
|
name: "隐患分类统计",
|
|
|
|
|
|
|
|
boxStyle: {
|
|
|
|
|
|
|
|
width: "100%",
|
|
|
|
|
|
|
|
height: "200px",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
//隐患类型统计
|
|
|
|
|
|
|
|
hazardTypeData: [],
|
|
|
|
|
|
|
|
hazardTypeXData: [],
|
|
|
|
|
|
|
|
hazardTypeYData: [],
|
|
|
|
|
|
|
|
hazardType: {
|
|
|
|
|
|
|
|
name: "隐患类型统计",
|
|
|
|
|
|
|
|
boxStyle: {
|
|
|
|
|
|
|
|
width: "100%",
|
|
|
|
|
|
|
|
height: "160px",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
//装置信息统计
|
|
|
|
|
|
|
|
infoData: [],
|
|
|
|
|
|
|
|
deviceInfo: {
|
|
|
|
|
|
|
|
name: "装置信息统计",
|
|
|
|
|
|
|
|
infoData: [
|
|
|
|
|
|
|
|
{ value: 24, name: "在运数" },
|
|
|
|
|
|
|
|
{ value: 10, name: "在线数" },
|
|
|
|
|
|
|
|
{ value: "92.31%", name: "杆塔覆盖率" },
|
|
|
|
|
|
|
|
{ value: "41.67%", name: "在线率" },
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
deviceOnline: {
|
|
|
|
|
|
|
|
name: "装置在线统计",
|
|
|
|
|
|
|
|
onlineData: [
|
|
|
|
|
|
|
|
{ value: 55, name: "离线" },
|
|
|
|
|
|
|
|
{ value: 45, name: "在线" },
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
boxStyle: {
|
|
|
|
|
|
|
|
width: "100%",
|
|
|
|
|
|
|
|
height: "160px",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
//隐患比例分布图
|
|
|
|
|
|
|
|
patrolData: [],
|
|
|
|
|
|
|
|
radarName: [],
|
|
|
|
|
|
|
|
radarValue: [],
|
|
|
|
|
|
|
|
radarTitle: "隐患比例分布图",
|
|
|
|
|
|
|
|
patrolOpinions: {
|
|
|
|
|
|
|
|
name: "巡查意见",
|
|
|
|
|
|
|
|
month: "三月份",
|
|
|
|
|
|
|
|
info1: "1.鸟类活动开展频繁,需注意鸟类筑巢,大型鸟类驻留。",
|
|
|
|
|
|
|
|
info2:
|
|
|
|
|
|
|
|
"2.大风天气较多的季节,要注意对放风筝行为的监控,同时加强巡视对导线悬挂异物的观察。",
|
|
|
|
|
|
|
|
boxStyle: {
|
|
|
|
|
|
|
|
width: "100%",
|
|
|
|
|
|
|
|
height: "160px",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
components: {
|
|
|
|
|
|
|
|
bar,
|
|
|
|
|
|
|
|
horizontalBar,
|
|
|
|
|
|
|
|
pie,
|
|
|
|
|
|
|
|
radar,
|
|
|
|
|
|
|
|
mapChart,
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
computed: {
|
|
|
|
|
|
|
|
role() {
|
|
|
|
|
|
|
|
return this.name === "admin" ? "超级管理员" : "普通用户";
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
methods: {},
|
|
|
|
|
|
|
|
created() {
|
|
|
|
|
|
|
|
//装置数量统计
|
|
|
|
|
|
|
|
getHostDeviceDataByVoltage({
|
|
|
|
|
|
|
|
companyId: "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
|
|
|
|
|
|
|
|
}).then((res) => {
|
|
|
|
|
|
|
|
this.unitAllData = res.data.data;
|
|
|
|
|
|
|
|
for (var i = 0; i < this.unitAllData.length; i++) {
|
|
|
|
|
|
|
|
this.unitXData.push(this.unitAllData[i].name);
|
|
|
|
|
|
|
|
this.unitYData.push(this.unitAllData[i].value);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
this.flag.baizhang = true;
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//装置信息统计
|
|
|
|
|
|
|
|
getCompanyDeviceInfo({
|
|
|
|
|
|
|
|
companyId: "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
|
|
|
|
|
|
|
|
}).then((res) => {
|
|
|
|
|
|
|
|
this.infoData = res.data;
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
//线路分布
|
|
|
|
|
|
|
|
getLineDataByVoltage({
|
|
|
|
|
|
|
|
companyId: "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
|
|
|
|
|
|
|
|
}).then((res) => {
|
|
|
|
|
|
|
|
this.lineAllData = res.data;
|
|
|
|
|
|
|
|
console.log(this.lineAllData);
|
|
|
|
|
|
|
|
for (var i = 0; i < this.lineAllData.length; i++) {
|
|
|
|
|
|
|
|
this.lineXData.push(this.lineAllData[i].voltageLevelStr);
|
|
|
|
|
|
|
|
this.lineYData.push(this.lineAllData[i].lineCount);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
this.flag.baizhang = true;
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
//隐患分类统计
|
|
|
|
|
|
|
|
getCapturePointDataByDanger({
|
|
|
|
|
|
|
|
companyId: "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
|
|
|
|
|
|
|
|
}).then((res) => {
|
|
|
|
|
|
|
|
this.hazardData = res.data;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// let name1 = this.hazardData.nameList;
|
|
|
|
|
|
|
|
// let value1 = this.hazardData.valueList;
|
|
|
|
|
|
|
|
this.hazardPieData = res.data.list;
|
|
|
|
|
|
|
|
console.log(this.hazardPieData);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.flag.baizhang = true;
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//隐患类型统计
|
|
|
|
|
|
|
|
getPhotoAlarmDataByAlarmType({
|
|
|
|
|
|
|
|
companyId: "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
|
|
|
|
|
|
|
|
}).then((res) => {
|
|
|
|
|
|
|
|
this.hazardTypeData = res.data.dataList;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for (var i = 0; i < this.hazardTypeData.length; i++) {
|
|
|
|
|
|
|
|
this.hazardTypeXData.push(this.hazardTypeData[i].name);
|
|
|
|
|
|
|
|
this.hazardTypeYData.push(this.hazardTypeData[i].acount);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
this.flag.baizhang = true;
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//巡视意见
|
|
|
|
|
|
|
|
getByName({
|
|
|
|
|
|
|
|
name: "三月",
|
|
|
|
|
|
|
|
}).then((res) => {
|
|
|
|
|
|
|
|
console.log(res);
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
//雷达图数据
|
|
|
|
|
|
|
|
getLastYearAlarmReasons({
|
|
|
|
|
|
|
|
companyId: "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
|
|
|
|
|
|
|
|
month: "04",
|
|
|
|
|
|
|
|
}).then((res) => {
|
|
|
|
|
|
|
|
console.log(res);
|
|
|
|
|
|
|
|
this.patrolData = res.data;
|
|
|
|
|
|
|
|
console.log(this.patrolData);
|
|
|
|
|
|
|
|
let obj = {};
|
|
|
|
|
|
|
|
this.patrolData.forEach((item) => {
|
|
|
|
|
|
|
|
if (obj.hasOwnProperty(item.alarmInfo)) {
|
|
|
|
|
|
|
|
obj[item.alarmInfo] += item.num;
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
obj[item.alarmInfo] = item.num;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
console.log(obj);
|
|
|
|
|
|
|
|
this.radarValue = Object.values(obj);
|
|
|
|
|
|
|
|
console.log(this.radarValue);
|
|
|
|
|
|
|
|
let max = Math.max(...this.radarValue);
|
|
|
|
|
|
|
|
//对象转化成数组对象
|
|
|
|
|
|
|
|
console.log(max);
|
|
|
|
|
|
|
|
for (let i in obj) {
|
|
|
|
|
|
|
|
console.log(i);
|
|
|
|
|
|
|
|
this.radarName.push({
|
|
|
|
|
|
|
|
name: i,
|
|
|
|
|
|
|
|
max: max,
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
console.log(this.radarName);
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<style lang="less">
|
|
|
|
|
|
|
|
.stritlBox {
|
|
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
.stritl_left,
|
|
|
|
|
|
|
|
.stritl_right {
|
|
|
|
|
|
|
|
width: 20%;
|
|
|
|
|
|
|
|
margin: 8px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
.stritl_left,
|
|
|
|
|
|
|
|
.stritl_right {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
|
|
.strLeftTop,
|
|
|
|
|
|
|
|
.strLeftMid,
|
|
|
|
|
|
|
|
.strLeftBottom {
|
|
|
|
|
|
|
|
height: 30%;
|
|
|
|
|
|
|
|
box-sizing: content-box;
|
|
|
|
|
|
|
|
box-shadow: @box-shadow-basic;
|
|
|
|
|
|
|
|
border: 1px solid @border-color-base;
|
|
|
|
|
|
|
|
background-color: @color-white;
|
|
|
|
|
|
|
|
border-radius: 4px;
|
|
|
|
|
|
|
|
padding: 8px;
|
|
|
|
|
|
|
|
h3 {
|
|
|
|
|
|
|
|
margin-bottom: 8px;
|
|
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
.strRightTop,
|
|
|
|
|
|
|
|
.strRightBottom {
|
|
|
|
|
|
|
|
height: 46%;
|
|
|
|
|
|
|
|
box-sizing: content-box;
|
|
|
|
|
|
|
|
box-shadow: @box-shadow-basic;
|
|
|
|
|
|
|
|
border: 1px solid @border-color-base;
|
|
|
|
|
|
|
|
background-color: @color-white;
|
|
|
|
|
|
|
|
border-radius: 4px;
|
|
|
|
|
|
|
|
padding: 8px;
|
|
|
|
|
|
|
|
h3 {
|
|
|
|
|
|
|
|
margin-bottom: 8px;
|
|
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
.strRightTop {
|
|
|
|
|
|
|
|
position: relative;
|
|
|
|
|
|
|
|
.tableBox {
|
|
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
|
|
width: calc(100% - 16px);
|
|
|
|
|
|
|
|
.el-table .cell {
|
|
|
|
|
|
|
|
white-space: normal;
|
|
|
|
|
|
|
|
word-break: break-all;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
.el-table th.el-table__cell > .cell {
|
|
|
|
|
|
|
|
min-width: 58px;
|
|
|
|
|
|
|
|
padding-left: 0px;
|
|
|
|
|
|
|
|
padding-right: 0px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
.strRightBottom {
|
|
|
|
|
|
|
|
h3 {
|
|
|
|
|
|
|
|
margin-bottom: 8px;
|
|
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
.suggest {
|
|
|
|
|
|
|
|
.attention {
|
|
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
margin-bottom: 8px;
|
|
|
|
|
|
|
|
span {
|
|
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
color: @color-red;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
.info {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
line-height: 22px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
h4 {
|
|
|
|
|
|
|
|
margin-top: 8px;
|
|
|
|
|
|
|
|
margin-bottom: 8px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
.stritl_center {
|
|
|
|
|
|
|
|
flex: 1;
|
|
|
|
|
|
|
|
margin: 10px;
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
|
|
.strCenterTop {
|
|
|
|
|
|
|
|
flex: 1;
|
|
|
|
|
|
|
|
box-sizing: content-box;
|
|
|
|
|
|
|
|
box-shadow: @box-shadow-basic;
|
|
|
|
|
|
|
|
border: 1px solid @border-color-base;
|
|
|
|
|
|
|
|
background-color: @color-white;
|
|
|
|
|
|
|
|
border-radius: 4px;
|
|
|
|
|
|
|
|
//padding: 8px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
.strCenterbottom {
|
|
|
|
|
|
|
|
margin-top: 24px;
|
|
|
|
|
|
|
|
height: 210px;
|
|
|
|
|
|
|
|
//border: 1px solid #000;
|
|
|
|
|
|
|
|
box-sizing: content-box;
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
|
|
.bottomL,
|
|
|
|
|
|
|
|
.bottomM,
|
|
|
|
|
|
|
|
.bottomR {
|
|
|
|
|
|
|
|
border: 1px solid #000;
|
|
|
|
|
|
|
|
box-sizing: content-box;
|
|
|
|
|
|
|
|
width: 30%;
|
|
|
|
|
|
|
|
box-shadow: @box-shadow-basic;
|
|
|
|
|
|
|
|
border: 1px solid @border-color-base;
|
|
|
|
|
|
|
|
background-color: @color-white;
|
|
|
|
|
|
|
|
border-radius: 4px;
|
|
|
|
|
|
|
|
padding: 8px;
|
|
|
|
|
|
|
|
h3 {
|
|
|
|
|
|
|
|
margin-bottom: 8px;
|
|
|
|
|
|
|
|
font-size: 15px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
.bottomM {
|
|
|
|
|
|
|
|
.infoBox {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
flex-wrap: wrap;
|
|
|
|
|
|
|
|
justify-content: space-around;
|
|
|
|
|
|
|
|
p {
|
|
|
|
|
|
|
|
width: 40%;
|
|
|
|
|
|
|
|
height: 68px;
|
|
|
|
|
|
|
|
background: #fcc;
|
|
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
|
|
margin: 6px;
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
|
|
justify-content: space-around;
|
|
|
|
|
|
|
|
span {
|
|
|
|
|
|
|
|
color: #333;
|
|
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
&:last-child {
|
|
|
|
|
|
|
|
font-size: 20px;
|
|
|
|
|
|
|
|
margin-top: 5px;
|
|
|
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
&:first-child {
|
|
|
|
|
|
|
|
background: url("../../assets/img/border-blue.png");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
&:nth-child(2) {
|
|
|
|
|
|
|
|
background: url("../../assets/img/border-green.png");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
&:nth-child(3) {
|
|
|
|
|
|
|
|
background: url("../../assets/img/border-yellow.png");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
&:nth-child(4) {
|
|
|
|
|
|
|
|
background: url("../../assets/img/border-gray.png");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
</style>
|
|
|
|
|