刘妍 2 months ago
commit 027ed36300

@ -1,7 +1,9 @@
<template>
<BasicTable @register="registerTable">
<template #toolbar>
<!-- <a-button type="primary" @click=""></a-button> -->
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
<a-button v-if="!record.tasklist" type="primary" @click="openDraw(record)"></a-button>
</template>
</template>
</BasicTable>
</template>
@ -11,6 +13,9 @@ import { ref, defineProps, onMounted, watch, nextTick } from "vue"
import { BasicTable, useTable, TableAction } from '@/components/Table';
import { columns, searchFormSchema } from './utils'
import { GetDataList } from '@/api/demo/provincetasks'
import { useRouter } from 'vue-router'
const router = useRouter()
const [registerTable, { reload, expandAll, getForm,getDataSource,setTableData }] = useTable({
title: '任务列表',
@ -29,6 +34,11 @@ const [registerTable, { reload, expandAll, getForm,getDataSource,setTableData }]
//
showTableSetting: true,
bordered: false,
actionColumn: {
width: 160,
title: '操作',
dataIndex: 'action',
},
beforeFetch(data) {
return data
},
@ -41,6 +51,14 @@ const [registerTable, { reload, expandAll, getForm,getDataSource,setTableData }]
return info;
},
});
const openDraw = (e) =>{
router.push({
path: '/workmanagement/workplan',
query: {
taskid: e.id
}
})
}
</script>
<style lang="scss" scoped>

@ -44,26 +44,27 @@ const editMode = ref("add");
// 线
const airLineForm = ref({
"id": null,
"airLineName": null,
"airLineType": null,
"uavId": null,
"flyToFirstPointMode": null,
"safeTakeoffAltitude": 0,
"safeTakeoffSpeed": 0,
"globalRouteSpeed": 0,
"taskCompletionAction": null,
"outOfControlOption": null,
"typeOfOutOfControlAction": null,
"globalWayPointType": null,
"ptzControlMode": null,
"aircraftYawAngleMode": null,
"createTime": null,
"wpml": null,
"taskOffLng": 0,
"taskOffLat": 0,
"folder": null
});
"id": null,
"airLineName": null,
"airLineType": null,
"uavId": null,
"flyToFirstPointMode": null,
"safeTakeoffAltitude": 0,
"safeTakeoffSpeed": 0,
"globalRouteSpeed": 0,
"taskCompletionAction": null,
"outOfControlOption": null,
"typeOfOutOfControlAction": null,
"globalWayPointType": null,
"ptzControlMode": null,
"aircraftYawAngleMode": null,
"createTime": null,
"wpml": null,
"taskOffLng": 0,
"taskOffLat": 0,
"folder": null
});
//
const currentFolder = ref(null);

@ -26,7 +26,7 @@ export const columns = [
},
{
title: '加入组织时间',
dataIndex: 'updateTime',
dataIndex: 'createTime',
},
];

@ -81,9 +81,16 @@ export const searchFormSchema: FormSchema[] = [
colProps: { span: 4 },
},
{
field: 'model',
field: 'type',
label: '设备型号',
component: 'Input',
component: 'Select',
componentProps: {
options: [
{ label: 'Dock 1', value: 'Dock 1' },
{ label: 'Dock 2', value: 'Dock 2' },
{ label: 'Dock 3', value: 'Dock 3' },
],
},
colProps: { span: 4 },
},
{

@ -18,6 +18,7 @@
@setNowShowAnnotationData="setNowShowAnnotationData"
@setAllAnnotationData="setAllAnnotationData"
@deleteAnnotation="deleteAnnotation"
@treeDataShowOrHide="treeDataShowOrHide"
/>
</div>
<!-- 地图 -->
@ -29,6 +30,7 @@
:nowShowAnnotationData="nowShowAnnotationData"
@setNowShowAnnotationData="setNowShowAnnotationData"
@setAllAnnotationData="setAllAnnotationData"
:treeDataShowOrHideList="treeDataShowOrHideList"
/>
</div>
<!-- 地图标注 -->
@ -154,6 +156,12 @@
});
}
//
const treeDataShowOrHideList = ref([]);
function treeDataShowOrHide(value) {
treeDataShowOrHideList.value = value;
}
//
function handlerLocation(position) {
pathMapRef.value.handlerLocation([position.lng, position.lat]);

@ -433,8 +433,8 @@
//
function handlerLocation() {
emits('handlerLocation', {
lng: parseFloat(props.nowShowAnnotationData.coordinates[0]),
lat: parseFloat(props.nowShowAnnotationData.coordinates[1]),
lng: parseFloat(props.nowShowAnnotationData.properties.centerPoint[0]),
lat: parseFloat(props.nowShowAnnotationData.properties.centerPoint[1]),
});
}
//
@ -507,9 +507,6 @@
heightlist.push(item[2]);
});
heightDiff.value = (Math.max(...heightlist) - Math.min(...heightlist)).toFixed(2);
console.log(horizontalArea.value);
console.log(horizontalPerimeter.value);
console.log(heightDiff.value);
}
}
defineExpose({

@ -45,11 +45,19 @@
style="color: #ffffff; font-size: 16px"
/>
</div>
<div
<span
:class="dataRef.mouse ? 'title_mouse' : 'title_nomouse'"
@click="setNowShowAnnotationData(dataRef)"
>
{{ dataRef.title }}
</span>
<div class="buttonSwitch" v-if="dataRef.children">
<a-switch
v-model:checked="dataRef.showOrHide"
checked-children="显示"
un-checked-children="隐藏"
@change="changeWorkSpaceShowOrHide"
/>
</div>
<div class="buttonRight2" v-if="!dataRef.children && dataRef.mouse">
<a-tooltip placement="top">
@ -122,7 +130,9 @@
'setNowShowAnnotationData',
'setAllAnnotationData',
'deleteAnnotation',
'treeDataShowOrHide',
]);
const showMenuInfoName = ref('地图标注');
function updateShowMenuInfoList(type) {
@ -135,10 +145,40 @@
function changeLeftMenuShow() {
emits('changeLeftMenuShow');
}
//
function changeWorkSpaceShowOrHide() {
treeDataShowOrHideList = [];
treeData.value.forEach((tree) => {
treeDataShowOrHideList.push({
id: tree.key,
showOrHide: tree.showOrHide,
});
});
let showIdList: any = [];
treeDataShowOrHideList.map((item) => {
if (item.showOrHide) {
showIdList.push(item.id);
}
});
emits('treeDataShowOrHide', showIdList);
}
//
function getShowOrHide(id) {
if (treeDataShowOrHideList.length > 0) {
const item = treeDataShowOrHideList.find((item) => item.id === id);
return item ? item.showOrHide : true;
} else {
return true;
}
}
// -
const treeData: any = ref([]);
//
let treeDataShowOrHideList: any = [];
//
const expandedKeys: any = ref([]);
//
const searchValue = ref('');
function handleChangeAnnotationSearch() {
treeData.value = [];
@ -150,6 +190,7 @@
treeData.value.push({
key: item.Id,
title: item.WorkspaceName,
showOrHide: getShowOrHide(item.Id),
children: [],
});
});
@ -159,7 +200,6 @@
let allAnnotationDataList = props.allAnnotationDataList.sort((a, b) => {
return dayjs(a.createTime) - dayjs(b.createTime);
});
allAnnotationDataList.forEach((annotation) => {
treeData.value.forEach((tree) => {
if (tree.key == annotation.workSpaceId) {
@ -178,6 +218,7 @@
});
}
}
// -
function deleteAnnotation(show) {
show.deleteClickNum = 0;
@ -219,21 +260,28 @@
//
function handlerLocation(position) {
if (showMenuInfoName.value == '地图标注') {
if (position.geomtype == 'Circle') {
emits('handlerLocation', {
lng: parseFloat(position.coordinates[0]),
lat: parseFloat(position.coordinates[1]),
});
} else {
emits('handlerLocation', {
lng: parseFloat(position.coordinates[0]),
lat: parseFloat(position.coordinates[1]),
});
}
}
emits('handlerLocation', {
lng: parseFloat(position.properties.centerPoint[0]),
lat: parseFloat(position.properties.centerPoint[1]),
});
}
watch(
() => props.nowShowAnnotationData,
() => {
treeData.value.forEach((tree) => {
tree.children?.forEach((t) => {
if (t.id == props.nowShowAnnotationData.id) {
t.title = props.nowShowAnnotationData.name;
}
});
});
},
{
deep: true,
},
);
defineExpose({
updateShowMenuInfoList,
});
@ -288,6 +336,7 @@
.leftMenuContent_tree {
overflow-y: auto;
max-height: 750px;
width: 100%;
}
}
}
@ -305,6 +354,7 @@
gap: 5px;
.eye {
position: relative;
display: flex;
align-items: center;
justify-content: center;
@ -312,20 +362,31 @@
height: 20px;
}
.title_mouse {
position: relative;
width: 135px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.title_nomouse {
position: relative;
width: 170px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.buttonSwitch {
position: absolute;
right: 15px;
display: flex;
align-items: center;
justify-content: center;
width: 60px;
height: 20px;
}
.buttonRight2 {
position: absolute;
right: -15px;
right: 30px;
width: 20px;
height: 20px;
display: flex;
@ -334,7 +395,7 @@
}
.buttonRight1 {
position: absolute;
right: -35px;
right: 5px;
width: 20px;
height: 20px;
display: flex;
@ -363,13 +424,16 @@
::v-deep .ant-tree {
color: #ffffff !important;
}
::v-deep .ant-tree-treenode {
width: 100% !important;
}
::v-deep .ant-tree-node-content-wrapper {
width: 100% !important;
}
::v-deep .ant-tree-switcher {
color: #ffffff !important;
}
::v-deep .ant-tree-node-selected {
background: #25384c !important;
}
//
</style>

@ -174,6 +174,7 @@
'allAnnotationDataList',
'allWorkspaceDataList',
'nowShowAnnotationData',
'treeDataShowOrHideList',
]);
const emits = defineEmits(['setNowShowAnnotationData', 'setAllAnnotationData']);
@ -591,6 +592,41 @@
deep: true,
},
);
watch(
() => props.treeDataShowOrHideList,
() => {
let tempGraphicLayerList = [
//
...annotation_PointGraphicData,
// 线
...annotation_LineStringGraphicData,
//
...annotation_PolygonGraphicData,
//
...annotation_CircleGraphicData,
];
tempGraphicLayerList?.forEach((graphicLayer) => {
if (props.treeDataShowOrHideList.includes(graphicLayer.options.workSpaceId)) {
graphicLayer.setStyle({
show: graphicLayer.options.state == 0 ? true : false,
outline: graphicLayer.options.state == 0 ? true : false,
label: {
show: graphicLayer.options.state == 0 ? true : false,
},
});
} else {
graphicLayer.setStyle({
show: false,
outline: false,
label: {
show: false,
},
});
}
});
},
);
// --
const showAllAnnotationDataList = async () => {
//
@ -693,6 +729,8 @@
},
show: item.state == 0 ? true : false,
hasEdit: true,
state: item.state,
workSpaceId: item.workSpaceId,
});
// mouseover
pointGraphic.on(mars3d.EventType.mouseOver, function () {
@ -773,6 +811,8 @@
show: item.state == 0 ? true : false,
hasEdit: true,
drawShowMeasure: true,
state: item.state,
workSpaceId: item.workSpaceId,
});
// mouseover
lineGraphic.on(mars3d.EventType.mouseOver, function () {
@ -897,6 +937,8 @@
show: item.state == 0 ? true : false,
hasEdit: true,
drawShowMeasure: true,
state: item.state,
workSpaceId: item.workSpaceId,
});
// mouseover
polygonGraphic.on(mars3d.EventType.mouseOver, function () {
@ -1025,6 +1067,8 @@
show: item.state == 0 ? true : false,
hasEdit: true,
drawShowMeasure: true,
state: item.state,
workSpaceId: item.workSpaceId,
});
// mouseover
circleGraphic.on(mars3d.EventType.mouseOver, function () {

@ -4,7 +4,6 @@
<LeftOutlined v-show="props.title=='线'" /> {{props.title}}
</div>
<div class="filter-container">
<div>
<a-select
ref="select"
@ -41,10 +40,10 @@
<svg t="1749104746320" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="7498" width="24" height="24"><path d="M918.485333 261.930667L857.813333 208.64a20.992 20.992 0 0 0-27.008 0L770.133333 261.973333a15.36 15.36 0 0 0 0 23.68 20.48 20.48 0 0 0 13.482667 4.906667 20.48 20.48 0 0 0 13.525333-4.906667l15.36-13.482666v141.994666c0 15.402667 14.250667 27.904 31.786667 27.904 17.578667 0 31.829333-12.501333 31.829333-27.904V272.128l15.36 13.482667a20.48 20.48 0 0 0 13.482667 4.906666 20.48 20.48 0 0 0 13.525333-4.906666 15.36 15.36 0 0 0 0-23.68z m-277.461333 159.146666c0 15.445333 14.250667 27.946667 31.829333 27.946667s31.829333-12.501333 31.829334-27.946667V346.325333c0-31.786667-11.349333-61.952-31.914667-84.906666a115.328 115.328 0 0 0-85.632-38.698667c-32.426667 0-63.573333 14.08-85.632 38.698667a126.848 126.848 0 0 0-31.914667 84.906666v335.530667c0 36.693333-24.704 67.754667-53.888 67.754667-29.226667 0-53.930667-31.061333-53.930666-67.754667V355.498667l0.469333-7.68 0.042667-1.493334c0-31.786667-11.306667-61.952-31.914667-84.906666a115.328 115.328 0 0 0-85.632-38.698667c-32.384 0-63.573333 14.08-85.632 38.698667a126.848 126.848 0 0 0-31.914667 84.906666v138.496c0 15.402667 14.250667 27.904 31.829334 27.904s31.829333-12.501333 31.829333-27.904V346.325333c0-36.693333 24.704-67.754667 53.888-67.754666 29.013333 0 53.589333 30.634667 53.930667 67.072l-0.512 8.405333v327.808c0 31.786667 11.306667 61.952 31.914666 84.906667a115.328 115.328 0 0 0 85.632 38.698666c32.384 0 63.573333-14.08 85.632-38.698666a126.848 126.848 0 0 0 31.914667-84.906667V346.325333c0-36.693333 24.661333-67.754667 53.888-67.754666 29.226667 0 53.888 31.018667 53.888 67.754666V421.12z" p-id="7499" fill="#ffffff"></path><path d="M858.453333 786.432l72.106667-122.624a27.861333 27.861333 0 0 0 0-28.288l-72.106667-122.624a28.928 28.928 0 0 0-24.96-14.165333h-144.128a28.928 28.928 0 0 0-24.96 14.165333l-72.106666 122.624a27.861333 27.861333 0 0 0 0 28.288l72.106666 122.624c5.12 8.746667 14.634667 14.165333 24.96 14.165333h144.128a28.928 28.928 0 0 0 24.96-14.165333z m-152.32-231.04h110.805334l55.466666 94.293333-55.466666 94.293334H706.133333l-55.424-94.293334 55.466667-94.293333z" p-id="7500" fill="#ffffff"></path><path d="M703.786667 650.410667a57.173333 57.173333 0 0 0 57.642666 56.618666 57.173333 57.173333 0 0 0 57.642667-56.618666 57.173333 57.173333 0 0 0-57.642667-56.618667 57.173333 57.173333 0 0 0-57.642666 56.618667z m57.6 14.165333q1.408 0 2.816-0.298667 1.408-0.256 2.688-0.810666 1.322667-0.512 2.517333-1.28 1.194667-0.768 2.176-1.749334 1.024-1.024 1.792-2.133333 0.810667-1.194667 1.322667-2.474667 0.554667-1.28 0.853333-2.645333 0.256-1.365333 0.256-2.773333t-0.256-2.773334q-0.298667-1.365333-0.853333-2.645333-0.512-1.28-1.28-2.432-0.853333-1.194667-1.834667-2.133333-0.981333-1.024-2.176-1.792-1.194667-0.768-2.517333-1.28-1.28-0.554667-2.688-0.853334-1.408-0.256-2.816-0.256t-2.816 0.256q-1.365333 0.298667-2.688 0.853334-1.28 0.512-2.517334 1.28-1.152 0.768-2.133333 1.749333-1.024 0.981333-1.834667 2.133333-0.768 1.194667-1.322666 2.474667-0.554667 1.28-0.853334 2.645333-0.256 1.365333-0.256 2.773334t0.298667 2.773333q0.256 1.365333 0.810667 2.645333t1.322666 2.432q0.810667 1.152 1.792 2.133334 1.024 1.024 2.176 1.792 1.194667 0.768 2.517334 1.28 1.28 0.554667 2.688 0.853333 1.408 0.256 2.816 0.256z" p-id="7501" fill="#ffffff"></path><path d="M162.389333 510.464a43.690667 43.690667 0 1 1 0 87.381333 43.690667 43.690667 0 0 1 0-87.381333z m0-37.632c-44.8 0-81.322667 36.48-81.322666 81.322667 0 44.8 36.48 81.322667 81.322666 81.322666s81.322667-36.48 81.322667-81.322666-36.48-81.322667-81.322667-81.322667z" p-id="7502" fill="#ffffff"></path><path d="M234.112 554.154667q0-29.653333-21.034667-50.688t-50.688-21.034667q-29.653333 0-50.688 21.034667-20.992 21.034667-20.992 50.688t20.992 50.645333q21.034667 21.034667 50.688 21.034667t50.688-21.034667q21.034667-20.992 21.034667-50.645333z m19.2 0q0 37.589333-26.666667 64.256-26.624 26.666667-64.256 26.666666-37.589333 0-64.256-26.666666t-26.666666-64.256q0-37.632 26.666666-64.256 26.666667-26.666667 64.256-26.666667 37.632 0 64.256 26.666667 26.666667 26.624 26.666667 64.256z m-144.213333 0q0-22.101333 15.616-37.717334t37.674666-15.616q22.101333 0 37.717334 15.616t15.616 37.717334q0 22.058667-15.616 37.674666t-37.717334 15.616q-22.058667 0-37.674666-15.616t-15.616-37.674666z m19.2 0q0 14.08 9.984 24.106666 9.984 9.984 24.106666 9.984 14.122667 0 24.106667-9.984 9.984-9.984 9.984-24.106666 0-14.122667-9.984-24.106667-9.984-9.984-24.106667-9.984-14.08 0-24.106666 9.984-9.984 9.984-9.984 24.106667z" p-id="7503" fill="#ffffff"></path></svg>
</div>
<div class="filter-button" @click="resetQueryList();">
<svg t="1753150393228" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4469" width="24" height="24"><path d="M502.714987 58.258904l-126.531056-54.617723a52.797131 52.797131 0 0 0-41.873587 96.855428A447.865322 447.865322 0 0 0 392.02307 946.707184a61.535967 61.535967 0 0 0 13.83649 1.820591 52.797131 52.797131 0 0 0 13.65443-103.773672 342.453118 342.453118 0 0 1-31.678278-651.771485l-8.374718 19.480321a52.615072 52.615072 0 0 0 27.855039 69.182448 51.522718 51.522718 0 0 0 20.572675 4.369418A52.797131 52.797131 0 0 0 476.498481 254.882703L530.205907 127.441352a52.979191 52.979191 0 0 0-27.49092-69.182448zM962.960326 509.765407A448.775617 448.775617 0 0 0 643.992829 68.090094a52.797131 52.797131 0 1 0-30.403866 101.042786A342.635177 342.635177 0 0 1 674.578753 801.059925a52.615072 52.615072 0 0 0-92.30395-50.612422l-71.913335 117.246043a52.433013 52.433013 0 0 0 17.295612 72.82363l117.063985 72.823629a52.797131 52.797131 0 1 0 54.617722-89.755123l-16.021198-10.013249A448.593558 448.593558 0 0 0 962.960326 509.765407z" fill="#ffffff" p-id="4470"></path></svg>
<svg t="1753254001002" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4469" width="24" height="24"><path d="M867.89 574.16a30.73 30.73 0 0 0-37.52 21.92c-38 144.83-169.31 246-319.25 246a330.71 330.71 0 0 1-306.27-206.82h60.29l-92.78-123.5-91.82 123.5h58.88q1.23 3.72 2.53 7.4A391.65 391.65 0 0 0 511.12 903.5c177.86 0 333.58-120 378.69-291.82a30.73 30.73 0 0 0-21.92-37.52zM153.88 452.57a30.69 30.69 0 0 0 37.35-22.2A329.68 329.68 0 0 1 511.12 182c136.8 0 256.58 82 306.4 207h-60.66l92.78 123.5L941.46 389h-58.58a391.63 391.63 0 0 0-751.2 26.24 30.73 30.73 0 0 0 22.2 37.33z" fill="#ffffff" p-id="4470"></path></svg>
</div>
<div class="filter-button" @click="showSearchInput = !showSearchInput;getAirList();">
<svg t="1750122415214" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4744" width="24" height="24"><path d="M670.528 760.96a384 384 0 1 1 90.496-90.496l180.224 180.288a64 64 0 0 1-90.496 90.496l-180.224-180.224zM448 704a256 256 0 1 0 0-512 256 256 0 0 0 0 512z" fill="#ffffff" p-id="4745"></path></svg>
<svg t="1753254065144" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5562" width="24" height="24"><path d="M434.04236287 44.20741074c47.51347314 0 92.96927639 9.25951509 136.27387809 27.87207697 43.30460299 18.61256188 80.62325584 43.49166377 111.95595854 74.73083609 31.23917361 31.23917361 56.21180589 68.55782644 74.73083736 111.95595983 18.5190302 43.30460299 27.87207697 88.76040496 27.87207569 136.27387809 0 40.77927987-6.64066288 79.87501141-19.92198734 117.19366425-13.28132575 37.31865285-32.26800789 71.27020906-56.77298824 101.66760914l221.38659525 221.10600408c7.48243639 7.48243639 11.22365458 16.74195148 11.22365587 27.6850149 0 11.13012418-3.74121819 20.48317098-11.13012549 27.87207696-7.38890599 7.38890599-16.64842109 11.13012418-27.87207567 11.1301242-10.94306341 0-20.2025785-3.74121819-27.68501619-11.22365458L652.99716667 669.08440543c-30.49092918 24.59851073-64.34895501 43.49166377-101.66760914 56.77298822-37.31865285 13.28132575-76.41438439 19.92198734-117.19366426 19.92198733-47.51347314 0-92.96927639-9.25951509-136.2738781-27.87207695-43.30460299-18.61256188-80.62325584-43.49166377-111.95595853-74.73083608-31.23917361-31.23917361-56.21180589-68.55782644-74.73083738-111.95595854-18.5190302-43.30460299-27.87207697-88.76040496-27.87207697-136.27387808 0-47.51347314 9.25951509-92.87574599 27.87207697-136.2738781 18.61256188-43.30460299 43.49166377-80.62325584 74.73083738-111.95595983 31.23917361-31.23917361 68.55782644-56.21180589 111.95595853-74.73083607 43.30460299-18.5190302 88.66687456-27.77854658 136.1803477-27.77854659z m0 77.91087195c-36.94453129 0-72.29904465 7.20184522-105.97000969 21.60553694-33.67096505 14.40369044-62.75893838 33.85802582-87.07685663 58.17594537s-43.77225494 53.40589159-58.17594537 87.07685663c-14.40369044 33.67096505-21.60553565 69.02547839-21.60553566 105.9700097s7.20184522 72.29904465 21.60553566 105.97000967c14.40369044 33.67096505 33.85802582 62.75893838 58.17594537 87.07685663 24.41144995 24.31791956 53.40589159 43.77225494 87.07685663 58.17594539 33.67096505 14.40369044 69.02547839 21.60553565 105.97000969 21.60553566s72.29904465-7.20184522 105.97000967-21.60553566c33.67096505-14.40369044 62.75893838-33.85802582 87.07685665-58.17594539 24.41144995-24.41144995 43.77225494-53.40589159 58.17594537-87.07685663 14.40369044-33.67096505 21.60553565-69.02547839 21.60553566-105.97000967s-7.20184522-72.29904465-21.60553566-105.9700097c-14.40369044-33.67096505-33.85802582-62.75893838-58.17594537-87.07685663-24.31791956-24.41144995-53.40589159-43.77225494-87.07685665-58.17594537-33.67096505-14.40369044-69.02547839-21.60553565-105.97000967-21.60553694z m0 0" fill="#ffffff" p-id="5563"></path></svg>
</div>
</div>
</div>
@ -61,7 +60,7 @@
<div class="file-container">
<div class="tip">
<div class="info">文件夹</div>
<div @click="createFolder">
<div @click="createFolder" v-show="props.title != '选择航线'">
<FileAddOutlined />
</div>
</div>
@ -77,7 +76,7 @@
>
<template #title="{ data }">
<span @click="folderClick(data)">{{ data.path }}</span>
<span class="tree-node-actions" @click="deleteFolder(data)">
<span class="tree-node-actions" @click="deleteFolder(data)" v-show="props.title != '选择航线'">
<DeleteOutlined />
</span>
</template>
@ -87,7 +86,7 @@
<div class="routers-list">
<div class="tip">
<div class="info">航线{{ariLineCount}}</div>
<div>
<div v-show="props.title != '选择航线'">
<ImportOutlined @click="importAirLine" />
&nbsp;
<PlusOutlined @click="createAirLine" />
@ -102,23 +101,23 @@
<div style="">
<!-- <EditOutlined @click="editLine" /> -->
&nbsp;
<a-dropdown>
<a-dropdown >
<MoreOutlined />
<template #overlay>
<a-menu>
<a-menu-item @click="checkAriLine(item)" >
<a-menu-item @click="checkAriLine(item)" v-if="props.title == '选择航线'">
<a href="javascript:;">选择</a>
</a-menu-item>
<a-menu-item @click="airLineDetail(item)" >
<a-menu-item @click="airLineDetail(item)" v-if="props.title != '选择航线'">
<a href="javascript:;">预览</a>
</a-menu-item>
<a-menu-item @click="toEditAirLine(item)">
<a-menu-item @click="toEditAirLine(item)" v-if="props.title != '选择航线'">
<a href="javascript:;">编辑</a>
</a-menu-item>
<a-menu-item @click="downloadAirLine(item)">
<a-menu-item @click="downloadAirLine(item)" >
<a href="javascript:;">下载</a>
</a-menu-item>
<a-menu-item @click="deletePlan(item.id)">
<a-menu-item @click="deletePlan(item.id)" v-if="props.title != '选择航线'">
<a href="javascript:;">删除</a>
</a-menu-item>
</a-menu>

@ -189,10 +189,10 @@
</a-form>
</div>
<div class="footer-container">
<div>
<a-button @click="resetForm" style="width:100%;">取消</a-button>
<div >
<a-button v-if="!paramValue" @click="resetForm" style="width:100%;"></a-button>
</div>
<div>
<div v-if="submitForm.status == 0">
<a-button style="width:100%;" type="primary" @click="onSubmit"></a-button>
</div>
</div>
@ -204,6 +204,9 @@ import { ref, defineEmits, defineProps, watch } from "vue";
import { PlusOutlined,LeftOutlined,DeleteOutlined,MoreOutlined } from '@ant-design/icons-vue';
import { addTask,editTask } from "@/api/sys/workplan";
import { Modal, message } from 'ant-design-vue';
import { useRoute } from 'vue-router'
const router = useRoute()
const paramValue = router.query.taskid
const formRef = ref();
const labelCol = { span: 24 };
@ -245,7 +248,8 @@ const props = defineProps({
"expectedFileCount": 0,
"uploadedFileCount": 0,
"flightId": null,
"reason": null
"reason": null,
"externalTaskId": null
})
},
"editMode":{
@ -256,8 +260,6 @@ const props = defineProps({
const weekdays = ref([
{
'label':'周日',
@ -369,16 +371,25 @@ const submitForm = ref({
"expectedFileCount": 0,
"uploadedFileCount": 0,
"flightId": null,
"reason": null
"reason": null,
"externalTaskId": null
})
if(props.formData){
submitForm.value = props.formData
console.log("formData",props.formData);
}
watch(
()=> props.formData,
(newVal,oldVal)=>{
submitForm.value = newVal;
},
{
deep:true
}
)
watch(
()=>props.checkedAriLine,
(newVal,oldVal)=>{
@ -502,6 +513,9 @@ const onSubmit =async () => {
message.error("操作失败!");
}
}else{
if(paramValue){
submitForm.value.externalTaskId = paramValue
}
//
let res = await addTask(submitForm.value);
if(res){

@ -930,7 +930,6 @@ const onPolygonGraphicLayerEdit = (e)=>{
// 线
const handlerDrawPolygonLine = (lines) => {
//
let firstAirLinePoint = polygonGraphicLayer.getGraphicById("polygon-node-1");
if(firstAirLinePoint){
@ -957,9 +956,9 @@ const handlerDrawPolygonLine = (lines) => {
},
},
});
polygonGraphicLayer.addGraphic(graphic);
}
//
lines.geometry.coordinates.unshift([

@ -4,8 +4,8 @@
<div style="flex:1;">
工作计划
</div>
<div class="create-button">
<PlusOutlined style="color:#fff;" @click="createWorkPlan(null)" />
<div class="create-button" @click="createWorkPlan(null)" >
<PlusOutlined style="color:#fff;font-size:14px;" />
</div>
</div>
<div class="filter-container">
@ -76,7 +76,7 @@
</div>
<div class="pagenation">
<a-pagination v-model:current="pageQuery.page" :total="lineListTotal" @change="onPageChange" show-less-items />
<a-pagination v-model:current="pageQuery.page" :total="lineListTotal" :defaultPageSize="10" show-less-items @change="onPageChange" />
</div>
</div>
</template>
@ -107,7 +107,7 @@ import { statusOptions } from '@/components/illegalmining/util';
const lineListTotal = ref(0);
const pageQuery = ref({
page:0,
page:1,
limit:10,
status:null,
key:null
@ -263,6 +263,7 @@ import { statusOptions } from '@/components/illegalmining/util';
font-size:10px;
font-weight: bold;
border-radius: 2px;
cursor:pointer;
}
.filter-container{
padding:20px 20px;
@ -287,7 +288,7 @@ import { statusOptions } from '@/components/illegalmining/util';
cursor:pointer;
}
.routers-container{
height: calc( 100% - 160px);
height: calc( 100% - 190px);
overflow-y:auto;
display:flex;
gap:10px;
@ -463,8 +464,17 @@ import { statusOptions } from '@/components/illegalmining/util';
::v-deep .ant-pagination .ant-pagination-item a {
color:#fff!important;
}
::v-deep .ant-pagination .ant-pagination-item-active {
color:#408eff;
background:#313b5b!important;
border-color:#313b5b!important;
}
::v-deep .ant-pagination .ant-pagination-item-active a{
color:#408eff;
background:#313b5b!important;
border-color:#313b5b!important;
}
::v-deep .ant-input{

@ -72,6 +72,11 @@ import axios from 'axios';
import { XMLParser, XMLBuilder } from 'fast-xml-parser';
import { useRoute } from 'vue-router'
const router = useRoute()
const paramValue = router.query.taskid
const airLineForm = ref({
"id": null,
"airLineName": null,
@ -112,6 +117,10 @@ const aircraftShow = ref(false);
const createAirLineShow = ref(false);
const importAirLineShow = ref(true);
if(paramValue){
planListShow.value = false;
workPlanFormShow.value = true;
}
const selectAriLine = ()=> {
ariLineShow.value = true;
aircraftShow.value = false;
@ -223,8 +232,6 @@ const startEditAirLine = (formData,airLineInfo) => {
// 线
const planDetail =async (item) => {
formData.value = item;
console.log("formData",formData.value?.airLineId);
let info =await getAirLine({airLineId : formData.value?.airLineId});
if(info){
// wayline.value = line;

Loading…
Cancel
Save