jiangping
2025-06-06 a2299a6d4a6f99e9c11132138f5d3e9ec68f03ea
admin/src/views/Inspection/components/OperaYwPatrolPointWindow.vue
@@ -1,8 +1,8 @@
<template>
  <GlobalWindow :title="title" :visible.sync="visible" width="620px" :confirm-working="isWorking" @confirm="confirm">
    <el-form :model="form" ref="form" :rules="rules">
      <el-form-item label="巡检点编码" prop="code">
        <el-input v-model="form.code" placeholder="请输入名称" v-trim />
      <el-form-item label="巡检点编码"  required >
        <el-input v-model="form.code" disabled readonly placeholder="系统自动生成" v-trim />
      </el-form-item>
      <el-form-item label="巡检点名称" prop="name">
        <el-input v-model="form.name" placeholder="请输入巡检点名称" v-trim />
@@ -21,16 +21,16 @@
          }"></el-cascader>
      </el-form-item>
      <el-form-item label="经纬度">
        <el-input v-model="form.lnglat" disabled v-trim />
        <el-input v-model="form.lnglat" placeholder="示例:117.297461,31.849234" v-trim />
      </el-form-item>
      <el-form-item>
      <!-- <el-form-item>
        <mapDrag class="mapbox" @center="getCenter" />
      </el-form-item>
      </el-form-item> -->
      <el-form-item label="巡检内容" prop="content">
        <el-input type="textarea" :rows="4" v-model="form.content" placeholder="请输入" />
      </el-form-item>
      <el-form-item label="上传图片" prop="imgurl">
        <UploadAvatarImage :file="{ 'imgurlfull': form.fileFullUrl, 'imgurl': form.fileurl }"
        <UploadAvatarImage :file="{ 'imgurlfull': form.fileFullUrl, 'imgurl': form.fileUrl }"
          :uploadData="{ folder: 'ywPatrol/' }" @uploadSuccess="uploadAvatarSuccess" @uploadEnd="isUploading = false"
          @uploadBegin="isUploading = true" />
      </el-form-item>
@@ -67,7 +67,6 @@
      // 验证规则
      rules: {
        name: [{ required: true, message: '请输入' }],
        code: [{ required: true, message: '请输入' }],
      },
      isUploading: false,
    }
@@ -83,6 +82,30 @@
      this.title = title
      this.visible = true
      this.initData()
      if (row == null) {
        this.$nextTick(() => {
          this.form = {
            name: '',
            // code: '',
            content: '',
            imgurl: '',
            areaId: 0,
            areaIds: [],
            addr: ''
          }
          this.$refs.form.resetFields()
          this.form[this.configData['field.id']] = null
        })
        fetchList({
          model: { type: 4 },
          capacity: 1000,
          page: 1,
        }).then(res => {
          this.cateList = res.records || []
        })
        return
      }
      if (row && row.id) {
        this.getDetail(row)
      }
@@ -90,34 +113,33 @@
    getDetail(row) {
      detail(row.id).then(res => {
        this.form = { ...res }
        // this.$set(this.form, 'areaId', res.areaId)
        // console.log('res', res)
        // console.log('res', this.form)
      })
    },
    initData() {
      fetchList({
        model: { type: 4 },
        capacity: 1000,
        page: 1,
      }).then(res => {
        this.cateList = res.records || []
        setTimeout(() => {
          const areaId = this.form.areaId
        if (res.longitude && res.latitude) {
          this.$set(this.form, 'lnglat', res.longitude + ',' + res.latitude)
        }
        fetchList({
          model: { type: 4 },
          capacity: 1000,
          page: 1,
        }).then(ress => {
          this.cateList = ress.records || []
          const areaId = res.areaId
          if (areaId) {
            this.cateList.forEach(item => {
              if (item.childCategoryList) {
                item.childCategoryList.forEach(item2 => {
                  if (item2.id == areaId) {
                    this.$set(this.form, 'areaIds', [item.id, item2.id])
                  }
                })
              }
            })
          }
        }, 1300)
        })
      })
    },
    initData() {
      getDeiceList({
        model: {},
        capacity: 1000,
@@ -146,8 +168,8 @@
      }
    },
    uploadAvatarSuccess(file) {
      this.form.fileurl = file.imgurl
      this.form.fileFullUrl = file.imgurlfull
      this.$set(this.form, 'fileUrl', file.imgurl)
      this.$set(this.form, 'fileFullUrl', file.imgurlfull)
    },
  }
}
@@ -159,4 +181,4 @@
  margin-bottom: 20px;
  float: left;
}
</style>
</style>