|
@@ -2,61 +2,61 @@
|
|
<div class="app-container home" >
|
|
<div class="app-container home" >
|
|
<div id="main" >
|
|
<div id="main" >
|
|
<el-row :gutter="4">
|
|
<el-row :gutter="4">
|
|
- <el-col :span="12">
|
|
|
|
|
|
+ <el-col :span="12" v-loading="loading1">
|
|
<div class="card_left">
|
|
<div class="card_left">
|
|
<el-col :span="24">
|
|
<el-col :span="24">
|
|
- <el-card class="box-card card1 " v-loading="loading1 & loading2">
|
|
|
|
- <span class="title">
|
|
|
|
- <el-image
|
|
|
|
- class="imgTitle"
|
|
|
|
- :src="img"
|
|
|
|
- ></el-image>
|
|
|
|
- <p>{{title}}</p>
|
|
|
|
- </span>
|
|
|
|
- <div class="contain">
|
|
|
|
- <div>
|
|
|
|
- <span>总数</span>
|
|
|
|
|
|
+ <el-card class="box-card card1">
|
|
|
|
+ <span class="title">
|
|
|
|
+ <el-image
|
|
|
|
+ class="imgTitle"
|
|
|
|
+ :src="img"
|
|
|
|
+ ></el-image>
|
|
|
|
+ <p>{{title}}</p>
|
|
|
|
+ </span>
|
|
|
|
+ <div class="contain" >
|
|
<div>
|
|
<div>
|
|
- <p>{{index1Data.total}}</p>
|
|
|
|
|
|
+ <span>总数</span>
|
|
|
|
+ <div>
|
|
|
|
+ <p>{{index1Data.total}}</p>
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
- </div>
|
|
|
|
- <div>
|
|
|
|
- <span>已处理</span>
|
|
|
|
<div>
|
|
<div>
|
|
- <p>{{index1Data.checkCount}}</p>
|
|
|
|
|
|
+ <span>已处理</span>
|
|
|
|
+ <div>
|
|
|
|
+ <p>{{index1Data.checkCount}}</p>
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
- </div>
|
|
|
|
- <div>
|
|
|
|
- <span>未处理</span>
|
|
|
|
<div>
|
|
<div>
|
|
- <p>{{index1Data.noCheckCount}}</p>
|
|
|
|
|
|
+ <span>未处理</span>
|
|
|
|
+ <div>
|
|
|
|
+ <p>{{index1Data.noCheckCount}}</p>
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
- </div>
|
|
|
|
- <div>
|
|
|
|
- <span>处置率</span>
|
|
|
|
<div>
|
|
<div>
|
|
- <p>{{index1Data.checkRadio ? Number((index1Data.checkRadio)*100).toFixed(2) : '0.00'}}%</p>
|
|
|
|
|
|
+ <span>处置率</span>
|
|
|
|
+ <div>
|
|
|
|
+ <p v-loading="loading1">{{index1Data.checkRadio ? Number((index1Data.checkRadio)*100).toFixed(2) : '0'}}%</p>
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="contain2">
|
|
|
|
+ <div class="wrap">
|
|
|
|
+ <index1 :resData="index1Data.checkRadio"
|
|
|
|
+ :dataMap="index1Data.checkRadio"
|
|
|
|
+ color="#80FFA5"
|
|
|
|
+ :size="21"
|
|
|
|
+ :with="16"
|
|
|
|
+ :tick="false" style="width:100%;" alt="饼图" />
|
|
|
|
+ <p>处置率</p>
|
|
</div>
|
|
</div>
|
|
- </div>
|
|
|
|
- <div class="contain2">
|
|
|
|
- <div class="wrap">
|
|
|
|
- <index1 :resData="index1Data.checkRadio"
|
|
|
|
- :dataMap="index1Data.checkRadio"
|
|
|
|
- color="#80FFA5"
|
|
|
|
- :size="21"
|
|
|
|
- :with="16"
|
|
|
|
- :tick="false" style="width:100%;" alt="饼图" />
|
|
|
|
- <p>处置率</p>
|
|
|
|
</div>
|
|
</div>
|
|
- </div>
|
|
|
|
- </el-card>
|
|
|
|
|
|
+ </el-card>
|
|
</el-col>
|
|
</el-col>
|
|
</div>
|
|
</div>
|
|
</el-col>
|
|
</el-col>
|
|
- <el-col :span="12">
|
|
|
|
|
|
+ <el-col :span="12" v-loading="loading2">
|
|
<div class="card_right">
|
|
<div class="card_right">
|
|
- <el-card class="box-card card2" v-loading="loading3">
|
|
|
|
|
|
+ <el-card class="box-card card2">
|
|
<div class="contain">
|
|
<div class="contain">
|
|
<index2
|
|
<index2
|
|
:resData="index2Data"
|
|
:resData="index2Data"
|
|
@@ -65,7 +65,7 @@
|
|
</el-card>
|
|
</el-card>
|
|
</div>
|
|
</div>
|
|
</el-col>
|
|
</el-col>
|
|
- <el-col :span="24">
|
|
|
|
|
|
+ <el-col :span="24" v-loading="loading3">
|
|
<div class="card_bottom">
|
|
<div class="card_bottom">
|
|
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="90px">
|
|
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="90px">
|
|
<el-form-item label="单位名称:" prop="companyCode">
|
|
<el-form-item label="单位名称:" prop="companyCode">
|
|
@@ -84,7 +84,7 @@
|
|
/>
|
|
/>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="处理状态:" prop="status">
|
|
|
|
|
|
+ <el-form-item label="处理状态:">
|
|
<el-select v-model="queryParams.status" style="width: 160px" placeholder="请选择处理状态" clearable size="small">
|
|
<el-select v-model="queryParams.status" style="width: 160px" placeholder="请选择处理状态" clearable size="small">
|
|
<el-option label="未处理" :value="0"/>
|
|
<el-option label="未处理" :value="0"/>
|
|
<el-option label="已处理" :value="1"/>
|
|
<el-option label="已处理" :value="1"/>
|
|
@@ -114,38 +114,38 @@
|
|
>导出</el-button>
|
|
>导出</el-button>
|
|
</el-form>
|
|
</el-form>
|
|
</div>
|
|
</div>
|
|
- <el-table v-loading="loading4" :data="adminList" height="calc(100vh - 67vh)" :default-sort = "{prop: 'alarmTime', order: 'descending'}">
|
|
|
|
|
|
+ <el-table :data="adminList" height="calc(100vh - 67vh)" :default-sort = "{prop: 'alarmTime', order: 'descending'}">
|
|
<el-table-column label="序号" align="center" prop="id" show-overflow-tooltip />
|
|
<el-table-column label="序号" align="center" prop="id" show-overflow-tooltip />
|
|
<el-table-column label="单位名称" align="center" prop="companyName" show-overflow-tooltip />
|
|
<el-table-column label="单位名称" align="center" prop="companyName" show-overflow-tooltip />
|
|
<el-table-column label="报告时间" align="center" prop="alarmTime" sortable show-overflow-tooltip />
|
|
<el-table-column label="报告时间" align="center" prop="alarmTime" sortable show-overflow-tooltip />
|
|
- <el-table-column label="报告数据" align="center" prop="alertValue" show-overflow-tooltip />
|
|
|
|
- <el-table-column label="报告内容" align="center" prop="alarmContent" show-overflow-tooltip />
|
|
|
|
|
|
+ <el-table-column label="报告数据" align="center" prop="property" show-overflow-tooltip />
|
|
|
|
+ <el-table-column label="报告内容" align="center" prop="deviceName" show-overflow-tooltip />
|
|
<el-table-column label="处理状态" align="center" show-overflow-tooltip >
|
|
<el-table-column label="处理状态" align="center" show-overflow-tooltip >
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
- <span>{{ scope.row.alarmStatus == 0 ? '未处理':scope.row.alarmStatus ==1 ? '已处理':'' }}</span>
|
|
|
|
|
|
+ <span :class="scope.row.alarmStatus == 0 ? 'color-red' : 'color-green'">{{ scope.row.alarmStatus == 0 ? '未处理':scope.row.alarmStatus ==1 ? '已处理':'' }}</span>
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column label="处理人" align="center" prop="updateBy" show-overflow-tooltip />
|
|
<el-table-column label="处理人" align="center" prop="updateBy" show-overflow-tooltip />
|
|
<el-table-column label="处理时间" align="center" prop="updateTime" show-overflow-tooltip />
|
|
<el-table-column label="处理时间" align="center" prop="updateTime" show-overflow-tooltip />
|
|
</el-table>
|
|
</el-table>
|
|
|
|
+ <pagination
|
|
|
|
+ v-show="total>0"
|
|
|
|
+ :total="total"
|
|
|
|
+ :page.sync="queryParams.current"
|
|
|
|
+ :limit.sync="queryParams.size"
|
|
|
|
+ @pagination="getList"
|
|
|
|
+ />
|
|
</el-col>
|
|
</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
</div>
|
|
</div>
|
|
- <pagination
|
|
|
|
- v-show="total>0"
|
|
|
|
- :total="total"
|
|
|
|
- :page.sync="queryParams.current"
|
|
|
|
- :limit.sync="queryParams.size"
|
|
|
|
- @pagination="getList"
|
|
|
|
- />
|
|
|
|
|
|
+
|
|
<!-- 导出-->
|
|
<!-- 导出-->
|
|
<a href="" download="" id="xz" style="position: absolute;z-index: -1;opacity: 0;"></a>
|
|
<a href="" download="" id="xz" style="position: absolute;z-index: -1;opacity: 0;"></a>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
-
|
|
|
|
-import { getTbAlarmCollectIcoDetail, exportTbAlarm ,getTbAlarm, collectTbAlarm } from "@/api/business/OM/eventCenter";
|
|
|
|
|
|
+import { getTbAlarmCollectIcoDetail, exportTbAlarm ,getTbAlarm, collectTbAlarm } from "@/api/business/OM/eventCenter";
|
|
import { listChannel } from "@/api/system/product";
|
|
import { listChannel } from "@/api/system/product";
|
|
import index1 from "@/views/components/fireInternetInfo/index1";
|
|
import index1 from "@/views/components/fireInternetInfo/index1";
|
|
import index2 from "@/views/components/fireInternetInfo/index2";
|
|
import index2 from "@/views/components/fireInternetInfo/index2";
|
|
@@ -164,12 +164,9 @@ export default {
|
|
index2Data:[],//折线图
|
|
index2Data:[],//折线图
|
|
index3Data:[],//table
|
|
index3Data:[],//table
|
|
// 遮罩层
|
|
// 遮罩层
|
|
- loading1: false,
|
|
|
|
- loading2: false,
|
|
|
|
- loading3: false,
|
|
|
|
- loading4: true,
|
|
|
|
- loading5: true,
|
|
|
|
- loading6: true,
|
|
|
|
|
|
+ loading1: true,
|
|
|
|
+ loading2: true,
|
|
|
|
+ loading3: true,
|
|
// 导出遮罩层
|
|
// 导出遮罩层
|
|
exportLoading: false,
|
|
exportLoading: false,
|
|
// 显示搜索条件
|
|
// 显示搜索条件
|
|
@@ -181,16 +178,19 @@ export default {
|
|
timeList:[],
|
|
timeList:[],
|
|
queryParams:{
|
|
queryParams:{
|
|
type:1,
|
|
type:1,
|
|
- status:0,
|
|
|
|
current:1,
|
|
current:1,
|
|
size:10,
|
|
size:10,
|
|
companyCode:undefined,
|
|
companyCode:undefined,
|
|
status:undefined,
|
|
status:undefined,
|
|
- num:0,
|
|
|
|
- isLine:0,
|
|
|
|
|
|
+ },
|
|
|
|
+ queryParams2:{
|
|
|
|
+ type:1,
|
|
|
|
+ current:1,
|
|
|
|
+ size:10,
|
|
startTime:getThisDateBeforMonth(),
|
|
startTime:getThisDateBeforMonth(),
|
|
endTime:YearMonthDate(),
|
|
endTime:YearMonthDate(),
|
|
},
|
|
},
|
|
|
|
+
|
|
dataZ:[],//折线图
|
|
dataZ:[],//折线图
|
|
// 公司列表
|
|
// 公司列表
|
|
companyList: [],
|
|
companyList: [],
|
|
@@ -213,12 +213,9 @@ export default {
|
|
collectTbAlarm(this.queryParams).then(response =>{
|
|
collectTbAlarm(this.queryParams).then(response =>{
|
|
this.index1Data = response.data
|
|
this.index1Data = response.data
|
|
this.loading1 = false
|
|
this.loading1 = false
|
|
- this.loading2 = false
|
|
|
|
})
|
|
})
|
|
- this.queryParams.status = 0
|
|
|
|
/* 折线图 */
|
|
/* 折线图 */
|
|
- getTbAlarmCollectIcoDetail(this.queryParams).then(response =>{
|
|
|
|
- this.loading3 = false
|
|
|
|
|
|
+ getTbAlarmCollectIcoDetail(this.queryParams2).then(response =>{
|
|
let data = response.data
|
|
let data = response.data
|
|
let lineData = []
|
|
let lineData = []
|
|
let total = []
|
|
let total = []
|
|
@@ -236,6 +233,7 @@ export default {
|
|
this.index2Data.push(total[0],checkCount[0],lineData)
|
|
this.index2Data.push(total[0],checkCount[0],lineData)
|
|
this.index2Data.push({name:"隐患总揽",color:"#FF9721"})
|
|
this.index2Data.push({name:"隐患总揽",color:"#FF9721"})
|
|
}
|
|
}
|
|
|
|
+ this.loading2 = false
|
|
})
|
|
})
|
|
/* 公司列表 */
|
|
/* 公司列表 */
|
|
this.queryParams.status = undefined
|
|
this.queryParams.status = undefined
|
|
@@ -252,10 +250,7 @@ export default {
|
|
});
|
|
});
|
|
},
|
|
},
|
|
getList(){
|
|
getList(){
|
|
- if(this.queryParams.num == 0){
|
|
|
|
- this.queryParams.status = undefined
|
|
|
|
- this.queryParams.num = 1
|
|
|
|
- }
|
|
|
|
|
|
+ this.loading3 = true
|
|
if(this.dateRange.length>0){
|
|
if(this.dateRange.length>0){
|
|
this.queryParams.startTime = this.dateRange[0]
|
|
this.queryParams.startTime = this.dateRange[0]
|
|
this.queryParams.endTime = this.dateRange[1]
|
|
this.queryParams.endTime = this.dateRange[1]
|
|
@@ -263,7 +258,7 @@ export default {
|
|
getTbAlarm(this.queryParams).then(response =>{
|
|
getTbAlarm(this.queryParams).then(response =>{
|
|
this.adminList = response.data.records
|
|
this.adminList = response.data.records
|
|
this.total = response.data.total;
|
|
this.total = response.data.total;
|
|
- this.loading4 = false;
|
|
|
|
|
|
+ this.loading3 = false;
|
|
})
|
|
})
|
|
},
|
|
},
|
|
/** 搜索按钮操作 */
|
|
/** 搜索按钮操作 */
|
|
@@ -273,10 +268,10 @@ export default {
|
|
/** 重置按钮操作 */
|
|
/** 重置按钮操作 */
|
|
resetQuery() {
|
|
resetQuery() {
|
|
this.queryParams.current = 1;
|
|
this.queryParams.current = 1;
|
|
|
|
+ this.queryParams.size = 1;
|
|
|
|
+ this.queryParams.status = undefined;
|
|
this.queryParams.startTime = undefined;
|
|
this.queryParams.startTime = undefined;
|
|
this.queryParams.endTime = undefined;
|
|
this.queryParams.endTime = undefined;
|
|
- this.queryParams.num = 0;
|
|
|
|
- this.queryParams.status = undefined;
|
|
|
|
this.queryParams.companyCode = undefined;
|
|
this.queryParams.companyCode = undefined;
|
|
this.dateRange = [];
|
|
this.dateRange = [];
|
|
this.resetForm("queryForm");
|
|
this.resetForm("queryForm");
|
|
@@ -359,6 +354,7 @@ export default {
|
|
.title{
|
|
.title{
|
|
width:100%;
|
|
width:100%;
|
|
display: block;
|
|
display: block;
|
|
|
|
+ text-align: left !important;
|
|
.imgTitle{
|
|
.imgTitle{
|
|
width:5%;
|
|
width:5%;
|
|
display: inline-block;
|
|
display: inline-block;
|