| | |
| | | <template> |
| | | <div class="history-module"> |
| | | <div class="title"></div> |
| | | <div class="title">历史报警</div> |
| | | <div class="history-item" |
| | | v-for="(item,index) in warnArr" |
| | | v-for="(item,index) in warnArrProcess" |
| | | :key="index"> |
| | | <warnDescription |
| | | <warnDescription |
| | | :warnDes="{code:item.code, |
| | | time:item.time, |
| | | warn:item.warn}"/> |
| | | <div |
| | | class="button" |
| | | @click="process(item)">处理</div> |
| | | </div> |
| | | <processWarn |
| | | v-if="activeWarn" |
| | | :warnObj="activeWarn" |
| | | @close="close" |
| | | @save="save"/> |
| | | <div class="mask" v-if="activeWarn"/> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import warnDescription from '@/pages/internetEquipment/components/warnDescription' |
| | | import processWarn from '@/pages/internetEquipment/components/processWarn' |
| | | export default { |
| | | data (){ |
| | | return { |
| | | activeWarn:null |
| | | } |
| | | }, |
| | | props :{ |
| | | warnArr : { |
| | | type: Array |
| | | } |
| | | }, |
| | | components :{ |
| | | warnDescription |
| | | warnDescription, |
| | | processWarn |
| | | }, |
| | | computed :{ |
| | | warnArrProcess(){ |
| | | return this.warnArr.filter(item=>!item.processed) |
| | | } |
| | | }, |
| | | methods: { |
| | | process(item){ |
| | | this.activeWarn = item |
| | | }, |
| | | close(){ |
| | | this.activeWarn =null |
| | | }, |
| | | save(item) { |
| | | this.$set(item,'processed',true) |
| | | this.close() |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped lang="scss"> |
| | | .history-module { |
| | | padding: 20px; |
| | | width: 280px; |
| | | height: 292px; |
| | | background-color: #fff; |
| | | box-shadow: 0px 2px 10px rgba(141, 164, 187, 0.25); |
| | | border-radius: 15px; |
| | | overflow-y: scroll; |
| | | |
| | | .title { |
| | | margin-bottom: 10px; |
| | | font-size: 14px; |
| | | font-weight: 700; |
| | | text-align: left; |
| | | } |
| | | |
| | | .history-item { |
| | | display: flex; |
| | | width: 240px; |
| | | height: 74px; |
| | | margin-bottom: 4px; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | background: #F9FAFC; |
| | | border-radius: 10px; |
| | | padding: 0 10px; |
| | | .button { |
| | | width: 54px; |
| | | height: 20px; |
| | | background: #CFEEE0; |
| | | border-radius: 30px; |
| | | font-size: 12px; |
| | | line-height: 20px; |
| | | color: #11AA66; |
| | | cursor: pointer; |
| | | } |
| | | } |
| | | |
| | | .mask { |
| | | position: fixed; |
| | | top: 0; |
| | | bottom: 0; |
| | | left: 0; |
| | | right: 0; |
| | | text-align: center; |
| | | z-index: 1; |
| | | background-color: black; |
| | | opacity: .5; |
| | | } |
| | | } |
| | | </style> |