徐景良 2023-10-08 16:17:52 +08:00
commit e62c13fca0
11 changed files with 665 additions and 533 deletions

View File

@ -1,5 +1,5 @@
{
"method":"pingyixian",
"method":"feixian",
"gaodeApi": "4f992c089f9496201f6e4ea39ff3ab60",
"pingyixian":{

View File

@ -114,7 +114,7 @@
"name": "最新高清影像",
"type": "wms",
"url": "http://175.27.168.120:8080/geoserver/feixian/wms",
"layers": "feixian:yingxiang",
"layers": "feixian:yingxiang2023",
"crs": "EPSG:4326",
"parameters": {
"transparent": "true",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@ -31,7 +31,7 @@ html #layuicss-layer {
background-color: #fff;
-webkit-background-clip: content;
border-radius: 2px;
box-shadow: 1px 1px 50px rgba(0, 0, 0, .3)
box-shadow: 1px 1px 50px rgba(0, 0, 0, .3);
}
.layui-layer-close {

View File

@ -16,7 +16,7 @@
//此数据也可以放在widget.json的配置中但是发现很多人容易引起同名误解所以还是放在这里
this.data = this.config.data || [
// { name: "底图", icon: "fa fa-map", widget: "widgets/manageBasemaps/widget.js" },
{ name: "图层", icon: "fa fa-tasks", widget: "widgets/manageLayers/widget.js" },
{ name: "图层", icon: "fa fa-tasks", widget: "widgets/manageLayers/widget.js"},
{
name: "工具",
icon: "fa fa-cubes",

View File

@ -129,6 +129,11 @@ export default {
user-select: none; /* 标准语法 */
}
#app{
width:100vw;
height:100vh;
overflow: hidden;
}
.flex {
display: flex;

File diff suppressed because it is too large Load Diff

View File

@ -14,13 +14,13 @@ export default {
return {
map: null,
clockInList: [],
markerArr:[]
markerArr: [],
};
},
watch: {
rowkey: function (e) {
console.log('123',e)
this.getClockInList()
console.log("123", e);
this.getClockInList();
},
lnglat: function (e) {},
flyCenter: function (e) {
@ -45,13 +45,13 @@ export default {
getMethodCommon("/FireGrid/GetTotalCheckPoint").then((res) => {
this.clockInList = res.result;
for (var i = this.markerArr.length - 1; i >= 0; i--) {
this.markerArr[i].remove();
this.markerArr[i].remove();
}
this.addPointLayer();
});
},
addPointLayer() {
let _this = this
let _this = this;
this.clockInList.forEach((item) => {
console.log("iii", item);
let el = document.createElement("img"); //
@ -59,15 +59,19 @@ export default {
el.src = "/img/dakadian.png"; //
el.style.width = "40px";
// el.onclick = function(){
// console.log('123item',item)
// _this.$emit("editClock",item)
// }
console.log(item)
const popup = new mapboxgl.Popup({ offset: 25 }).setHTML(`${item.pointname }<br />${item.usernames}`);
//
let marker = new mapboxgl.Marker(el).setLngLat([item.lng, item.lat]).addTo(this.map);
this.markerArr.push(marker)
let marker = new mapboxgl.Marker(el)
.setLngLat([item.lng, item.lat])
.setPopup(popup)
.addTo(this.map);
marker
this.markerArr.push(marker);
});
},
initMap(url, jwd) {
@ -85,14 +89,17 @@ export default {
this.loadMengban();
this.loadZhenJieLayer();
this.loadXianJieLayer();
this.getClockInList();
});
this.map.on("click", (e) => {
this.$emit("getLocation", e);
});
this.map.on("contextmenu", (e) => {
this.$emit("rightClick", e);
});
},
loadMengban() {
this.map.addLayer({
// //

View File

@ -62,11 +62,6 @@
<div class="map-container" id="mapContainer"></div>
<div class="grider-list-container" v-if="userListContainer">
<div class="grid-info-contianer">
<p>名称东蒙镇</p>
<p>名称类型</p>
<p>督察长徐景良</p>
</div>
<div class="grid-list-box">
<div
class="grider-list-item"
@ -86,10 +81,13 @@
<el-input v-model="item.workunit"></el-input>
</el-form-item>
<el-form-item label="防火职务:" prop="households">
<el-input v-model="item.fireduties"></el-input>
<el-radio v-model="item.fireduties" label="县级包保领导"></el-radio>
<el-radio v-model="item.fireduties" label=""></el-radio>
</el-form-item>
<el-form-item label="督察职务:" prop="households">
<el-input v-model="item.supervision"></el-input>
<el-radio v-model="item.supervision" label="督查长"></el-radio>
<el-radio v-model="item.supervision" label="副督查长"></el-radio>
<el-radio v-model="item.supervision" label=""></el-radio>
</el-form-item>
</el-form>
<div style="height: 40px">
@ -195,7 +193,7 @@ export default {
);
},
deleteUser(id) {
postMethodCommon("/FireGrid/DeleteInspectors", { id: id }).then((res) => {
postMethodCommon("/FireGrid/DeleteInspectors?id="+id).then((res) => {
if (res.code == 200) {
this.$message({
type: "success",
@ -206,15 +204,21 @@ export default {
});
},
saveUser(item) {
console.log("item", item);
item.id = 0;
let api_url = null;
if(!item.id){
item.id = 0;
api_url = "/FireGrid/AddInspector";
}else{
api_url="/FireGrid/EditInspectors";
}
item.townid = [this.currentStreetId];
postMethodCommon("/FireGrid/AddInspector", item).then((res) => {
postMethodCommon(api_url, item).then((res) => {
if (res.code == 200) {
this.$message({
type: "success",
message: "添加成功!",
message: "保存成功!",
});
this.getUserlist(this.currentStreetId);
}
});
},
@ -441,7 +445,7 @@ export default {
.grid-list-box {
width: 100%;
height: calc(100% - 135px);
height: calc(100% - 15px);
overflow: auto;
}

View File

@ -126,8 +126,12 @@
</goodsbox>
</div>
<!-- 水源 -->
<div class="goods-container" v-if="waterVisible" v-drag>
<waterbox :waterCenter="waterCenter" :firePopup="firePopupClosed" @close="waterVisible = false"></waterbox>
<div class="water-container" v-if="waterVisible" v-drag>
<waterbox
:waterCenter="waterCenter"
:firePopup = "firePopupClosed"
@close="waterVisible = false"
></waterbox>
</div>
<!-- 网格化管理 -->
@ -443,7 +447,7 @@ export default {
},
immediate: true
},
goodsVisible: {
goodsVisible:{
handler(newVal, oldVal) {
if (!newVal) {
clearRouterFunc()
@ -1237,6 +1241,11 @@ export default {
</script>
<style scoped>
.mapcontainer{
width:100vw;
height:100vh;
overflow: hidden;
}
.el-header {
width: 100%;
height: 90px;
@ -1451,7 +1460,19 @@ export default {
left: 20px;
background-image: url(/img/goods.png);
background-size: 100% 100%;
transform: translate(0, -50%);
transform: translate(0, 0);
z-index: 2000;
}
.water-container{
width: 603px;
height: 457px;
position: absolute;
top: 100px;
left: 20px;
background-image: url(/img/goods.png);
background-size: 100% 100%;
transform: translate(0, 0);
z-index: 2000;
}

View File

@ -110,7 +110,8 @@ export const getRouterByGD = (params) => {
origin: `${gcj02StartLngLat[0]},${gcj02StartLngLat[1]}`,
destination: `${gcj02EndLngLat[0]},${gcj02EndLngLat[1]}`,
show_fields: 'polyline',
key: GD_KEY
key: GD_KEY,
strategy:2
}
let new_url = urls.getUrl(GD_URL, gd_params)
return new Promise((resolve, reject) => {
@ -210,9 +211,9 @@ export const drawRouterFunc = (pathObject) => {
pathGraphicLayers.addGraphic(endPathGraphic);
} else {
// 导航数据路段
// let gdPathGraphic = drawLineFlowEntity(gdRoute, 'YELLOW',10)
// let postgisPathGraphic = drawLineFlowEntity(postGisRoute, 'RED',10)
let pathGraphic = drawLineFlowEntity(allCoordinates, 'CYAN')
let gdPathGraphic = drawLineFlowEntity(gdRoute, 'YELLOW')
let postgisPathGraphic = drawLineFlowEntity(postGisRoute, 'YELLOW')
//开始的路段
let startPathGraphic = drawPolylineDashEntity([startLngLat, startRouterLngLat], 'YELLOW')
@ -220,20 +221,20 @@ export const drawRouterFunc = (pathObject) => {
//结尾的路段
let endPathGraphic = drawPolylineDashEntity([endRouterLngLat, endLngLat], 'YELLOW')
pathGraphicLayers.addGraphic(pathGraphic);
// pathGraphicLayers.addGraphic(gdPathGraphic);
// pathGraphicLayers.addGraphic(postgisPathGraphic);
pathGraphicLayers.addGraphic(pathGraphic);
pathGraphicLayers.addGraphic(startPathGraphic);
pathGraphicLayers.addGraphic(endPathGraphic);
}
}
// 生成虚线实体
const drawPolylineDashEntity = (positions, cesiumColor) => {
const drawPolylineDashEntity = (positions, cesiumColor,width=5) => {
return new mars3d.graphic.PolylineEntity({
positions: positions,
style: {
width: 5,
width: width,
clampToGround: true,
materialType: mars3d.MaterialType.PolylineDash,
materialOptions: {
@ -244,11 +245,11 @@ const drawPolylineDashEntity = (positions, cesiumColor) => {
});
}
// 生成动态线实体
const drawLineFlowEntity = (positions, cesiumColor) => {
const drawLineFlowEntity = (positions, cesiumColor,width=5) => {
return new mars3d.graphic.PolylineEntity({
positions: positions,
style: {
width: 5,
width: width,
clampToGround: true,
materialType: mars3d.MaterialType.LineFlow,
materialOptions: {
@ -307,6 +308,7 @@ const getMinimumRoute = (pathObject) => {
let lastOverlapPoint = overlapping.features.at(-1).geometry.coordinates[0]
let [overlapGdCoordinates, overlapPostGisCoordinates] = sliceByPoint(startRouterLngLat, gdRouteLine, endRouterLngLat, postGisRoute, lastOverlapPoint)
allCoordinates = overlapGdCoordinates.concat(overlapPostGisCoordinates)
// 连接路段平滑过渡
}
}