1143 lines
		
	
	
		
			30 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
			
		
		
	
	
			1143 lines
		
	
	
		
			30 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
| <template>
 | ||
|   <div class="AppQxnDv">
 | ||
|     <div class="left">
 | ||
|       <AiDvPanel style="width: 100%; height: auto;" border="border6" title="单位列表">
 | ||
|       </AiDvPanel>
 | ||
|       <div class="left-list">
 | ||
|         <div class="left-item" v-for="(item, index) in 16" :key="index">
 | ||
|           <i>{{ index + 1 }}</i>
 | ||
|           <div class="left-item__top">
 | ||
|             <h2>黔西南州公安局</h2>
 | ||
|             <el-select v-model="value" size="mini" placeholder="请选择派出所">
 | ||
|               <el-option label="南京派出所" value="1"></el-option>
 | ||
|               <el-option label="北京派出所" value="2"></el-option>
 | ||
|               <el-option label="长安派出所" value="3"></el-option>
 | ||
|             </el-select>
 | ||
|           </div>
 | ||
|           <div class="left-item__bottom">
 | ||
|             <span>居民数量:17246</span>
 | ||
|             <span>成员:2057</span>
 | ||
|           </div>
 | ||
|         </div>
 | ||
|       </div>
 | ||
|     </div>
 | ||
|     <div class="right">
 | ||
|       <div class="right-left">
 | ||
|         <AiDvPanel style="width: 100%" border="border6" title="警格事件概況">
 | ||
|           <div class="right-left__total AppQxnDv-total">
 | ||
|             <div class="item" v-for="(item, index) in 4" :key="index">
 | ||
|               <h2>全部人员数</h2>
 | ||
|               <div class="item-bottom">
 | ||
|                 <span>726,079</span>
 | ||
|                 <i>人</i>
 | ||
|               </div>
 | ||
|             </div>
 | ||
|           </div>
 | ||
|           <div class="right-left__top">
 | ||
|             <div class="wrapper">
 | ||
|               <div class="AppQxnDv-title">
 | ||
|                 <h2>上报来源分布</h2>
 | ||
|               </div>
 | ||
|               <ai-echart-v2
 | ||
|                 style="height: 220px; width: 100%; margin-top: 10px;"
 | ||
|                 :ref="'chart1'"
 | ||
|                 :data="chartData1"
 | ||
|                 :ops="chartConfig1">
 | ||
|               </ai-echart-v2>
 | ||
|             </div>
 | ||
|             <div class="wrapper">
 | ||
|               <div class="AppQxnDv-title">
 | ||
|                 <h2>事件办理情況</h2>
 | ||
|               </div>
 | ||
|               <ai-echart-v2
 | ||
|                 style="height: 220px; width: 100%; margin-top: 10px;"
 | ||
|                 :ref="'chart2'"
 | ||
|                 :data="chartData2"
 | ||
|                 :ops="chartConfig2">
 | ||
|               </ai-echart-v2>
 | ||
|             </div>
 | ||
|           </div>
 | ||
|           <div class="right-left__middle">
 | ||
|             <div class="left">
 | ||
|               <div class="wrapper">
 | ||
|                 <div class="AppQxnDv-title">
 | ||
|                   <h2>事件受理率</h2>
 | ||
|                 </div>
 | ||
|                 <DoughnutChart :ratio="60"></DoughnutChart>
 | ||
|               </div>
 | ||
|               <div class="wrapper">
 | ||
|                 <div class="AppQxnDv-title">
 | ||
|                   <h2>事件办结率</h2>
 | ||
|                 </div>
 | ||
|                 <DoughnutChart :ratio="95"></DoughnutChart>
 | ||
|               </div>
 | ||
|             </div>
 | ||
|             <div class="right wrapper">
 | ||
|               <div class="AppQxnDv-title">
 | ||
|                 <h2>最新办理动态</h2>
 | ||
|                 <el-select v-model="value" style="width: 92px" size="mini" placeholder="专属">
 | ||
|                   <el-option label="XXX派出所" value="1"></el-option>
 | ||
|                   <el-option label="XXX派出所" value="2"></el-option>
 | ||
|                   <el-option label="XXX派出所" value="3"></el-option>
 | ||
|                 </el-select>
 | ||
|               </div>
 | ||
|               <AiDvTable
 | ||
|                 style="margin-top: 16px; height: 220px;"
 | ||
|                 stripe="1"
 | ||
|                 size="mini"
 | ||
|                 :headerStyle="{
 | ||
|                   color: '#02FEFF',
 | ||
|                   fontSize: '12px',
 | ||
|                   fontWeight: '600',
 | ||
|                   backgroundColor: 'rgba(33, 180, 253, 0.1)'
 | ||
|                 }"
 | ||
|                 :config="blConfig"
 | ||
|                 :data="bbTableData">
 | ||
|               </AiDvTable>
 | ||
|             </div>
 | ||
|           </div>
 | ||
|           <div class="right-left__bottom">
 | ||
|             <div class="AppQxnDv-title">
 | ||
|               <div class="left AppQxnDv-title__tab">
 | ||
|                 <h2 @click="currIndex = 0" :class="[currIndex === 0 ? 'active' : '']">隐患上报</h2>
 | ||
|                 <h2 @click="currIndex = 1" :class="[currIndex === 1 ? 'active' : '']">咨询服务</h2>
 | ||
|                 <h2 @click="currIndex = 2" :class="[currIndex === 2 ? 'active' : '']">矛盾调解</h2>
 | ||
|                 <h2 @click="currIndex = 3" :class="[currIndex === 3 ? 'active' : '']">其他</h2>
 | ||
|               </div>
 | ||
|             </div>
 | ||
|             <ai-echart-v2
 | ||
|               style="height: 236px; margin-top: 10px; width: 100%;"
 | ||
|               :ref="'chart3'"
 | ||
|               :data="chartData3"
 | ||
|               :ops="chartConfig3">
 | ||
|             </ai-echart-v2>
 | ||
|           </div>
 | ||
|         </AiDvPanel>
 | ||
|       </div>
 | ||
|       <div class="right-middle">
 | ||
|         <AiDvPanel style="width: 100%" border="border6" title="综合概况图">
 | ||
|           <div class="right-left__total AppQxnDv-total">
 | ||
|             <div class="item" v-for="(item, index) in 5" :key="index">
 | ||
|               <h2>分局数量</h2>
 | ||
|               <div class="item-bottom">
 | ||
|                 <span>726,079</span>
 | ||
|                 <i>人</i>
 | ||
|               </div>
 | ||
|             </div>
 | ||
|           </div>
 | ||
|           <div class="wrapper">
 | ||
|             <DvMap style="width: 100%; height: 356px;"></DvMap>
 | ||
|           </div>
 | ||
|           <div class="right-middle__bottom">
 | ||
|             <div class="AppQxnDv-title">
 | ||
|               <h2>事件列表</h2>
 | ||
|               <div class="right">
 | ||
|                 <el-select v-model="value" style="width: 82px; margin-right:6px;" size="mini" placeholder="上报来源">
 | ||
|                   <el-option label="XXX派出所" value="1"></el-option>
 | ||
|                   <el-option label="XXX派出所" value="2"></el-option>
 | ||
|                   <el-option label="XXX派出所" value="3"></el-option>
 | ||
|                 </el-select>
 | ||
|                 <el-select v-model="value" style="width: 82px; margin-right:6px;" size="mini" placeholder="事件类型">
 | ||
|                   <el-option label="XXX派出所" value="1"></el-option>
 | ||
|                   <el-option label="XXX派出所" value="2"></el-option>
 | ||
|                   <el-option label="XXX派出所" value="3"></el-option>
 | ||
|                 </el-select>
 | ||
|                 <el-select v-model="value" style="width: 82px; margin-right:6px;" size="mini" placeholder="事件状态">
 | ||
|                   <el-option label="XXX派出所" value="1"></el-option>
 | ||
|                   <el-option label="XXX派出所" value="2"></el-option>
 | ||
|                   <el-option label="XXX派出所" value="3"></el-option>
 | ||
|                 </el-select>
 | ||
|                 <el-select v-model="value" style="width: 82px; margin-right:6px;" size="mini" placeholder="最近30天">
 | ||
|                   <el-option label="XXX派出所" value="1"></el-option>
 | ||
|                   <el-option label="XXX派出所" value="2"></el-option>
 | ||
|                   <el-option label="XXX派出所" value="3"></el-option>
 | ||
|                 </el-select>
 | ||
|                 <el-input placeholder="关键词" style="width: 98px;">
 | ||
|                   <el-button slot="append" icon="el-icon-search"></el-button>
 | ||
|                 </el-input>
 | ||
|               </div>
 | ||
|             </div>
 | ||
|             <AiDvTable
 | ||
|               style="margin-top: 16px; height: 430px;"
 | ||
|               :heigth="'100%'"
 | ||
|               size="mini"
 | ||
|               stripe="1"
 | ||
|               :headerStyle="{
 | ||
|                 color: '#02FEFF',
 | ||
|                 fontSize: '12px',
 | ||
|                 fontWeight: '600',
 | ||
|                 backgroundColor: 'rgba(33, 180, 253, 0.1)'
 | ||
|               }"
 | ||
|               :config="eventTableConfig"
 | ||
|               :data="eventTableData">
 | ||
|             </AiDvTable>
 | ||
|           </div>
 | ||
|         </AiDvPanel>
 | ||
|       </div>
 | ||
|       <div class="right-right">
 | ||
|         <AiDvPanel class="bottom" style="" border="border6" title="办理排行">
 | ||
|           <AiDvTable
 | ||
|             :heigth="'100%'"
 | ||
|             stripe="1"
 | ||
|             :headerStyle="{
 | ||
|               color: '#02FEFF',
 | ||
|               fontSize: '12px',
 | ||
|               fontWeight: '600',
 | ||
|               backgroundColor: 'rgba(33, 180, 253, 0.1)'
 | ||
|             }"
 | ||
|             isShowIndex="1"
 | ||
|             :config="tableConfig"
 | ||
|             :data="tableData">
 | ||
|           </AiDvTable>
 | ||
|         </AiDvPanel>
 | ||
|       </div>
 | ||
|     </div>
 | ||
|   </div>
 | ||
| </template>
 | ||
| 
 | ||
| <script>
 | ||
|   import DvMap from './components/DvMap'
 | ||
|   import DoughnutChart from './components/DoughnutChart'
 | ||
|   export default {
 | ||
|     name: 'AppQxnEventDv',
 | ||
|     label: '事件上报',
 | ||
| 
 | ||
|     components: {
 | ||
|       DvMap,
 | ||
|       DoughnutChart
 | ||
|     },
 | ||
| 
 | ||
|     data ()  {
 | ||
|       return {
 | ||
|         value: '',
 | ||
|         currIndex: 0,
 | ||
|         chartData2: [
 | ||
|           {
 | ||
|             "name": "1月",
 | ||
|             "已办理": 4,
 | ||
|             "待处理": 44,
 | ||
|             "处理中": 23,
 | ||
|             "已拒绝": 11
 | ||
|           },
 | ||
|           {
 | ||
|             "name": "2月",
 | ||
|             "已办理": 2,
 | ||
|             "待处理": 24,
 | ||
|             "处理中": 23,
 | ||
|             "已拒绝": 11
 | ||
|           },
 | ||
|           {
 | ||
|             "name": "3月",
 | ||
|             "已办理": 44,
 | ||
|             "待处理": 14,
 | ||
|             "处理中": 2,
 | ||
|             "已拒绝": 11
 | ||
|           },
 | ||
|           {
 | ||
|             "name": "4月",
 | ||
|             "已办理": 4,
 | ||
|             "待处理": 44,
 | ||
|             "处理中": 3,
 | ||
|             "已拒绝": 1
 | ||
|           },
 | ||
|           {
 | ||
|             "name": "5月",
 | ||
|             "已办理": 4,
 | ||
|             "待处理": 4,
 | ||
|             "处理中": 23,
 | ||
|             "已拒绝": 11
 | ||
|           }
 | ||
|         ],
 | ||
|         chartData1: [
 | ||
|           {
 | ||
|             "name": "1月",
 | ||
|             "警格上报": 23,
 | ||
|             "居民上报": 23
 | ||
|           },
 | ||
|           {
 | ||
|             "name": "2月",
 | ||
|             "警格上报": 23,
 | ||
|             "居民上报": 23
 | ||
|           },
 | ||
|           {
 | ||
|             "name": "3月",
 | ||
|             "警格上报": 23,
 | ||
|             "居民上报": 23
 | ||
|           },
 | ||
|           {
 | ||
|             "name": "4月",
 | ||
|             "警格上报": 23,
 | ||
|             "居民上报": 23
 | ||
|           }
 | ||
|         ],
 | ||
|         tableData: [
 | ||
|           {
 | ||
|             name: '姓名',
 | ||
|             v1: '宗梦瑞',
 | ||
|             v2: '宗梦瑞',
 | ||
|             v3: '宗梦瑞',
 | ||
|             v4: '宗梦瑞',
 | ||
|             v5: '宗梦瑞',
 | ||
|             v6: '宗梦瑞',
 | ||
|             v7: '宗梦瑞',
 | ||
|             v8: '宗梦瑞',
 | ||
|             v9: '宗梦瑞',
 | ||
|             v10: '宗梦瑞'
 | ||
|           },
 | ||
|           {
 | ||
|             name: '己办结',
 | ||
|             v1: '12',
 | ||
|             v2: '12',
 | ||
|             v3: '123',
 | ||
|             v4: '123',
 | ||
|             v5: '123',
 | ||
|             v6: '123',
 | ||
|             v7: '2',
 | ||
|             v8: '123',
 | ||
|             v9: '123',
 | ||
|             v10: '1234'
 | ||
|           },
 | ||
|           {
 | ||
|             name: '办理中',
 | ||
|             v1: '12',
 | ||
|             v2: '12',
 | ||
|             v3: '123',
 | ||
|             v4: '123',
 | ||
|             v5: '123',
 | ||
|             v6: '123',
 | ||
|             v7: '2',
 | ||
|             v8: '123',
 | ||
|             v9: '123',
 | ||
|             v10: '1234'
 | ||
|           },
 | ||
|           {
 | ||
|             name: '上报数',
 | ||
|             v1: '12',
 | ||
|             v2: '12',
 | ||
|             v3: '123',
 | ||
|             v4: '123',
 | ||
|             v5: '123',
 | ||
|             v6: '123',
 | ||
|             v7: '2',
 | ||
|             v8: '123',
 | ||
|             v9: '123',
 | ||
|             v10: '1234'
 | ||
|           },
 | ||
|           {
 | ||
|             name: '联系TA',
 | ||
|             v1: '联系TA',
 | ||
|             v2: '联系TA',
 | ||
|             v3: '联系TA',
 | ||
|             v4: '联系TA',
 | ||
|             v5: '联系TA',
 | ||
|             v6: '联系TA',
 | ||
|             v7: '联系TA',
 | ||
|             v8: '联系TA',
 | ||
|             v9: '联系TA',
 | ||
|             v10: '联系TA'
 | ||
|           }
 | ||
|         ],
 | ||
|         chartConfig1: {
 | ||
|           legend: {
 | ||
|             textStyle: {
 | ||
|               color: "#fff"
 | ||
|             }
 | ||
|           },
 | ||
|           grid: {
 | ||
|             left: '0%',
 | ||
|             right: '0%',
 | ||
|             bottom: '0%',
 | ||
|             top: '40px',
 | ||
|             containLabel: true
 | ||
|           },
 | ||
|           tooltip: {
 | ||
|             trigger: 'axis',
 | ||
|             backgroundColor: 'rgba(0, 102, 154, 0.65)',
 | ||
|             borderColor: 'rgba(0, 102, 154, 0.65)',
 | ||
|             textStyle: { color: '#fff' },
 | ||
|             axisPointer: { type: 'cross' }
 | ||
|           },
 | ||
|           color: ['#33CCCC', '#DBB36E'],
 | ||
|           xAxis: {
 | ||
|             type: "category",
 | ||
|             axisTick: {show: false},
 | ||
|             axisLine: { lineStyle: { color: 'rgba(179, 223, 255, 0.4)' } },
 | ||
|             axisLabel: {color: '#8FABBF', fontSize: 12}
 | ||
|           },
 | ||
|           yAxis: {
 | ||
|             nameGap: 23,
 | ||
|             minInterval: 1,
 | ||
|             splitLine: { lineStyle: { color: 'rgba(108, 128, 151, 0.3)', type: 'dashed' } },
 | ||
|             axisLabel: {color: '#8FABBF', fontSize: 12},
 | ||
|             axisPointer: { snap: true }
 | ||
|           },
 | ||
|           series: [
 | ||
|             {
 | ||
|               name: '警格上报',
 | ||
|               type: 'bar',
 | ||
|               barWidth: '15',
 | ||
|               stack: 'one'
 | ||
|             },
 | ||
|             {
 | ||
|               name: '居民上报',
 | ||
|               barWidth: '15',
 | ||
|               type: 'bar',
 | ||
|               stack: 'one'
 | ||
|             }
 | ||
|           ]
 | ||
|         },
 | ||
|         chartConfig2: {
 | ||
|           legend: {
 | ||
|             itemWidth: 16,
 | ||
|             itemGap: 4,
 | ||
|             textStyle: {
 | ||
|               color: "#fff",
 | ||
|               fontSize: '12'
 | ||
|             },
 | ||
|             icon: 'roundRect'
 | ||
|           },
 | ||
|           grid: {
 | ||
|             left: '0%',
 | ||
|             right: '0%',
 | ||
|             bottom: '0%',
 | ||
|             top: '40px',
 | ||
|             containLabel: true
 | ||
|           },
 | ||
|           tooltip: {
 | ||
|             trigger: 'axis',
 | ||
|             backgroundColor: 'rgba(0, 102, 154, 0.65)',
 | ||
|             borderColor: 'rgba(0, 102, 154, 0.65)',
 | ||
|             textStyle: { color: '#fff' },
 | ||
|             axisPointer: { type: 'cross' }
 | ||
|           },
 | ||
|           color: ['#33CCCC', '#2C97E8','#BFEAFF', '#DBB36E'],
 | ||
|           xAxis: {
 | ||
|             type: "category",
 | ||
|             axisTick: {show: false},
 | ||
|             axisLine: { lineStyle: { color: 'rgba(179, 223, 255, 0.4)' } },
 | ||
|             axisLabel: {color: '#8FABBF', fontSize: 12}
 | ||
|           },
 | ||
|           yAxis: {
 | ||
|             nameGap: 23,
 | ||
|             minInterval: 1,
 | ||
|             splitLine: { lineStyle: { color: 'rgba(108, 128, 151, 0.3)', type: 'dashed' } },
 | ||
|             axisLabel: {color: '#8FABBF', fontSize: 12},
 | ||
|             axisPointer: { snap: true }
 | ||
|           },
 | ||
|           daemon: (color) => ({
 | ||
|             showSymbol: false,
 | ||
|             smooth: true,
 | ||
|             lineStyle: {
 | ||
|               shadowBlur: 4,
 | ||
|               shadowOffsetY: 2,
 | ||
|               width: 2
 | ||
|             },
 | ||
|             areaStyle: {
 | ||
|               color: {
 | ||
|                 type: 'linear',
 | ||
|                 x: 0,
 | ||
|                 x2: 0,
 | ||
|                 y: 0,
 | ||
|                 y2: 1,
 | ||
|                 colorStops: [
 | ||
|                   { offset: 0, color: this.Hex2RGBA(color, 0.3) },
 | ||
|                   { offset: 1, color: this.Hex2RGBA(color, 0.1) }
 | ||
|                 ]
 | ||
|               }
 | ||
|             }
 | ||
|           })
 | ||
|         },
 | ||
|         bbTableData: [
 | ||
|           {
 | ||
|             name: '时间',
 | ||
|             v: '04/18',
 | ||
|             v1: '04/18',
 | ||
|             v2: '04/18',
 | ||
|             v3: '04/18',
 | ||
|             v4: '04/18',
 | ||
|             v5: '04/18'
 | ||
|           },
 | ||
|           {
 | ||
|             name: '姓名',
 | ||
|             v: '宗梦瑞',
 | ||
|             v1: '宗梦瑞',
 | ||
|             v2: '宗梦瑞',
 | ||
|             v3: '宗梦瑞',
 | ||
|             v4: '宗梦瑞',
 | ||
|             v5: '宗梦瑞'
 | ||
|           },
 | ||
|           {
 | ||
|             name: '事件名称',
 | ||
|             v: '户籍办理',
 | ||
|             v1: '户籍办理',
 | ||
|             v2: '户籍办理',
 | ||
|             v3: '户籍办理',
 | ||
|             v4: '户籍办理',
 | ||
|             v5: '户籍办理'
 | ||
|           }
 | ||
|         ],
 | ||
|         blConfig: [{
 | ||
|           color: '#d0e1e8',
 | ||
|           align: '',
 | ||
|           width: '',
 | ||
|           fontSize: '14px',
 | ||
|           flex: ''
 | ||
|         }, {
 | ||
|           color: '#d0e1e8',
 | ||
|           align: 'left',
 | ||
|           width: '',
 | ||
|           fontSize: '14px',
 | ||
|           flex: ''
 | ||
|         }, {
 | ||
|             color: '#d0e1e8',
 | ||
|             align: 'right',
 | ||
|             fontSize: '14px',
 | ||
|             flex: ''
 | ||
|           }
 | ||
|         ],
 | ||
|         chartData3: [
 | ||
|           {
 | ||
|             "name": "人员聚集",
 | ||
|             "已办理": 223,
 | ||
|             "待处理": 23,
 | ||
|             "处理中": 223,
 | ||
|             "已拒绝": 23
 | ||
|           },
 | ||
|           {
 | ||
|             "name": "非法饲养动物",
 | ||
|             "已办理": 223,
 | ||
|             "待处理": 23,
 | ||
|             "处理中": 223,
 | ||
|             "已拒绝": 23
 | ||
|           },
 | ||
|           {
 | ||
|             "name": "婚姻家庭纠纷",
 | ||
|             "已办理": 223,
 | ||
|             "待处理": 23,
 | ||
|             "处理中": 223,
 | ||
|             "已拒绝": 23
 | ||
|           },
 | ||
|           {
 | ||
|             "name": "道路安全",
 | ||
|             "已办理": 223,
 | ||
|             "待处理": 23,
 | ||
|             "处理中": 223,
 | ||
|             "已拒绝": 23
 | ||
|           },
 | ||
|           {
 | ||
|             "name": "其他",
 | ||
|             "已办理": 223,
 | ||
|             "待处理": 23,
 | ||
|             "处理中": 223,
 | ||
|             "已拒绝": 23
 | ||
|           }
 | ||
|         ] ,
 | ||
|         chartConfig3: {
 | ||
|           xAxis: {
 | ||
|             type: "category",
 | ||
|             axisTick: {show: false},
 | ||
|             axisLabel: {color: '#8FABBF', fontSize: 12},
 | ||
|             axisLine: { lineStyle: { color: 'rgba(179, 223, 255, 0.4)' } }
 | ||
|           },
 | ||
|           grid: {
 | ||
|             left: '0%',
 | ||
|             right: '0%',
 | ||
|             bottom: '0%',
 | ||
|             top: '40px',
 | ||
|             containLabel: true
 | ||
|           },
 | ||
|           legend: {
 | ||
|             textStyle: {
 | ||
|               color: "#fff"
 | ||
|             }
 | ||
|           },
 | ||
|           yAxis: {
 | ||
|             nameGap: 23,
 | ||
|             minInterval: 1,
 | ||
|             splitLine: { lineStyle: { color: 'rgba(255,255,255,.2)', type: 'dashed' } },
 | ||
|             axisPointer: { show: false },
 | ||
|             axisLabel: {color: '#8FABBF', fontSize: 12}
 | ||
|           },
 | ||
|           axisPointer: {
 | ||
|             type: 'shadow',
 | ||
|             triggerTooltip: false,
 | ||
|             shadowStyle: { color: 'rgba(46, 153, 255, .2)' }
 | ||
|           },
 | ||
|           color: [
 | ||
|             {
 | ||
|               type: 'linear',
 | ||
|               x: 0,
 | ||
|               x2: 0,
 | ||
|               y: 0,
 | ||
|               y2: 1,
 | ||
|               colorStops: [
 | ||
|                 { offset: 0, color: 'rgba(51, 204, 204, 1)' },
 | ||
|                 { offset: 1, color: 'rgba(31, 89, 89, 0.25)' }
 | ||
|               ]
 | ||
|             },
 | ||
|             {
 | ||
|               type: 'linear',
 | ||
|               x: 0,
 | ||
|               x2: 0,
 | ||
|               y: 0,
 | ||
|               y2: 1,
 | ||
|               colorStops: [
 | ||
|                 { offset: 0, color: 'rgba(44, 151, 232, 1)' },
 | ||
|                 { offset: 1, color: 'rgba(21, 154, 255, 0)' }
 | ||
|               ]
 | ||
|             },
 | ||
|             {
 | ||
|               type: 'linear',
 | ||
|               x: 0,
 | ||
|               x2: 0,
 | ||
|               y: 0,
 | ||
|               y2: 1,
 | ||
|               colorStops: [
 | ||
|                 { offset: 0, color: 'rgba(191, 234, 255, 1)' },
 | ||
|                 { offset: 1, color: 'rgba(191, 234, 255, 0.1)' }
 | ||
|               ]
 | ||
|             },
 | ||
|             {
 | ||
|               type: 'linear',
 | ||
|               x: 0,
 | ||
|               x2: 0,
 | ||
|               y: 0,
 | ||
|               y2: 1,
 | ||
|               colorStops: [
 | ||
|                 { offset: 0, color: 'rgba(219, 179, 110, 1)' },
 | ||
|                 { offset: 1, color: 'rgba(219, 179, 110, 0.1)' }
 | ||
|               ]
 | ||
|             }
 | ||
|           ],
 | ||
|           daemon: {
 | ||
|             type: 'bar',
 | ||
|             barWidth: 14,
 | ||
|             barCategoryGap: 40,
 | ||
|             itemStyle: {}
 | ||
|           }
 | ||
|         },
 | ||
|         eventTableData: [
 | ||
|           {
 | ||
|             name: '时间',
 | ||
|             v1: '04/18',
 | ||
|             v2: '02/18',
 | ||
|             v3: '04/18',
 | ||
|             v4: '04/18',
 | ||
|             v5: '04/18',
 | ||
|             v6: '04/18',
 | ||
|             v7: '04/18',
 | ||
|             v8: '04/18',
 | ||
|             v9: '04/18',
 | ||
|             v10: '04/18'
 | ||
|           },
 | ||
|           {
 | ||
|             name: '事件内容',
 | ||
|             v1: '咨询如何报考摩托车驾驶咨询如',
 | ||
|             v2: '咨询如何报考摩托车驾驶咨询如',
 | ||
|             v3: '咨询如何报考摩托车驾驶咨询如',
 | ||
|             v4: '咨询如何报考摩托车驾驶咨询如',
 | ||
|             v5: '咨询如何报考摩托车驾驶咨询如',
 | ||
|             v6: '咨询如何报考摩托车驾驶咨询如',
 | ||
|             v7: '咨询如何报考摩托车驾驶咨询如',
 | ||
|             v8: '咨询如何报考摩托车驾驶咨询如咨询如何报考摩托车驾驶咨询如',
 | ||
|             v9: '咨询如何报考摩托车驾驶咨询如',
 | ||
|             v10: '咨询如何报考摩托车驾驶咨询如'
 | ||
|           },
 | ||
|           {
 | ||
|             name: '状态',
 | ||
|             v1: '已办理',
 | ||
|             v2: '已办理',
 | ||
|             v3: '已办理',
 | ||
|             v4: '已办理',
 | ||
|             v5: '处理中',
 | ||
|             v6: '已拒绝',
 | ||
|             v7: '处理中',
 | ||
|             v8: '待处理',
 | ||
|             v9: '处理中',
 | ||
|             v10: '处理中'
 | ||
|           },
 | ||
|           {
 | ||
|             name: '查看',
 | ||
|             v1: '详情>>',
 | ||
|             v2: '详情>>',
 | ||
|             v3: '详情>>',
 | ||
|             v4: '详情>>',
 | ||
|             v5: '详情>>',
 | ||
|             v6: '详情>>',
 | ||
|             v7: '详情>>',
 | ||
|             v8: '详情>>',
 | ||
|             v9: '详情>>',
 | ||
|             v10: '详情>>'
 | ||
|           }
 | ||
|         ]
 | ||
|       }
 | ||
|     },
 | ||
| 
 | ||
|     computed: {
 | ||
|       tableConfig () {
 | ||
|         return this.tableData.map((v, index) => {
 | ||
|           if (index === 4) {
 | ||
|             return {
 | ||
|               color: '#d0e1e8',
 | ||
|               align: 'center',
 | ||
|               width: '',
 | ||
|               fontSize: '12px',
 | ||
|               flex: '',
 | ||
|               render: (h, params) => {
 | ||
|                 return h(
 | ||
|                   'p', {
 | ||
|                     style: {
 | ||
|                       width: '52px',
 | ||
|                       height: '22px',
 | ||
|                       textAlign: 'center',
 | ||
|                       lineHeight: '22px',
 | ||
|                       color: '#D4F2FF',
 | ||
|                       cursor: 'pointer',
 | ||
|                       margin: '0 auto',
 | ||
|                       borderRadius: '4px',
 | ||
|                       backgroundImage: 'linear-gradient(175deg, #02bcee99 0%, #0144d899 100%)'
 | ||
|                     },
 | ||
|                     on: {
 | ||
|                       click: e => {
 | ||
|                         console.log(params)
 | ||
|                       }
 | ||
|                     },
 | ||
|                   }, params.column
 | ||
|                 )
 | ||
|               }
 | ||
|             }
 | ||
|           }
 | ||
|           return {
 | ||
|             color: '#d0e1e8',
 | ||
|             align: '',
 | ||
|             width: index === 0 ? '100' : '',
 | ||
|             fontSize: '14px',
 | ||
|             flex: ''
 | ||
|           }
 | ||
|         })
 | ||
|       },
 | ||
| 
 | ||
|       eventTableConfig () {
 | ||
|         return [
 | ||
|           {
 | ||
|             color: '#d0e1e8',
 | ||
|             align: '',
 | ||
|             width: '',
 | ||
|             fontSize: '14px',
 | ||
|             flex: ''
 | ||
|           },
 | ||
|           {
 | ||
|             color: '#d0e1e8',
 | ||
|             align: 'left',
 | ||
|             width: '250',
 | ||
|             fontSize: '14px',
 | ||
|             flex: ''
 | ||
|           },
 | ||
|           {
 | ||
|             color: '#d0e1e8',
 | ||
|             align: 'center',
 | ||
|             width: '',
 | ||
|             fontSize: '14px',
 | ||
|             flex: '',
 | ||
|             render: (h, params) => {
 | ||
|               return h(
 | ||
|                 'i', {
 | ||
|                   style: {
 | ||
|                     width: '52px',
 | ||
|                     height: '20px',
 | ||
|                     textAlgin: 'center',
 | ||
|                     lineHeight: '20px',
 | ||
|                     color: '#07B794',
 | ||
|                     margin: '0 auto',
 | ||
|                     borderRadius: '2px',
 | ||
|                     background: 'rgba(19, 246, 201, 0.14)',
 | ||
|                   }
 | ||
|                 }, params.column
 | ||
|               )
 | ||
|             }
 | ||
|           },
 | ||
|           {
 | ||
|             color: '#00AAFF',
 | ||
|             align: '',
 | ||
|             width: '',
 | ||
|             fontSize: '14px',
 | ||
|             flex: '',
 | ||
|             click: e => {
 | ||
|               console.log(e)
 | ||
|             }
 | ||
|           }
 | ||
|         ]
 | ||
|       }
 | ||
|     },
 | ||
| 
 | ||
|     methods: {
 | ||
|       Hex2RGBA(color, alpha = 1) {
 | ||
|         let hex = 0;
 | ||
|         if (color.charAt(0) == "#") {
 | ||
|           if (color.length == 4) {
 | ||
|             //检测诸如#FFF简写格式
 | ||
|             color = "#" + color.charAt(1).repeat(2) +
 | ||
|                 color.charAt(2).repeat(2) +
 | ||
|                 color.charAt(3).repeat(2);
 | ||
|           }
 | ||
|           hex = parseInt(color.slice(1), 16);
 | ||
|         }
 | ||
|         let r = hex >> 16 & 0xFF;
 | ||
|         let g = hex >> 8 & 0xFF;
 | ||
|         let b = hex & 0xFF;
 | ||
|         return `rgba(${r},${g},${b},${alpha})`;
 | ||
|       },
 | ||
|       RGBtoHex(r, g, b) {
 | ||
|         let hex = r << 16 | g << 8 | b;
 | ||
|         return "#" + hex.toString(16);
 | ||
|       }
 | ||
|     }
 | ||
|   }
 | ||
| </script>
 | ||
| 
 | ||
| <style lang="scss" scoped>
 | ||
|   .AppQxnDv {
 | ||
|     display: flex;
 | ||
|     height: 100%;
 | ||
|     padding-top: 16px;
 | ||
|     box-sizing: border-box;
 | ||
|     background: #0c0c0c;
 | ||
|     overflow: hidden;
 | ||
| 
 | ||
|     .wrapper {
 | ||
|       margin-bottom: 12px;
 | ||
|     }
 | ||
| 
 | ||
|     .AppQxnDv-title {
 | ||
|       display: flex;
 | ||
|       position: relative;
 | ||
|       align-items: center;
 | ||
|       justify-content: space-between;
 | ||
|       height: 30px;
 | ||
|       line-height: 30px;
 | ||
|       color: rgba(172, 201, 230, 0.8);
 | ||
|       background-image: linear-gradient(270deg, rgba(31, 67, 102, 0) 0%, rgba(31, 67, 102, 0.25) 100%);
 | ||
| 
 | ||
|       & > div {
 | ||
|         display: flex;
 | ||
|         align-items: center;
 | ||
| 
 | ||
|         &:first-child {
 | ||
|           h2:first-child {
 | ||
|             &::after {
 | ||
|               position: absolute;
 | ||
|               bottom: 0;
 | ||
|               left: 27px;
 | ||
|               z-index: 1;
 | ||
|               width: 9px;
 | ||
|               height: 2px;
 | ||
|               background: rgba(41, 77, 102, 1);
 | ||
|               content: ' ';
 | ||
|             }
 | ||
|           }
 | ||
|         }
 | ||
|       }
 | ||
| 
 | ||
|       & > h2 {
 | ||
|         &::after {
 | ||
|           position: absolute;
 | ||
|           bottom: 0;
 | ||
|           left: 27px;
 | ||
|           z-index: 1;
 | ||
|           width: 9px;
 | ||
|           height: 2px;
 | ||
|           background: rgba(41, 77, 102, 1);
 | ||
|           content: ' ';
 | ||
|         }
 | ||
|       }
 | ||
| 
 | ||
| 
 | ||
|     .AppQxnDv-title__tab {
 | ||
|         h2 {
 | ||
|           cursor: pointer;
 | ||
|         }
 | ||
| 
 | ||
|         h2.active {
 | ||
|           color: #fff;
 | ||
|           font-size: 16px;
 | ||
|         }
 | ||
|       }
 | ||
|       h2 {
 | ||
|         position: relative;
 | ||
|         font-size: 16px;
 | ||
|         font-weight: 500;
 | ||
|         padding: 0 10px;
 | ||
|       }
 | ||
| 
 | ||
|       &::after {
 | ||
|         position: absolute;
 | ||
|         bottom: 0;
 | ||
|         left: 0;
 | ||
|         z-index: 1;
 | ||
|         width: 9px;
 | ||
|         height: 2px;
 | ||
|         background: #5299CC;
 | ||
|         content: ' ';
 | ||
|       }
 | ||
| 
 | ||
|       &::before {
 | ||
|         position: absolute;
 | ||
|         bottom: 0;
 | ||
|         left: 14px;
 | ||
|         z-index: 1;
 | ||
|         width: 9px;
 | ||
|         height: 2px;
 | ||
|         background: rgba(41, 77, 102, 1);
 | ||
|         content: ' ';
 | ||
|       }
 | ||
|     }
 | ||
| 
 | ||
|     .AppQxnDv-total {
 | ||
|       display: flex;
 | ||
|       align-items: center;
 | ||
|       margin-bottom: 16px;
 | ||
| 
 | ||
|       .item {
 | ||
|         display: flex;
 | ||
|         align-items: center;
 | ||
|         justify-content: center;
 | ||
|         flex-direction: column;
 | ||
|         flex: 1;
 | ||
| 
 | ||
|         h2 {
 | ||
|           margin-bottom: 10px;
 | ||
|           font-size: 14px;
 | ||
|           font-weight: 500;
 | ||
|           color: #FFFFFF;
 | ||
|         }
 | ||
| 
 | ||
|         .item-bottom {
 | ||
|           display: flex;
 | ||
|           align-items: baseline;
 | ||
| 
 | ||
|           span {
 | ||
|             font-weight: 700;
 | ||
|             font-size: 18px;
 | ||
|             color: #02FEFF;
 | ||
|           }
 | ||
| 
 | ||
|           i {
 | ||
|             margin-left: 4px;
 | ||
|             font-style: normal;
 | ||
|             color: rgba(255, 255, 255, 0.5);
 | ||
|             font-size: 12px;
 | ||
|           }
 | ||
|         }
 | ||
|       }
 | ||
|     }
 | ||
| 
 | ||
|     :deep(.el-select) {
 | ||
|       height: 24px;
 | ||
|       line-height: 24px;
 | ||
| 
 | ||
|       input {
 | ||
|         width: 100%;
 | ||
|         height: 24px;
 | ||
|         line-height: 24px;
 | ||
|         padding: 0 26px 0 6px;
 | ||
|         font-size: 12px;
 | ||
|         color: rgba(179, 229, 229, 1);
 | ||
|         border: 1px solid #2A7A92;
 | ||
|         border-radius: 2px;
 | ||
|         background: transparent;
 | ||
| 
 | ||
|         &::placeholder {
 | ||
|           color: rgba(179, 229, 229, 0.6);
 | ||
|         }
 | ||
|       }
 | ||
| 
 | ||
|       .el-input__suffix {
 | ||
|         right: 1px;
 | ||
|         top: 0px;
 | ||
|       }
 | ||
| 
 | ||
|       i {
 | ||
|         color: #B3E5E5;
 | ||
|       }
 | ||
|     }
 | ||
| 
 | ||
|     :deep(.el-input) {
 | ||
|       height: 24px;
 | ||
|       line-height: 24px;
 | ||
| 
 | ||
|       input {
 | ||
|         width: 100%;
 | ||
|         height: 24px;
 | ||
|         line-height: 24px;
 | ||
|         padding: 0 6px;
 | ||
|         font-size: 12px;
 | ||
|         color: rgba(179, 229, 229, 1);
 | ||
|         border: 1px solid #2A7A92;
 | ||
|         border-radius: 2px;
 | ||
|         background: transparent;
 | ||
| 
 | ||
|         &::placeholder {
 | ||
|           color: rgba(179, 229, 229, 0.6);
 | ||
|         }
 | ||
|       }
 | ||
| 
 | ||
|       .el-input-group__append {
 | ||
|         padding: 0 16px;
 | ||
|         background: #007994;
 | ||
|         border: none;
 | ||
|         border-radius: 0 2px 2px 0;
 | ||
|       }
 | ||
| 
 | ||
|       .el-input__suffix {
 | ||
|         right: 1px;
 | ||
|         top: 0px;
 | ||
|       }
 | ||
| 
 | ||
|       i {
 | ||
|         color: #B3E5E5;
 | ||
|       }
 | ||
|     }
 | ||
| 
 | ||
|     ::-webkit-scrollbar {
 | ||
|       width: 5px;
 | ||
|       height: 14px;
 | ||
|     }
 | ||
| 
 | ||
|     ::-webkit-scrollbar-corner {
 | ||
|       background: transparent;
 | ||
|     }
 | ||
| 
 | ||
|     ::-webkit-scrollbar-thumb {
 | ||
|       min-height: 20px;
 | ||
|       background-clip: content-box;
 | ||
|       box-shadow: 0 0 0 5px rgba(116, 148, 170, 0.5) inset;
 | ||
|     }
 | ||
| 
 | ||
|     ::-webkit-scrollbar-track {
 | ||
|       box-shadow: 1px 1px 5px rgba(116, 148, 170, 0.5) inset;
 | ||
|     }
 | ||
| 
 | ||
|     * {
 | ||
|       box-sizing: border-box;
 | ||
|     }
 | ||
| 
 | ||
|     & > .right {
 | ||
|       display: flex;
 | ||
|       flex: 1;
 | ||
| 
 | ||
|       .right-left {
 | ||
|         width: 530px;
 | ||
| 
 | ||
|         .right-left__middle {
 | ||
|           display: flex;
 | ||
| 
 | ||
|           .left {
 | ||
|             width: 245px;
 | ||
|             margin-right: 12px;
 | ||
|           }
 | ||
| 
 | ||
|           .right {
 | ||
|             flex: 1;
 | ||
|           }
 | ||
|         }
 | ||
| 
 | ||
|         .right-left__top {
 | ||
|           display: flex;
 | ||
| 
 | ||
|           div {
 | ||
|             flex: 1;
 | ||
| 
 | ||
|             &:first-child {
 | ||
|               margin-right: 12px;
 | ||
|             }
 | ||
|           }
 | ||
|         }
 | ||
|       }
 | ||
|       .right-middle {
 | ||
|         width: 556px;
 | ||
|         margin: 0 40px;
 | ||
| 
 | ||
|         .right-middle__middle {
 | ||
|           display: flex;
 | ||
|           justify-content: space-between;
 | ||
|           margin-bottom: 16px;
 | ||
|         }
 | ||
|       }
 | ||
| 
 | ||
|       .right-right {
 | ||
|         display: flex;
 | ||
|         flex-direction: column;
 | ||
|         flex: 1;
 | ||
|       }
 | ||
|     }
 | ||
| 
 | ||
|     & > .left {
 | ||
|       display: flex;
 | ||
|       align-items: center;
 | ||
|       flex-direction: column;
 | ||
|       width: 240px;
 | ||
|       margin-right: 20px;
 | ||
| 
 | ||
|       .left-list {
 | ||
|         flex: 1;
 | ||
|         overflow-y: auto;
 | ||
|         width: 100%;
 | ||
| 
 | ||
|         .left-item {
 | ||
|           position: relative;
 | ||
|           width: 100%;
 | ||
|           margin-bottom: 10px;
 | ||
|           padding: 30px 14px 14px;
 | ||
|           background-image: linear-gradient(0deg, rgba(40, 182, 253, 0.08) 1%, rgba(0, 102, 154, 0.65) 100%);
 | ||
|           border-radius: 6px;
 | ||
| 
 | ||
|           i {
 | ||
|             position: absolute;
 | ||
|             left: 0;
 | ||
|             top: 0;
 | ||
|             width: 22px;
 | ||
|             height: 21px;
 | ||
|             line-height: 21px;
 | ||
|             text-align: center;
 | ||
|             font-weight: 600;
 | ||
|             font-style: normal;
 | ||
|             font-size: 14px;
 | ||
|             color: #FFFFFF;
 | ||
|             background-image: linear-gradient(177deg, #02eeee66 0%, #0190d866 100%);
 | ||
|             border-radius: 6px 0 6px 0;
 | ||
|           }
 | ||
| 
 | ||
|           .left-item__bottom {
 | ||
|             display: flex;
 | ||
|             align-items: center;
 | ||
|             justify-content: space-between;
 | ||
| 
 | ||
|             span {
 | ||
|               color: #fff;
 | ||
|               font-weight: 600;
 | ||
|               font-size: 12px;
 | ||
|             }
 | ||
|           }
 | ||
| 
 | ||
|           .left-item__top {
 | ||
|             display: flex;
 | ||
|             align-items: center;
 | ||
|             justify-content: space-between;
 | ||
|             margin-bottom: 10px;
 | ||
| 
 | ||
|             .el-select {
 | ||
|               width: 100px;
 | ||
|             }
 | ||
| 
 | ||
|             h2 {
 | ||
|               font-weight: 600;
 | ||
|               font-size: 14px;
 | ||
|               color: #FFFFFF;
 | ||
|             }
 | ||
|           }
 | ||
|         }
 | ||
|       }
 | ||
|     }
 | ||
|   }
 | ||
| </style>
 |