Commit a9f89a94 authored by xulihui's avatar xulihui

大屏气量监管

parent 492c21fb
......@@ -6,12 +6,18 @@ import com.zehong.common.core.domain.AjaxResult;
import com.zehong.common.core.page.TableDataInfo;
import com.zehong.common.enums.BusinessType;
import com.zehong.common.utils.poi.ExcelUtil;
import com.zehong.system.domain.Statistics;
import com.zehong.system.domain.TSupBalGasSup;
import com.zehong.system.service.ITSupBalGasSupService;
import com.zehong.system.service.ITTroubleStandingBookService;
import com.zehong.web.controller.tool.TimeConfig;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 供需平衡-气量监管Controller
......@@ -37,6 +43,40 @@ public class TSupBalGasSupController extends BaseController
return getDataTable(list);
}
/**
* 气量监管统计
*/
@GetMapping("/tSupBalGasSupStatistics")
public AjaxResult tSupBalGasSupStatistics()
{
List<Statistics> list=new ArrayList<>();
//生成近7天数据
List<String> sevenDate = TimeConfig.getSevenDate();
//查询统计日期和数量
List<Statistics> statistics = tSupBalGasSupService.tSupBalGasSupStatistics(sevenDate);
Map<String, List<Statistics>> collect = statistics.stream().collect(Collectors.groupingBy(e -> e.getDate()));
for (String s : sevenDate) {
List<Statistics> statistics1 = collect.get(s);
Statistics statisticsn=new Statistics();
if(statistics1!=null && statistics1.size()>0){
statisticsn.setCount(statistics1.get(0).getCount());
statisticsn.setCount1(statistics1.get(0).getCount1());
statisticsn.setCount2(statistics1.get(0).getCount2());
statisticsn.setCount3(statistics1.get(0).getCount3());
}else{
statisticsn.setCount(0);
statisticsn.setCount1(0);
statisticsn.setCount2(0);
statisticsn.setCount3(0);
}
statisticsn.setDate(s);
list.add(statisticsn);
}
return AjaxResult.success(list);
}
/**
* 导出供需平衡-气量监管列表
*/
......
......@@ -12,5 +12,11 @@ public class Statistics {
private int count;
private int count1;
private int count2;
private int count3;
private String date;
}
......@@ -2,6 +2,8 @@ package com.zehong.system.mapper;
import java.util.List;
import java.util.Map;
import com.zehong.system.domain.Statistics;
import com.zehong.system.domain.TSupBalGasSup;
/**
......@@ -28,6 +30,8 @@ public interface TSupBalGasSupMapper
*/
public List<TSupBalGasSup> selectTSupBalGasSupList(TSupBalGasSup tSupBalGasSup);
public List<Statistics> tSupBalGasSupStatistics(List<String> sevenDate);
/**
* 新增供需平衡-气量监管
*
......
package com.zehong.system.service;
import java.util.List;
import com.zehong.system.domain.Statistics;
import com.zehong.system.domain.TSupBalGasSup;
/**
......@@ -27,6 +29,9 @@ public interface ITSupBalGasSupService
*/
public List<TSupBalGasSup> selectTSupBalGasSupList(TSupBalGasSup tSupBalGasSup);
public List<Statistics> tSupBalGasSupStatistics(List<String> sevenDate);
/**
* 新增供需平衡-气量监管
*
......
......@@ -7,6 +7,7 @@ import java.util.Map;
import com.zehong.common.utils.DateUtils;
import com.zehong.common.utils.SecurityUtils;
import com.zehong.system.domain.Statistics;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zehong.system.mapper.TSupBalGasSupMapper;
......@@ -49,6 +50,12 @@ public class TSupBalGasSupServiceImpl implements ITSupBalGasSupService
return tSupBalGasSupMapper.selectTSupBalGasSupList(tSupBalGasSup);
}
@Override
public List<Statistics> tSupBalGasSupStatistics(List<String> sevenDate)
{
return tSupBalGasSupMapper.tSupBalGasSupStatistics(sevenDate);
}
/**
* 新增供需平衡-气量监管
*
......
......@@ -58,6 +58,29 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="enterpriseName != null and enterpriseName != ''"> and en.enterprise_name like concat('%', #{enterpriseName}, '%')</if>
</where>
</select>
<!--查询统计信息-->
<select id="tSupBalGasSupStatistics" resultType="com.zehong.system.domain.Statistics">
SELECT
SUM(f_plan_quan) as 'count',
SUM(f_appr_quan) as 'count1',
SUM(f_sup_gas_vol) as 'count2',
SUM(f_storage_vol) as 'count3',
DATE_FORMAT( f_rep_date, '%Y-%m-%d' ) AS date
FROM
t_sup_bal_gas_sup
WHERE
is_del='0'
and
DATE_FORMAT( f_rep_date, '%Y-%m-%d' ) IN
<foreach collection="list" item="sevenDate" separator="," open="(" close=")">
#{sevenDate}
</foreach>
GROUP BY
DATE_FORMAT( f_rep_date, '%Y-%m-%d' )
ORDER BY
DATE_FORMAT( f_rep_date, '%Y-%m-%d' ) DESC;
</select>
<select id="selectTSupBalGasSupById" parameterType="Long" resultMap="TSupBalGasSupResult">
<include refid="selectTSupBalGasSupVo"/>
......
......@@ -24,6 +24,15 @@ export function getYHZZ(query) {
params: query
})
}
// 气量监管统计接口
export function getQLJG(query) {
return request({
url: '/supplyBalance/gas/tSupBalGasSupStatistics',
method: 'get',
params: query
})
}
// 燃气用户统计接口
export function getYHTJ(query) {
return request({
......
......@@ -118,7 +118,7 @@
<div class="fong-div" style="margin-left: 3px;"></div>
<div class="fong-div" style="margin-left: 3px;"></div> -->
<span style="letter-spacing: 1px; color: #fff; float: right">
隐患分析
气量监管
</span>
<!-- <img src="../../assets/second1/ti-bg.png" alt=""> -->
<div class="rightline3"></div>
......@@ -144,7 +144,7 @@ import { selectWorkOrderNum } from "@/api/operationMonitor/order";
// require("echarts/lib/component/title");
// let echarts = this.$echarts;
import { getSGSL, getYHZZ, getYHTJ } from "@/api/bigWindow/charsData.js";
import { getQLJG,getSGSL, getYHZZ, getYHTJ } from "@/api/bigWindow/charsData.js";
export default {
data() {
......@@ -216,7 +216,7 @@ export default {
async getLineChats() {
// getSGSL,getYHZZ
await getSGSL().then((res) => {
/*await getSGSL().then((res) => {
console.log("aaa", res);
this.datanow.date = res.data.map((item) => item.date).reverse();
this.datanow.shigu1 = res.data.map((item) => item.count).reverse();
......@@ -224,6 +224,14 @@ export default {
await getYHZZ().then((res) => {
console.log("bbb", res);
this.datanow.shigu2 = res.data.map((item) => item.count).reverse();
});*/
await getQLJG().then((res) => {
console.log("CCC", res);
this.datanow.date = res.data.map((item) => item.date).reverse();
this.datanow.shigu1 = res.data.map((item) => item.count).reverse();
this.datanow.shigu2 = res.data.map((item) => item.count1).reverse();
this.datanow.shigu3 = res.data.map((item) => item.count2).reverse();
this.datanow.shigu4 = res.data.map((item) => item.count3).reverse();
});
this.drawLine(this.datanow);
},
......@@ -484,7 +492,7 @@ export default {
},
series: [
{
name: "事故数量",
name: "计划量",
data: data.shigu1,
type: "line",
smooth: true,
......@@ -502,7 +510,7 @@ export default {
data: data.shigu2,
type: "line",
smooth: true,
name: "隐患整治数",
name: "批复量",
areaStyle: {
normal: {
// 渐变填充色(线条下半部分)
......@@ -513,6 +521,36 @@ export default {
},
},
},
{
data: data.shigu3,
type: "line",
smooth: true,
name: "供气量",
areaStyle: {
normal: {
// 渐变填充色(线条下半部分)
color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ offset: 0, color: "#d630dc" },
{ offset: 1, color: "#91cc7500" },
]),
},
},
},
{
data: data.shigu4,
type: "line",
smooth: true,
name: "储存量",
areaStyle: {
normal: {
// 渐变填充色(线条下半部分)
color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ offset: 0, color: "#f38e0d" },
{ offset: 1, color: "#91cc7500" },
]),
},
},
},
// {
// data: data.shigu3,
// type: "line",
......
......@@ -175,29 +175,29 @@ export class EditorMap {
const detectorUserHas = this.selarr.indexOf(6) >= 0;
if (detectorUserHas) {
this.detectorUserlabelsLayer.show();
}
}
}
//商业用户
if (this.businessDetectorUserlabelsLayer != null) {
const businessDetectorUserHas = this.selarr.indexOf(61) >= 0;
if (businessDetectorUserHas) {
this.businessDetectorUserlabelsLayer.show();
}
}
}
// 调压箱
if (this.tyxlabelsLayer != null) {
const tyxHas = this.selarr.indexOf(2) >= 0;
if (tyxHas) {
this.tyxlabelsLayer.show();
}
}
}
// 阀门井
if (this.fmjlabelLayer != null) {
const fmjHas = this.selarr.indexOf(3) >= 0;
if (fmjHas) {
this.fmjlabelLayer.show();
}
}
}
// 场站
......@@ -205,7 +205,7 @@ export class EditorMap {
const czHas = this.selarr.indexOf(4) >= 0;
if (czHas) {
this.czlabelLayer.show();
}
}
}
// 监控
......@@ -213,7 +213,7 @@ export class EditorMap {
const videoHas = this.selarr.indexOf(5) >= 0;
if (videoHas) {
this.videolabelLayer.show();
}
}
}
// 餐饮单位液化气用户
......@@ -221,7 +221,7 @@ export class EditorMap {
const deviceUserHas = this.selarr.indexOf(18) >= 0;
if (deviceUserHas) {
this.deviceUserlableLayer.show();
}
}
}
});
this.map.on("movestart",()=>{
......@@ -232,7 +232,7 @@ export class EditorMap {
const detectorUserHas = this.selarr.indexOf(6) >= 0;
if (detectorUserHas) {
this.detectorUserlabelsLayer.hide();
}
}
}
//商业用户
......@@ -240,15 +240,15 @@ export class EditorMap {
const businessDetectorUserHas = this.selarr.indexOf(61) >= 0;
if (businessDetectorUserHas) {
this.businessDetectorUserlabelsLayer.hide();
}
}
}
// 调压箱
if (this.tyxlabelsLayer != null) {
const tyxHas = this.selarr.indexOf(2) >= 0;
if (tyxHas) {
this.tyxlabelsLayer.hide();
}
}
}
// 阀门井
......@@ -256,31 +256,31 @@ export class EditorMap {
const fmjHas = this.selarr.indexOf(3) >= 0;
if (fmjHas) {
this.fmjlabelLayer.hide();
}
}
}
// 场站
if (this.czlabelLayer != null) {
const czHas = this.selarr.indexOf(4) >= 0;
if (czHas) {
this.czlabelLayer.hide();
}
}
}
// 监控
if (this.videolabelLayer != null) {
const videoHas = this.selarr.indexOf(5) >= 0;
if (videoHas) {
this.videolabelLayer.hide();
}
}
}
// 餐饮单位液化气用户
if (this.deviceUserlableLayer != null) {
const deviceUserHas = this.selarr.indexOf(18) >= 0;
if (deviceUserHas) {
this.deviceUserlableLayer.hide();
}
}
}
})
// this.map.on('zoomchange', () => {
......@@ -581,8 +581,8 @@ export class EditorMap {
filterSelectPipe(id,mediumComponent,lng, lat) {
this.pipeArr[6].forEach((pipe) => {
const deviceExtData = pipe.getExtData();
if (deviceExtData.pipeId === id) {
//设置颜色
if (deviceExtData.pipeId === id) {
//设置颜色
const options = pipe.getOptions();
options.strokeColor = "blue";
// options.strokeWeight =4;
......@@ -610,10 +610,10 @@ export class EditorMap {
}
/**
* 地图上添加 餐饮单位液化气用户 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
labelsLayerMarksDeviceUserGoMap(mapData,compontent,showBool = true){
if(mapData != null) {
......@@ -622,7 +622,7 @@ export class EditorMap {
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
......@@ -632,34 +632,34 @@ export class EditorMap {
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
mapData.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
});
this.deviceUserlableLayer.add(markers);
this.map.add(this.deviceUserlableLayer)
if (!showBool) {
......@@ -669,10 +669,10 @@ export class EditorMap {
}
/**
* 地图上添加监控 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
labelsLayerMarksVideoGoMap(mapData,compontent,showBool = true){
if(mapData != null) {
......@@ -681,7 +681,7 @@ export class EditorMap {
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
......@@ -691,34 +691,34 @@ export class EditorMap {
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
mapData.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
});
this.videolabelLayer.add(markers);
this.map.add(this.videolabelLayer)
if (!showBool) {
......@@ -728,10 +728,10 @@ export class EditorMap {
}
/**
* 地图上添加场站 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
labelsLayerMarksCzGoMap(mapData,compontent,showBool = true){
if(mapData != null) {
......@@ -740,7 +740,7 @@ export class EditorMap {
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
......@@ -750,34 +750,34 @@ export class EditorMap {
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
mapData.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
});
this.czlabelLayer.add(markers);
this.map.add(this.czlabelLayer)
if (!showBool) {
......@@ -787,10 +787,10 @@ export class EditorMap {
}
/**
* 地图上添加阀门井 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
labelsLayerMarksFmjGoMap(mapData,compontent,showBool = true){
if(mapData != null) {
......@@ -799,7 +799,7 @@ export class EditorMap {
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
......@@ -809,34 +809,34 @@ export class EditorMap {
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
mapData.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
});
this.fmjlabelLayer.add(markers);
this.map.add(this.fmjlabelLayer)
if (!showBool) {
......@@ -846,10 +846,10 @@ export class EditorMap {
}
/**
* 地图上添加调压箱 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
labelsLayerMarksTysGoMap(mapData,compontent,showBool = true){
if(mapData != null) {
const hashMap = new Map();
......@@ -857,7 +857,7 @@ export class EditorMap {
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
......@@ -867,34 +867,34 @@ export class EditorMap {
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
mapData.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
});
this.tyxlabelsLayer.add(markers);
this.map.add(this.tyxlabelsLayer)
if (!showBool) {
......@@ -902,30 +902,30 @@ export class EditorMap {
}
}
}
/**
* 地图上添加用户数据 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} component
* @param {*} showBool
*/
* @param {*} detectorUserData
* @param {*} component
* @param {*} showBool
*/
labelsLayerMarksDetectorUserList(mapData,compontent,showBool = true){
if(mapData !== null && mapData !== undefined) {
const hashMap = new Map();
for(var key in mapData){
var value = mapData[key];
var jsonValue = JSON.stringify(value);
var jsonValue = JSON.stringify(value);
var jsonValueArr = JSON.parse(jsonValue);
//居民用户
if (key === "6") {
this.detectorUserlabelsLayer = new AMap.LabelsLayer({
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
......@@ -935,27 +935,27 @@ export class EditorMap {
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
if(jsonValueArr !== null && jsonValueArr !== undefined) {
if(jsonValueArr !== null && jsonValueArr !== undefined) {
jsonValueArr.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
......@@ -976,7 +976,7 @@ export class EditorMap {
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
......@@ -991,22 +991,22 @@ export class EditorMap {
jsonValueArr.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
icon: icon,
rank: 2, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
......@@ -1015,7 +1015,7 @@ export class EditorMap {
});
});
}
this.businessDetectorUserlabelsLayer.add(markers);
this.map.add(this.businessDetectorUserlabelsLayer)
if (!showBool) {
......@@ -1027,16 +1027,16 @@ export class EditorMap {
}
/**
* 地图上添加用户数据 海量点标记 MassMarks 方式
* @param {*} detectorUserData
* @param {*} component
* @param {*} showBool
*/
* @param {*} detectorUserData
* @param {*} component
* @param {*} showBool
*/
addMassMarksDetectorUserGoMap(mapData,compontent,showBool = true){
if(mapData !== null && mapData !== undefined) {
var style;
var style;
for(var key in mapData){
var value = mapData[key];
var jsonValue = JSON.stringify(value);
var jsonValue = JSON.stringify(value);
var jsonValueArr = JSON.parse(jsonValue);
if ("6" === key) {
style = [{
......@@ -1053,19 +1053,19 @@ export class EditorMap {
zIndex: 3,
}]
}
var mass = new AMap.MassMarks(jsonValueArr, {
opacity: 0.8,
zIndex: 111,
cursor: 'pointer',
style: style
});
});
//先一启动,直接显示
// if (!showBool) {
// mass.hide();
// }
mass.on("click", (e) => {
var data = e.data;
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
......@@ -1089,10 +1089,10 @@ export class EditorMap {
* @param {*} compontent marker点击弹出的infowindow的组件
* @return {*}
*/
massMarksMarkerClick(data, compontent) {
massMarksMarkerClick(data, compontent) {
// var detectorUserVO = data.tdetectorUserVO;
// var lng = lnglatArray[0];
// var lat = lnglatArray[1];
// var lat = lnglatArray[1];
// var detectorUserVO = {"userId":159843,"iconType":null,"userStatus":null,"nickName":"曾宪成","userType":"2","detectorCountList":[{"userId":159843,"iconType":null,"userStatus":null,"nickName":"曾宪成","userType":"2","detectorCountList":null,"detectorType":"工业探测器","detectorCount":1,"onLineNum":1,"offLineNum":0,"historyAlarmNum":0,"cancelAlarmNum":0,"processingAlarmNum":0,"address":"河北省-廊坊市-三河市-泃阳镇老厨小吃","longitude":117.06009,"latitude":39.991257,"linkman":"曾宪成","phone":"13172132000","email":null}],"detectorType":"工业探测器","detectorCount":1,"onLineNum":1,"offLineNum":0,"historyAlarmNum":0,"cancelAlarmNum":0,"processingAlarmNum":0,"address":"河北省-廊坊市-三河市-泃阳镇老厨小吃","longitude":117.06009,"latitude":39.991257,"linkman":"曾宪成","phone":"13172132000","email":null}
let lng = data.longitude;
......@@ -1104,12 +1104,12 @@ export class EditorMap {
this,
data,
compontent
);
);
this.infowindow = new AMap.InfoWindow({
isCustom: true,
content: this.infowindowComponent.$el,
position: [lng, lat],
position: [lng, lat],
anchor: "middle-left",
offset: [20, -10],
});
......@@ -1186,11 +1186,11 @@ export class EditorMap {
if (infowindowOptions.visible){
var pipeData = this.infowindowComponent.deviceData;
const target = e.target;
var clickPipeId = pipeData.pipeId;
const { pipeId } = target.getExtData();
var clickPipeId = pipeData.pipeId;
const { pipeId } = target.getExtData();
if (clickPipeId === pipeId) return;
}
}
......@@ -1261,14 +1261,14 @@ export class EditorMap {
//关闭的时候恢复颜色
var data = this.infowindowComponent.deviceData;
var pipePressure = data.pipePressure;
var id = data.pipeId;
var id = data.pipeId;
const color = pipeColor[pipePressure];
this.pipeArr[6].forEach((pipe) => {
const deviceExtData = pipe.getExtData();
if (deviceExtData.pipeId === id) {
//设置颜色
if (deviceExtData.pipeId === id) {
//设置颜色
const options = pipe.getOptions();
options.strokeColor = color;
// options.strokeWeight =4;
......@@ -1280,7 +1280,6 @@ export class EditorMap {
}
// 设备以及公司过滤
allfilter(companyArr, typeArr) {
debugger
for (let pipeItem in this.pipeArr) {
this.pipeArr[pipeItem].forEach((pipe) => {
const data = pipe.getExtData();
......@@ -1320,7 +1319,7 @@ export class EditorMap {
this.detectorUserlabelsLayer.hide();
}
}
// 判断是否需要显示 商业用户
const businessDetectorUserHas = typeArr.indexOf(61) >= 0;
......@@ -1342,7 +1341,7 @@ export class EditorMap {
}
}
//判断是否需要显示 阀门井
const fmjHas = typeArr.indexOf(3) >= 0;
if (this.fmjlabelLayer != null) {
......@@ -1352,7 +1351,7 @@ export class EditorMap {
this.fmjlabelLayer.hide();
}
}
//判断是否需要显示 场站
const czHas = typeArr.indexOf(4) >= 0;
if (this.czlabelLayer != null) {
......@@ -1372,7 +1371,7 @@ export class EditorMap {
this.videolabelLayer.hide();
}
}
//判断是否需要显示 餐饮单位液化气用户
const deviceUserHas = typeArr.indexOf(18) >= 0;
if (this.deviceUserlableLayer != null) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment