Browse Source

🌁 修复登录加载页面卡死情况,进不去登录页面

master
wangxiang 3 years ago
parent
commit
21e8e8573f
  1. 67
      kicc-ui/src/components/AMap/src/Amap.vue

67
kicc-ui/src/components/AMap/src/Amap.vue

@ -29,7 +29,7 @@
/> />
</AFormItem> </AFormItem>
<AFormItem label="起点"> <AFormItem label="起点">
<ASelect v-model:value="mapState.modelRef.takeSpecimenId" :options="[]"/> <ASelect v-model:value="mapState.modelRef.takeSpecimenId" :options="mapState.takeSpecimenList"/>
</AFormItem> </AFormItem>
<AFormItem label="途径点"> <AFormItem label="途径点">
<ASelect v-model:value="mapState.modelRef.smallHospitalId" <ASelect v-model:value="mapState.modelRef.smallHospitalId"
@ -82,7 +82,8 @@
largeHospitalId: '', largeHospitalId: '',
smallHospitalId: '', smallHospitalId: '',
takeSpecimenId: '' takeSpecimenId: ''
} },
takeSpecimenList: []
}); });
const AForm = Form; const AForm = Form;
const AFormItem = Form.Item; const AFormItem = Form.Item;
@ -289,6 +290,20 @@
})); }));
takeSpecimenCluster?.setData(specimenPoints); takeSpecimenCluster?.setData(specimenPoints);
//
scanTakeSpecimenCircleRange = new AMap.Circle({
radius: 10000,
borderWeight: 3,
strokeColor: '#3600ff',
strokeOpacity: 0.2,
strokeWeight: 6,
fillOpacity: 0.4,
strokeStyle: 'dashed',
strokeDasharray: [8, 8],
fillColor: '#1791fc',
zIndex: 50
});
// 线 // 线
const driving = new AMap.Driving({ const driving = new AMap.Driving({
map: map, map: map,
@ -350,40 +365,26 @@
// //
const smallHospitalMap = smallHospitalMapList.find(item => item.id == value); const smallHospitalMap = smallHospitalMapList.find(item => item.id == value);
if (smallHospitalMap) { if (smallHospitalMap) {
// 20,, map.remove(scanTakeSpecimenCircleRange || {});
map.remove(scanTakeSpecimenCircleRange);
//
scanTakeSpecimenCircleRange = new AMap.Circle({
radius: 8000,
borderWeight: 3,
strokeColor: '#3600ff',
strokeOpacity: 0.2,
strokeWeight: 6,
fillOpacity: 0.4,
strokeStyle: 'dashed',
strokeDasharray: [8, 8],
fillColor: '#1791fc',
zIndex: 50
});
scanTakeSpecimenCircleRange.setCenter([smallHospitalMap.lng, smallHospitalMap.lat]); scanTakeSpecimenCircleRange.setCenter([smallHospitalMap.lng, smallHospitalMap.lat]);
map.add(scanTakeSpecimenCircleRange); map.add(scanTakeSpecimenCircleRange);
map.setFitView([ scanTakeSpecimenCircleRange ]); map.setFitView([ scanTakeSpecimenCircleRange ]);
// const smallHospitalMarker = new AMap.Marker({
const gatherCircleRangeSpecimen = []; position: [smallHospitalMap.lng, smallHospitalMap.lat],
for (let i = 0; i < smallHospitalMapList.length; ++i) { });
const smallHospitalMap = smallHospitalMapList[i]; const smallHospitalPosition = smallHospitalMarker.getPosition();
const specimenLngLat = new AMap.LngLat(smallHospitalMap.lng, smallHospitalMap.lat); //
if (scanTakeSpecimenCircleRange.contains(specimenLngLat)) { const optimalSpecimen = specimenMapList.sort((firstEl, secondEl) => {
console.log('查找到'); const marker1 = new AMap.Marker({
} else { position: [firstEl.lng, firstEl.lat],
console.log('没有查找到'); }),marker2 = new AMap.Marker({
} position: [secondEl.lng, secondEl.lat],
} });
const position1 = marker1.getPosition(),
position2 = marker2.getPosition();
return Math.round(smallHospitalPosition.distance(position1)) - Math.round(smallHospitalPosition.distance(position2));
});
mapState.takeSpecimenList = optimalSpecimen.map(item => ({ value: item.id, label: item.title }));
} else { } else {
throw '查找不到发单点数据,请检查发单点!'; throw '查找不到发单点数据,请检查发单点!';
} }

Loading…
Cancel
Save