消防器材功能迁移至企业端
							parent
							
								
									e8cbeaf287
								
							
						
					
					
						commit
						9d863aca1a
					
				| 
						 | 
				
			
			@ -0,0 +1,831 @@
 | 
			
		|||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <div class="rightCont">
 | 
			
		||||
      <el-form label-width="50px">
 | 
			
		||||
        <el-col :span="5">
 | 
			
		||||
          <el-form-item label="名称:" label-width="110px">
 | 
			
		||||
            <el-input v-model="form.FIRERESOURCES_NAME" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="4">
 | 
			
		||||
          <el-form-item label-width="10px">
 | 
			
		||||
            <el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="getQuery">
 | 
			
		||||
              搜索
 | 
			
		||||
            </el-button>
 | 
			
		||||
            <el-button v-waves class="filter-item" type="success" icon="el-icon-refresh" @click="goKeyReset">
 | 
			
		||||
              重置
 | 
			
		||||
            </el-button>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
      </el-form>
 | 
			
		||||
      <div>
 | 
			
		||||
        <el-table
 | 
			
		||||
          v-loading="listLoading"
 | 
			
		||||
          ref="multipleTable"
 | 
			
		||||
          :data="varList"
 | 
			
		||||
          :row-key="getRowKey"
 | 
			
		||||
          border
 | 
			
		||||
          tooltip-effect="dark"
 | 
			
		||||
          style="width: 100%">
 | 
			
		||||
          <el-table-column type="selection" width="55" align="center"/>
 | 
			
		||||
          <el-table-column type="index" label="序号" width="55" align="center"/>
 | 
			
		||||
          <el-table-column prop="FIRERESOURCES_NAME" label="名称"/>
 | 
			
		||||
          <el-table-column prop="FIRERESOURCES_TYPENAME" label="消防资源类型"/>
 | 
			
		||||
          <el-table-column prop="LONGTITUDE" label="消防资源经纬度">
 | 
			
		||||
            <template slot-scope="{row}">
 | 
			
		||||
              {{ row.LONGTITUDE }} -- {{ row.LATITUDE }}
 | 
			
		||||
            </template>
 | 
			
		||||
          </el-table-column>
 | 
			
		||||
          <!--          <el-table-column prop="DESCR" label="消防资源描述"/>-->
 | 
			
		||||
          <el-table-column prop="CREATIME" label="创建时间"/>
 | 
			
		||||
          <el-table-column label="操作" width="200px">
 | 
			
		||||
            <template slot-scope="{row}">
 | 
			
		||||
              <el-button
 | 
			
		||||
                v-show="edit"
 | 
			
		||||
                type="primary"
 | 
			
		||||
                icon="el-icon-edit"
 | 
			
		||||
                size="mini"
 | 
			
		||||
                @click="handleEdit(row)">修改
 | 
			
		||||
              </el-button>
 | 
			
		||||
              <el-button
 | 
			
		||||
                v-show="del"
 | 
			
		||||
                type="danger"
 | 
			
		||||
                icon="el-icon-delete"
 | 
			
		||||
                size="mini"
 | 
			
		||||
                @click="handleDelete(row.FIRERESOURCES_ID,row.FIRERESOURCES_NAME)">删除
 | 
			
		||||
              </el-button>
 | 
			
		||||
            </template>
 | 
			
		||||
          </el-table-column>
 | 
			
		||||
        </el-table>
 | 
			
		||||
        <div class="page-btn-group">
 | 
			
		||||
          <div>
 | 
			
		||||
            <el-button type="primary" icon="el-icon-plus" @click="handleAdd">新增</el-button>
 | 
			
		||||
          </div>
 | 
			
		||||
          <pagination
 | 
			
		||||
            :total="total"
 | 
			
		||||
            :page.sync="listQuery.page"
 | 
			
		||||
            :limit.sync="listQuery.limit"
 | 
			
		||||
            @pagination="getList()"/>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    <el-dialog
 | 
			
		||||
      :visible.sync="addForm.dialogVisible"
 | 
			
		||||
      :title="addForm.dialogType === 'add' ? '新增' : '编辑'"
 | 
			
		||||
      width="60%">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="addForm"
 | 
			
		||||
        :rules="addForm.rules"
 | 
			
		||||
        :model="addForm.info"
 | 
			
		||||
        label-position="right"
 | 
			
		||||
        label-width="150px"
 | 
			
		||||
        style="padding:10px 10px">
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-row>
 | 
			
		||||
              <el-form-item label="名称:" class="is-required">
 | 
			
		||||
                <el-input v-model="addForm.info.FIRERESOURCES_NAME" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-row>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-row>
 | 
			
		||||
              <el-form-item label="状态:" class="is-required">
 | 
			
		||||
                <el-select v-model="addForm.info.STATE" placeholder="请选择" style="width: 205px">
 | 
			
		||||
                  <el-option
 | 
			
		||||
                    v-for="item in stateData"
 | 
			
		||||
                    :key="item.NAME"
 | 
			
		||||
                    :label="item.NAME"
 | 
			
		||||
                    :value="item.BIANMA"/>
 | 
			
		||||
                </el-select>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-row>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-form-item label="经纬度:" class="is-required">
 | 
			
		||||
              <el-input v-model="addForm.info.LONGTITUDEANDLATITUDE" style="width:206px" placeholder="请选择" disabled/>
 | 
			
		||||
              <el-button style="margin-left: 10px" type="primary" @click="handleMap">点击定位</el-button>
 | 
			
		||||
            </el-form-item>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="24">
 | 
			
		||||
            <el-form-item label="消防控制室图片:" class="is-required">
 | 
			
		||||
              <div class="disContent">
 | 
			
		||||
                <el-upload
 | 
			
		||||
                  :auto-upload="false"
 | 
			
		||||
                  :file-list="firekzsImgs"
 | 
			
		||||
                  :on-change="handleEditChange"
 | 
			
		||||
                  :on-exceed="overFlow"
 | 
			
		||||
                  :limit="5"
 | 
			
		||||
                  action="#"
 | 
			
		||||
                  multiple
 | 
			
		||||
                  accept=".jpg,.png"
 | 
			
		||||
                  list-type="picture-card">
 | 
			
		||||
                  <i slot="default" class="el-icon-plus"/>
 | 
			
		||||
                  <div slot="file" slot-scope="{file}">
 | 
			
		||||
                    <img
 | 
			
		||||
                      v-if="file.FILEPATH"
 | 
			
		||||
                      :src="config.fileUrl + file.FILEPATH"
 | 
			
		||||
                      class="el-upload-list__item-thumbnail"
 | 
			
		||||
                      alt=""
 | 
			
		||||
                    >
 | 
			
		||||
                    <img
 | 
			
		||||
                      v-else
 | 
			
		||||
                      :src="file.url"
 | 
			
		||||
                      class="el-upload-list__item-thumbnail"
 | 
			
		||||
                      alt=""
 | 
			
		||||
                    >
 | 
			
		||||
                    <span class="el-upload-list__item-actions">
 | 
			
		||||
                      <span
 | 
			
		||||
                        class="el-upload-list__item-preview"
 | 
			
		||||
                        @click="handlePictureCardPreview(file)"
 | 
			
		||||
                      >
 | 
			
		||||
                        <i class="el-icon-zoom-in"/>
 | 
			
		||||
                      </span>
 | 
			
		||||
                      <span
 | 
			
		||||
                        class="el-upload-list__item-delete"
 | 
			
		||||
                        @click="handleRemove(file)"
 | 
			
		||||
                      >
 | 
			
		||||
                        <i class="el-icon-delete"/>
 | 
			
		||||
                      </span>
 | 
			
		||||
                    </span>
 | 
			
		||||
                  </div>
 | 
			
		||||
                </el-upload>
 | 
			
		||||
              </div>
 | 
			
		||||
              <el-dialog :visible.sync="dialogVisible" append-to-body>
 | 
			
		||||
                <img :src="dialogImageUrl" width="100%" alt="">
 | 
			
		||||
              </el-dialog>
 | 
			
		||||
              <div style="margin-top: 10px">
 | 
			
		||||
                限制上传数量:{{ firekzsImgs.length + '/' + '5' }}
 | 
			
		||||
              </div>
 | 
			
		||||
              <div>
 | 
			
		||||
                只能上传jpg/png文件,单张且不超过5mb
 | 
			
		||||
              </div>
 | 
			
		||||
            </el-form-item>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-form-item label="添加设备:">
 | 
			
		||||
              <el-button type="primary" @click="addDescribe">新增一个设备</el-button>
 | 
			
		||||
            </el-form-item>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <div v-for="(item) in describeList" :key="item.index">
 | 
			
		||||
            <el-col :span="6">
 | 
			
		||||
              <el-form-item label="设备名称:" prop="LABEL" class="is-required">
 | 
			
		||||
                <el-input v-model="item.name" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="6">
 | 
			
		||||
              <el-form-item label="型号:" prop="LABEL" class="is-required">
 | 
			
		||||
                <el-input v-model="item.model" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="6">
 | 
			
		||||
              <el-form-item label="设备数量:" prop="LABEL" class="is-required">
 | 
			
		||||
                <el-input v-model="item.number" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="6">
 | 
			
		||||
              <el-form-item label="设备位置:" prop="LABEL" class="is-required">
 | 
			
		||||
                <el-input v-model="item.place" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </div>
 | 
			
		||||
          <el-button v-if="describeList.length > 1" style="margin-left: 160px" type="danger" @click="removeDescribe()">
 | 
			
		||||
            删除
 | 
			
		||||
          </el-button>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-form-item label="添加人员:">
 | 
			
		||||
              <el-button type="primary" @click="addrenyuan">新增一名人员</el-button>
 | 
			
		||||
            </el-form-item>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <div v-for="(item) in renyuanList" :key="item.index">
 | 
			
		||||
            <el-col :span="8">
 | 
			
		||||
              <el-form-item label="人员姓名: " prop="LABEL" class="is-required">
 | 
			
		||||
                <el-input v-model="item.name" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="8">
 | 
			
		||||
              <el-form-item label="人员手机号: " prop="LABEL" class="is-required">
 | 
			
		||||
                <el-input v-model="item.phone" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="8">
 | 
			
		||||
              <el-form-item label="人员值班情况: " prop="LABEL" class="is-required">
 | 
			
		||||
                <el-input v-model="item.remake" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </div>
 | 
			
		||||
          <el-button v-if="renyuanList.length > 1" style="margin-left: 160px" type="danger" @click="removeRenyuan()">
 | 
			
		||||
            删除
 | 
			
		||||
          </el-button>
 | 
			
		||||
        </el-row>
 | 
			
		||||
      </el-form>
 | 
			
		||||
      <div slot="footer" class="dialog-footer">
 | 
			
		||||
        <el-button @click="addForm.dialogVisible = false">取 消</el-button>
 | 
			
		||||
        <el-button type="primary" @click="confirm">提 交</el-button>
 | 
			
		||||
      </div>
 | 
			
		||||
    </el-dialog>
 | 
			
		||||
 | 
			
		||||
    <el-dialog :visible.sync="dialogFormMap" title="定位" width="1050px" class="dy-dialog">
 | 
			
		||||
      <div id="map"/>
 | 
			
		||||
      <div slot="footer" class="dialog-footer">
 | 
			
		||||
        <span>经度:</span>
 | 
			
		||||
        <el-input v-model="LONGTITUDE" style="width: 200px" placeholder="请输入内容" disabled/>
 | 
			
		||||
        <span>纬度:</span>
 | 
			
		||||
        <el-input v-model="LATITUDE" style="width: 200px" placeholder="请输入内容" disabled/>
 | 
			
		||||
        <el-button @click="dialogFormMap = false">取 消</el-button>
 | 
			
		||||
        <el-button type="primary" @click="setPosition">确 定</el-button>
 | 
			
		||||
      </div>
 | 
			
		||||
    </el-dialog>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import Pagination from '@/components/Pagination'
 | 
			
		||||
import { requestFN } from '@/utils/request'
 | 
			
		||||
import { upload } from '@/utils/upload'
 | 
			
		||||
import waves from '@/directive/waves' // waves directive
 | 
			
		||||
import SelectTree from '@/components/SelectTree'
 | 
			
		||||
import TiandiMap from '@/components/TianMap/TiandiMap'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  components: { Pagination, SelectTree, TiandiMap },
 | 
			
		||||
  directives: { waves },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      dialogFormMap: false,
 | 
			
		||||
      map: null,
 | 
			
		||||
      corpList: [],
 | 
			
		||||
      config: config,
 | 
			
		||||
      firekzsImgs: [],
 | 
			
		||||
      waitForDeleteImgs: [],
 | 
			
		||||
      dialogImageUrl: '',
 | 
			
		||||
      dialogVisible: false,
 | 
			
		||||
      marker: null,
 | 
			
		||||
      describeList: [
 | 
			
		||||
        {
 | 
			
		||||
          name: '',
 | 
			
		||||
          model: '',
 | 
			
		||||
          number: '',
 | 
			
		||||
          place: ''
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      renyuanList: [
 | 
			
		||||
        {
 | 
			
		||||
          name: '',
 | 
			
		||||
          phone: '',
 | 
			
		||||
          remake: ''
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      addBtnType: true,
 | 
			
		||||
      FIRE_RESOURCES_TYPE: '',
 | 
			
		||||
      listLoading: true,
 | 
			
		||||
      add: false,
 | 
			
		||||
      del: false,
 | 
			
		||||
      edit: false,
 | 
			
		||||
      form: {
 | 
			
		||||
        FIRERESOURCES_NAME: '',
 | 
			
		||||
        FIRERESOURCES_TYPE: 'xfkzs01'
 | 
			
		||||
      },
 | 
			
		||||
      addForm: {
 | 
			
		||||
        dialogType: 'add', // 增or改
 | 
			
		||||
        dialogVisible: false,
 | 
			
		||||
        rules: {
 | 
			
		||||
          FIRERESOURCES_NAME: [{ required: false, message: '不可为空', trigger: 'blur' }],
 | 
			
		||||
          FIRERESOURCES_TYPE: [{ required: false, message: '不可为空', trigger: 'blur' }],
 | 
			
		||||
          LONGTITUDEANDLATITUDE: [{ required: false, message: '请选择经纬度', trigger: 'blur' }],
 | 
			
		||||
          CORPINFO_ID: [{ required: false, message: '请选择分公司', trigger: 'blur' }],
 | 
			
		||||
          STATE: [{ required: false, message: '请选择状态', trigger: 'blur' }],
 | 
			
		||||
          DESCR: [{ required: false, message: '不可为空', trigger: 'blur' }]
 | 
			
		||||
        },
 | 
			
		||||
        info: {
 | 
			
		||||
          FIRERESOURCES_ID: '', // 主键
 | 
			
		||||
          FIRERESOURCES_NAME: '', // 名称
 | 
			
		||||
          FIRERESOURCES_TYPE: 'xfkzs01', // 消防资源类别
 | 
			
		||||
          STATE: '', // 状态
 | 
			
		||||
          CORPINFO_ID: '', // 状态
 | 
			
		||||
          LONGTITUDE: '', // 经度
 | 
			
		||||
          LATITUDE: '', // 纬度
 | 
			
		||||
          LONGTITUDEANDLATITUDE: '', // 经纬度
 | 
			
		||||
          DESCR: '' // 描述
 | 
			
		||||
        }
 | 
			
		||||
      },
 | 
			
		||||
      LONGTITUDE: '', // 经度
 | 
			
		||||
      LATITUDE: '', // 纬度
 | 
			
		||||
      keySelect: {
 | 
			
		||||
        FIRE_DEVICE_TYPE_ID: ''
 | 
			
		||||
      },
 | 
			
		||||
      treeData: [],
 | 
			
		||||
      typeData: [],
 | 
			
		||||
      stateData: [
 | 
			
		||||
        {
 | 
			
		||||
          NAME: '正常',
 | 
			
		||||
          BIANMA: 0
 | 
			
		||||
        }, {
 | 
			
		||||
          NAME: '异常',
 | 
			
		||||
          BIANMA: 1
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      varRegionList: [],
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        page: 1,
 | 
			
		||||
        limit: 20
 | 
			
		||||
      },
 | 
			
		||||
      ls: [],
 | 
			
		||||
      dates: [],
 | 
			
		||||
      total: 0,
 | 
			
		||||
      KEYWORDS: '',
 | 
			
		||||
      // 树形菜单
 | 
			
		||||
      filterText: '',
 | 
			
		||||
      varList: [],
 | 
			
		||||
      pd: [],
 | 
			
		||||
      defaultProps: {
 | 
			
		||||
        value: 'id',
 | 
			
		||||
        children: 'children',
 | 
			
		||||
        label: 'name'
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  watch: {
 | 
			
		||||
    filterText(val) {
 | 
			
		||||
      console.log(val)
 | 
			
		||||
      this.$refs.tree.filter(val)
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.getList()
 | 
			
		||||
    this.hasButton()
 | 
			
		||||
    // this.getDeviceType()
 | 
			
		||||
    this.getDict()
 | 
			
		||||
    this.getTreeData()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    handleRemove(file) {
 | 
			
		||||
      if (file.IMGFILES_ID) {
 | 
			
		||||
        // 已经上传过的 现在删除 记录这个id
 | 
			
		||||
        this.waitForDeleteImgs.push(file.IMGFILES_ID)
 | 
			
		||||
        this.firekzsImgs = this.firekzsImgs.filter(x => x.IMGFILES_ID != file.IMGFILES_ID)
 | 
			
		||||
      } else {
 | 
			
		||||
        this.firekzsImgs = this.firekzsImgs.filter(x => x.MATERIALS_ID != file.MATERIALS_ID)
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    handlePictureCardPreview(file) {
 | 
			
		||||
      if (file.url) {
 | 
			
		||||
        this.dialogImageUrl = file.url
 | 
			
		||||
      }
 | 
			
		||||
      if (file.FILEPATH) {
 | 
			
		||||
        this.dialogImageUrl = config.fileUrl + file.FILEPATH
 | 
			
		||||
      }
 | 
			
		||||
      this.dialogVisible = true
 | 
			
		||||
    },
 | 
			
		||||
    overFlow(files, fileList) {
 | 
			
		||||
      this.$message.warning('最多上传5张图片')
 | 
			
		||||
    },
 | 
			
		||||
    handleEditChange(file, fileList) {
 | 
			
		||||
      file.MATERIALS_ID = Math.random()
 | 
			
		||||
      const is5M = file.size / 1024 / 1024 < 5
 | 
			
		||||
      if (is5M) this.firekzsImgs.push(file)
 | 
			
		||||
    },
 | 
			
		||||
    addDescribe() {
 | 
			
		||||
      this.describeList.push(
 | 
			
		||||
        {
 | 
			
		||||
          name: '',
 | 
			
		||||
          model: '',
 | 
			
		||||
          number: '',
 | 
			
		||||
          place: ''
 | 
			
		||||
        }
 | 
			
		||||
      )
 | 
			
		||||
    },
 | 
			
		||||
    addrenyuan() {
 | 
			
		||||
      this.renyuanList.push(
 | 
			
		||||
        {
 | 
			
		||||
          name: '',
 | 
			
		||||
          phone: '',
 | 
			
		||||
          remake: ''
 | 
			
		||||
        }
 | 
			
		||||
      )
 | 
			
		||||
    },
 | 
			
		||||
    removeDescribe() {
 | 
			
		||||
      this.describeList.splice(this.describeList.length - 1, 1)
 | 
			
		||||
    },
 | 
			
		||||
    removeRenyuan() {
 | 
			
		||||
      this.renyuanList.splice(this.renyuanList.length - 1, 1)
 | 
			
		||||
    },
 | 
			
		||||
    setPosition() {
 | 
			
		||||
      this.addForm.info.LONGTITUDEANDLATITUDE = this.LATITUDE + '--' + this.LONGTITUDE
 | 
			
		||||
      this.dialogFormMap = false
 | 
			
		||||
    },
 | 
			
		||||
    initTDT() {
 | 
			
		||||
      console.log(window)
 | 
			
		||||
      console.log(window.T)
 | 
			
		||||
 | 
			
		||||
      return new Promise((resolve, reject) => {
 | 
			
		||||
        if (window.T) {
 | 
			
		||||
          console.log('天地图初始化成功...')
 | 
			
		||||
          resolve(window.T)
 | 
			
		||||
          reject('error')
 | 
			
		||||
        } else {
 | 
			
		||||
          console.info(999999999)
 | 
			
		||||
        }
 | 
			
		||||
      }).then(T => {
 | 
			
		||||
        window.T = T
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    /**
 | 
			
		||||
     * 初始化地图
 | 
			
		||||
     * @param {*} lng 经度
 | 
			
		||||
     * @param {*} lat 纬度
 | 
			
		||||
     * @param {*} zoom 缩放比例(1~18)
 | 
			
		||||
     */
 | 
			
		||||
    initMap(lng, lat, zoom) {
 | 
			
		||||
      this.initTDT().then((T) => {
 | 
			
		||||
        const imageURL = 'http://t0.tianditu.gov.cn/img_w/wmts?' + 'SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles' + '&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=e8a16137fd226a62a23cc7ba5c9c78ce'
 | 
			
		||||
        // 创建自定义图层对象
 | 
			
		||||
        this.lay = new window.T.TileLayer(imageURL, { minZoom: 1, maxZoom: 18 })
 | 
			
		||||
        // 初始化地图对象
 | 
			
		||||
        this.map = new window.T.Map('map')
 | 
			
		||||
        this.initCenter(lng, lat, zoom)
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    initCenter(lng, lat, zoom) {
 | 
			
		||||
      // 设置显示地图的中心点和级别
 | 
			
		||||
      if (!this.LONGTITUDE && !this.LATITUDE) {
 | 
			
		||||
        this.map.centerAndZoom(new window.T.LngLat(119.58, 39.94), zoom)
 | 
			
		||||
        console.log(123)
 | 
			
		||||
      } else {
 | 
			
		||||
        this.map.centerAndZoom(new window.T.LngLat(lng, lat), zoom)
 | 
			
		||||
        this.marker && this.map.removeOverLay(this.marker)
 | 
			
		||||
        this.LONGTITUDE = lng
 | 
			
		||||
        this.LATITUDE = lat
 | 
			
		||||
        this.marker = new window.T.Marker(new window.T.LngLat(lng, lat))
 | 
			
		||||
        // 向地图上添加标注
 | 
			
		||||
        this.map.addOverLay(this.marker)
 | 
			
		||||
      }
 | 
			
		||||
      // 创建卫星和路网的混合视图
 | 
			
		||||
      this.map.setMapType(window.TMAP_HYBRID_MAP)
 | 
			
		||||
      // 允许鼠标滚轮缩放地图
 | 
			
		||||
      this.map.enableScrollWheelZoom()
 | 
			
		||||
      // 允许鼠标移动地图
 | 
			
		||||
      this.map.enableInertia()
 | 
			
		||||
      // 向地图上添加标注
 | 
			
		||||
      this.map.addEventListener('click', this.MapClick)
 | 
			
		||||
    },
 | 
			
		||||
    MapClick(event) {
 | 
			
		||||
      this.marker && this.map.removeOverLay(this.marker)
 | 
			
		||||
      this.LONGTITUDE = event.lnglat.getLng()
 | 
			
		||||
      this.LATITUDE = event.lnglat.getLat()
 | 
			
		||||
      this.marker = new window.T.Marker(new window.T.LngLat(event.lnglat.getLng(), event.lnglat.getLat()))
 | 
			
		||||
      // 向地图上添加标注
 | 
			
		||||
      this.map.addOverLay(this.marker)
 | 
			
		||||
    },
 | 
			
		||||
    handleMap() {
 | 
			
		||||
      this.dialogFormMap = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        console.log(!this.map)
 | 
			
		||||
        if (!this.map) this.initMap(this.LONGTITUDE, this.LATITUDE, 16)
 | 
			
		||||
        else this.initCenter(this.LONGTITUDE, this.LATITUDE, 16)
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    confirm() {
 | 
			
		||||
      this.$refs.addForm.validate(valid => {
 | 
			
		||||
        if (this.addForm.info.FIRERESOURCES_NAME === '') {
 | 
			
		||||
          this.$message({
 | 
			
		||||
            message: '名称不可为空',
 | 
			
		||||
            type: 'warning'
 | 
			
		||||
          })
 | 
			
		||||
          return false
 | 
			
		||||
        }
 | 
			
		||||
        if (this.addForm.info.STATE === '') {
 | 
			
		||||
          this.$message({
 | 
			
		||||
            message: '请检查状态不可为空',
 | 
			
		||||
            type: 'warning'
 | 
			
		||||
          })
 | 
			
		||||
          return false
 | 
			
		||||
        }
 | 
			
		||||
        if (this.addForm.info.CORPINFO_ID === '') {
 | 
			
		||||
          this.$message({
 | 
			
		||||
            message: '请检查所属分公司不可为空',
 | 
			
		||||
            type: 'warning'
 | 
			
		||||
          })
 | 
			
		||||
          return false
 | 
			
		||||
        }
 | 
			
		||||
        if (this.addForm.info.LONGTITUDEANDLATITUDE === '') {
 | 
			
		||||
          this.$message({
 | 
			
		||||
            message: '请检查经纬度不可为空',
 | 
			
		||||
            type: 'warning'
 | 
			
		||||
          })
 | 
			
		||||
          return false
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // if (this.describeList.length > 0) {
 | 
			
		||||
        for (var i = 0; i < this.describeList.length; i++) {
 | 
			
		||||
          // name: '',
 | 
			
		||||
          //   model: '',
 | 
			
		||||
          //   number: '',
 | 
			
		||||
          // place: ''
 | 
			
		||||
          if (this.describeList[i].name === '') {
 | 
			
		||||
            this.$message({
 | 
			
		||||
              message: '请检查设备设备名称不可为空',
 | 
			
		||||
              type: 'warning'
 | 
			
		||||
            })
 | 
			
		||||
            return false
 | 
			
		||||
          }
 | 
			
		||||
          if (this.describeList[i].model === '') {
 | 
			
		||||
            this.$message({
 | 
			
		||||
              message: '请检查设备型号不可为空',
 | 
			
		||||
              type: 'warning'
 | 
			
		||||
            })
 | 
			
		||||
            return false
 | 
			
		||||
          }
 | 
			
		||||
          if (this.describeList[i].number === '') {
 | 
			
		||||
            this.$message({
 | 
			
		||||
              message: '请检查设备数量不可为空',
 | 
			
		||||
              type: 'warning'
 | 
			
		||||
            })
 | 
			
		||||
            return false
 | 
			
		||||
          }
 | 
			
		||||
          if (this.describeList[i].place === '') {
 | 
			
		||||
            this.$message({
 | 
			
		||||
              message: '请检查设备位置不可为空',
 | 
			
		||||
              type: 'warning'
 | 
			
		||||
            })
 | 
			
		||||
            return false
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
        for (var k = 0; k < this.renyuanList.length; k++) {
 | 
			
		||||
          if (this.renyuanList[k].name === '') {
 | 
			
		||||
            this.$message({
 | 
			
		||||
              message: '请检查人员姓名不可为空',
 | 
			
		||||
              type: 'warning'
 | 
			
		||||
            })
 | 
			
		||||
            return false
 | 
			
		||||
          }
 | 
			
		||||
          if (this.renyuanList[k].phone === '') {
 | 
			
		||||
            this.$message({
 | 
			
		||||
              message: '请检查人员手机号不可为空',
 | 
			
		||||
              type: 'warning'
 | 
			
		||||
            })
 | 
			
		||||
            return false
 | 
			
		||||
          }
 | 
			
		||||
          if (this.renyuanList[k].remake === '') {
 | 
			
		||||
            this.$message({
 | 
			
		||||
              message: '请检查人员值班情况不可为空',
 | 
			
		||||
              type: 'warning'
 | 
			
		||||
            })
 | 
			
		||||
            return false
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
        // }
 | 
			
		||||
        if (!this.firekzsImgs.length > 0) {
 | 
			
		||||
          this.$message.warning('最少上传一张照片')
 | 
			
		||||
          return
 | 
			
		||||
        }
 | 
			
		||||
        var strJson = {
 | 
			
		||||
          'DESCR': this.describeList,
 | 
			
		||||
          'RenYuan': this.renyuanList
 | 
			
		||||
        }
 | 
			
		||||
        this.addForm.info.DESCR = JSON.stringify(strJson)
 | 
			
		||||
        this.addForm.info.LATITUDE = this.LATITUDE
 | 
			
		||||
        this.addForm.info.LONGTITUDE = this.LONGTITUDE
 | 
			
		||||
        if (valid) {
 | 
			
		||||
          const formData = new FormData()
 | 
			
		||||
          Object.keys(this.addForm.info).map(key => {
 | 
			
		||||
            formData.append(key, this.addForm.info[key])
 | 
			
		||||
          })
 | 
			
		||||
          if (this.waitForDeleteImgs.length > 0) {
 | 
			
		||||
            formData.append('DELETE_IDS', this.waitForDeleteImgs.join(','))
 | 
			
		||||
          }
 | 
			
		||||
          for (let i = 0; i < this.firekzsImgs.length; i++) {
 | 
			
		||||
            if (this.firekzsImgs[i].raw) {
 | 
			
		||||
              formData.append('FFILE', this.firekzsImgs[i].raw)
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
          upload(
 | 
			
		||||
            '/fireResources/' + this.addForm.dialogType, formData
 | 
			
		||||
          ).then((data) => {
 | 
			
		||||
            this.$message.success('保存成功')
 | 
			
		||||
            this.getList()
 | 
			
		||||
            this.addForm.dialogVisible = false
 | 
			
		||||
          }).catch((e) => {
 | 
			
		||||
            this.$message.warning('保存失败')
 | 
			
		||||
            console.log(e)
 | 
			
		||||
          })
 | 
			
		||||
        } else {
 | 
			
		||||
          return false
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    getTreeData() {
 | 
			
		||||
      requestFN(
 | 
			
		||||
        '/department/listTree',
 | 
			
		||||
        {}
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.treeData = JSON.parse(data.zTreeNodes)
 | 
			
		||||
      }).catch((e) => {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    handleEdit(row) {
 | 
			
		||||
      this.resetAddForm()
 | 
			
		||||
      this.getpic(row.FIRERESOURCES_ID)
 | 
			
		||||
      this.addForm.info.FIRERESOURCES_ID = row.FIRERESOURCES_ID
 | 
			
		||||
      this.addForm.info.FIRERESOURCES_NAME = row.FIRERESOURCES_NAME
 | 
			
		||||
      this.addForm.info.FIRERESOURCES_TYPE = row.FIRERESOURCES_TYPE
 | 
			
		||||
      this.addForm.info.LATITUDE = row.LATITUDE
 | 
			
		||||
      this.addForm.info.LONGTITUDE = row.LONGTITUDE
 | 
			
		||||
      this.addForm.info.STATE = row.STATE
 | 
			
		||||
      this.addForm.info.CORPINFO_ID = row.CORPINFO_ID
 | 
			
		||||
      this.LONGTITUDE = row.LONGTITUDE
 | 
			
		||||
      this.LATITUDE = row.LATITUDE
 | 
			
		||||
      this.addForm.info.LONGTITUDEANDLATITUDE = row.LATITUDE + '--' + row.LONGTITUDE
 | 
			
		||||
      this.describeList = []
 | 
			
		||||
      this.renyuanList = []
 | 
			
		||||
      if (row.DESCR) {
 | 
			
		||||
        var strJson = JSON.parse(row.DESCR)
 | 
			
		||||
        console.log(strJson)
 | 
			
		||||
        this.describeList = strJson.DESCR
 | 
			
		||||
        this.renyuanList = strJson.RenYuan
 | 
			
		||||
      }
 | 
			
		||||
      this.addForm.dialogType = 'edit'
 | 
			
		||||
      this.addForm.dialogVisible = true
 | 
			
		||||
    },
 | 
			
		||||
    getpic(ID) {
 | 
			
		||||
      requestFN(
 | 
			
		||||
        'imgfiles/listImgs',
 | 
			
		||||
        {
 | 
			
		||||
          FOREIGN_KEY: ID
 | 
			
		||||
        }
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.firekzsImgs = data.imgs
 | 
			
		||||
      }).catch((e) => {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    getRowKey(row) {
 | 
			
		||||
      return row.FIRE_DEVICE_ID
 | 
			
		||||
    },
 | 
			
		||||
    // 添加
 | 
			
		||||
    handleAdd() {
 | 
			
		||||
      this.resetAddForm()
 | 
			
		||||
      this.describeList = [
 | 
			
		||||
        {
 | 
			
		||||
          name: '',
 | 
			
		||||
          model: '',
 | 
			
		||||
          number: '',
 | 
			
		||||
          place: ''
 | 
			
		||||
        }
 | 
			
		||||
      ]
 | 
			
		||||
      this.renyuanList = [
 | 
			
		||||
        {
 | 
			
		||||
          name: '',
 | 
			
		||||
          phone: '',
 | 
			
		||||
          remake: ''
 | 
			
		||||
        }
 | 
			
		||||
      ]
 | 
			
		||||
      this.addForm.dialogType = 'add'
 | 
			
		||||
      this.addForm.dialogVisible = true
 | 
			
		||||
    },
 | 
			
		||||
    resetAddForm() {
 | 
			
		||||
      this.waitForDeleteImgs = []
 | 
			
		||||
      this.firekzsImgs = []
 | 
			
		||||
      this.LATITUDE = ''
 | 
			
		||||
      this.LONGTITUDE = ''
 | 
			
		||||
      this.addForm.info = {
 | 
			
		||||
        FIRERESOURCES_ID: '', // 主键
 | 
			
		||||
        FIRERESOURCES_NAME: '', // 名称
 | 
			
		||||
        FIRERESOURCES_TYPE: 'xfkzs01', // 消防资源类别
 | 
			
		||||
        STATE: '', // 状态
 | 
			
		||||
        CORPINFO_ID: '', // 状态
 | 
			
		||||
        LONGTITUDE: '', // 经度
 | 
			
		||||
        LATITUDE: '', // 纬度
 | 
			
		||||
        LONGTITUDEANDLATITUDE: '', // 经纬度
 | 
			
		||||
        DESCR: '' // 描述
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    // 搜索
 | 
			
		||||
    getQuery() {
 | 
			
		||||
      this.getList()
 | 
			
		||||
    },
 | 
			
		||||
    // 获取列表
 | 
			
		||||
    getList() {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      this.varList = []
 | 
			
		||||
      requestFN(
 | 
			
		||||
        '/fireResources/list?showCount=' + this.listQuery.limit + '¤tPage=' + this.listQuery.page,
 | 
			
		||||
        {
 | 
			
		||||
          FIRERESOURCES_NAME: this.form.FIRERESOURCES_NAME,
 | 
			
		||||
          FIRERESOURCES_TYPE: this.form.FIRERESOURCES_TYPE
 | 
			
		||||
        }
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
        this.varList = data.varList
 | 
			
		||||
        this.total = data.page.totalResult
 | 
			
		||||
        this.hasButton()
 | 
			
		||||
      }).catch((e) => {
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    goKeyReset() {
 | 
			
		||||
      this.form.FIRERESOURCES_NAME = ''
 | 
			
		||||
      this.getList()
 | 
			
		||||
    },
 | 
			
		||||
    getDict() {
 | 
			
		||||
      // requestFN(
 | 
			
		||||
      //   '/corpinfo/getSelectByCorpInfo',
 | 
			
		||||
      //   {}
 | 
			
		||||
      // ).then((data) => {
 | 
			
		||||
      //   this.corpList = JSON.parse(data.corpInfoJson)
 | 
			
		||||
      // }).catch((e) => {
 | 
			
		||||
      // })
 | 
			
		||||
      requestFN(
 | 
			
		||||
        'dictionaries/getLevels',
 | 
			
		||||
        {
 | 
			
		||||
          DICTIONARIES_ID: '6bba977985f6427e9d0b52afe8884d1a'
 | 
			
		||||
        }
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.typeData = data.list
 | 
			
		||||
      })
 | 
			
		||||
        .catch((e) => {
 | 
			
		||||
          this.listLoading = false
 | 
			
		||||
        })
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    handleDelete(id, name) {
 | 
			
		||||
      this.$confirm('确定要删除编号为[' + name + ']的消防资源吗?', {
 | 
			
		||||
        confirmButtonText: '确定',
 | 
			
		||||
        cancelButtonText: '取消',
 | 
			
		||||
        type: 'warning'
 | 
			
		||||
      }).then(() => {
 | 
			
		||||
        this.listLoading = true
 | 
			
		||||
        requestFN(
 | 
			
		||||
          '/fireResources/delete',
 | 
			
		||||
          {
 | 
			
		||||
            FIRERESOURCES_ID: id
 | 
			
		||||
          }
 | 
			
		||||
        ).then(() => {
 | 
			
		||||
          this.$message({
 | 
			
		||||
            message: '删除成功',
 | 
			
		||||
            type: 'success'
 | 
			
		||||
          })
 | 
			
		||||
          this.listLoading = false
 | 
			
		||||
          this.varList = []
 | 
			
		||||
          this.listQuery.page = 1
 | 
			
		||||
          this.getList()
 | 
			
		||||
        }).catch((e) => {
 | 
			
		||||
          this.listLoading = false
 | 
			
		||||
        })
 | 
			
		||||
      }).catch(() => {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    hasButton: function() {
 | 
			
		||||
      var keys = 'fireresources:add,fireresources:del,fireresources:edit,toExcel'
 | 
			
		||||
      requestFN(
 | 
			
		||||
        '/head/hasButton',
 | 
			
		||||
        {
 | 
			
		||||
          keys: keys
 | 
			
		||||
        }
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.add = data.fireresourcesfhadminadd		// 新增权限
 | 
			
		||||
        this.del = data.fireresourcesfhadmindel		// 删除权限
 | 
			
		||||
        this.edit = data.fireresourcesfhadminedit	// 修改权限
 | 
			
		||||
        this.toExcel = data.toExcel // 导出到excel权限
 | 
			
		||||
      }).catch((e) => {
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.returnBtn {
 | 
			
		||||
  float: right;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.app-container {
 | 
			
		||||
  display: flex; /**/
 | 
			
		||||
  align-items: baseline;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.rightCont {
 | 
			
		||||
  width: 100%
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#map {
 | 
			
		||||
  width: 1000px;
 | 
			
		||||
  height: 500px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,33 @@
 | 
			
		|||
<template>
 | 
			
		||||
  <!--  <component :is="activeName" />-->
 | 
			
		||||
  <div>
 | 
			
		||||
    <List v-show="activeName=='List'" ref="list" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import List from './components/list.vue'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  components: {
 | 
			
		||||
    List: List
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      activeName: 'List'
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  watch: {
 | 
			
		||||
    activeName(val) {
 | 
			
		||||
      if (val == 'List') {
 | 
			
		||||
        this.$refs.list.getList()
 | 
			
		||||
        this.$refs.list.getTreeList()
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
</style>
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,781 @@
 | 
			
		|||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <div class="rightCont">
 | 
			
		||||
      <el-form label-width="50px">
 | 
			
		||||
        <el-col :span="5">
 | 
			
		||||
          <el-form-item label="名称:" label-width="110px">
 | 
			
		||||
            <el-input v-model="form.FIRERESOURCES_NAME" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="4">
 | 
			
		||||
          <el-form-item label-width="10px">
 | 
			
		||||
            <el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="getQuery">
 | 
			
		||||
              搜索
 | 
			
		||||
            </el-button>
 | 
			
		||||
            <el-button v-waves class="filter-item" type="success" icon="el-icon-refresh" @click="goKeyReset">
 | 
			
		||||
              重置
 | 
			
		||||
            </el-button>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
      </el-form>
 | 
			
		||||
      <div>
 | 
			
		||||
        <el-table
 | 
			
		||||
          v-loading="listLoading"
 | 
			
		||||
          ref="multipleTable"
 | 
			
		||||
          :data="varList"
 | 
			
		||||
          :row-key="getRowKey"
 | 
			
		||||
          border
 | 
			
		||||
          tooltip-effect="dark"
 | 
			
		||||
          style="width: 100%">
 | 
			
		||||
          <el-table-column type="selection" width="55" align="center"/>
 | 
			
		||||
          <el-table-column type="index" label="序号" width="55" align="center"/>
 | 
			
		||||
          <el-table-column prop="FIRERESOURCES_NAME" label="名称"/>
 | 
			
		||||
          <el-table-column prop="FIRERESOURCES_TYPENAME" label="消防资源类型"/>
 | 
			
		||||
          <el-table-column prop="LONGTITUDE" label="消防资源经纬度">
 | 
			
		||||
            <template slot-scope="{row}">
 | 
			
		||||
              {{ row.LONGTITUDE }} -- {{ row.LATITUDE }}
 | 
			
		||||
            </template>
 | 
			
		||||
          </el-table-column>
 | 
			
		||||
          <!--          <el-table-column prop="DESCR" label="消防资源描述"/>-->
 | 
			
		||||
          <el-table-column prop="CREATIME" label="创建时间"/>
 | 
			
		||||
          <el-table-column label="操作" width="200px">
 | 
			
		||||
            <template slot-scope="{row}">
 | 
			
		||||
              <el-button
 | 
			
		||||
                v-show="edit"
 | 
			
		||||
                type="primary"
 | 
			
		||||
                icon="el-icon-edit"
 | 
			
		||||
                size="mini"
 | 
			
		||||
                @click="handleEdit(row)">修改
 | 
			
		||||
              </el-button>
 | 
			
		||||
              <el-button
 | 
			
		||||
                v-show="del"
 | 
			
		||||
                type="danger"
 | 
			
		||||
                icon="el-icon-delete"
 | 
			
		||||
                size="mini"
 | 
			
		||||
                @click="handleDelete(row.FIRERESOURCES_ID,row.FIRERESOURCES_NAME)">删除
 | 
			
		||||
              </el-button>
 | 
			
		||||
            </template>
 | 
			
		||||
          </el-table-column>
 | 
			
		||||
        </el-table>
 | 
			
		||||
        <div class="page-btn-group">
 | 
			
		||||
          <div>
 | 
			
		||||
            <el-button type="primary" icon="el-icon-plus" @click="handleAdd">新增</el-button>
 | 
			
		||||
          </div>
 | 
			
		||||
          <pagination
 | 
			
		||||
            :total="total"
 | 
			
		||||
            :page.sync="listQuery.page"
 | 
			
		||||
            :limit.sync="listQuery.limit"
 | 
			
		||||
            @pagination="getList()"/>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    <el-dialog
 | 
			
		||||
      :visible.sync="addForm.dialogVisible"
 | 
			
		||||
      :title="addForm.dialogType === 'add' ? '新增' : '编辑'"
 | 
			
		||||
      width="60%">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="addForm"
 | 
			
		||||
        :rules="addForm.rules"
 | 
			
		||||
        :model="addForm.info"
 | 
			
		||||
        label-position="right"
 | 
			
		||||
        label-width="150px"
 | 
			
		||||
        style="padding:10px 10px">
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-row>
 | 
			
		||||
              <el-form-item label="名称:" class="is-required">
 | 
			
		||||
                <el-input v-model="addForm.info.FIRERESOURCES_NAME" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-row>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-row>
 | 
			
		||||
              <el-form-item label="状态:" class="is-required">
 | 
			
		||||
                <el-select v-model="addForm.info.STATE" placeholder="请选择" style="width: 205px">
 | 
			
		||||
                  <el-option
 | 
			
		||||
                    v-for="item in stateData"
 | 
			
		||||
                    :key="item.NAME"
 | 
			
		||||
                    :label="item.NAME"
 | 
			
		||||
                    :value="item.BIANMA"/>
 | 
			
		||||
                </el-select>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-row>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="24">
 | 
			
		||||
            <el-form-item label="消防泵房图片:" class="is-required">
 | 
			
		||||
              <div class="disContent">
 | 
			
		||||
                <el-upload
 | 
			
		||||
                  :auto-upload="false"
 | 
			
		||||
                  :file-list="firekzsImgs"
 | 
			
		||||
                  :on-change="handleEditChange"
 | 
			
		||||
                  :on-exceed="overFlow"
 | 
			
		||||
                  :limit="5"
 | 
			
		||||
                  action="#"
 | 
			
		||||
                  multiple
 | 
			
		||||
                  accept=".jpg,.png"
 | 
			
		||||
                  list-type="picture-card">
 | 
			
		||||
                  <i slot="default" class="el-icon-plus"/>
 | 
			
		||||
                  <div slot="file" slot-scope="{file}">
 | 
			
		||||
                    <img
 | 
			
		||||
                      v-if="file.FILEPATH"
 | 
			
		||||
                      :src="config.fileUrl + file.FILEPATH"
 | 
			
		||||
                      class="el-upload-list__item-thumbnail"
 | 
			
		||||
                      alt=""
 | 
			
		||||
                    >
 | 
			
		||||
                    <img
 | 
			
		||||
                      v-else
 | 
			
		||||
                      :src="file.url"
 | 
			
		||||
                      class="el-upload-list__item-thumbnail"
 | 
			
		||||
                      alt=""
 | 
			
		||||
                    >
 | 
			
		||||
                    <span class="el-upload-list__item-actions">
 | 
			
		||||
                      <span
 | 
			
		||||
                        class="el-upload-list__item-preview"
 | 
			
		||||
                        @click="handlePictureCardPreview(file)"
 | 
			
		||||
                      >
 | 
			
		||||
                        <i class="el-icon-zoom-in"/>
 | 
			
		||||
                      </span>
 | 
			
		||||
                      <span
 | 
			
		||||
                        class="el-upload-list__item-delete"
 | 
			
		||||
                        @click="handleRemove(file)"
 | 
			
		||||
                      >
 | 
			
		||||
                        <i class="el-icon-delete"/>
 | 
			
		||||
                      </span>
 | 
			
		||||
                    </span>
 | 
			
		||||
                  </div>
 | 
			
		||||
                </el-upload>
 | 
			
		||||
              </div>
 | 
			
		||||
              <el-dialog :visible.sync="dialogVisible" append-to-body>
 | 
			
		||||
                <img :src="dialogImageUrl" width="100%" alt="">
 | 
			
		||||
              </el-dialog>
 | 
			
		||||
              <div style="margin-top: 10px">
 | 
			
		||||
                限制上传数量:{{ firekzsImgs.length +'/'+'5' }}
 | 
			
		||||
              </div>
 | 
			
		||||
              <div>
 | 
			
		||||
                只能上传jpg/png文件,单张且不超过5mb
 | 
			
		||||
              </div>
 | 
			
		||||
            </el-form-item>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-form-item label="经纬度:" prop="LONGTITUDEANDLATITUDE">
 | 
			
		||||
              <el-input v-model="addForm.info.LONGTITUDEANDLATITUDE" style="width:206px" placeholder="请选择" disabled/>
 | 
			
		||||
              <el-button style="margin-left: 10px" type="primary" @click="handleMap">点击定位</el-button>
 | 
			
		||||
            </el-form-item>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-form-item label="添加设备:">
 | 
			
		||||
              <el-button type="primary" @click="addDescribe">新增设备</el-button>
 | 
			
		||||
            </el-form-item>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row >
 | 
			
		||||
          <div v-for="(item) in describeList" :key="item.index" >
 | 
			
		||||
            <el-col :span="8">
 | 
			
		||||
              <el-form-item label="泵房编号:" prop="LABEL" class="is-required">
 | 
			
		||||
                <el-input v-model="item.code" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="8">
 | 
			
		||||
              <el-form-item label="名称:" prop="LABEL" class="is-required" >
 | 
			
		||||
                <el-input v-model="item.name" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="8">
 | 
			
		||||
              <el-form-item label="水泵分类:" prop="LABEL" class="is-required" >
 | 
			
		||||
                <el-input v-model="item.type" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="8">
 | 
			
		||||
              <el-form-item label="负责单位:" prop="LABEL" class="is-required" >
 | 
			
		||||
                <el-input v-model="item.corp" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="8">
 | 
			
		||||
              <el-form-item label="具体位置" prop="LABEL" class="is-required" >
 | 
			
		||||
                <el-input v-model="item.palce" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="8">
 | 
			
		||||
              <el-form-item label="设备参数和规格" prop="LABEL" class="is-required" >
 | 
			
		||||
                <el-input v-model="item.ramake" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </div>
 | 
			
		||||
          <el-button v-if="describeList.length > 1" style="margin-left: 160px" type="danger" @click="removeDescribe()">删除</el-button>
 | 
			
		||||
        </el-row>
 | 
			
		||||
      </el-form>
 | 
			
		||||
      <div
 | 
			
		||||
        v-loading="diaLoading"
 | 
			
		||||
        slot="footer"
 | 
			
		||||
        class="dialog-footer">
 | 
			
		||||
        <el-button @click="addForm.dialogVisible = false">取 消</el-button>
 | 
			
		||||
        <el-button type="primary" @click="confirm">提 交</el-button>
 | 
			
		||||
      </div>
 | 
			
		||||
    </el-dialog>
 | 
			
		||||
 | 
			
		||||
    <el-dialog :visible.sync="dialogFormMap" title="定位" width="1050px" class="dy-dialog">
 | 
			
		||||
      <div id="map"/>
 | 
			
		||||
      <div slot="footer" class="dialog-footer">
 | 
			
		||||
        <span>经度:</span>
 | 
			
		||||
        <el-input v-model="LONGTITUDE" style="width: 200px" placeholder="请输入内容" disabled/>
 | 
			
		||||
        <span>纬度:</span>
 | 
			
		||||
        <el-input v-model="LATITUDE" style="width: 200px" placeholder="请输入内容" disabled/>
 | 
			
		||||
        <el-button @click="dialogFormMap = false">取 消</el-button>
 | 
			
		||||
        <el-button type="primary" @click="setPosition">确 定</el-button>
 | 
			
		||||
      </div>
 | 
			
		||||
    </el-dialog>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import Pagination from '@/components/Pagination'
 | 
			
		||||
import { requestFN } from '@/utils/request'
 | 
			
		||||
import { upload } from '@/utils/upload'
 | 
			
		||||
import waves from '@/directive/waves' // waves directive
 | 
			
		||||
import SelectTree from '@/components/SelectTree'
 | 
			
		||||
import TiandiMap from '../../../../components/TianMap/TiandiMap'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  components: { Pagination, SelectTree, TiandiMap },
 | 
			
		||||
  directives: { waves },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      config: config,
 | 
			
		||||
      firekzsImgs: [],
 | 
			
		||||
      waitForDeleteImgs: [],
 | 
			
		||||
      dialogImageUrl: '',
 | 
			
		||||
      dialogVisible: false,
 | 
			
		||||
      dialogFormMap: false,
 | 
			
		||||
      map: null,
 | 
			
		||||
      corpList: [],
 | 
			
		||||
      marker: null,
 | 
			
		||||
      describeList: [
 | 
			
		||||
        {
 | 
			
		||||
          code: '',
 | 
			
		||||
          palce: '',
 | 
			
		||||
          name: '',
 | 
			
		||||
          type: '',
 | 
			
		||||
          corp: '',
 | 
			
		||||
          ramake: ''
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      addBtnType: true,
 | 
			
		||||
      FIRE_RESOURCES_TYPE: '',
 | 
			
		||||
      listLoading: true,
 | 
			
		||||
      add: false,
 | 
			
		||||
      del: false,
 | 
			
		||||
      edit: false,
 | 
			
		||||
      form: {
 | 
			
		||||
        FIRERESOURCES_NAME: '',
 | 
			
		||||
        FIRERESOURCES_TYPE: 'xfbf01'
 | 
			
		||||
      },
 | 
			
		||||
      diaLoading: false,
 | 
			
		||||
      addForm: {
 | 
			
		||||
        dialogType: 'add', // 增or改
 | 
			
		||||
        dialogVisible: false,
 | 
			
		||||
        rules: {
 | 
			
		||||
          FIRERESOURCES_NAME: [{ required: true, message: '不可为空', trigger: 'blur' }],
 | 
			
		||||
          FIRERESOURCES_TYPE: [{ required: true, message: '请选择消防资源类型', trigger: 'blur' }],
 | 
			
		||||
          LONGTITUDEANDLATITUDE: [{ required: true, message: '请经纬度不可为空', trigger: 'blur' }],
 | 
			
		||||
          CORPINFO_ID: [{ required: true, message: '请选择分公司', trigger: 'blur' }],
 | 
			
		||||
          STATE: [{ required: true, message: '请选择状态', trigger: 'blur' }],
 | 
			
		||||
          DESCR: [{ required: true, message: '不可为空', trigger: 'blur' }]
 | 
			
		||||
        },
 | 
			
		||||
        info: {
 | 
			
		||||
          FIRERESOURCES_ID: '', // 主键
 | 
			
		||||
          FIRERESOURCES_NAME: '', // 名称
 | 
			
		||||
          FIRERESOURCES_TYPE: 'xfbf01', // 消防资源类别
 | 
			
		||||
          STATE: '', // 状态
 | 
			
		||||
          CORPINFO_ID: '', // 状态
 | 
			
		||||
          LONGTITUDE: '', // 经度
 | 
			
		||||
          LATITUDE: '', // 纬度
 | 
			
		||||
          LONGTITUDEANDLATITUDE: '', // 经纬度
 | 
			
		||||
          DESCR: '' // 描述
 | 
			
		||||
        }
 | 
			
		||||
      },
 | 
			
		||||
      LONGTITUDE: '', // 经度
 | 
			
		||||
      LATITUDE: '', // 纬度
 | 
			
		||||
      keySelect: {
 | 
			
		||||
        FIRE_DEVICE_TYPE_ID: ''
 | 
			
		||||
      },
 | 
			
		||||
      treeData: [],
 | 
			
		||||
      typeData: [],
 | 
			
		||||
      stateData: [
 | 
			
		||||
        {
 | 
			
		||||
          NAME: '正常',
 | 
			
		||||
          BIANMA: 0
 | 
			
		||||
        }, {
 | 
			
		||||
          NAME: '异常',
 | 
			
		||||
          BIANMA: 1
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      varRegionList: [],
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        page: 1,
 | 
			
		||||
        limit: 20
 | 
			
		||||
      },
 | 
			
		||||
      ls: [],
 | 
			
		||||
      dates: [],
 | 
			
		||||
      total: 0,
 | 
			
		||||
      KEYWORDS: '',
 | 
			
		||||
      // 树形菜单
 | 
			
		||||
      filterText: '',
 | 
			
		||||
      varList: [],
 | 
			
		||||
      pd: [],
 | 
			
		||||
      defaultProps: {
 | 
			
		||||
        value: 'id',
 | 
			
		||||
        children: 'children',
 | 
			
		||||
        label: 'name'
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  watch: {
 | 
			
		||||
    filterText(val) {
 | 
			
		||||
      console.log(val)
 | 
			
		||||
      this.$refs.tree.filter(val)
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.getList()
 | 
			
		||||
    this.hasButton()
 | 
			
		||||
    // this.getDeviceType()
 | 
			
		||||
    this.getDict()
 | 
			
		||||
    this.getTreeData()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    handleRemove(file) {
 | 
			
		||||
      if (file.IMGFILES_ID) {
 | 
			
		||||
        // 已经上传过的 现在删除 记录这个id
 | 
			
		||||
        this.waitForDeleteImgs.push(file.IMGFILES_ID)
 | 
			
		||||
        this.firekzsImgs = this.firekzsImgs.filter(x => x.IMGFILES_ID != file.IMGFILES_ID)
 | 
			
		||||
      } else {
 | 
			
		||||
        this.firekzsImgs = this.firekzsImgs.filter(x => x.MATERIALS_ID != file.MATERIALS_ID)
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    handlePictureCardPreview(file) {
 | 
			
		||||
      if (file.url) {
 | 
			
		||||
        this.dialogImageUrl = file.url
 | 
			
		||||
      }
 | 
			
		||||
      if (file.FILEPATH) {
 | 
			
		||||
        this.dialogImageUrl = config.fileUrl + file.FILEPATH
 | 
			
		||||
      }
 | 
			
		||||
      this.dialogVisible = true
 | 
			
		||||
    },
 | 
			
		||||
    overFlow(files, fileList) {
 | 
			
		||||
      this.$message.warning('最多上传5张图片')
 | 
			
		||||
    },
 | 
			
		||||
    handleEditChange(file, fileList) {
 | 
			
		||||
      file.MATERIALS_ID = Math.random()
 | 
			
		||||
      const is5M = file.size / 1024 / 1024 < 5
 | 
			
		||||
      if (is5M) this.firekzsImgs.push(file)
 | 
			
		||||
    },
 | 
			
		||||
    getpic(ID) {
 | 
			
		||||
      requestFN(
 | 
			
		||||
        'imgfiles/listImgs',
 | 
			
		||||
        {
 | 
			
		||||
          FOREIGN_KEY: ID
 | 
			
		||||
        }
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.firekzsImgs = data.imgs
 | 
			
		||||
      }).catch((e) => {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    addDescribe() {
 | 
			
		||||
      this.describeList.push(
 | 
			
		||||
        {
 | 
			
		||||
          code: '',
 | 
			
		||||
          palce: '',
 | 
			
		||||
          name: '',
 | 
			
		||||
          type: '',
 | 
			
		||||
          corp: '',
 | 
			
		||||
          ramake: ''
 | 
			
		||||
        }
 | 
			
		||||
      )
 | 
			
		||||
    },
 | 
			
		||||
    removeDescribe(index) {
 | 
			
		||||
      this.describeList.splice(this.describeList.length - 1, 1)
 | 
			
		||||
    },
 | 
			
		||||
    setPosition() {
 | 
			
		||||
      this.addForm.info.LONGTITUDEANDLATITUDE = this.LATITUDE + '--' + this.LONGTITUDE
 | 
			
		||||
      this.dialogFormMap = false
 | 
			
		||||
    },
 | 
			
		||||
    initTDT() {
 | 
			
		||||
      console.log(window)
 | 
			
		||||
      console.log(window.T)
 | 
			
		||||
 | 
			
		||||
      return new Promise((resolve, reject) => {
 | 
			
		||||
        if (window.T) {
 | 
			
		||||
          console.log('天地图初始化成功...')
 | 
			
		||||
          resolve(window.T)
 | 
			
		||||
          reject('error')
 | 
			
		||||
        } else {
 | 
			
		||||
          console.info(999999999)
 | 
			
		||||
        }
 | 
			
		||||
      }).then(T => {
 | 
			
		||||
        window.T = T
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    /**
 | 
			
		||||
     * 初始化地图
 | 
			
		||||
     * @param {*} lng 经度
 | 
			
		||||
     * @param {*} lat 纬度
 | 
			
		||||
     * @param {*} zoom 缩放比例(1~18)
 | 
			
		||||
     */
 | 
			
		||||
    initMap(lng, lat, zoom) {
 | 
			
		||||
      this.initTDT().then((T) => {
 | 
			
		||||
        const imageURL = 'http://t0.tianditu.gov.cn/img_w/wmts?' + 'SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles' + '&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=e8a16137fd226a62a23cc7ba5c9c78ce'
 | 
			
		||||
        // 创建自定义图层对象
 | 
			
		||||
        this.lay = new window.T.TileLayer(imageURL, { minZoom: 1, maxZoom: 18 })
 | 
			
		||||
        // 初始化地图对象
 | 
			
		||||
        this.map = new window.T.Map('map')
 | 
			
		||||
        this.initCenter(lng, lat, zoom)
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    initCenter(lng, lat, zoom) {
 | 
			
		||||
      // 设置显示地图的中心点和级别
 | 
			
		||||
      if (!this.LONGTITUDE && !this.LATITUDE) {
 | 
			
		||||
        this.map.centerAndZoom(new window.T.LngLat(119.58, 39.94), zoom)
 | 
			
		||||
        console.log(123)
 | 
			
		||||
      } else {
 | 
			
		||||
        this.map.centerAndZoom(new window.T.LngLat(lng, lat), zoom)
 | 
			
		||||
        this.marker && this.map.removeOverLay(this.marker)
 | 
			
		||||
        this.LONGTITUDE = lng
 | 
			
		||||
        this.LATITUDE = lat
 | 
			
		||||
        this.marker = new window.T.Marker(new window.T.LngLat(lng, lat))
 | 
			
		||||
        // 向地图上添加标注
 | 
			
		||||
        this.map.addOverLay(this.marker)
 | 
			
		||||
      }
 | 
			
		||||
      // 创建卫星和路网的混合视图
 | 
			
		||||
      this.map.setMapType(window.TMAP_HYBRID_MAP)
 | 
			
		||||
      // 允许鼠标滚轮缩放地图
 | 
			
		||||
      this.map.enableScrollWheelZoom()
 | 
			
		||||
      // 允许鼠标移动地图
 | 
			
		||||
      this.map.enableInertia()
 | 
			
		||||
      // 向地图上添加标注
 | 
			
		||||
      this.map.addEventListener('click', this.MapClick)
 | 
			
		||||
    },
 | 
			
		||||
    MapClick(event) {
 | 
			
		||||
      this.marker && this.map.removeOverLay(this.marker)
 | 
			
		||||
      this.LONGTITUDE = event.lnglat.getLng()
 | 
			
		||||
      this.LATITUDE = event.lnglat.getLat()
 | 
			
		||||
      this.marker = new window.T.Marker(new window.T.LngLat(event.lnglat.getLng(), event.lnglat.getLat()))
 | 
			
		||||
      // 向地图上添加标注
 | 
			
		||||
      this.map.addOverLay(this.marker)
 | 
			
		||||
    },
 | 
			
		||||
    handleMap() {
 | 
			
		||||
      this.dialogFormMap = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        console.log(!this.map)
 | 
			
		||||
        if (!this.map) this.initMap(this.LONGTITUDE, this.LATITUDE, 16)
 | 
			
		||||
        else this.initCenter(this.LONGTITUDE, this.LATITUDE, 16)
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    confirm() {
 | 
			
		||||
      this.$refs.addForm.validate(valid => {
 | 
			
		||||
        if (this.addForm.info.FIRERESOURCES_NAME === '') {
 | 
			
		||||
          this.$message({
 | 
			
		||||
            message: '名称不可为空',
 | 
			
		||||
            type: 'warning'
 | 
			
		||||
          })
 | 
			
		||||
          return false
 | 
			
		||||
        }
 | 
			
		||||
        if (this.addForm.info.STATE === '') {
 | 
			
		||||
          this.$message({
 | 
			
		||||
            message: '请检查状态不可为空',
 | 
			
		||||
            type: 'warning'
 | 
			
		||||
          })
 | 
			
		||||
          return false
 | 
			
		||||
        }
 | 
			
		||||
        if (this.addForm.info.CORPINFO_ID === '') {
 | 
			
		||||
          this.$message({
 | 
			
		||||
            message: '请检查所属分公司不可为空',
 | 
			
		||||
            type: 'warning'
 | 
			
		||||
          })
 | 
			
		||||
          return false
 | 
			
		||||
        }
 | 
			
		||||
        if (this.addForm.info.LONGTITUDEANDLATITUDE === '') {
 | 
			
		||||
          this.$message({
 | 
			
		||||
            message: '请检查经纬度不可为空',
 | 
			
		||||
            type: 'warning'
 | 
			
		||||
          })
 | 
			
		||||
          return false
 | 
			
		||||
        }
 | 
			
		||||
        if (this.describeList.length > 0) {
 | 
			
		||||
          // code: '',
 | 
			
		||||
          // palce: '',
 | 
			
		||||
          // name: '',
 | 
			
		||||
          // type: '',
 | 
			
		||||
          // corp: '',
 | 
			
		||||
          // ramake: ''
 | 
			
		||||
          for (var i = 0; i < this.describeList.length; i++) {
 | 
			
		||||
            if (this.describeList[i].code === '') {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: '泵房编号不可为空',
 | 
			
		||||
                type: 'warning'
 | 
			
		||||
              })
 | 
			
		||||
              return false
 | 
			
		||||
            }
 | 
			
		||||
            if (this.describeList[i].palce === '') {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: '具体位置不可为空',
 | 
			
		||||
                type: 'warning'
 | 
			
		||||
              })
 | 
			
		||||
              return false
 | 
			
		||||
            }
 | 
			
		||||
            if (this.describeList[i].name === '') {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: '名称不可为空',
 | 
			
		||||
                type: 'warning'
 | 
			
		||||
              })
 | 
			
		||||
              return false
 | 
			
		||||
            }
 | 
			
		||||
            if (this.describeList[i].type === '') {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: '水泵分类不可为空',
 | 
			
		||||
                type: 'warning'
 | 
			
		||||
              })
 | 
			
		||||
              return false
 | 
			
		||||
            }
 | 
			
		||||
            if (this.describeList[i].corp === '') {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: '负责单位不可为空',
 | 
			
		||||
                type: 'warning'
 | 
			
		||||
              })
 | 
			
		||||
              return false
 | 
			
		||||
            }
 | 
			
		||||
            if (this.describeList[i].ramake === '') {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: '设备参数和规格不可为空',
 | 
			
		||||
                type: 'warning'
 | 
			
		||||
              })
 | 
			
		||||
              return false
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
        if (!this.firekzsImgs.length > 0) {
 | 
			
		||||
          this.$message.warning('最少上传一张照片')
 | 
			
		||||
          return
 | 
			
		||||
        }
 | 
			
		||||
        this.addForm.info.DESCR = JSON.stringify(this.describeList)
 | 
			
		||||
        this.addForm.info.LATITUDE = this.LATITUDE
 | 
			
		||||
        this.addForm.info.LONGTITUDE = this.LONGTITUDE
 | 
			
		||||
        if (valid) {
 | 
			
		||||
          this.diaLoading = true
 | 
			
		||||
          const formData = new FormData()
 | 
			
		||||
          Object.keys(this.addForm.info).map(key => {
 | 
			
		||||
            formData.append(key, this.addForm.info[key])
 | 
			
		||||
          })
 | 
			
		||||
          if (this.waitForDeleteImgs.length > 0) {
 | 
			
		||||
            formData.append('DELETE_IDS', this.waitForDeleteImgs.join(','))
 | 
			
		||||
          }
 | 
			
		||||
          for (let i = 0; i < this.firekzsImgs.length; i++) {
 | 
			
		||||
            if (this.firekzsImgs[i].raw) {
 | 
			
		||||
              formData.append('FFILE', this.firekzsImgs[i].raw)
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
          upload(
 | 
			
		||||
            '/fireResources/' + this.addForm.dialogType, formData
 | 
			
		||||
          ).then((data) => {
 | 
			
		||||
            this.$message.success('保存成功')
 | 
			
		||||
            this.getList()
 | 
			
		||||
            this.diaLoading = false
 | 
			
		||||
            this.addForm.dialogVisible = false
 | 
			
		||||
          }).catch((e) => {
 | 
			
		||||
            this.diaLoading = false
 | 
			
		||||
          })
 | 
			
		||||
        } else {
 | 
			
		||||
          return false
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    getTreeData() {
 | 
			
		||||
      requestFN(
 | 
			
		||||
        '/department/listTree',
 | 
			
		||||
        {}
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.treeData = JSON.parse(data.zTreeNodes)
 | 
			
		||||
      }).catch((e) => {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    handleEdit(row) {
 | 
			
		||||
      this.resetAddForm()
 | 
			
		||||
      this.getpic(row.FIRERESOURCES_ID)
 | 
			
		||||
      this.addForm.info.FIRERESOURCES_ID = row.FIRERESOURCES_ID
 | 
			
		||||
      this.addForm.info.FIRERESOURCES_NAME = row.FIRERESOURCES_NAME
 | 
			
		||||
      this.addForm.info.FIRERESOURCES_TYPE = row.FIRERESOURCES_TYPE
 | 
			
		||||
      this.addForm.info.LATITUDE = row.LATITUDE
 | 
			
		||||
      this.addForm.info.LONGTITUDE = row.LONGTITUDE
 | 
			
		||||
      this.addForm.info.STATE = row.STATE
 | 
			
		||||
      this.addForm.info.CORPINFO_ID = row.CORPINFO_ID
 | 
			
		||||
      this.LONGTITUDE = row.LONGTITUDE
 | 
			
		||||
      this.LATITUDE = row.LATITUDE
 | 
			
		||||
      this.addForm.info.LONGTITUDEANDLATITUDE = row.LATITUDE + '--' + row.LONGTITUDE
 | 
			
		||||
      this.describeList = []
 | 
			
		||||
      if (row.DESCR) {
 | 
			
		||||
        this.describeList = JSON.parse(row.DESCR)
 | 
			
		||||
      }
 | 
			
		||||
      this.addForm.dialogType = 'edit'
 | 
			
		||||
      this.addForm.dialogVisible = true
 | 
			
		||||
    },
 | 
			
		||||
    getRowKey(row) {
 | 
			
		||||
      return row.FIRE_DEVICE_ID
 | 
			
		||||
    },
 | 
			
		||||
    // 添加
 | 
			
		||||
    handleAdd() {
 | 
			
		||||
      this.resetAddForm()
 | 
			
		||||
      this.describeList = [
 | 
			
		||||
        {
 | 
			
		||||
          code: '',
 | 
			
		||||
          palce: '',
 | 
			
		||||
          name: '',
 | 
			
		||||
          type: '',
 | 
			
		||||
          corp: '',
 | 
			
		||||
          ramake: ''
 | 
			
		||||
        }
 | 
			
		||||
      ]
 | 
			
		||||
      this.addForm.dialogType = 'add'
 | 
			
		||||
      this.addForm.dialogVisible = true
 | 
			
		||||
    },
 | 
			
		||||
    resetAddForm() {
 | 
			
		||||
      this.waitForDeleteImgs = []
 | 
			
		||||
      this.firekzsImgs = []
 | 
			
		||||
      this.LATITUDE = ''
 | 
			
		||||
      this.LONGTITUDE = ''
 | 
			
		||||
      this.addForm.info = {
 | 
			
		||||
        FIRERESOURCES_ID: '', // 主键
 | 
			
		||||
        FIRERESOURCES_NAME: '', // 名称
 | 
			
		||||
        FIRERESOURCES_TYPE: 'xfbf01', // 消防资源类别
 | 
			
		||||
        STATE: '', // 状态
 | 
			
		||||
        CORPINFO_ID: '', // 状态
 | 
			
		||||
        LONGTITUDE: '', // 经度
 | 
			
		||||
        LATITUDE: '', // 纬度
 | 
			
		||||
        LONGTITUDEANDLATITUDE: '', // 经纬度
 | 
			
		||||
        DESCR: '' // 描述
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    // 搜索
 | 
			
		||||
    getQuery() {
 | 
			
		||||
      this.getList()
 | 
			
		||||
    },
 | 
			
		||||
    // 获取列表
 | 
			
		||||
    getList() {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      this.varList = []
 | 
			
		||||
      requestFN(
 | 
			
		||||
        '/fireResources/list?showCount=' + this.listQuery.limit + '¤tPage=' + this.listQuery.page,
 | 
			
		||||
        {
 | 
			
		||||
          FIRERESOURCES_NAME: this.form.FIRERESOURCES_NAME,
 | 
			
		||||
          FIRERESOURCES_TYPE: this.form.FIRERESOURCES_TYPE
 | 
			
		||||
        }
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
        this.varList = data.varList
 | 
			
		||||
        this.total = data.page.totalResult
 | 
			
		||||
        this.hasButton()
 | 
			
		||||
      }).catch((e) => {
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    goKeyReset() {
 | 
			
		||||
      this.form.FIRERESOURCES_NAME = ''
 | 
			
		||||
 | 
			
		||||
      this.getList()
 | 
			
		||||
    },
 | 
			
		||||
    getDict() {
 | 
			
		||||
      // requestFN(
 | 
			
		||||
      //   '/corpinfo/getSelectByCorpInfo',
 | 
			
		||||
      //   {
 | 
			
		||||
      //   }
 | 
			
		||||
      // ).then((data) => {
 | 
			
		||||
      //   this.corpList = JSON.parse(data.corpInfoJson)
 | 
			
		||||
      // }).catch((e) => {
 | 
			
		||||
      // })
 | 
			
		||||
      requestFN(
 | 
			
		||||
        'dictionaries/getLevels',
 | 
			
		||||
        {
 | 
			
		||||
          DICTIONARIES_ID: '6bba977985f6427e9d0b52afe8884d1a'
 | 
			
		||||
        }
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.typeData = data.list
 | 
			
		||||
      })
 | 
			
		||||
        .catch((e) => {
 | 
			
		||||
          this.listLoading = false
 | 
			
		||||
        })
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    handleDelete(id, name) {
 | 
			
		||||
      this.$confirm('确定要删除编号为[' + name + ']的消防资源吗?', {
 | 
			
		||||
        confirmButtonText: '确定',
 | 
			
		||||
        cancelButtonText: '取消',
 | 
			
		||||
        type: 'warning'
 | 
			
		||||
      }).then(() => {
 | 
			
		||||
        this.listLoading = true
 | 
			
		||||
        requestFN(
 | 
			
		||||
          '/fireResources/delete',
 | 
			
		||||
          {
 | 
			
		||||
            FIRERESOURCES_ID: id
 | 
			
		||||
          }
 | 
			
		||||
        ).then(() => {
 | 
			
		||||
          this.$message({
 | 
			
		||||
            message: '删除成功',
 | 
			
		||||
            type: 'success'
 | 
			
		||||
          })
 | 
			
		||||
          this.listLoading = false
 | 
			
		||||
          this.varList = []
 | 
			
		||||
          this.listQuery.page = 1
 | 
			
		||||
          this.getList()
 | 
			
		||||
        }).catch((e) => {
 | 
			
		||||
          this.listLoading = false
 | 
			
		||||
        })
 | 
			
		||||
      }).catch(() => {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    hasButton: function() {
 | 
			
		||||
      var keys = 'fireresources:add,fireresources:del,fireresources:edit,toExcel'
 | 
			
		||||
      requestFN(
 | 
			
		||||
        '/head/hasButton',
 | 
			
		||||
        {
 | 
			
		||||
          keys: keys
 | 
			
		||||
        }
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.add = data.fireresourcesfhadminadd		// 新增权限
 | 
			
		||||
        this.del = data.fireresourcesfhadmindel		// 删除权限
 | 
			
		||||
        this.edit = data.fireresourcesfhadminedit	// 修改权限
 | 
			
		||||
        this.toExcel = data.toExcel // 导出到excel权限
 | 
			
		||||
      }).catch((e) => {
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.returnBtn {
 | 
			
		||||
  float: right;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.app-container {
 | 
			
		||||
  display: flex; /**/
 | 
			
		||||
  align-items: baseline;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.rightCont {
 | 
			
		||||
  width: 100%
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#map {
 | 
			
		||||
  width: 1000px;
 | 
			
		||||
  height: 500px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,33 @@
 | 
			
		|||
<template>
 | 
			
		||||
  <!--  <component :is="activeName" />-->
 | 
			
		||||
  <div>
 | 
			
		||||
    <List v-show="activeName=='List'" ref="list" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import List from './components/list.vue'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  components: {
 | 
			
		||||
    List: List
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      activeName: 'List'
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  watch: {
 | 
			
		||||
    activeName(val) {
 | 
			
		||||
      if (val == 'List') {
 | 
			
		||||
        this.$refs.list.getList()
 | 
			
		||||
        this.$refs.list.getTreeList()
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
</style>
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,585 @@
 | 
			
		|||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <div class="rightCont">
 | 
			
		||||
      <el-form label-width="50px">
 | 
			
		||||
        <el-col :span="5">
 | 
			
		||||
          <el-form-item label="名称:" label-width="110px">
 | 
			
		||||
            <el-input v-model="form.FIRERESOURCES_NAME" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="5">
 | 
			
		||||
          <el-form-item label="消防资源类型" label-width="110px">
 | 
			
		||||
            <el-select v-model="form.FIRERESOURCES_TYPE" placeholder="请选择">
 | 
			
		||||
              <el-option
 | 
			
		||||
                v-for="item in typeData"
 | 
			
		||||
                :key="item.NAME"
 | 
			
		||||
                :label="item.NAME"
 | 
			
		||||
                :value="item.BIANMA"/>
 | 
			
		||||
            </el-select>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="4">
 | 
			
		||||
          <el-form-item label-width="10px">
 | 
			
		||||
            <el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="getQuery">
 | 
			
		||||
              搜索
 | 
			
		||||
            </el-button>
 | 
			
		||||
            <el-button v-waves class="filter-item" type="success" icon="el-icon-refresh" @click="goKeyReset">
 | 
			
		||||
              重置
 | 
			
		||||
            </el-button>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
      </el-form>
 | 
			
		||||
      <div>
 | 
			
		||||
        <el-table
 | 
			
		||||
          v-loading="listLoading"
 | 
			
		||||
          ref="multipleTable"
 | 
			
		||||
          :data="varList"
 | 
			
		||||
          :row-key="getRowKey"
 | 
			
		||||
          border
 | 
			
		||||
          tooltip-effect="dark"
 | 
			
		||||
          style="width: 100%">
 | 
			
		||||
          <el-table-column type="selection" width="55" align="center"/>
 | 
			
		||||
          <el-table-column type="index" label="序号" width="55" align="center"/>
 | 
			
		||||
          <el-table-column prop="FIRERESOURCES_NAME" label="名称"/>
 | 
			
		||||
          <el-table-column prop="FIRERESOURCES_TYPENAME" label="消防资源类型"/>
 | 
			
		||||
          <el-table-column prop="LONGTITUDE" label="消防资源经纬度">
 | 
			
		||||
            <template slot-scope="{row}">
 | 
			
		||||
              {{ row.LONGTITUDE }} -- {{ row.LATITUDE }}
 | 
			
		||||
            </template>
 | 
			
		||||
          </el-table-column>
 | 
			
		||||
          <!--          <el-table-column prop="DESCR" label="消防资源描述"/>-->
 | 
			
		||||
          <el-table-column prop="CREATIME" label="创建时间"/>
 | 
			
		||||
          <el-table-column label="操作" width="200px">
 | 
			
		||||
            <template slot-scope="{row}">
 | 
			
		||||
              <el-button
 | 
			
		||||
                v-show="edit"
 | 
			
		||||
                type="primary"
 | 
			
		||||
                icon="el-icon-edit"
 | 
			
		||||
                size="mini"
 | 
			
		||||
                @click="handleEdit(row)">修改
 | 
			
		||||
              </el-button>
 | 
			
		||||
              <el-button
 | 
			
		||||
                v-show="del"
 | 
			
		||||
                type="danger"
 | 
			
		||||
                icon="el-icon-delete"
 | 
			
		||||
                size="mini"
 | 
			
		||||
                @click="handleDelete(row.FIRERESOURCES_ID,row.FIRERESOURCES_NAME)">删除
 | 
			
		||||
              </el-button>
 | 
			
		||||
            </template>
 | 
			
		||||
          </el-table-column>
 | 
			
		||||
        </el-table>
 | 
			
		||||
        <div class="page-btn-group">
 | 
			
		||||
          <div>
 | 
			
		||||
            <el-button type="primary" icon="el-icon-plus" @click="handleAdd">新增</el-button>
 | 
			
		||||
          </div>
 | 
			
		||||
          <pagination
 | 
			
		||||
            :total="total"
 | 
			
		||||
            :page.sync="listQuery.page"
 | 
			
		||||
            :limit.sync="listQuery.limit"
 | 
			
		||||
            @pagination="getList(FIRE_DEVICE_ID)"/>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    <el-dialog
 | 
			
		||||
      :visible.sync="addForm.dialogVisible"
 | 
			
		||||
      :title="addForm.dialogType === 'add' ? '新增' : '编辑'"
 | 
			
		||||
      width="50%">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="addForm"
 | 
			
		||||
        :rules="addForm.rules"
 | 
			
		||||
        :model="addForm.info"
 | 
			
		||||
        label-position="right"
 | 
			
		||||
        label-width="150px"
 | 
			
		||||
        style="padding:10px 10px">
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-row>
 | 
			
		||||
              <el-form-item label="名称:" prop="FIRERESOURCES_NAME">
 | 
			
		||||
                <el-input v-model="addForm.info.FIRERESOURCES_NAME" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-row>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-row>
 | 
			
		||||
              <el-form-item label="消防资源类型:" prop="FIRERESOURCES_TYPE">
 | 
			
		||||
                <el-select v-model="addForm.info.FIRERESOURCES_TYPE" placeholder="请选择" style="width: 205px">
 | 
			
		||||
                  <el-option
 | 
			
		||||
                    v-for="item in typeData"
 | 
			
		||||
                    :key="item.NAME"
 | 
			
		||||
                    :label="item.NAME"
 | 
			
		||||
                    :value="item.BIANMA"/>
 | 
			
		||||
                </el-select>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-row>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-row>
 | 
			
		||||
              <el-form-item label="状态:" prop="STATE">
 | 
			
		||||
                <el-select v-model="addForm.info.STATE" placeholder="请选择" style="width: 205px">
 | 
			
		||||
                  <el-option
 | 
			
		||||
                    v-for="item in stateData"
 | 
			
		||||
                    :key="item.NAME"
 | 
			
		||||
                    :label="item.NAME"
 | 
			
		||||
                    :value="item.BIANMA"/>
 | 
			
		||||
                </el-select>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-row>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-form-item label="经纬度:" prop="LONGTITUDEANDLATITUDE">
 | 
			
		||||
              <el-input v-model="addForm.info.LONGTITUDEANDLATITUDE" style="width:206px" placeholder="请选择" disabled/>
 | 
			
		||||
              <el-button style="margin-left: 10px" type="primary" @click="handleMap">点击定位</el-button>
 | 
			
		||||
            </el-form-item>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <el-row>
 | 
			
		||||
          <el-col :span="12">
 | 
			
		||||
            <el-form-item label="添加设备:">
 | 
			
		||||
              <el-button type="primary" @click="addDescribe">新增一行</el-button>
 | 
			
		||||
            </el-form-item>
 | 
			
		||||
          </el-col>
 | 
			
		||||
        </el-row>
 | 
			
		||||
        <div v-for="(item,index) in describeList" :key="item.index">
 | 
			
		||||
          <el-row :gutter="16">
 | 
			
		||||
            <el-col :span="6">
 | 
			
		||||
              <el-form-item label="属性:" prop="LABEL">
 | 
			
		||||
                <el-input v-model="item.label" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="6" style="margin-left:30px ;">
 | 
			
		||||
              <el-form-item label="值:" prop="VALUE">
 | 
			
		||||
                <el-input v-model="item.value" style="width:206px" placeholder="请输入内容"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="2">
 | 
			
		||||
              <el-button style="margin-left: 160px" type="danger" @click="removeDescribe(index)">删除</el-button>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </el-row>
 | 
			
		||||
        </div>
 | 
			
		||||
      </el-form>
 | 
			
		||||
      <div slot="footer" class="dialog-footer">
 | 
			
		||||
        <el-button @click="addForm.dialogVisible = false">取 消</el-button>
 | 
			
		||||
        <el-button type="primary" @click="confirm">提 交</el-button>
 | 
			
		||||
      </div>
 | 
			
		||||
    </el-dialog>
 | 
			
		||||
 | 
			
		||||
    <el-dialog :visible.sync="dialogFormMap" title="定位" width="1050px" class="dy-dialog">
 | 
			
		||||
      <div id="map"/>
 | 
			
		||||
      <div slot="footer" class="dialog-footer">
 | 
			
		||||
        <span>经度:</span>
 | 
			
		||||
        <el-input v-model="LONGTITUDE" style="width: 200px" placeholder="请输入内容" disabled/>
 | 
			
		||||
        <span>纬度:</span>
 | 
			
		||||
        <el-input v-model="LATITUDE" style="width: 200px" placeholder="请输入内容" disabled/>
 | 
			
		||||
        <el-button @click="dialogFormMap = false">取 消</el-button>
 | 
			
		||||
        <el-button type="primary" @click="setPosition">确 定</el-button>
 | 
			
		||||
      </div>
 | 
			
		||||
    </el-dialog>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import Pagination from '@/components/Pagination'
 | 
			
		||||
import { requestFN } from '@/utils/request'
 | 
			
		||||
import waves from '@/directive/waves' // waves directive
 | 
			
		||||
import SelectTree from '@/components/SelectTree'
 | 
			
		||||
import TiandiMap from '../../../../components/TianMap/TiandiMap'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  components: { Pagination, SelectTree, TiandiMap },
 | 
			
		||||
  directives: { waves },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      dialogFormMap: false,
 | 
			
		||||
      map: null,
 | 
			
		||||
      corpList: [],
 | 
			
		||||
      marker: null,
 | 
			
		||||
      describeList: [],
 | 
			
		||||
      addBtnType: true,
 | 
			
		||||
      FIRE_RESOURCES_TYPE: '',
 | 
			
		||||
      listLoading: true,
 | 
			
		||||
      add: false,
 | 
			
		||||
      del: false,
 | 
			
		||||
      edit: false,
 | 
			
		||||
      form: {
 | 
			
		||||
        FIRERESOURCES_NAME: '',
 | 
			
		||||
        FIRERESOURCES_TYPE: ''
 | 
			
		||||
      },
 | 
			
		||||
      addForm: {
 | 
			
		||||
        dialogType: 'add', // 增or改
 | 
			
		||||
        dialogVisible: false,
 | 
			
		||||
        rules: {
 | 
			
		||||
          FIRERESOURCES_NAME: [{ required: true, message: '不可为空', trigger: 'blur' }],
 | 
			
		||||
          FIRERESOURCES_TYPE: [{ required: true, message: '请选择消防资源类型', trigger: 'blur' }],
 | 
			
		||||
          LONGTITUDEANDLATITUDE: [{ required: true, message: '请经纬度不可为空', trigger: 'blur' }],
 | 
			
		||||
          CORPINFO_ID: [{ required: true, message: '请选择分公司', trigger: 'blur' }],
 | 
			
		||||
          STATE: [{ required: true, message: '请选择状态', trigger: 'blur' }],
 | 
			
		||||
          DESCR: [{ required: true, message: '不可为空', trigger: 'blur' }]
 | 
			
		||||
        },
 | 
			
		||||
        info: {
 | 
			
		||||
          FIRERESOURCES_ID: '', // 主键
 | 
			
		||||
          FIRERESOURCES_NAME: '', // 名称
 | 
			
		||||
          FIRERESOURCES_TYPE: '', // 消防资源类别
 | 
			
		||||
          STATE: '', // 状态
 | 
			
		||||
          CORPINFO_ID: '', // 状态
 | 
			
		||||
          LONGTITUDE: '', // 经度
 | 
			
		||||
          LATITUDE: '', // 纬度
 | 
			
		||||
          LONGTITUDEANDLATITUDE: '', // 经纬度
 | 
			
		||||
          DESCR: '' // 描述
 | 
			
		||||
        }
 | 
			
		||||
      },
 | 
			
		||||
      LONGTITUDE: '', // 经度
 | 
			
		||||
      LATITUDE: '', // 纬度
 | 
			
		||||
      keySelect: {
 | 
			
		||||
        FIRE_DEVICE_TYPE_ID: ''
 | 
			
		||||
      },
 | 
			
		||||
      treeData: [],
 | 
			
		||||
      typeData: [],
 | 
			
		||||
      stateData: [
 | 
			
		||||
        {
 | 
			
		||||
          NAME: '正常',
 | 
			
		||||
          BIANMA: 0
 | 
			
		||||
        }, {
 | 
			
		||||
          NAME: '异常',
 | 
			
		||||
          BIANMA: 1
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      varRegionList: [],
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        page: 1,
 | 
			
		||||
        limit: 20
 | 
			
		||||
      },
 | 
			
		||||
      ls: [],
 | 
			
		||||
      dates: [],
 | 
			
		||||
      total: 0,
 | 
			
		||||
      KEYWORDS: '',
 | 
			
		||||
      FIRE_POINT_NAME: '',
 | 
			
		||||
      FIRE_POINT_CODE: '',
 | 
			
		||||
      // 树形菜单
 | 
			
		||||
      filterText: '',
 | 
			
		||||
      varList: [],
 | 
			
		||||
      pd: [],
 | 
			
		||||
      defaultProps: {
 | 
			
		||||
        value: 'id',
 | 
			
		||||
        children: 'children',
 | 
			
		||||
        label: 'name'
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  watch: {
 | 
			
		||||
    filterText(val) {
 | 
			
		||||
      console.log(val)
 | 
			
		||||
      this.$refs.tree.filter(val)
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.getList()
 | 
			
		||||
    this.hasButton()
 | 
			
		||||
    // this.getDeviceType()
 | 
			
		||||
    this.getDict()
 | 
			
		||||
    this.getTreeData()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
 | 
			
		||||
    addDescribe() {
 | 
			
		||||
      this.describeList.push({
 | 
			
		||||
        label: '',
 | 
			
		||||
        value: ''
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    removeDescribe(index) {
 | 
			
		||||
      this.describeList.splice(index, 1)
 | 
			
		||||
    },
 | 
			
		||||
    setPosition() {
 | 
			
		||||
      this.addForm.info.LONGTITUDEANDLATITUDE = this.LATITUDE + '--' + this.LONGTITUDE
 | 
			
		||||
      this.dialogFormMap = false
 | 
			
		||||
    },
 | 
			
		||||
    initTDT() {
 | 
			
		||||
      console.log(window)
 | 
			
		||||
      console.log(window.T)
 | 
			
		||||
 | 
			
		||||
      return new Promise((resolve, reject) => {
 | 
			
		||||
        if (window.T) {
 | 
			
		||||
          console.log('天地图初始化成功...')
 | 
			
		||||
          resolve(window.T)
 | 
			
		||||
          reject('error')
 | 
			
		||||
        } else {
 | 
			
		||||
          console.info(999999999)
 | 
			
		||||
        }
 | 
			
		||||
      }).then(T => {
 | 
			
		||||
        window.T = T
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    /**
 | 
			
		||||
     * 初始化地图
 | 
			
		||||
     * @param {*} lng 经度
 | 
			
		||||
     * @param {*} lat 纬度
 | 
			
		||||
     * @param {*} zoom 缩放比例(1~18)
 | 
			
		||||
     */
 | 
			
		||||
    initMap(lng, lat, zoom) {
 | 
			
		||||
      this.initTDT().then((T) => {
 | 
			
		||||
        const imageURL = 'http://t0.tianditu.gov.cn/img_w/wmts?' + 'SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles' + '&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=e8a16137fd226a62a23cc7ba5c9c78ce'
 | 
			
		||||
        // 创建自定义图层对象
 | 
			
		||||
        this.lay = new window.T.TileLayer(imageURL, { minZoom: 1, maxZoom: 18 })
 | 
			
		||||
        // 初始化地图对象
 | 
			
		||||
        this.map = new window.T.Map('map')
 | 
			
		||||
        this.initCenter(lng, lat, zoom)
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    initCenter(lng, lat, zoom) {
 | 
			
		||||
      // 设置显示地图的中心点和级别
 | 
			
		||||
      if (!this.LONGTITUDE && !this.LATITUDE) {
 | 
			
		||||
        this.map.centerAndZoom(new window.T.LngLat(119.58, 39.94), zoom)
 | 
			
		||||
        console.log(123)
 | 
			
		||||
      } else {
 | 
			
		||||
        this.map.centerAndZoom(new window.T.LngLat(lng, lat), zoom)
 | 
			
		||||
        this.marker && this.map.removeOverLay(this.marker)
 | 
			
		||||
        this.LONGTITUDE = lng
 | 
			
		||||
        this.LATITUDE = lat
 | 
			
		||||
        this.marker = new window.T.Marker(new window.T.LngLat(lng, lat))
 | 
			
		||||
        // 向地图上添加标注
 | 
			
		||||
        this.map.addOverLay(this.marker)
 | 
			
		||||
      }
 | 
			
		||||
      // 创建卫星和路网的混合视图
 | 
			
		||||
      this.map.setMapType(window.TMAP_HYBRID_MAP)
 | 
			
		||||
      // 允许鼠标滚轮缩放地图
 | 
			
		||||
      this.map.enableScrollWheelZoom()
 | 
			
		||||
      // 允许鼠标移动地图
 | 
			
		||||
      this.map.enableInertia()
 | 
			
		||||
      // 向地图上添加标注
 | 
			
		||||
      this.map.addEventListener('click', this.MapClick)
 | 
			
		||||
    },
 | 
			
		||||
    MapClick(event) {
 | 
			
		||||
      this.marker && this.map.removeOverLay(this.marker)
 | 
			
		||||
      this.LONGTITUDE = event.lnglat.getLng()
 | 
			
		||||
      this.LATITUDE = event.lnglat.getLat()
 | 
			
		||||
      this.marker = new window.T.Marker(new window.T.LngLat(event.lnglat.getLng(), event.lnglat.getLat()))
 | 
			
		||||
      // 向地图上添加标注
 | 
			
		||||
      this.map.addOverLay(this.marker)
 | 
			
		||||
    },
 | 
			
		||||
    handleMap() {
 | 
			
		||||
      this.dialogFormMap = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        console.log(!this.map)
 | 
			
		||||
        if (!this.map) this.initMap(this.LONGTITUDE, this.LATITUDE, 16)
 | 
			
		||||
        else this.initCenter(this.LONGTITUDE, this.LATITUDE, 16)
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    confirm() {
 | 
			
		||||
      this.$refs.addForm.validate(valid => {
 | 
			
		||||
        if (this.describeList.length > 0) {
 | 
			
		||||
          console.log('this.describeList.length > 0')
 | 
			
		||||
          for (var i = 0; i < this.describeList.length; i++) {
 | 
			
		||||
            if (this.describeList[i].label === '') {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: '第' + (i + 1) + '行请填写属性',
 | 
			
		||||
                type: 'warning'
 | 
			
		||||
              })
 | 
			
		||||
              return false
 | 
			
		||||
            }
 | 
			
		||||
            if (this.describeList[i].value === '') {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: '第' + (i + 1) + '行请填写值',
 | 
			
		||||
                type: 'warning'
 | 
			
		||||
              })
 | 
			
		||||
              return false
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
        this.addForm.info.DESCR = JSON.stringify(this.describeList)
 | 
			
		||||
        this.addForm.info.LATITUDE = this.LATITUDE
 | 
			
		||||
        this.addForm.info.LONGTITUDE = this.LONGTITUDE
 | 
			
		||||
        if (valid) {
 | 
			
		||||
          requestFN(
 | 
			
		||||
            '/fireResources/' + this.addForm.dialogType,
 | 
			
		||||
            {
 | 
			
		||||
              ...this.addForm.info
 | 
			
		||||
            }
 | 
			
		||||
          ).then((data) => {
 | 
			
		||||
            this.$message.success('保存成功')
 | 
			
		||||
            this.getList()
 | 
			
		||||
            this.addForm.dialogVisible = false
 | 
			
		||||
          }).catch((e) => {
 | 
			
		||||
          })
 | 
			
		||||
        } else {
 | 
			
		||||
          return false
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    getTreeData() {
 | 
			
		||||
      requestFN(
 | 
			
		||||
        '/department/listTree',
 | 
			
		||||
        {}
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.treeData = JSON.parse(data.zTreeNodes)
 | 
			
		||||
      }).catch((e) => {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    handleEdit(row) {
 | 
			
		||||
      this.resetAddForm()
 | 
			
		||||
      this.addForm.info.FIRERESOURCES_ID = row.FIRERESOURCES_ID
 | 
			
		||||
      this.addForm.info.FIRERESOURCES_NAME = row.FIRERESOURCES_NAME
 | 
			
		||||
      this.addForm.info.FIRERESOURCES_TYPE = row.FIRERESOURCES_TYPE
 | 
			
		||||
      this.addForm.info.LATITUDE = row.LATITUDE
 | 
			
		||||
      this.addForm.info.LONGTITUDE = row.LONGTITUDE
 | 
			
		||||
      this.addForm.info.STATE = row.STATE
 | 
			
		||||
      this.addForm.info.CORPINFO_ID = row.CORPINFO_ID
 | 
			
		||||
      this.LONGTITUDE = row.LONGTITUDE
 | 
			
		||||
      this.LATITUDE = row.LATITUDE
 | 
			
		||||
      this.addForm.info.LONGTITUDEANDLATITUDE = row.LATITUDE + '--' + row.LONGTITUDE
 | 
			
		||||
      this.describeList = []
 | 
			
		||||
      if (row.DESCR) {
 | 
			
		||||
        this.describeList = JSON.parse(row.DESCR)
 | 
			
		||||
      }
 | 
			
		||||
      this.addForm.dialogType = 'edit'
 | 
			
		||||
      this.addForm.dialogVisible = true
 | 
			
		||||
    },
 | 
			
		||||
    getRowKey(row) {
 | 
			
		||||
      return row.FIRE_DEVICE_ID
 | 
			
		||||
    },
 | 
			
		||||
    // 添加
 | 
			
		||||
    handleAdd() {
 | 
			
		||||
      this.resetAddForm()
 | 
			
		||||
      this.describeList = []
 | 
			
		||||
      this.addForm.dialogType = 'add'
 | 
			
		||||
      this.addForm.dialogVisible = true
 | 
			
		||||
    },
 | 
			
		||||
    resetAddForm() {
 | 
			
		||||
      this.LATITUDE = ''
 | 
			
		||||
      this.LONGTITUDE = ''
 | 
			
		||||
      this.addForm.info = {
 | 
			
		||||
        FIRERESOURCES_ID: '', // 主键
 | 
			
		||||
        FIRERESOURCES_NAME: '', // 名称
 | 
			
		||||
        FIRERESOURCES_TYPE: '', // 消防资源类别
 | 
			
		||||
        STATE: '', // 状态
 | 
			
		||||
        CORPINFO_ID: '', // 状态
 | 
			
		||||
        LONGTITUDE: '', // 经度
 | 
			
		||||
        LATITUDE: '', // 纬度
 | 
			
		||||
        LONGTITUDEANDLATITUDE: '', // 经纬度
 | 
			
		||||
        DESCR: '' // 描述
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    // 搜索
 | 
			
		||||
    getQuery() {
 | 
			
		||||
      this.getList()
 | 
			
		||||
    },
 | 
			
		||||
    // 获取列表
 | 
			
		||||
    getList(pid) {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      this.varList = []
 | 
			
		||||
      this.FIRE_POINT_ID = pid
 | 
			
		||||
      requestFN(
 | 
			
		||||
        '/fireResources/list?showCount=' + this.listQuery.limit + '¤tPage=' + this.listQuery.page,
 | 
			
		||||
        {
 | 
			
		||||
          FIRERESOURCES_NAME: this.form.FIRERESOURCES_NAME,
 | 
			
		||||
          FIRERESOURCES_TYPE: this.form.FIRERESOURCES_TYPE
 | 
			
		||||
        }
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
        this.varList = data.varList
 | 
			
		||||
        this.total = data.page.totalResult
 | 
			
		||||
        this.hasButton()
 | 
			
		||||
      }).catch((e) => {
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    goKeyReset() {
 | 
			
		||||
      this.form.FIRERESOURCES_NAME = ''
 | 
			
		||||
 | 
			
		||||
      this.getList()
 | 
			
		||||
    },
 | 
			
		||||
    getDict() {
 | 
			
		||||
      // requestFN(
 | 
			
		||||
      //   '/corpinfo/getSelectByCorpInfo',
 | 
			
		||||
      //   {
 | 
			
		||||
      //   }
 | 
			
		||||
      // ).then((data) => {
 | 
			
		||||
      //   this.corpList = JSON.parse(data.corpInfoJson)
 | 
			
		||||
      // }).catch((e) => {
 | 
			
		||||
      // })
 | 
			
		||||
      requestFN(
 | 
			
		||||
        'dictionaries/getLevels',
 | 
			
		||||
        {
 | 
			
		||||
          DICTIONARIES_ID: '6bba977985f6427e9d0b52afe8884d1a'
 | 
			
		||||
        }
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.typeData = data.list
 | 
			
		||||
      })
 | 
			
		||||
        .catch((e) => {
 | 
			
		||||
          this.listLoading = false
 | 
			
		||||
        })
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    handleDelete(id, name) {
 | 
			
		||||
      this.$confirm('确定要删除编号为[' + name + ']的消防资源吗?', {
 | 
			
		||||
        confirmButtonText: '确定',
 | 
			
		||||
        cancelButtonText: '取消',
 | 
			
		||||
        type: 'warning'
 | 
			
		||||
      }).then(() => {
 | 
			
		||||
        this.listLoading = true
 | 
			
		||||
        requestFN(
 | 
			
		||||
          '/fireResources/delete',
 | 
			
		||||
          {
 | 
			
		||||
            FIRERESOURCES_ID: id
 | 
			
		||||
          }
 | 
			
		||||
        ).then(() => {
 | 
			
		||||
          this.$message({
 | 
			
		||||
            message: '删除成功',
 | 
			
		||||
            type: 'success'
 | 
			
		||||
          })
 | 
			
		||||
          this.listLoading = false
 | 
			
		||||
          this.varList = []
 | 
			
		||||
          this.listQuery.page = 1
 | 
			
		||||
          this.getList(this.FIRE_POINT_ID)
 | 
			
		||||
        }).catch((e) => {
 | 
			
		||||
          this.listLoading = false
 | 
			
		||||
        })
 | 
			
		||||
      }).catch(() => {
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    hasButton: function() {
 | 
			
		||||
      var keys = 'fireresources:add,fireresources:del,fireresources:edit,toExcel'
 | 
			
		||||
      requestFN(
 | 
			
		||||
        '/head/hasButton',
 | 
			
		||||
        {
 | 
			
		||||
          keys: keys
 | 
			
		||||
        }
 | 
			
		||||
      ).then((data) => {
 | 
			
		||||
        this.add = data.fireresourcesfhadminadd		// 新增权限
 | 
			
		||||
        this.del = data.fireresourcesfhadmindel		// 删除权限
 | 
			
		||||
        this.edit = data.fireresourcesfhadminedit	// 修改权限
 | 
			
		||||
        this.toExcel = data.toExcel // 导出到excel权限
 | 
			
		||||
      }).catch((e) => {
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.returnBtn {
 | 
			
		||||
  float: right;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.app-container {
 | 
			
		||||
  display: flex; /**/
 | 
			
		||||
  align-items: baseline;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.rightCont {
 | 
			
		||||
  width: 100%
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#map {
 | 
			
		||||
  width: 1000px;
 | 
			
		||||
  height: 500px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,33 @@
 | 
			
		|||
<template>
 | 
			
		||||
  <!--  <component :is="activeName" />-->
 | 
			
		||||
  <div>
 | 
			
		||||
    <List v-show="activeName=='List'" ref="list" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import List from './components/list.vue'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  components: {
 | 
			
		||||
    List: List
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      activeName: 'List'
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  watch: {
 | 
			
		||||
    activeName(val) {
 | 
			
		||||
      if (val == 'List') {
 | 
			
		||||
        this.$refs.list.getList()
 | 
			
		||||
        this.$refs.list.getTreeList()
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
</style>
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue