zhaobao 2 ani în urmă
părinte
comite
cdbcb22a2a

+ 0 - 0
src/api/goaf/index.js


BIN
src/assets/images/logo/logo.png


BIN
src/assets/images/logo/logo2.png


BIN
src/assets/images/logo/logo3.png


BIN
src/assets/images/logo/logo4.png


BIN
src/assets/images/logo/lylc_jg.png


BIN
src/assets/images/logo/thumb.png


+ 22 - 6
src/layout/components/Navbar.vue

@@ -77,13 +77,25 @@ export default {
       logo: require('@/assets/images/logo/logo.png'),
       sideMenuTabIndex: 0,
       sideMenuTabList: [
-        { name: '数字全景', icon: 'el-icon-s-platform', path: '/', permit: 'aqpt_panorama', id: 0 },
+        // { name: '数字全景', icon: 'el-icon-s-platform', path: '/', permit: 'aqpt_panorama', id: 0 },
+        // { name: '预警中心', icon: 'icon-common_saving', path: '/alert', permit: 'aqpt_alert_center', id: 1 },
+        // { name: '工作台', icon: 'icon-common_task', path: '/task', permit: 'aqpt_task_center', id: 2 },
+        // { name: '双重预防', icon: 'icon-common_quality', path: '/aqpt/scene', permit: 'aqpt_workflow', id: 3 },
+        // { name: '设备管理', icon: 'icon-common_equipment', path: '/aqpt/equipment', permit: 'aqpt_equipment', id: 4 },
+        // { name: '作业票', icon: 'icon-common_satisfaction', path: '/aqpt/ticket', permit: 'aqpt_ticket', id: 5 },
+        // { name: '奖惩考核', icon: 'icon-common_quality', path: '/aqpt/kpi/regulation', permit: 'aqpt_kpi', id: 6 },
+        // { name: '安全智库', icon: 'icon-common_knowledge', path: '/aqpt/art', permit: 'aqpt_art_center', id: 7 },
+        // { name: '文件中心', icon: 'icon-common_file', path: '/aqpt/doc', permit: 'aqpt_doc_center', id: 8 },
+        // { name: '系统管理', icon: 'icon iconfont icon-common_configuration', path: '/aqpt/account', permit: 'aqpt_system', id: 9 },
+
+        /** ckq */
+        { name: '数字全景', icon: 'el-icon-s-platform', href: 'http://localhost:8080/', permit: 'aqpt_panorama', id: 0 },
+        { name: '双重预防【采空区信息&人员巡检】', icon: 'icon-common_quality', path: '/aqpt/scene', permit: 'aqpt_workflow', id: 3 },
+        { name: '设备管理【传感器】', icon: 'icon-common_equipment', path: '/aqpt/equipment', permit: 'aqpt_equipment', id: 4 },
         { name: '预警中心', icon: 'icon-common_saving', path: '/alert', permit: 'aqpt_alert_center', id: 1 },
         { name: '工作台', icon: 'icon-common_task', path: '/task', permit: 'aqpt_task_center', id: 2 },
-        { name: '双重预防', icon: 'icon-common_quality', path: '/aqpt/scene', permit: 'aqpt_workflow', id: 3 },
-        { name: '设备管理', icon: 'icon-common_equipment', path: '/aqpt/equipment', permit: 'aqpt_equipment', id: 4 },
-        { name: '作业票', icon: 'icon-common_satisfaction', path: '/aqpt/ticket', permit: 'aqpt_ticket', id: 5 },
-        { name: '奖惩考核', icon: 'icon-common_quality', path: '/aqpt/kpi/regulation', permit: 'aqpt_kpi', id: 6 },
+        // { name: '作业票', icon: 'icon-common_satisfaction', path: '/aqpt/ticket', permit: 'aqpt_ticket', id: 5 },
+        // { name: '奖惩考核', icon: 'icon-common_quality', path: '/aqpt/kpi/regulation', permit: 'aqpt_kpi', id: 6 },
         { name: '安全智库', icon: 'icon-common_knowledge', path: '/aqpt/art', permit: 'aqpt_art_center', id: 7 },
         { name: '文件中心', icon: 'icon-common_file', path: '/aqpt/doc', permit: 'aqpt_doc_center', id: 8 },
         { name: '系统管理', icon: 'icon iconfont icon-common_configuration', path: '/aqpt/account', permit: 'aqpt_system', id: 9 }
@@ -112,7 +124,7 @@ export default {
   },
   mounted() {
     this.getUnReadMsg()
-    // this.initSideMenu()
+    this.initSideMenu()
     this.initsideTab()
   },
   methods: {
@@ -150,6 +162,10 @@ export default {
       this.$router.push(`/login?redirect=${this.$route.fullPath}`)
     },
     sideTabChange(index, item) {
+      if (item.href) {
+        window.open(item.href)
+        return
+      }
       this.sideMenuTabIndex = index
       this.$router.replace({
         path: item.path

+ 1 - 2
src/router/index.js

@@ -60,8 +60,7 @@ export const constantRoutes = [
         meta: { title: '404', icon: 'user', noCache: true }
       }
     ]
-  },
-  { path: '*', redirect: '/404', hidden: true }
+  }
 ]
 
 /**

+ 20 - 0
src/router/modules/aqpt.js

@@ -98,6 +98,26 @@ const aqptRouter = [
       }
     ]
   },
+  /** 采空区*/
+  {
+    path: '/goaf',
+    component: Layout,
+    name: 'goaf',
+    redirect: '/aqpt/info',
+    meta: {
+      title: '采空区信息',
+      permit: 'aqpt_danger'
+    },
+    groupId: [3],
+    children: [
+      {
+        path: 'info',
+        component: () => import('@/views/goaf/info/index'),
+        name: 'goaf-info',
+        meta: { title: '采空区信息配置', noCache: true, icon: 'icon-common_riskmanagement', permit: 'aqpt_danger' }
+      }
+    ]
+  },
   {
     path: '/aqpt/scene',
     component: Layout,

+ 357 - 0
src/views/goaf/info/components/Goaf.vue

@@ -0,0 +1,357 @@
+<template>
+  <el-drawer
+    :title="title"
+    :modal-append-to-body="false"
+    :modal="false"
+    :wrapper-closable="false"
+    size="35%"
+    :visible.sync="dialogVisible"
+  >
+    <div class="content-container goaf">
+      <vuescroll :ops="ops" style="height: calc(100vh - 220px)">
+        <el-form ref="ruleForm" :model="formData" :rules="rules" label-position="right" label-width="160px">
+          <el-form-item label="采空区名称" prop="goafName">
+            <el-input v-model="formData.goafName" style="width:90%" />
+          </el-form-item>
+          <el-form-item label="矿带">
+            <el-input-number v-model="formData.goafOrebelt" placeholder="矿带" :controls="false" />
+          </el-form-item>
+          <el-form-item label="矿体">
+            <el-input-number v-model="formData.goafOrebody" placeholder="矿体" :controls="false" />
+          </el-form-item>
+          <el-form-item label="中段">
+            <el-input-number v-model="formData.goafOreheight" placeholder="中段" :controls="false" />
+          </el-form-item>
+          <el-form-item label="水平断面均暴露面积">
+            <el-input-number v-model="formData.goafAvexArea" placeholder="水平断面均暴露面积" :controls="false" />
+          </el-form-item>
+          <el-form-item label="平均倾向宽度">
+            <el-input-number v-model="formData.goafAvinWidth" placeholder="平均倾向宽度" :controls="false" />
+          </el-form-item>
+          <el-form-item label="平均暴露高度">
+            <el-input-number v-model="formData.goafAvexHeight" placeholder="平均暴露高度 0.0表示“已填充”" :controls="false" />
+          </el-form-item>
+          <el-form-item label="体积">
+            <el-input-number v-model="formData.goafVoidVolume" placeholder="体积 0表示“已填充”" :controls="false" />
+          </el-form-item>
+          <el-form-item label="倾向">
+            <el-input-number v-model="formData.goafKeyTrend" placeholder="倾向" :controls="false" />
+          </el-form-item>
+          <el-form-item label="倾角(度)">
+            <el-input-number v-model="formData.goafKeyDipangle" placeholder="倾角(度)" :controls="false" />
+          </el-form-item>
+          <el-form-item label="顶板矿柱厚度">
+            <el-input-number v-model="formData.goafRoofpillarThickness" placeholder="顶板矿柱厚度" :controls="false" />
+          </el-form-item>
+          <el-form-item label="保安间柱平均厚度">
+            <el-input-number v-model="formData.goafIncoavThickness" placeholder="保安间柱平均厚度" :controls="false" />
+          </el-form-item>
+          <el-form-item label="顶板矿柱厚度">
+            <el-input-number v-model="formData.goafRoofpillarThickness" placeholder="顶板矿柱厚度" :controls="false" />
+          </el-form-item>
+          <el-form-item label="保安间柱平均厚度">
+            <el-input-number v-model="formData.goafIncoavThickness" placeholder="保安间柱平均厚度" :controls="false" />
+          </el-form-item>
+          <el-form-item label="勘探位置">
+            <el-input v-model="formData.goafExpLocation" style="width:200px" />
+          </el-form-item>
+          <el-form-item label="围岩岩性">
+            <el-input v-model="formData.goafRockLithology" style="width:200px" />
+          </el-form-item>
+          <el-form-item label="围岩稳定性">
+            <el-input v-model="formData.goafRockStability" style="width:200px" />
+          </el-form-item>
+          <el-form-item label="形成时间">
+            <el-date-picker
+              v-model="formData.goafFormationTime"
+              type="date"
+              placeholder="请选择形成时间"
+              class="date"
+              :default-value="new Date(2010, 9, 1)"
+              style="width:200px"
+            />
+          </el-form-item>
+          <el-form-item label="可充填体积(m³)">
+            <el-input-number v-model="formData.goafCanfillVolume" placeholder="可充填体积(m³)" :controls="false" />
+          </el-form-item>
+          <el-form-item label="剩余可充填体积(m³)">
+            <el-input-number v-model="formData.goafRemainVolume" placeholder="剩余可充填体积(m³)" :controls="false" />
+          </el-form-item>
+          <el-form-item label="充填方式">
+            <el-select v-model="formData.riskLevel" style="width:200px">
+              <el-option :value="0" label="废石" />
+              <el-option :value="1" label="尾矿" />
+            </el-select>
+          </el-form-item>
+          <el-form-item label="是否填充">
+            <el-select v-model="formData.goafIsFill" style="width:200px">
+              <el-option :value="0" label="是" />
+              <el-option :value="1" label="否" />
+            </el-select>
+          </el-form-item>
+          <el-form-item label="备注">
+            <el-input v-model="formData.goafInfoRemak" type="textarea" rows="5" style="width:90%" />
+          </el-form-item>
+        </el-form>
+      </vuescroll>
+      <div class="btn-group">
+        <el-button type="primary" @click="submitForm('ruleForm')">确定</el-button>
+        <el-button class="cancel-btn" @click="dialogVisible = false">取消</el-button>
+      </div>
+    </div>
+  </el-drawer>
+</template>
+
+<script>
+import { createHazardRisk, getHazardRiskById, updateHazardRisk } from '@/api/aqpt/hazardRiskApi'
+import { strArr2NumArr } from '@/utils'
+import Vuescroll from 'vuescroll'
+
+export default {
+  components: {
+    Vuescroll
+  },
+  data() {
+    return {
+      title: '采空区信息',
+      ops: {
+        bar: {
+          keepShow: false,
+          background: 'rgba(144, 147, 153, 0.4)',
+          onlyShowBarOnScroll: false
+        }
+      },
+      dialogVisible: false,
+      formData: {
+        'goafId': '',
+        'ocId': '',
+        'goafOrebelt': 0,
+        'goafOrebody': 0,
+        'goafOreheight': 0,
+        'goafName': '',
+        'goafAvexArea': 0,
+        'goafAvinWidth': 0,
+        'goafAvexHeight': 0,
+        'goafVoidVolume': 0,
+        'goafKeyTrend': 0,
+        'goafKeyDipangle': 0,
+        'goafRoofpillarThickness': 0,
+        'goafIncoavThickness': 0,
+        'goafExpLocation': '',
+        'goafRockLithology': '',
+        'goafRockStability': '',
+        'goafFormationTime': '',
+        'goafCanfillVolume': 0,
+        'goafRemainVolume': 0,
+        'goafFillMethod': 0,
+        'goafIsFill': 0,
+        'goafInfoRemak': ''
+      },
+      rules: {
+        goafName: [
+          { required: true, message: '采空区名称不能为空', trigger: 'blur' }
+        ]
+      },
+      ctrlLevelList: [],
+      positionList: [],
+      viewData: {},
+      actionType: ''
+    }
+  },
+  mounted() {
+  },
+  methods: {
+
+    // Show Add Dialog
+    showAddModel(hazardId, hazardTitle) {
+      this.resetFormData()
+      this.actionType = 'ADD'
+      this.dialogVisible = true
+      this.formData.hazardId = hazardId
+      this.formData.hazardTitle = hazardTitle
+    },
+
+    // Show Edit Dialog
+    showEditModel(hazardId, riskId) {
+      this.resetFormData()
+      this.actionType = 'UPDATE'
+      this.dialogVisible = true
+      getHazardRiskById(hazardId, riskId).then((resp) => {
+        const { code, data, msg } = resp
+        if (code === 0) {
+          this.formData = data
+          this.formData.positionId = strArr2NumArr(data.positionIdList.split(','))
+          console.log('this.formData.positionId', this.formData.positionId.toString())
+        } else {
+          this.$message.error(msg)
+        }
+      }).catch((error) => {
+        console.log(error)
+      })
+    },
+
+    // Reset Form Data
+    resetFormData() {
+      this.formData = {
+        'ocId': '',
+        'goafOrebelt': 0,
+        'goafOrebody': 0,
+        'goafOreheight': 0,
+        'goafName': '',
+        'goafAvexArea': 0,
+        'goafAvinWidth': 0,
+        'goafAvexHeight': 0,
+        'goafVoidVolume': 0,
+        'goafKeyTrend': 0,
+        'goafKeyDipangle': 0,
+        'goafRoofpillarThickness': 0,
+        'goafIncoavThickness': 0,
+        'goafExpLocation': '',
+        'goafRockLithology': '',
+        'goafRockStability': '',
+        'goafFormationTime': '',
+        'goafCanfillVolume': 0,
+        'goafRemainVolume': 0,
+        'goafFillMethod': 0,
+        'goafIsFill': 0,
+        'goafInfoRemak': ''
+      }
+    },
+
+    // 提交
+    submitForm(formName) {
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+          switch (this.actionType) {
+            case 'ADD':
+              this.formData.positionIdList = this.formData.positionId.toString()
+              createHazardRisk(this.formData).then((resp) => {
+                const { code, msg } = resp
+                if (code === 0) {
+                  this.dialogVisible = false
+                  this.$message.success(msg)
+                  this.formSuccess()
+                } else {
+                  this.$message.error(msg)
+                }
+              }).catch((error) => {
+                console.log(error)
+              })
+              break
+
+            case 'UPDATE':
+              this.formData.positionIdList = this.formData.positionId.toString()
+              updateHazardRisk(this.formData).then((resp) => {
+                const { code, msg } = resp
+                if (code === 0) {
+                  this.dialogVisible = false
+                  this.$message.success(msg)
+                  this.formSuccess()
+                } else {
+                  this.$message.error(msg)
+                }
+              }).catch((error) => {
+                console.log(error)
+              })
+              break
+          }
+        } else {
+          console.log('error submit!!')
+          return false
+        }
+      })
+    },
+    formSuccess() {
+      this.$emit('formSuccess')
+    },
+    resetFormField(formName) {
+      this.$refs[formName].resetFields()
+    }
+  }
+}
+</script>
+
+  <style lang="scss">
+  /* 修复input 背景不协调 和光标变色 */
+  /* Detail see https://github.com/PanJiaChen/vue-element-admin/pull/927 */
+
+  $bg: #283443;
+  $light_gray: #fff;
+  $cursor: #fff;
+
+  @supports (-webkit-mask: none) and (not (cater-color: $cursor)) {
+    .login-container .el-input input {
+      color: $cursor;
+    }
+  }
+
+  /* reset element-ui css */
+  .content-container {
+    .el-input, .el-textarea {
+      display: inline-block;
+      width: 100%;
+      border: 1px solid rgba(255, 255, 255, 0.1);
+      background: rgba(0, 0, 0, 0.1);
+      border-radius: 5px;
+
+      input, textarea {
+        background: transparent;
+        border: 0px;
+        -webkit-appearance: none;
+        border-radius: 0px;
+        padding: 12px 5px 12px 15px;
+        color: $light_gray;
+        min-height: 47px;
+        caret-color: $cursor;
+
+        &:-webkit-autofill {
+          box-shadow: 0 0 0px 1000px $bg inset !important;
+          -webkit-text-fill-color: $cursor !important;
+        }
+      }
+    }
+
+    .el-form-item__label {
+      color: #ffffff;
+      font-size: 14px;
+    }
+  }
+  .content-container .el-date-editor.date .el-input__inner{
+    padding-left: 30px;
+    min-height:unset;
+  }
+  </style>
+  <style lang="scss" scoped>
+
+  .content-container {
+    margin: 15px;
+    position: relative;
+    height: calc(100% - 15px);
+
+    .btn-group {
+      width: 100%;
+      padding:20px 0 0 160px;
+
+      .el-button {
+        margin: 0 15px;
+      }
+
+      .cancel-btn {
+        background: #004F7B;
+        border-color: #004F7B;
+        color: #FFF;
+
+        &:hover {
+          background: #026197;
+          border-color: #026197;
+        }
+      }
+    }
+
+  }
+
+  .el-form-item {
+    margin-bottom: 5px;
+  }
+  </style>
+

+ 223 - 0
src/views/goaf/info/components/GoafInfo.vue

@@ -0,0 +1,223 @@
+<template>
+  <div class="content-container">
+    <el-row class="tool-bar">
+      <el-col :span="12" class="left">
+        <div class="content-title">
+          采空区
+        </div>
+      </el-col>
+      <el-col :span="12" class="right">
+        <el-input v-model="conditions.keywords" class="search-input m-right-15" placeholder="请输入内容">
+          <el-button slot="append" icon="el-icon-search" @click="getData()" />
+        </el-input>
+        <el-button type="primary" @click="handleAdd">新增</el-button>
+      </el-col>
+    </el-row>
+
+    <el-row class="m-top-15">
+      <el-table v-loading="listLoading" class="page-table" border fit :data="dataList" height="calc(100vh - 220px)" style="width: 100%">
+        <el-table-column type="index" label="序号" header-align="center" align="center" width="60" />
+        <el-table-column prop="goafOrebelt" label="矿带" />
+        <el-table-column prop="goafOrebody" label="矿体" />
+        <el-table-column prop="goafOreheight" label="中段" />
+        <el-table-column prop="goafName" label="采空区名称" />
+        <el-table-column prop="goafAvexArea" label="水平断面均暴露面积" />
+        <el-table-column prop="goafAvinWidth" label="平均倾向宽度" />
+        <el-table-column prop="goafAvexHeight" label="平均暴露高度">
+          <template v-slot="{row}">
+            <span>{{ row.goafAvexHeight==0?'已填充”':row.goafAvexHeigh }}</span>
+          </template>
+        </el-table-column>
+
+        <el-table-column prop="goafOrebelt" label="风险单元" />
+        <el-table-column prop="goafVoidVolume" label="体积">
+          <template v-slot="{row}">
+            <span>{{ row.goafVoidVolume==0?'已填充':row.goafVoidVolume }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column prop="goafKeyTrend" label="倾向" />
+        <el-table-column prop="goafKeyDipangle" label="倾角(度)" />
+        <el-table-column prop="goafRoofpillarThickness" label="顶板矿柱厚度" />
+        <el-table-column prop="goafIncoavThickness" label="	保安间柱平均厚度" />
+        <el-table-column prop="goafExpLocation" label="勘探位置" />
+        <el-table-column prop="goafRockLithology" label="围岩岩性" />
+        <el-table-column prop="goafRockStability" label="围岩稳定性" />
+        <el-table-column prop="goafFormationTime" label="形成时间" />
+        <!-- <el-table-column prop="goafCanfillVolume" label="可充填体积(m³)" />
+        <el-table-column prop="goafRemainVolume" label="剩余可充填体积(m³)" /> -->
+        <el-table-column prop="goafFillMethod" label="充填方式">
+          <template v-slot="{row}">
+            <span>{{ row.goafFillMethod==0?'废石':'尾矿' }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column prop="goafIsFill" label="是否充填">
+          <template v-slot="{row}">
+            <span>{{ row.goafFillMethod==0?'是':'否' }}</span>
+          </template>
+        </el-table-column>
+        <!-- <el-table-column prop="goafInfoRemak" label="备注" /> -->
+        <el-table-column label="操作" header-align="center" align="center" width="170" fixed="right">
+          <template v-slot="{row}">
+            <el-button size="mini" type="primary" icon="el-icon-edit" @click="handleUpdate(row)">修改</el-button>
+            <el-button size="mini" type="primary" icon="el-icon-edit" @click="handleDelete(row)">删除</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <div class="pagination-container">
+        <pagination v-show="total>0" :total="total" :page.sync="conditions.page" :limit.sync="conditions.limit" @pagination="getData" />
+      </div>
+    </el-row>
+    <goaf ref="goaf" @formSuccess="getData" />
+  </div>
+</template>
+
+<script>
+import { getHazardRiskByPage, deleteHazardRiskById } from '@/api/aqpt/hazardRiskApi'
+import { Pagination } from '@/components'
+import Goaf from './Goaf'
+export default {
+  components: { Pagination, Goaf },
+  data() {
+    return {
+      dataList: [],
+      total: 0,
+      listLoading: false,
+      conditions: {
+        page: 1,
+        limit: 10,
+        keywords: '',
+        hazardId: undefined
+      },
+      viewData: {
+        'ocId': '',
+        'goafOrebelt': 0,
+        'goafOrebody': 0,
+        'goafOreheight': 0,
+        'goafName': '0',
+        'goafAvexArea': 0,
+        'goafAvinWidth': 0,
+        'goafAvexHeight': 0,
+        'goafVoidVolume': 0,
+        'goafKeyTrend': 0,
+        'goafKeyDipangle': 0,
+        'goafRoofpillarThickness': 0,
+        'goafIncoavThickness': 0,
+        'goafExpLocation': '',
+        'goafRockLithology': '',
+        'goafRockStability': '',
+        'goafFormationTime': '',
+        'goafCanfillVolume': 0,
+        'goafRemainVolume': 0,
+        'goafFillMethod': 0,
+        'goafIsFill': 0,
+        'goafInfoRemak': ''
+      }
+    }
+  },
+  methods: {
+    loadData(hazardId, hazardTitle) {
+      this.conditions.hazardId = hazardId
+      this.viewData.hazardTitle = hazardTitle
+      this.getData()
+    },
+
+    // fetch data
+    getData() {
+      this.listLoading = true
+      getHazardRiskByPage(this.conditions).then((resp) => {
+        this.listLoading = false
+        const { code, msg, data, total } = resp
+        if (code === 0) {
+          this.dataList = data
+          this.total = total
+        } else {
+          this.$message.error(msg)
+        }
+      }).catch((error) => {
+        console.log(error)
+      })
+    },
+    // "Add Risk" Model
+    handleAdd() {
+      const hazardId = this.conditions.hazardId
+      const hazardTitle = this.viewData.hazardTitle
+      this.$refs['goaf'].showAddModel(hazardId, hazardTitle)
+    },
+
+    // "Edit Risk" Model
+    handleUpdate(data) {
+      const { hazardId, riskId } = data
+      this.$refs['goaf'].showEditModel(hazardId, riskId)
+    },
+
+    // Delete Action
+    handleDelete(data) {
+      const { hazardId, riskId, riskSource } = data
+      this.$confirm(`此操作将删除该数据${riskSource}, 是否继续?`, '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      }).then(() => {
+        deleteHazardRiskById(hazardId, riskId).then((resp) => {
+          const { code, msg } = resp
+          if (code === 0) {
+            this.getData()
+            this.$message.success(msg)
+          } else {
+            this.$message.error(msg)
+          }
+        }).catch((error) => {
+          console.log(error)
+        })
+      }).catch(() => {
+        this.$message.info('已取消删除')
+      })
+    }
+  }
+}
+</script>
+<style lang="scss" scoped>
+    .content-container {
+        background: #193142FF;
+        margin: 10px 10px 10px 0;
+        padding: 15px;
+        height: calc(100vh - 85px);
+
+        .content-title {
+            font-size: 18px;
+            font-weight: bold;
+            color: #FFFFFF;
+
+            font-weight: bold;
+            background: linear-gradient(0deg, #FFFFFF 0%, #98A8B7 100%);
+            background-clip: text;
+            -webkit-background-clip: text;
+            -webkit-text-fill-color: transparent;
+        }
+
+        .tool-bar {
+
+            .left {
+                float: left;
+            }
+
+            .right {
+                float: right;
+                text-align: right;
+            }
+
+            .title {
+                line-height: 36px;
+                font-size: 26px;
+            }
+
+            .search-input {
+                width: 300px;
+            }
+        }
+
+        .el-dropdown {
+            margin: 0 10px;
+        }
+    }
+</style>

+ 26 - 0
src/views/goaf/info/index.vue

@@ -0,0 +1,26 @@
+<template>
+  <div class="goaf-info-wrap">
+    <goaf-info ref="goaf-info" />
+  </div>
+</template>
+
+<script>
+import GoafInfo from './components/GoafInfo'
+export default {
+  name: 'Index',
+  components: {
+    GoafInfo
+  },
+  methods: {
+    hazardSelChange(data) {
+      const { hazardId, hazardTitle } = data
+      this.$refs['goaf-info'].loadData(hazardId, hazardTitle)
+    }
+  }
+}
+</script>
+<style>
+.goaf-info-wrap{
+  padding: 15px;
+}
+</style>