| | |
| | | <template> |
| | | <div class="project-wayline-wrapper height-100"> |
| | | <a-spin :spinning="loading" :delay="300" tip="downloading" size="large"> |
| | | <a-spin :spinning="loading" :delay="300" tip="加载中" size="large"> |
| | | <div style="height: 50px; line-height: 50px; border-bottom: 1px solid #4f4f4f; font-weight: 450;"> |
| | | <a-row> |
| | | <a-col :span="1"></a-col> |
| | | <a-col :span="15">Flight Route Library</a-col> |
| | | <a-col :span="15">航线库</a-col> |
| | | <a-col :span="8" v-if="importVisible" class="flex-row flex-justify-end flex-align-center"> |
| | | <a-upload |
| | | name="file" |
| | |
| | | <template #overlay> |
| | | <a-menu theme="dark" class="more" style="background: #3c3c3c;"> |
| | | <a-menu-item @click="downloadWayline(wayline.id, wayline.name)"> |
| | | <span>Download</span> |
| | | <span>下载</span> |
| | | </a-menu-item> |
| | | <a-menu-item @click="showWaylineTip(wayline.id)"> |
| | | <span>Delete</span> |
| | | <span>删除</span> |
| | | </a-menu-item> |
| | | </a-menu> |
| | | </template> |
| | |
| | | </span> |
| | | </div> |
| | | <div class="mt5 ml10" style="color: hsla(0,0%,100%,0.35);"> |
| | | <span class="mr10">Update at {{ new Date(wayline.update_time).toLocaleString() }}</span> |
| | | <span class="mr10">更新时间: {{ new Date(wayline.update_time).toLocaleString() }}</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <div v-else> |
| | | <a-empty :image-style="{ height: '60px', marginTop: '60px' }" /> |
| | | </div> |
| | | <a-modal v-model:visible="deleteTip" width="450px" :closable="false" :maskClosable="false" centered :okButtonProps="{ danger: true }" @ok="deleteWayline"> |
| | | <p class="pt10 pl20" style="height: 50px;">Wayline file is unrecoverable once deleted. Continue?</p> |
| | | <a-modal v-model:visible="deleteTip" okText="确定" cancelText="取消" width="450px" :closable="false" :maskClosable="false" centered :okButtonProps="{ danger: true }" @ok="deleteWayline"> |
| | | <p class="pt10 pl20" style="height: 50px;">确定要删除该文件吗?</p> |
| | | <template #title> |
| | | <div class="flex-row flex-justify-center"> |
| | | <span>Delete</span> |
| | | <span>删除</span> |
| | | </div> |
| | | </template> |
| | | </a-modal> |
| | |
| | | |
| | | const loading = ref(false) |
| | | const store = useMyStore() |
| | | const projectId = store.state.common.projectId |
| | | const pagination :IPage = { |
| | | page: 1, |
| | | total: -1, |
| | |
| | | }) |
| | | |
| | | const root = getRoot() |
| | | const workspaceId = localStorage.getItem(ELocalStorageKey.WorkspaceId)! |
| | | const workspaceId = computed(() => store.state.common.projectId) |
| | | const deleteTip = ref(false) |
| | | const deleteWaylineId = ref<string>('') |
| | | const canRefresh = ref(true) |
| | |
| | | return |
| | | } |
| | | canRefresh.value = false |
| | | getWaylineFiles(workspaceId, { |
| | | getWaylineFiles(workspaceId.value, { |
| | | page: pagination.page, |
| | | page_size: pagination.page_size, |
| | | order_by: 'update_time desc' |
| | |
| | | |
| | | function downloadWayline (waylineId: string, fileName: string) { |
| | | loading.value = true |
| | | downloadWaylineFile(workspaceId, waylineId).then(res => { |
| | | downloadWaylineFile(workspaceId.value, waylineId).then(res => { |
| | | if (!res) { |
| | | return |
| | | } |
| | |
| | | } |
| | | |
| | | function selectRoute (wayline: WaylineFile) { |
| | | store.commit('SET_SELECT_WAYLINE_INFO', wayline) |
| | | loading.value = true |
| | | downloadWaylineFile(workspaceId.value, wayline.id).then(res => { |
| | | store.commit('SET_SELECT_WAYLINE_INFO', wayline) |
| | | console.log(res, 'res') |
| | | }).finally(() => { |
| | | loading.value = false |
| | | }) |
| | | } |
| | | |
| | | function onScroll (e: any) { |
| | |
| | | getWaylines() |
| | | } |
| | | } |
| | | |
| | | interface FileItem { |
| | | uid: string; |
| | | name?: string; |
| | |
| | | fileList.value.forEach(async (file: FileItem) => { |
| | | const fileData = new FormData() |
| | | fileData.append('file', file, file.name) |
| | | await importKmzFile(projectId, fileData).then((res) => { |
| | | await importKmzFile(workspaceId.value, fileData).then((res) => { |
| | | if (res.code === 0) { |
| | | message.success(`${file.name} file uploaded successfully`) |
| | | canRefresh.value = true |