@ -3,43 +3,79 @@
< div class = "box" >
< div class = "title" > 实时预警 < / div >
< div class = "leftBox" >
< div class = "shuoming" > < img src = "../../assets/realtimeWarning/消息.png"
alt = "" > & nbsp ; 实时预警根据平安指数配置的预警规则 , 辖区内的企业达到预警分值后产生即时预警 < / div >
< zhmap class = "map" :waringList ="waringList" @zhuanchuzhi ="chuzhi" v-if ="waringList && waringList.length" >
< div class = "shuoming" >
< img
src = "../../assets/realtimeWarning/消息.png"
alt = ""
/ > & n b s p ; 实 时 预 警 根 据 平 安 指 数 配 置 的 预 警 规 则 , 辖 区 内 的 企 业 达 到 预 警 分 值 后 产 生 即 时 预 警
< / div >
< zhmap
class = "map"
: waringList = "waringList"
@ zhuanchuzhi = "chuzhi"
v - if = "waringList && waringList.length"
>
< / zhmap >
< / div >
< div class = "rightBox" >
< div class = "totalTitle" >
< div class = "titleText" > 预警列表 < / div > < span > & nbsp ; ( < span class = "redText" > { { total } } < / span > ) < / span >
< div class = "titleText" > 预警列表 < / div >
< span
> & nbsp ; ( < span class = "redText" > { { total } } < / span > ) < / s p a n
>
< div class = "searchBox" >
< el -form :model ="formInline" class = "search" >
< el -form -item class = "formItem" >
< el -input v -model .trim = " formInline.searchParams " placeholder = "企业名称/预警指标" clearable
class = "formIpt" > < / e l - i n p u t >
< el -input
v - model . trim = "formInline.searchParams"
placeholder = "企业名称/预警指标"
clearable
class = "formIpt"
> < / e l - i n p u t >
< / e l - f o r m - i t e m >
< el -button type = "primary" @click ="getList()" > 搜 索 < / el -button >
< / e l - f o r m >
< / div >
< / div >
< div class = "bottomBody" >
< div class = "yujingItem" v-for ="(item, index) in waringList" :key ="index" >
< div
class = "yujingItem"
v - for = "(item, index) in waringList"
: key = "index"
>
< div class = "yujingTop" >
< div class = "companyName" > { { item . companyName } } < / div >
< div class = "impBtnList" >
< div : class = "{ 'shewei': a == '剧毒' || a == '易制毒', 'zhongdian': a == '消防重点' || a == '所管消防', 'zhibao': a == '放射源' || a == '易制爆', 'zhian': a == '治安重点' || a == '创安单位' }"
v - for = "a in item.companyTypeList" : key = "a" > { { a } }
< div
: class = " {
shewei : a == '剧毒' || a == '易制毒' ,
zhongdian : a == '消防重点' || a == '所管消防' ,
zhibao : a == '放射源' || a == '易制爆' ,
zhian : a == '治安重点' || a == '创安单位' ,
} "
v - for = "a in item.companyTypeList"
: key = "a"
>
{ { a } }
< / div >
< / div >
< / div >
< div class = "yujingBottom" >
< div class = "bottomTOP" >
< div class = "topItem" > < span > 一级指标 : < / span > < span class = "numValue" > { { item . levelIndexOne
} } < / span > < / div >
< div class = "topItem" >
< span > 一级指标 : < / s p a n
> < span class = "numValue" > { { item . levelIndexOne } } < / span >
< / div >
< div class = "topItem" > < span > 预警指标 : < / span >
< el -tooltip : content = "item.levelIndexThree + '异常'" placement = "top-start" >
< span class = "numValue" > “ { { item . levelIndexThree
} } ” 异常 < / span >
< div class = "topItem" >
< span > 预警指标 : < / span >
< el -tooltip
: content = "item.levelIndexThree + '异常'"
placement = "top-start"
>
< span class = "numValue"
> “ { { item . levelIndexThree } } ” 异常 < / s p a n
>
< / e l - t o o l t i p >
< / div >
< / div >
@ -51,23 +87,39 @@
< / div >
< / div >
< div class = "block" >
< el -pagination style = "float:right;margin:5px;" class = "msg-pagination-container" :background ="true"
@ size - change = "handleSizeChange" @ current - change = "handleCurrentChange" : current - page = "pageNum"
: page - sizes = "[10]" layout = "total, prev, pager, next, jumper" : total = "total" >
< el -pagination
style = "float: right; margin: 5px"
class = "msg-pagination-container"
: background = "true"
@ size - change = "handleSizeChange"
@ current - change = "handleCurrentChange"
: current - page = "pageNum"
: page - sizes = "[10]"
layout = "total, prev, pager, next, jumper"
: total = "total"
>
< / e l - p a g i n a t i o n >
< / div >
< / div >
< el -dialog title = "选择处置部门" :visible.sync ="diaVisible" class = "picForm" @closed ="closeDia()" >
< el -dialog
title = "选择处置部门"
: visible . sync = "diaVisible"
class = "picForm"
@ closed = "closeDia()"
>
< div class = "czTitle" > 可选择多个部门联合处置 : < / div >
< div class = "czBody" v-if ="deptList && deptList.length" >
< el -checkbox -group v-model ="checkedDepts" >
< el -checkbox v-for ="city in deptList" :label="city.deptId" :key="city.deptId" > {{ city.deptName
} } < / e l - c h e c k b o x >
< el -checkbox
v - for = "city in deptList"
: label = "city.deptId"
: key = "city.deptId"
> { { city . deptName } } < / e l - c h e c k b o x
>
< / e l - c h e c k b o x - g r o u p >
< / div >
< div slot = "footer" class = "dialog-footer" >
< el -button @ click = "diaVisible = false" > 取 消
< / e l - b u t t o n >
< el -button @ click = "diaVisible = false" > 取 消 < / e l - b u t t o n >
< el -button type = "primary" @click ="addForm()" > 确 定 < / el -button >
< / div >
< / e l - d i a l o g >
@ -76,8 +128,12 @@
< / template >
< script >
import { mapList , deptList , addCommonApprovalProcess } from '@/api/realtimeWarning'
import zhmap from './map.vue'
import {
mapList ,
deptList ,
addCommonApprovalProcess ,
} from "@/api/realtimeWarning" ;
import zhmap from "./map.vue" ;
export default {
components : {
zhmap ,
@ -93,54 +149,60 @@ export default {
pageNum : 1 ,
total : 0 ,
formInline : { } ,
}
} ;
} ,
created ( ) {
this . getList ( )
this . getList ( ) ;
} ,
methods : {
getList ( ) {
mapList ( { pageSize : this . pageSize , pageNum : this . pageNum , ... this . formInline } ) . then ( res => {
this . waringList = res . data
this . total = res . total
} )
mapList ( {
pageSize : this . pageSize ,
pageNum : this . pageNum ,
... this . formInline ,
} ) . then ( ( res ) => {
this . waringList = res . data ;
this . total = res . total ;
} ) ;
} ,
handleSizeChange ( val ) {
this . pageNum = 1 ;
this . pageSize = val ;
this . getList ( )
this . getList ( ) ;
} ,
handleCurrentChange ( val ) {
this . pageNum = val ;
this . getList ( )
this . getList ( ) ;
} ,
chuzhi ( val ) {
/ / c o n s o l e . l o g ( v a l )
this . chuzhiData = val
deptList ( ) . then ( res => {
console . log ( res , 'res' ) ;
this . deptList = res . data
this . diaVisible = true
} )
this . chuzhiData = val ;
deptList ( ) . then ( ( res ) => {
console . log ( res , "res" ) ;
this . deptList = res . data ;
this . diaVisible = true ;
} ) ;
} ,
closeDia ( ) {
this . checkedDepts = [ ]
this . checkedDepts = [ ] ;
} ,
addForm ( ) {
console . log ( this . checkedDepts , 'this.checkedDepts' ) ;
addCommonApprovalProcess ( { approveDeptCodes : this . checkedDepts , safeCompanyAlarm : { id : this . chuzhiData . id } } ) . then ( res => {
console . log ( this . checkedDepts , "this.checkedDepts" ) ;
addCommonApprovalProcess ( {
approveDeptCodes : this . checkedDepts ,
safeCompanyAlarm : { id : this . chuzhiData . id } ,
} ) . then ( ( res ) => {
if ( res . code == 200 ) {
this . $message . success ( res . msg )
this . diaVisible = false
this . getList ( )
this . $message . success ( res . msg ) ;
this . diaVisible = false ;
this . getList ( ) ;
} else {
this . $message . error ( res . msg )
}
} )
}
}
this . $message . error ( res . msg ) ;
}
} ) ;
} ,
} ,
} ;
< / script >
< style lang = "less" scoped >
@ -157,7 +219,7 @@ export default {
height : 100 % ;
position : relative ;
padding : 70 px 25 px 20 px ;
background : url ( '~@/assets/realtimeWarning/231.png' ) no - repeat ;
background : url ( "~@/assets/realtimeWarning/231.png" ) no - repeat ;
background - size : 100 % 100 % ;
box - sizing : border - box ;
display : flex ;
@ -167,7 +229,7 @@ export default {
top : 25 px ;
left : 25 px ;
font - size : 18 px ;
color : # FFFFFF ;
color : # ffffff ;
letter - spacing : 1 px ;
font - weight : 500 ;
}
@ -177,7 +239,7 @@ export default {
height : 100 % ;
margin - right : 20 px ;
box - sizing : border - box ;
background : url ( '~@/assets/realtimeWarning/矩形备份 289981.png' ) no - repeat ;
background : url ( "~@/assets/realtimeWarning/矩形备份 289981.png" ) no - repeat ;
background - size : 100 % 100 % ;
padding : 20 px ;
position : relative ;
@ -188,7 +250,7 @@ export default {
left : 20 px ;
height : 40 px ;
width : calc ( 100 % - 40 px ) ;
background : rgba ( 15 , 17 , 19 , 0.4 0 ) ;
background : rgba ( 15 , 17 , 19 , 0.4 ) ;
z - index : 999999999 ;
padding : 0 10 px ;
display : flex ;
@ -199,11 +261,9 @@ export default {
font - weight : 400 ;
img {
width : 20 px ;
height : 20 px ;
}
}
. map {
@ -216,7 +276,7 @@ export default {
width : 570 px ;
height : 100 % ;
box - sizing : border - box ;
background : url ( '~@/assets/realtimeWarning/矩形备份 289981.png' ) no - repeat ;
background : url ( "~@/assets/realtimeWarning/矩形备份 289981.png" ) no - repeat ;
background - size : 100 % 100 % ;
position : relative ;
@ -227,14 +287,14 @@ export default {
padding : 0 20 px ;
display : flex ;
align - items : center ;
color : # EBFFF 4;
color : # ebfff 4;
. titleText {
font - size : 16 px ;
color : # EBFFF 4;
color : # ebfff 4;
letter - spacing : 2 px ;
width : 120 px ;
text - shadow : 0 0 9 px rgba ( 21 , 255 , 195 , 0.6 0 ) ;
text - shadow : 0 0 9 px rgba ( 21 , 255 , 195 , 0.6 ) ;
font - weight : 400 ;
}
@ -253,8 +313,8 @@ export default {
/deep/ . el - input _ _inner {
/ / b a c k g r o u n d : u r l ( ' ~ @ / a s s e t s / c o m p a n y F i l e / 2 1 2 1 . p n g ' ) n o - r e p e a t ;
background : # 3 B 4450;
border : 1 px solid # 5 B748C ;
background : # 3 b 4450;
border : 1 px solid # 5 b748c ;
color : rgba ( 234 , 246 , 255 , 0.7 ) ;
height : 35 px ;
@ -269,7 +329,6 @@ export default {
}
/deep/ . el - form - item {
margin : 0 ;
. el - form - item _ _content {
@ -277,12 +336,11 @@ export default {
}
. el - form - item _ _label {
color : # EAF6FF ;
color : # eaf6ff ;
letter - spacing : 1 px ;
text - align : center ;
font - weight : 400 ;
}
}
/deep/ . el - button -- primary {
@ -293,10 +351,10 @@ export default {
text - align : center ;
background : rgba ( 0 , 0 , 0 , 0 ) ;
border : 0 ;
background : url ( '~@/assets/companyFile/2121.png' ) no - repeat ;
background : url ( "~@/assets/companyFile/2121.png" ) no - repeat ;
background - size : 100 % 100 % ;
font - size : 14 px ;
color : # F8FBFF ;
color : # f8fbff ;
letter - spacing : 0.89 px ;
font - weight : 500 ;
}
@ -307,11 +365,11 @@ export default {
line - height : 30 px ;
padding : 0 ;
text - align : center ;
background : # 3 B 4450;
background : # 3 b 4450;
border : 0 ;
font - size : 14 px ;
color : # F8FBFF ;
color : # f8fbff ;
letter - spacing : 0.89 px ;
font - weight : 500 ;
}
@ -319,10 +377,10 @@ export default {
. redText {
font - size : 16 px ;
color : # FF 9191;
color : # ff 9191;
letter - spacing : 2 px ;
font - weight : 400
font - weight : 400 ;
}
}
@ -335,7 +393,6 @@ export default {
& : : - webkit - scrollbar {
width : 6 px ;
}
/ / 滚 动 条 里 面 默 认 的 小 方 块 , 自 定 义 样 式
@ -347,13 +404,12 @@ export default {
/ / 滚 动 条 里 面 的 轨 道
& : : - webkit - scrollbar - track {
background : transparent ;
}
. yujingItem {
height : 158 px ;
width : 100 % ;
background : rgba ( 108 , 128 , 151 , 0.2 0 ) ;
background : rgba ( 108 , 128 , 151 , 0.2 ) ;
border : 1 px solid rgba ( 73 , 84 , 97 , 1 ) ;
position : relative ;
margin - bottom : 1 ch ;
@ -364,10 +420,9 @@ export default {
width : 100 % ;
padding : 0 14 px 5 px ;
. companyName {
font - size : 16 px ;
color : # 30 C4FF ;
color : # 30 c4ff ;
letter - spacing : 1.14 px ;
font - weight : 500 ;
margin - right : 20 px ;
@ -392,10 +447,11 @@ export default {
height : 26 px ;
line - height : 26 px ;
width : auto ;
background : url ( '~@/assets/companyFile/编组 11991.png' ) no - repeat ;
background : url ( "~@/assets/companyFile/编组 11991.png" )
no - repeat ;
padding : 0 5 px ;
font - size : 14 px ;
color : # B5EBFF ;
color : # b5ebff ;
letter - spacing : 0.44 px ;
font - weight : 400 ;
background - size : 100 % 100 % ;
@ -406,10 +462,11 @@ export default {
height : 26 px ;
line - height : 26 px ;
width : auto ;
background : url ( '~@/assets/companyFile/编组 11222221.png' ) no - repeat ;
background : url ( "~@/assets/companyFile/编组 11222221.png" )
no - repeat ;
padding : 0 5 px ;
font - size : 14 px ;
color : # E3DEFF ;
color : # e3deff ;
letter - spacing : 0.44 px ;
font - weight : 400 ;
background - size : 100 % 100 % ;
@ -420,10 +477,11 @@ export default {
height : 26 px ;
line - height : 26 px ;
width : auto ;
background : url ( '~@/assets/companyFile/编组 11991备份 10.png' ) no - repeat ;
background : url ( "~@/assets/companyFile/编组 11991备份 10.png" )
no - repeat ;
padding : 0 5 px ;
font - size : 14 px ;
color : # E3DEFF ;
color : # e3deff ;
letter - spacing : 0.44 px ;
font - weight : 400 ;
background - size : 100 % 100 % ;
@ -434,16 +492,16 @@ export default {
height : 26 px ;
line - height : 26 px ;
width : auto ;
background : url ( '~@/assets/companyFile/编组 11991备份 21.png' ) no - repeat ;
background : url ( "~@/assets/companyFile/编组 11991备份 21.png" )
no - repeat ;
padding : 0 5 px ;
font - size : 14 px ;
color : # E3DEFF ;
color : # e3deff ;
letter - spacing : 0.44 px ;
font - weight : 400 ;
background - size : 100 % 100 % ;
margin - right : 10 px ;
}
}
}
@ -456,7 +514,7 @@ export default {
width : 50 px ;
line - height : 20 px ;
font - size : 14 px ;
color : # 30 C4FF ;
color : # 30 c4ff ;
letter - spacing : 1 px ;
font - weight : 400 ;
}
@ -467,7 +525,6 @@ export default {
padding : 0 14 px 5 px ;
overflow : hidden ;
. bottomTOP {
width : 100 % ;
height : 50 % ;
@ -496,7 +553,6 @@ export default {
text - overflow : ellipsis ;
span {
width : 70 px ;
}
@ -510,13 +566,12 @@ export default {
. numValue {
font - size : 14 px ;
color : # FFFFFF ;
color : # ffffff ;
letter - spacing : 0 ;
font - weight : 400 ;
white - space : nowrap ;
text - overflow : ellipsis ;
}
}
}
}
@ -538,13 +593,12 @@ export default {
color : # ccc ;
}
}
}
. picForm {
/deep/ . el - dialog {
background - color : rgba ( 0 , 0 , 0 , 0 ) ;
background : url ( '~@/assets/realtimeWarning/导入弹窗.png' ) no - repeat ;
background : url ( "~@/assets/realtimeWarning/导入弹窗.png" ) no - repeat ;
background - size : 100 % 100 % ;
width : 461 px ;
height : 412 px ;
@ -553,7 +607,7 @@ export default {
. el - dialog _ _title {
font - size : 16 px ;
color : # EBFFF 4;
color : # ebfff 4;
letter - spacing : 2 px ;
text - shadow : 0 0 9 px rgba ( 21 , 255 , 195 , 0.77 ) ;
@ -570,7 +624,7 @@ export default {
opacity : 0.7 ;
font - family : PingFangSC - Regular ;
font - size : 14 px ;
color : # EAF6FF ;
color : # eaf6ff ;
letter - spacing : 1 px ;
font - weight : 400 ;
margin - bottom : 12 px ;
@ -579,7 +633,7 @@ export default {
. czBody {
width : 440 px ;
height : 232 px ;
background : rgba ( 108 , 128 , 151 , 0.2 0 ) ;
background : rgba ( 108 , 128 , 151 , 0.2 ) ;
border : 1 px solid # 495461 ;
overflow : auto ;
@ -603,32 +657,35 @@ export default {
width : 80 % ;
height : 34 px ;
opacity : 0.7 ;
background - image : linear - gradient ( 180 deg , rgba ( 234 , 241 , 248 , 0.10 ) 0 % , rgba ( 208 , 222 , 238 , 0.10 ) 100 % ) ;
border : 1 px solid # 5 B748C ;
background - image : linear - gradient (
180 deg ,
rgba ( 234 , 241 , 248 , 0.1 ) 0 % ,
rgba ( 208 , 222 , 238 , 0.1 ) 100 %
) ;
border : 1 px solid # 5 b748c ;
margin : 16 px 15 px 0 ;
font - size : 14 px ;
color : # EAF6FF ;
color : # eaf6ff ;
letter - spacing : 1 px ;
padding : 7 px ;
}
. is - checked {
color : # 37 FDC 7;
background : rgba ( 13 , 251 , 246 , 0.1 0 ) ;
border : 1 px solid # 37 FDC 7;
color : # 37 fdc 7;
background : rgba ( 13 , 251 , 246 , 0.1 ) ;
border : 1 px solid # 37 fdc 7;
box - sizing : border - box ;
}
. el - checkbox _ _input . is - checked + . el - checkbox _ _label {
color : # 37 FDC 7;
color : # 37 fdc 7;
}
. el - checkbox _ _input . is - checked . el - checkbox _ _inner ,
. el - checkbox _ _input . is - indeterminate . el - checkbox _ _inner {
background - color : rgba ( 13 , 251 , 246 , 0.1 0 ) ;
background - color : rgba ( 13 , 251 , 246 , 0.1 ) ;
border - color : rgba ( 255 , 251 , 246 , 0.6 ) ;
}
}
@ -640,10 +697,14 @@ export default {
height : 35 px ;
opacity : 0.8 ;
background : rgba ( 0 , 0 , 0 , 0 ) ;
background - image : linear - gradient ( 180 deg , rgba ( 234 , 241 , 248 , 0.10 ) 0 % , rgba ( 208 , 222 , 238 , 0.10 ) 100 % ) ;
background - image : linear - gradient (
180 deg ,
rgba ( 234 , 241 , 248 , 0.1 ) 0 % ,
rgba ( 208 , 222 , 238 , 0.1 ) 100 %
) ;
border : 1 px solid rgba ( 91 , 116 , 140 , 1 ) ;
border - radius : 4 px ;
color : # E3DEFF
color : # e3deff ;
}
. el - button -- primary {
@ -651,13 +712,12 @@ export default {
height : 35 px ;
background : rgba ( 0 , 0 , 0 , 0 ) ;
border : 0 ;
background : url ( '~@/assets/realtimeWarning/2121.png' ) no - repeat ;
background : url ( "~@/assets/realtimeWarning/2121.png" ) no - repeat ;
background - size : 100 % 100 % ;
}
}
}
}
}
}
< / style >