无人机管理后台前端(已迁走)
张含笑
2025-12-09 5808f76456ca0d40de5074f132b73a5a488e3e13
src/views/resource/patchManagement.vue
@@ -41,7 +41,7 @@
      </template>
    </avue-crud>
    <el-dialog title="上传图斑" append-to-body align-center v-model="box" width="550px">
    <el-dialog title="上传图斑" class="ztzf-dialog-mange" append-to-body align-center v-model="box" width="550px">
      <el-form
        ref="ruleFormRef"
        style="max-width: 600px"
@@ -156,8 +156,9 @@
  addBtn: false,
  tip: false,
  searchShow: true,
  searchMenuSpan: 8,
  searchMenuPosition: 'right',
  searchGutter: 30,
  searchMenuPosition: 'left',
  searchMenuSpan: 4,
  border: true,
  index: true,
  indexLabel: '序号',
@@ -192,7 +193,7 @@
      label: '图斑类型',
      prop: 'patches_type_desc',
      span: 24,
      searchLabelWidth: 100,
      // searchLabelWidth: 100,
      search: true,
      searchSpan: 4,
      type: 'select',
@@ -220,7 +221,7 @@
      prop: 'areaName',
      span: 24,
      width: 180,
      searchLabelWidth: 100,
      // searchLabelWidth: 100,
      search: true,
      searchSpan: 4,
      type: 'tree',
@@ -248,7 +249,7 @@
      label: '创建人',
      prop: 'user_name',
      span: 24,
      searchLabelWidth: 100,
      // searchLabelWidth: 100,
      search: true,
      searchSpan: 4,
      type: 'select',
@@ -509,44 +510,48 @@
  });
};
// 图斑上传
const uploadFlightFile = (file, t) => {
const uploadFlightFile = async (file, t) => {
  loading.value = true;
  const fileSuffix = file.name.substring(file.name.lastIndexOf('.') + 1);
  if (!['kmz', 'kml', 'zip'].includes(fileSuffix)) {
    return ElMessage.error('请上传zip/kmz/kml格式的文件');
  }
  if (file) {
    box.value = false;
  }
  let data = new FormData();
  let type = t === '3' ? '' : t;
  const params = {
    file: file,
    fileName: ruleForm.name,
    LotTypeId: ruleForm.region,
  };
  try {
    const fileSuffix = file.name.substring(file.name.lastIndexOf('.') + 1);
    if (!['kmz', 'kml', 'zip'].includes(fileSuffix)) {
      ElMessage.error('请上传zip/kmz/kml格式的文件');
      return;
    }
    box.value = false;
    let data = new FormData();
    let type = t === '3' ? '' : t;
    const params = {
      file: file,
      fileName: ruleForm.name,
      LotTypeId: ruleForm.region,
    };
  Object.keys(params).forEach(key => {
    data.append(key, params[key]);
  });
    Object.keys(params).forEach(key => {
      data.append(key, params[key]);
    });
  uploadManagementApi(data).then(res => {
    const res = await uploadManagementApi(data);
    if (res.data.code !== 0) {
      return ElMessage.error('上传失败');
      ElMessage.error('上传失败');
      return;
    }
    ElMessage.success('上传成功');
    loading.value = false;
    // 重置表单
    ruleForm.name = '';
    ruleForm.region = '';
    if (ruleFormRef.value) {
      ruleFormRef.value.resetFields();
    }
    searchReset();
  });
  } catch (error) {
     loading.value = false;
  } finally {
    loading.value = false;
  }
};
provide('searchReset', searchReset);
onMounted(() => {