站点
This commit is contained in:
parent
b69b0aa27a
commit
fca0a4a3fe
@ -1,45 +1,44 @@
|
||||
<template>
|
||||
<scroll-view class="divForm" :style="{height}" scroll-y show-scrollbar>
|
||||
<uni-forms ref="formRef" :label-width="100">
|
||||
<uni-forms-item label="站点名称" required>
|
||||
<uni-forms ref="formRef" :model="formData" :label-width="100">
|
||||
<uni-forms-item label="站点名称" name="name" required :rules="[{'required': true,errorMessage: '请填写站点名称'}]">
|
||||
<uni-easyinput v-model="formData.name" />
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="站点类型:" required>
|
||||
<uni-forms-item label="站点类型:" name="zdlx" required :rules="[{'required': true,errorMessage: '请选择站点类型'}]">
|
||||
<uni-data-select v-model="formData.zdlx" :localdata="arrZDLX" />
|
||||
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="站点级别:" required>
|
||||
<uni-forms-item label="站点级别:" name="zdjb" required :rules="[{'required': true,errorMessage: '请选择站点级别'}]">
|
||||
<div class="divRow">
|
||||
<uni-data-checkbox v-model="formData.zdjb" :localdata="arrZDJB" />
|
||||
</div>
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="调度投放:" required>
|
||||
<!-- <uni-forms-item label="调度投放:" name="ddtf" required :rules="[{'required': true,errorMessage: '请选择调度投放'}]">
|
||||
<div class="divRow">
|
||||
<uni-data-checkbox v-model="formData.ddtf" :localdata="arrDDTF" />
|
||||
</div>
|
||||
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="用户端显示:" required>
|
||||
<uni-forms-item label="用户端显示:" name="zdxs" required :rules="[{'required': true,errorMessage: '请选择用户端显示'}]">
|
||||
<div class="divRow">
|
||||
<uni-data-checkbox v-model="formData.zdxs" :localdata="arrZDXS" />
|
||||
<label style="margin-left: 10px;" @click="showTip('开启后在用户端小程序地图上不会显示站点,但不影响用户在该站点范围内还车')">
|
||||
<uni-icons type="info" size="20" color="#5892E3" /></label>
|
||||
</div>
|
||||
<!-- <div class="divRow" style="font-size: 12px;">用户端站点隐藏显示</div> -->
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="可停车辆:" required>
|
||||
</div>
|
||||
</uni-forms-item>-->
|
||||
<uni-forms-item label="可停车辆:" name="ktcl" required :rules="[{'required': true,errorMessage: '请填写可停车辆'}]">
|
||||
<div class="divRow">
|
||||
<uni-easyinput v-model="formData.ktcl" />
|
||||
<label>辆</label>
|
||||
</div>
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="最大可停:" required>
|
||||
<uni-forms-item label="最大可停:" name="zdkt" required :rules="[{'required': true,errorMessage: '请填写最大可停'}]">
|
||||
<div class="divRow">
|
||||
<uni-easyinput v-model="formData.zdkt" />
|
||||
<label>辆</label>
|
||||
</div>
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="还车半径:">
|
||||
<uni-forms-item label="还车半径:" >
|
||||
<div class="divRow">
|
||||
<uni-easyinput v-model="formData.hcbj" />
|
||||
<label>米</label>
|
||||
@ -52,7 +51,7 @@
|
||||
</div>
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="站点描述:">
|
||||
<uni-easyinput opentype="textarea" v-model="formData.zdms" />
|
||||
<uni-easyinput type="textarea" v-model="formData.zdms" />
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="站点标签:">
|
||||
<uni-data-checkbox mode="button" multiple v-model="formData.zdbq" :localdata="arrZDBQ" />
|
||||
@ -158,7 +157,8 @@
|
||||
}
|
||||
if (type == "edit") {
|
||||
const id = formData.value.id;
|
||||
const points = JSON.stringify(arrPoint);
|
||||
//const points = JSON.stringify(arrPoint);
|
||||
const points='[{"latitude":30.571833529690217,"longitude":104.06370857334673},{"latitude":30.571476489584985,"longitude":104.06382896516845},{"latitude":30.571211588676054,"longitude":104.0681363214153},{"latitude":30.571845047283958,"longitude":104.06805606033697},{"latitude":30.571833529690217,"longitude":104.06370857334673}]';
|
||||
uni.navigateTo({
|
||||
url: `/pages/map/map-bikesite?type=edit&id=${id}&points=${points}&k=${Date.now()}`
|
||||
})
|
||||
@ -166,9 +166,10 @@
|
||||
}
|
||||
|
||||
function SaveData() {
|
||||
debugger;
|
||||
formRef.value.validate().then(res=>{
|
||||
console.log("66666666666666666666666666666",res);
|
||||
}).catch(res=>{
|
||||
console.log("7777777777777777777777",res);
|
||||
})
|
||||
}
|
||||
|
||||
@ -230,9 +231,9 @@
|
||||
padding: 10px 10px;
|
||||
}
|
||||
|
||||
.divForm /deep/ .uni-forms-item {
|
||||
/* .divForm /deep/ .uni-forms-item {
|
||||
margin-bottom: 10px !important;
|
||||
}
|
||||
} */
|
||||
|
||||
.divFontColor {
|
||||
color: #606266;
|
||||
@ -252,7 +253,7 @@
|
||||
|
||||
.divBottom {
|
||||
position: absolute;
|
||||
bottom: 0px;
|
||||
bottom: 10px;
|
||||
background-color: white;
|
||||
padding: 10px;
|
||||
display: flex;
|
||||
|
||||
@ -113,10 +113,10 @@
|
||||
const selDraw = ref("1");
|
||||
const drawId = 10000000;
|
||||
const drawColor = "#e58b04";
|
||||
const drawFillColor = "rgba(229,139,4,0.1)";
|
||||
const drawFillColor = "#e58b041a";
|
||||
const height = ref("100vh");
|
||||
const opentype = ref("add"); //打开类型
|
||||
const editId = ""; //编辑ID
|
||||
let editId = ""; //编辑ID
|
||||
|
||||
//缩放
|
||||
function onZoom(type) {
|
||||
@ -143,7 +143,8 @@
|
||||
latitude,
|
||||
longitude
|
||||
} = drawPoint[0];
|
||||
circles.value[circles.value.length-1] = map.addCirle(drawColor, drawFillColor, longitude, latitude, radius.value);
|
||||
circles.value[circles.value.length - 1] = map.addCirle(drawColor, drawFillColor, longitude, latitude, radius
|
||||
.value);
|
||||
}
|
||||
|
||||
//切换绘制类型
|
||||
@ -213,10 +214,12 @@
|
||||
//绘制圆形
|
||||
function drawCircle(latitude, longitude) {
|
||||
const circle = map.addCirle(drawColor, drawFillColor, longitude, latitude, radius.value);
|
||||
const marker = map.addMarker(drawId, longitude, latitude, "point.png");
|
||||
if (drawPoint.length > 0) {
|
||||
circles.value[circles.value.length - 1] = circle;
|
||||
markers.value[markers.value.length - 1] = markers;
|
||||
} else {
|
||||
const marker = map.addMarker(drawId, longitude, latitude, "point.png");
|
||||
|
||||
markers.value.push(marker);
|
||||
circles.value.push(circle);
|
||||
}
|
||||
@ -297,10 +300,11 @@
|
||||
}
|
||||
|
||||
function loadOperation(callback) {
|
||||
console.log("666666666666666666666", "行政区划", zoneId)
|
||||
console.log("666666666666666666666", "行政区划", zoneId);
|
||||
|
||||
map.getOperation(zoneId, (res) => {
|
||||
if (!res) {
|
||||
callback();
|
||||
if(callback) callback();
|
||||
return;
|
||||
}
|
||||
const {
|
||||
@ -310,7 +314,7 @@
|
||||
arrData
|
||||
} = res;
|
||||
if (arrRegionID.length == 0) {
|
||||
callback();
|
||||
if(callback) callback();
|
||||
return;
|
||||
}
|
||||
|
||||
@ -321,6 +325,7 @@
|
||||
};
|
||||
|
||||
map.getRegionData(arrRegionID, (res) => {
|
||||
console.log("11111111111getRegionData",res);
|
||||
const {
|
||||
arrData,
|
||||
arrCircles: arrCircles_region,
|
||||
@ -344,7 +349,7 @@
|
||||
arrMarker.push(map.addMarker(len + index, lng, lat, "bikesite.png"));
|
||||
});
|
||||
|
||||
arrPolygons.map((item, index) => {
|
||||
arrPolygons_region.map((item, index) => {
|
||||
const {
|
||||
points
|
||||
} = item;
|
||||
@ -358,7 +363,7 @@
|
||||
|
||||
markers.value = arrMarker;
|
||||
showMapSite(showRegion.value);
|
||||
callback();
|
||||
if(callback) callback();
|
||||
})
|
||||
})
|
||||
}
|
||||
@ -389,30 +394,40 @@
|
||||
arrCirclesData,
|
||||
arrPolygonsData
|
||||
} = regionData;
|
||||
const arrEditC=[];
|
||||
const arrEditP=[];
|
||||
if (showSite) {
|
||||
if (editId) {
|
||||
if (editId) { //编辑
|
||||
const obj = {
|
||||
regionid: editId
|
||||
};
|
||||
console.log("9999999999999999999999", arrCirclesData, arrPolygonsData);
|
||||
console.log("9999999999999999999999arrCirclesData, arrPolygonsData", arrCirclesData, arrPolygonsData);
|
||||
let index = findIndex(arrCirclesData, obj);
|
||||
|
||||
if (index > -1) {
|
||||
const {latitude,longitude}=arrCircles_region[index];
|
||||
arrCirclesData.splice(index, 1);
|
||||
arrCircles_region.splice(index, 1);
|
||||
arrEditC.push(map.addCirle(drawColor,drawFillColor,longitude,latitude,radius.value));
|
||||
} else {
|
||||
index = findIndex(arrPolygonsData, obj);
|
||||
arrPolygonsData.splice(index, 1);
|
||||
arrPolygons_region.splice(index, 1);
|
||||
if(index>-1){
|
||||
const {points:arrPoint}=arrPolygons_region[index];
|
||||
arrPolygonsData.splice(index, 1);
|
||||
arrPolygons_region.splice(index, 1);
|
||||
arrEditP.push(map.addPolygon(drawColor,drawFillColor,arrPoint))
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
polygons.value = [...arrPolygons, ...arrPolygons_region];
|
||||
circles.value = [...arrCircles, ...arrCircles_region];
|
||||
polygons.value = [...arrPolygons, ...arrPolygons_region,...arrEditP];
|
||||
circles.value = [...arrCircles, ...arrCircles_region,...arrEditC];
|
||||
} else {
|
||||
polygons.value = arrPolygons;
|
||||
circles.value = arrCircles;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
function defualtZoom() {
|
||||
if (polygons.value.length == 0) return;
|
||||
@ -426,17 +441,7 @@
|
||||
|
||||
//加载数据
|
||||
function loadData() {
|
||||
|
||||
showRegion.value = false;
|
||||
|
||||
loadOperation(() => {
|
||||
switch (opentype.value) {
|
||||
case "add":
|
||||
case "edit":
|
||||
showRegion.value = true;
|
||||
showDraw.value = true;
|
||||
break;
|
||||
}
|
||||
showMapSite(showRegion.value);
|
||||
if (isload) {
|
||||
defualtZoom();
|
||||
@ -454,6 +459,7 @@
|
||||
});
|
||||
|
||||
onLoad(options => {
|
||||
console.log("33333333333333333","options",options)
|
||||
let title = "站点地图";
|
||||
const {
|
||||
type,
|
||||
@ -472,9 +478,13 @@
|
||||
switch (type) {
|
||||
case "add":
|
||||
title = "新建站点";
|
||||
showRegion.value = true;
|
||||
showDraw.value = true;
|
||||
break;
|
||||
case "edit":
|
||||
title = "编辑站点";
|
||||
showRegion.value = true;
|
||||
showDraw.value = true;
|
||||
break;
|
||||
}
|
||||
getScreenHeightNoTabBar(res => {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user