| 
					
				 | 
			
			
				@@ -0,0 +1,205 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  <div class="device"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <template v-if="!detailVisible"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <!-- 查询、新增操作 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-form :inline="true" :model="dataForm" @keyup.enter.native="search()"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="名称/编号"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-input v-model="dataForm.name" placeholder="名称/编号" clearable/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="报警接收人"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <user-component v-model="dataForm.creatorId"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="报警日期"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-date-picker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-model="dataForm.date" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            value-format="yyyy-MM-dd HH:mm:ss" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            type="daterange" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            range-separator="至" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            start-placeholder="开始日期" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            end-placeholder="结束日期"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-date-picker> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="设备状态"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-select 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-model="dataForm.state" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            remote 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            placeholder="请选择"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <el-option 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-for="item in optionsState" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :key="item.value" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :label="item.label" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :value="item.value"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </el-option> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-button @click="search()">查询</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <!-- 数据表格 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :data="dataList" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        border 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        v-loading="dataListLoading" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        style="width: 100%;"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-table-column 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          label="序号" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          type="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          width="50" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          align="center"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-table-column 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          prop="equipmentName" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          header-align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          min-width="140" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :show-overflow-tooltip="true" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          label="设备名称"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-table-column 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          prop="codeNumber" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          header-align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          min-width="100" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :show-overflow-tooltip="true" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          label="设备编号"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-table-column 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          prop="alarmMsg" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          header-align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          min-width="140" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :show-overflow-tooltip="true" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          label="设备报警内容"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-table-column 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          prop="createTime" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          header-align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          min-width="160" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :show-overflow-tooltip="true" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          label="报警时间"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-table-column 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          prop="alarmName" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          header-align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          label="报警接收人"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-table-column 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          fixed="right" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          header-align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          align="center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          width="60" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          label="操作"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <template slot-scope="scope"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <el-button v-if="isAuth('prod:prodEquipmentAlarm:info')" type="text" size="small" @click="detailHandle(scope.row.alarmId)">查看</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-table> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-pagination 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        @size-change="sizeChangeHandle" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        @current-change="currentChangeHandle" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :current-page="pageIndex" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :page-sizes="[10, 20, 50, 100]" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :page-size="pageSize" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :total="totalPage" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        layout="total, sizes, prev, pager, next, jumper"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-pagination> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <detail v-if="detailVisible" ref="detail" @onChose="onChose"></detail> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import Detail from './repair-detail' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import UserComponent from '../common/user-component' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import {isAuth} from '@/utils' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import {getDate} from '@/utils/date-util' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  name: 'alarm-list', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  components: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    Detail, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    UserComponent 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  data () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      detailVisible: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      dataForm: {}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      dataList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      pageIndex: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      pageSize: 10, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      totalPage: 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      dataListLoading: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      dataListSelections: [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  created () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.getDataList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  methods: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getDate, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    isAuth, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    onChose () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.detailVisible = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 查询 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    search () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.pageIndex = 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.getDataList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 获取数据列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getDataList () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.dataListLoading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.addOrUpdateVisible = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$http({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        url: this.$http.adornUrl('/biz-service/prodEquipmentAlarm/list'), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        method: 'get', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        params: this.$http.adornParams({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'current': this.pageIndex, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'size': this.pageSize, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'creatorId': this.dataForm.creatorId ? this.dataForm.creatorId : null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'name': this.dataForm.name ? this.dataForm.name : null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'dateStart': this.dataForm.date ? this.dataForm.date[0] : null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'dateEnd': this.dataForm.date ? this.dataForm.date[1] : null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }).then(({data}) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (data && data.code === '200') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.dataList = data.data.records 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.totalPage = Number(data.data.total) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.dataList = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.totalPage = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.dataListLoading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 每页数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    sizeChangeHandle (val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.pageSize = val 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.pageIndex = 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.getDataList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 当前页 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    currentChangeHandle (val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.pageIndex = val 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.getDataList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 多选 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    selectionChangeHandle (val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.dataListSelections = val 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 查看 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    detailHandle (id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.detailVisible = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$nextTick(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.$refs.detail.init(id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<style scoped> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</style> 
			 |