无人机管理后台前端(已迁走)
rjg
2025-04-11 a4e972e5a0353307074abc9bbebb1ca56f802a9f
fix:更新智飞工单
3 files modified
112 ■■■■■ changed files
src/api/device/device.js 12 ●●●●● patch | view | raw | blame | history
src/api/resource/wayline.js 25 ●●●●● patch | view | raw | blame | history
src/views/tickets/orderLog.vue 75 ●●●● patch | view | raw | blame | history
src/api/device/device.js
@@ -133,4 +133,14 @@
    url: '/drone-device-core/manage/api/v1/devices/getAirportList',
    method: 'get',
  });
};
};
//可飞行机巢列表
export const getFlyingNestBy = (param) => {
  return request({
    url: '/drone-device-core/manage/api/v1/devices/getFlyingNestBy',
    method: 'post',
    data:param
  });
};
src/api/resource/wayline.js
@@ -17,17 +17,14 @@
  });
};
// export const getJobsByWorkspace = (workspace_id, page, page_size, status = '', startTime = null, endTime = null, name = null) => {
//   return request({
//     url: `/drone-device-core/wayline/api/v1/workspaces/${workspace_id}/jobs`,
//     method: 'get',
//     params: {
//       page,
//       page_size,
//       status,
//       startTime,
//       endTime,
//       name,
//     },
//   });
// };
export const getWaylineFileListByArea = (areaCode) => {
  return request({
    url: `/drone-device-core/wayline/api/v1/workspaces/getWaylineFileListByArea`,
    method: 'get',
    params: {
      areaCode
    },
  });
};
src/views/tickets/orderLog.vue
@@ -161,12 +161,13 @@
          </el-col>
          <el-col :span="12">
            <el-form-item label="关联航线" prop="file_id">
              <el-select v-model="form.file_id" placeholder="请选择航线">
              <el-select v-model="form.file_id" placeholder="请选择航线"             @change="getFlyingNestBy" >
                <el-option
                  v-for="item in handlers"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                  v-for="item in wayLineList"
                  :key="item.wayline_id"
                  :label="item.name"
                  :value="item.wayline_id"
                />
              </el-select>
            </el-form-item>
@@ -177,10 +178,10 @@
            <el-form-item label="关联机巢" prop="device_sns">
              <el-select v-model="form.device_sns" placeholder="请选择机巢" multiple>
                <el-option
                  v-for="item in handlers"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                  v-for="item in device_sns"
                  :key="item.device_sn"
                  :label="item.nickname"
                  :value="item.device_sn"
                />
              </el-select>
            </el-form-item>
@@ -262,13 +263,14 @@
            </el-form-item>
          </el-col>
          <el-col :span="12">
            <el-form-item label="关联航线" prop="file_id">
              <el-select v-model="form.file_id" placeholder="请选择航线">
           <el-form-item label="关联航线" prop="file_id">
              <el-select v-model="form.file_id" placeholder="请选择航线"             @change="getFlyingNestBy" >
                <el-option
                  v-for="item in handlers"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                  v-for="item in wayLineList"
                  :key="item.wayline_id"
                  :label="item.name"
                  :value="item.wayline_id"
                />
              </el-select>
            </el-form-item>
@@ -276,13 +278,13 @@
        </el-row>
        <el-row :gutter="20">
          <el-col :span="12">
            <el-form-item label="关联机巢" prop="device_sns">
             <el-form-item label="关联机巢" prop="device_sns">
              <el-select v-model="form.device_sns" placeholder="请选择机巢" multiple>
                <el-option
                  v-for="item in handlers"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                  v-for="item in device_sns"
                  :key="item.device_sn"
                  :label="item.nickname"
                  :value="item.device_sn"
                />
              </el-select>
            </el-form-item>
@@ -376,7 +378,9 @@
  orderLogPass,
} from '@/api/tickets/orderLog';
import { getDictionary } from '@/api/system/dictbiz';
import{getWaylineFileListByArea} from '@/api/resource/wayline';
import { export_json_to_excel } from '@/utils/exportExcel';
import {getFlyingNestBy} from '@/api/device/device';
import { mapGetters } from 'vuex';
export default {
@@ -404,7 +408,9 @@
      },
      departments: [],
      types: [],
      device_sns:[],
      ai_types: [],
      wayLineList:[],
      handlers: [
        { label: '处理人A', value: 'handlerA' },
        { label: '处理人B', value: 'handlerB' },
@@ -420,7 +426,7 @@
        { label: '已通过', value: '3' },
      ],
      //周期
      cycles: ['周一', '周二', '周三', '周四', '周五', '周六', '周日', '周末', '工作日', '每天'],
      cycles: ['周一', '周二', '周三', '周四', '周五', '周六', '周末', '周天', '工作日', '每天'],
      tableData: [],
      option: {
@@ -492,12 +498,14 @@
    this.fetchDropdownData();
    var response = await getDictionary({ code: 'SF' });
    this.ai_types = response.data.data;
  },
  mounted() {
    this.fetchTableData();
  },
  computed: {
    ...mapGetters(['userInfo']),
  },
  methods: {
@@ -683,6 +691,8 @@
          }
          this.dialogVisible = false;
          this.detailVisible = false;
          this.device_sns=[],
          this.wayLineList=[],
          this.fetchTableData();
        }
      });
@@ -803,6 +813,8 @@
    handleAdd() {
      this.form = {};
      this.dialogVisible = true;
          //航线列表
      this.asyncgetWaylineFileListByArea();
    },
    resetForm() {
@@ -834,6 +846,9 @@
        ...response.data.data,
      };
      this.detailVisible = true;
      //航线列表
      this.asyncgetWaylineFileListByArea();
      this.device_sns=response.data.data.deviceList;
    },
    openMap() {
@@ -851,6 +866,24 @@
    refreshChange() {
      this.fetchTableData();
    },
    //获取航线列表
 async asyncgetWaylineFileListByArea(name){
      var wayLineListResponse= await getWaylineFileListByArea(this.userInfo.detail.areaCode);
    this.wayLineList=wayLineListResponse.data.data;
},
  //可飞行机巢列表
 async getFlyingNestBy(waylineId){
  //按照航线来
 const params = {
      type:0,
      waylineId:waylineId,
 }
   var wayLineListResponse= await getFlyingNestBy(params);
   this.device_sns=wayLineListResponse.data.data;
},
    //撤回
    async orderLogRecall(id) {
      this.$confirm('确定撤回则到草稿箱。', '是否撤回?', {