149 lines
3.5 KiB
Vue
149 lines
3.5 KiB
Vue
|
<template>
|
||
|
<div class="yp—home flex">
|
||
|
<div class="leftbox">
|
||
|
<div class="title">
|
||
|
<span v-for="idx in 3" :key="idx" :class="'sircleL'+idx" class="sircle mr5"></span>
|
||
|
<span class="ml10 mr10">专题统计</span>
|
||
|
<span v-for="idx in 3" :key="idx" :class="'sircleR'+idx" class="sircle ml5"></span>
|
||
|
</div>
|
||
|
<div class="commCnt">
|
||
|
<div class="hh50">
|
||
|
<div class="comm-title">处置统计</div>
|
||
|
<div class="echartsBox">
|
||
|
<MoreBarEcharts echartsId="cztjEcharts" :data="obj.data_cztj"></MoreBarEcharts>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="hh50">
|
||
|
<div class="comm-title">会商统计</div>
|
||
|
<div class="echartsBox">
|
||
|
<LineEcharts echartsId="hstjEcharts" :data="obj.data_hstj"></LineEcharts>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="rightbox">
|
||
|
<div class="title">
|
||
|
<span v-for="idx in 3" :key="idx" :class="'sircleL'+idx" class="sircle mr5"></span>
|
||
|
<span class="ml10 mr10">研判统计</span>
|
||
|
<span v-for="idx in 3" :key="idx" :class="'sircleR'+idx" class="sircle ml5"></span>
|
||
|
</div>
|
||
|
<div class="commCnt"></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</template>
|
||
|
|
||
|
<script setup>
|
||
|
import MoreBarEcharts from "@/views/home/echarts/moreBarEcharts.vue";
|
||
|
import LineEcharts from "@/views/home/echarts/moreLineEcharts.vue";
|
||
|
import { reactive } from 'vue';
|
||
|
const obj = reactive({
|
||
|
data_cztj:{
|
||
|
xData:['上访','诈骗','敲诈勒索','盗窃','涉黄','涉毒','强奸猥亵','灾害事故','自杀'],
|
||
|
color:[['#0DBAC5','#28EEBF'],['#F06C0D','#EEB416']],
|
||
|
labelColor:'#000',
|
||
|
list:[
|
||
|
{label:'总数',val:[30,20,10,60,50,60,35,45,20]},
|
||
|
{label:'未办结',val:[40,30,20,50,30,44,50,45,62]},
|
||
|
]
|
||
|
},
|
||
|
data_hstj:{
|
||
|
xData:['上访','诈骗','敲诈勒索','盗窃','涉黄','涉毒','强奸猥亵','灾害事故','自杀'],
|
||
|
color:['#0386FB','#00FFFF'],
|
||
|
labelColor:'#000',
|
||
|
list:[
|
||
|
{label:'总数',val:[30,20,10,60,50,60,35,45,20]},
|
||
|
{label:'已会商',val:[40,30,20,50,30,44,50,45,62]},
|
||
|
]
|
||
|
}
|
||
|
|
||
|
})
|
||
|
|
||
|
</script>
|
||
|
|
||
|
<style lang="scss" scoped>
|
||
|
|
||
|
|
||
|
.yp—home{
|
||
|
width: 100%;
|
||
|
height: 100%;
|
||
|
padding-top: 15px;
|
||
|
box-sizing: border-box;
|
||
|
color: #000;
|
||
|
.leftbox{
|
||
|
width:500px;
|
||
|
height: 100%;
|
||
|
margin-right: 10px;
|
||
|
background: #fff;
|
||
|
}
|
||
|
.rightbox{
|
||
|
flex: 1 0 0;
|
||
|
background: #fff;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@mixin common($width: 16px,$opacity:1){
|
||
|
height: $width;
|
||
|
width: $width;
|
||
|
border-radius: 50%;
|
||
|
background: #0386FB;
|
||
|
opacity: $opacity;
|
||
|
}
|
||
|
|
||
|
// 共同
|
||
|
.title{
|
||
|
display: flex;
|
||
|
align-items: center;
|
||
|
justify-content: center;
|
||
|
height: 60px;
|
||
|
font-size: 24px;
|
||
|
.sircle{
|
||
|
display: inline-block;
|
||
|
}
|
||
|
.sircleL1{
|
||
|
@include common(8px,0.5);
|
||
|
}
|
||
|
.sircleL2{
|
||
|
@include common(12px,0.75);
|
||
|
}
|
||
|
.sircleL3{
|
||
|
@include common(16px);
|
||
|
}
|
||
|
.sircleR1{
|
||
|
@include common(16px);
|
||
|
}
|
||
|
.sircleR2{
|
||
|
@include common(12px,0.75);
|
||
|
}
|
||
|
.sircleR3{
|
||
|
@include common(8px,0.5);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.commCnt{
|
||
|
height: calc(100% - 60px);
|
||
|
overflow: hidden;
|
||
|
overflow-y: auto;
|
||
|
padding: 10px 20px;
|
||
|
box-sizing: border-box;
|
||
|
.comm-title{
|
||
|
position: relative;
|
||
|
font-size: 20px;
|
||
|
&::before{
|
||
|
content: '';
|
||
|
position: absolute;
|
||
|
bottom: 0;
|
||
|
left: 0;
|
||
|
width: 78px;
|
||
|
height: 4px;
|
||
|
background: linear-gradient( 90deg, #3596F9 0%, rgba(53,150,249,0) 100%);
|
||
|
border-radius: 4px 4px 4px 4px;
|
||
|
}
|
||
|
}
|
||
|
.echartsBox{
|
||
|
height: calc(100% - 30px);
|
||
|
margin-top: 4px;
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
</style>
|