<template>
|
<div class="sewers-search" v-if="gdVisible">
|
<div class="panel-title">{{title}}</div>
|
<div class="search-panel ">
|
<el-form ref="form" :model="form" label-width="90px" class="search-form">
|
<el-form-item label="区域:" size="mini" class="search-panel-item">
|
<el-select style="width: 100%" v-model="form.areaVal" @change="areaType" :popper-class="'select-down'">
|
<el-option
|
v-for="item in areaTypeOptions"
|
:key="item.value"
|
:label="item.label"
|
:value="item.value">
|
</el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="板块:" size="mini" class="search-panel-item">
|
<el-select style="width: 100%" v-model="form.plateVal" @change="plateType" :popper-class="'select-down'">
|
<el-option
|
v-for="item in plateTypeOptions"
|
:key="item.value"
|
:label="item.label"
|
:value="item.value">
|
</el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="企业名称:" size="mini">
|
<el-select style="width: 100%" v-model="form.enterpriseVal" @change="enterpriseType" :popper-class="'select-down'">
|
<el-option
|
v-for="item in enterpriseTypeOptions"
|
:key="item.value"
|
:label="item.label"
|
:value="item.value">
|
</el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="二级单位:" size="mini">
|
<el-select style="width: 100%" v-model="form.enterpriseSubunitsVal" @change="enterpriseSubunitsType"
|
:popper-class="'select-down'">
|
<el-option
|
v-for="item in enterpriseSubunitsTypeOptions"
|
:key="item.value"
|
:label="item.label"
|
:value="item.value">
|
</el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="风险级别:" size="mini"></el-form-item>
|
<el-radio-group v-model="form.type" class="levelOfRisk">
|
<el-radio v-for="(item,index) in levelOfRisk" :label="item.value" :key="index">
|
<span class="levelOfRisk-type">{{item.name}}<i :style="'background:'+item.color"></i></span>
|
</el-radio>
|
</el-radio-group>
|
<div class="page_total">
|
<p>共计
|
<span>{{total}}</span>
|
条记录
|
</p>
|
</div>
|
<div class="rightButtonSearch">
|
<el-input v-model="form.keyword" size="mini" placeholder="在此输入关键字搜索">
|
</el-input>
|
<el-button class="el-icon-search" @click="handleSearch"></el-button>
|
</div>
|
</el-form>
|
</div>
|
<el-scrollbar style="height:264px">
|
<div class="environmental-risk-list" v-for="(item,index) in list" :key="index"
|
@click="handleLocation(item)">
|
<img :src='iconUrl[item.riskLevel]' alt="" class="state"/>
|
<div>
|
<h3>{{ item.riskname }}</h3>
|
<p>二级单位:<span>{{ item.unitname }}</span></p>
|
</div>
|
</div>
|
</el-scrollbar>
|
<!-- <span class="location-btn" @click="handleLocation(item)">588</span> -->
|
<el-card class="footer-page" v-if="total > 10">
|
<el-pagination
|
small
|
@current-change="handlePage"
|
:page-size=pageSize
|
layout="prev, pager, next"
|
:total=total
|
:current-page=current
|
class="warnPagination"
|
>
|
</el-pagination>
|
</el-card>
|
</div>
|
<!-- <div class="monitor2" v-if="hbVisible">-->
|
<!-- <env-protect-search></env-protect-search>-->
|
<!-- </div>-->
|
<!-- <div class="monitor2" v-if="pkVisible">-->
|
<!-- <discharge-search></discharge-search>-->
|
<!-- </div>-->
|
</template>
|
|
<script>
|
|
import { pulseEffect, setPanTo } from '@utils/utils'
|
import RiskSourceIndex from '@components/base-page/RiskSource/RiskSourceIndex'
|
const mapApi = require('../../../api/mapApi').default
|
|
export default {
|
name: 'EnvRiskSearch',
|
data () {
|
return {
|
gdVisible: true,
|
list: [],
|
total: 0,
|
areaTypeOptions: [],
|
plateTypeOptions: [],
|
enterpriseTypeOptions: [],
|
enterpriseSubunitsTypeOptions: [],
|
form: {
|
areaVal: '',
|
plateVal: '',
|
enterpriseVal: '',
|
enterpriseSubunitsVal: '',
|
type: ''
|
},
|
pageSize: 10,
|
current: 1,
|
isWaybillHover: true,
|
isRouteHover: false,
|
levelOfRisk: [
|
{ name: '重大风险', value: '1', color: 'red' },
|
{ name: '一级风险', value: '2', color: 'sandybrown' },
|
{ name: '二级风险', value: '3', color: 'yellow' },
|
{ name: '三级风险', value: '4', color: 'green' }
|
],
|
iconUrl: ['',
|
require('../../../../public/assets/images/map/environmentRisk/risk_red.png'),
|
require('../../../../public/assets/images/map/environmentRisk/risk_sandybrown.png'),
|
require('../../../../public/assets/images/map/environmentRisk/risk_yellow.png'),
|
require('../../../../public/assets/images/map/environmentRisk/risk_green.png')
|
]
|
}
|
},
|
props: ['title'],
|
methods: {
|
// 区域筛选
|
areaType (val) {
|
this.pipelineTypeOptions.forEach((itm) => {
|
if (val === itm.value) {
|
|
}
|
})
|
},
|
// 板块筛选
|
plateType (val) {
|
|
},
|
// 企业筛选
|
enterpriseType (val) {
|
this.dataTypeOptions.forEach((itm) => {
|
if (val === itm.value) {
|
|
}
|
})
|
},
|
// 二级单位筛选
|
enterpriseSubunitsType (val) {
|
|
},
|
|
async handleSearch () {
|
const param = {
|
}
|
const res = await mapApi.getEnvironmentRiskPoint(param)
|
this.list = res[0].concat(res[1], res[2], res[3]) // 临时数据
|
},
|
|
handleLocation (val) {
|
const pos = [val.Latitude, val.Longitude]
|
window.map.setView(pos, 15)
|
window.$layer.open({
|
content: {
|
comp: RiskSourceIndex, // 组件
|
parent: this, // 父组件
|
data: { // 传递的参数
|
riskSourceId: val.no
|
}
|
},
|
title: '天津石化' + val.riskname
|
})
|
pulseEffect([val.Latitude, val.Longitude])
|
setPanTo(pos, 250)
|
}
|
}
|
}
|
</script>
|
|
<style lang="less" scoped>
|
|
</style>
|