|
@@ -8,7 +8,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="12" class="right">
|
|
|
<el-input v-model="conditions.goafDevName" class="search-input m-right-15" placeholder="请输入设备名称">
|
|
|
- <el-button slot="append" icon="el-icon-search" @click="getData()" />
|
|
|
+ <el-button slot="append" icon="el-icon-search" @click="init()" />
|
|
|
</el-input>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -17,20 +17,40 @@
|
|
|
<span>设备当前状态统计</span>
|
|
|
</div>
|
|
|
<div class="overview-status-wrap">
|
|
|
- <overview-status />
|
|
|
+ <overview-status ref="overview-status" />
|
|
|
</div>
|
|
|
</el-card>
|
|
|
<el-row class="m-top-15">
|
|
|
<el-table v-loading="listLoading" class="page-table" border fit :data="dataList">
|
|
|
<el-table-column type="index" label="序号" header-align="center" align="center" width="60" />
|
|
|
- <el-table-column prop="goafSensorName" label="传感器编码" />
|
|
|
- <el-table-column prop="goafDevName" label="设备名称" />
|
|
|
- <el-table-column prop="goafDevTypename" label="设备类型" />
|
|
|
- <el-table-column prop="goafSensorLocation" label="安装地点" />
|
|
|
- <el-table-column prop="goafSensorStatus" label="状态" />
|
|
|
- <el-table-column prop="goafDevLocation" label="一般告警" />
|
|
|
- <el-table-column prop="goafDevLocation" label="严重告警" />
|
|
|
- <el-table-column prop="goafInstallTime" label="安装时间" />
|
|
|
+ <el-table-column prop="goafDevTypename" label="设备类型" align="center" />
|
|
|
+ <el-table-column prop="goafDevName" label="设备名称" align="center" />
|
|
|
+ <el-table-column prop="goafSensorName" label="传感器名称" align="center" />
|
|
|
+ <el-table-column header-align="center" align="center" prop="goafSensorStatus" label="是否在线">
|
|
|
+ <template v-slot="{row}">
|
|
|
+ <span>{{ row.goafSensorStatus===0?'离线': "在线" }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column header-align="center" align="center" prop="goafSensorAlarmType" label="运行状态">
|
|
|
+ <template v-slot="{row}">
|
|
|
+ <span v-if="row.goafSensorAlarmType">告警</span>
|
|
|
+ <span v-else>正常</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column header-align="center" align="center" prop="goafSensorAlarmLevel" label="告警级别">
|
|
|
+ <template v-slot="{row}">
|
|
|
+ <span v-if="row.goafSensorAlarmType">{{ row.goafSensorAlarmLevel===0?'一般': "严重" }}</span>
|
|
|
+ <span v-else />
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column header-align="center" align="center" prop="goafSensorAlarmType" label="告警类型">
|
|
|
+ <template v-slot="{row}">
|
|
|
+ <span v-if="row.goafSensorAlarmType">{{ row.goafSensorAlarmType }}</span>
|
|
|
+ <span v-else />
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="goafSensorLocation" label="安装地点" align="center" />
|
|
|
+ <el-table-column prop="goafInstallTime" label="安装时间" align="center" />
|
|
|
</el-table>
|
|
|
<div class="pagination-container" style="float:right;margin-right:40px;">
|
|
|
<pagination v-show="total>0" :total="total" :page.sync="conditions.page" :limit.sync="conditions.limit" @pagination="getData" />
|
|
@@ -40,7 +60,8 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { getSensorByPage } from '@/api/goaf/sensor'
|
|
|
+import { getSensorOverview } from '@/api/goaf/alarm'
|
|
|
+// import { getSensorByPage } from '@/api/goaf/sensor'
|
|
|
import { Pagination } from '@/components'
|
|
|
import { NumConvertLM } from '@/utils'
|
|
|
import OverviewStatus from './components/OverviewStatus'
|
|
@@ -49,6 +70,7 @@ export default {
|
|
|
data() {
|
|
|
return {
|
|
|
dataList: [],
|
|
|
+ tableData: [],
|
|
|
total: 0,
|
|
|
listLoading: false,
|
|
|
conditions: {
|
|
@@ -59,26 +81,63 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
created() {
|
|
|
- this.getData()
|
|
|
+ this.init()
|
|
|
},
|
|
|
methods: {
|
|
|
// fetch data
|
|
|
NumConvertLM,
|
|
|
+ init() {
|
|
|
+ this.getSensorOverview()
|
|
|
+ },
|
|
|
+ // getData() {
|
|
|
+ // this.listLoading = true
|
|
|
+ // this.getSensorOverview()
|
|
|
+ // getSensorByPage(this.conditions).then((resp) => {
|
|
|
+ // this.listLoading = false
|
|
|
+ // const { code, msg, total, data } = resp
|
|
|
+ // if (code === 0) {
|
|
|
+ // this.dataList = data
|
|
|
+ // this.total = total
|
|
|
+ // } else {
|
|
|
+ // this.$message.error(msg)
|
|
|
+ // }
|
|
|
+ // }).catch((error) => {
|
|
|
+ // console.log(error)
|
|
|
+ // })
|
|
|
+ // },
|
|
|
getData() {
|
|
|
- this.listLoading = true
|
|
|
- getSensorByPage(this.conditions).then((resp) => {
|
|
|
- this.listLoading = false
|
|
|
- const { code, msg, total, data } = resp
|
|
|
- if (code === 0) {
|
|
|
- this.dataList = data
|
|
|
- this.total = total
|
|
|
- } else {
|
|
|
- this.$message.error(msg)
|
|
|
+ const tableData = JSON.parse(JSON.stringify(this.tableData))
|
|
|
+ const page = this.conditions.page
|
|
|
+ const limit = this.conditions.limit
|
|
|
+ const items = tableData.filter((item, index) => (index >= (page - 1) * limit) && (index < page * limit))
|
|
|
+ this.dataList = items
|
|
|
+ },
|
|
|
+ getSensorOverview() {
|
|
|
+ getSensorOverview().then((resp) => {
|
|
|
+ const { data } = resp
|
|
|
+ let tableData = []
|
|
|
+ for (let i = 0; i < data.length; i++) {
|
|
|
+ tableData = tableData.concat(data[i].goafSensoralarmOverviewDto.map((item, index) => {
|
|
|
+ return {
|
|
|
+ ...item,
|
|
|
+ goafDevName: data[i].goafDevName,
|
|
|
+ goafDevTypename: data[i].goafDevTypename,
|
|
|
+ goafInstallTime: data[i].goafInstallTime
|
|
|
+ }
|
|
|
+ }))
|
|
|
}
|
|
|
- }).catch((error) => {
|
|
|
- console.log(error)
|
|
|
+ this.tableData = tableData
|
|
|
+ this.total = tableData.length
|
|
|
+ const normal = tableData.filter(item => !item.goafSensorAlarmType).length
|
|
|
+ const level_1 = tableData.filter(item => item.goafSensorAlarmType && item.goafSensorAlarmLevel === 0).length
|
|
|
+ const level_2 = tableData.filter(item => item.goafSensorAlarmType && item.goafSensorAlarmLevel === 2).length
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$refs['overview-status'].setChart(normal, level_1, level_2)
|
|
|
+ })
|
|
|
+ this.getData()
|
|
|
})
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
</script>
|