Commit c4820283 authored by yaqizhang's avatar yaqizhang

合并冲突

parents b73df032 8d39f925
......@@ -38,7 +38,7 @@ public class PipeInterfaceController {
//判断如果名称一样就一组
if (pipeDatesGroup.get(i).getPowerCompany().equals(pipeDates.get(n).getPowerCompany())){
// //设置分组类型
pipeDates.get(n).setCompanyType(Integer.parseInt(pipeDates.get(n).getPipeId()));
// pipeDates.get(n).setCompanyType(Integer.parseInt(pipeDates.get(n).getPipeId()));
pipeDates.get(n).setIconType(1);
}
}
......@@ -108,13 +108,15 @@ public class PipeInterfaceController {
*/
@RequestBody
@RequestMapping("/selectTdetectorUser")
public List<TdetectorUserData> selectTdetectorUser(){
public TenterpriseInfoDataList selectTdetectorUser(){
TenterpriseInfoDataList tenterpriseInfoDataList=new TenterpriseInfoDataList();
//燃气用户信息查询方法
List<TdetectorUserData> tdetectorUserData = iPipeInterfaceService.selectTdetectorUser();
for (int i=0;i<tdetectorUserData.size();i++){
tdetectorUserData.get(i).setIconType(6);
}
return tdetectorUserData;
tenterpriseInfoDataList.setData(tdetectorUserData);
return tenterpriseInfoDataList;
}
/**
......@@ -133,13 +135,20 @@ public class PipeInterfaceController {
*/
@RequestBody
@RequestMapping("/selectvalveData")
public List<PipeDate> selectvalveData(){
public DeviceDataList selectvalveData(){
DeviceDataList deviceDataList=new DeviceDataList();
//查询阀门井数据
List<PipeDate> pipeDates = iPipeInterfaceService.selectvalveData();
List<DeviceData> pipeDates = iPipeInterfaceService.selectvalveData();
for (int i=0;i<pipeDates.size();i++){
//查询下级设备数据
List<PressureFlow> pressureFlows = iPipeInterfaceService.selectPressureFlow(pipeDates.get(i).getDeviceId());
pipeDates.get(i).setIconType(3);
pipeDates.get(i).setPressureFlows(pressureFlows);
}
return pipeDates;
deviceDataList.setData(pipeDates);
return deviceDataList;
}
}
......@@ -45,6 +45,16 @@ public class TDetectorUserController extends BaseController
return getDataTable(list);
}
/**
* 获取探测器用户列表
* @param tDetectorUser
* @return
*/
@GetMapping("/detectorUserList")
public AjaxResult detectorUserList(TDetectorUser tDetectorUser){
return AjaxResult.success(tDetectorUserService.detectorUserList(tDetectorUser));
}
/**
* 导出燃气用户列表
*/
......
......@@ -97,7 +97,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
// 过滤请求
.authorizeRequests()
// 对于登录login 验证码captchaImage 允许匿名访问
.antMatchers("/login", "/captchaImage").anonymous()
.antMatchers("/login", "/captchaImage", "/detector/detectorReport/**").anonymous()
.antMatchers(
HttpMethod.GET,
"/*.html",
......
package com.zehong.system.domain;
import java.util.List;
public class DeviceDataList {
private List<DeviceData> data;
public List<DeviceData> getData() {
return data;
}
public void setData(List<DeviceData> data) {
this.data = data;
}
@Override
public String toString() {
return "DeviceDataList{" +
"data=" + data +
'}';
}
}
......@@ -43,6 +43,8 @@ public class PipeDate extends BaseEntity {
private int iconType;
public String getPipeId() {
return pipeId;
}
......
......@@ -25,11 +25,11 @@ public class TPipeInfo extends BaseEntity
/** 管径 */
@Excel(name = "管径")
private BigDecimal pipeDiameter;
private String pipeDiameter;
/** 压力 */
@Excel(name = "压力")
private BigDecimal pipePressure;
private String pipePressure;
/** 材质 */
@Excel(name = "材质")
......@@ -41,7 +41,7 @@ public class TPipeInfo extends BaseEntity
/** 埋深 */
@Excel(name = "埋深")
private BigDecimal buriedDepth;
private String buriedDepth;
/** 走向 */
@Excel(name = "走向")
......@@ -103,55 +103,50 @@ public class TPipeInfo extends BaseEntity
this.pipeLength = pipeLength;
}
public BigDecimal getPipeLength()
{
public BigDecimal getPipeLength() {
return pipeLength;
}
public void setPipeDiameter(BigDecimal pipeDiameter)
{
this.pipeDiameter = pipeDiameter;
}
public BigDecimal getPipeDiameter()
{
public String getPipeDiameter() {
return pipeDiameter;
}
public void setPipePressure(BigDecimal pipePressure)
{
this.pipePressure = pipePressure;
public void setPipeDiameter(String pipeDiameter) {
this.pipeDiameter = pipeDiameter;
}
public BigDecimal getPipePressure()
{
public String getPipePressure() {
return pipePressure;
}
public void setPipeMaterial(String pipeMaterial)
{
this.pipeMaterial = pipeMaterial;
public void setPipePressure(String pipePressure) {
this.pipePressure = pipePressure;
}
public String getPipeMaterial()
{
public String getPipeMaterial() {
return pipeMaterial;
}
public void setPipeAddr(String pipeAddr)
{
this.pipeAddr = pipeAddr;
public void setPipeMaterial(String pipeMaterial) {
this.pipeMaterial = pipeMaterial;
}
public String getPipeAddr()
{
public String getPipeAddr() {
return pipeAddr;
}
public void setBuriedDepth(BigDecimal buriedDepth)
{
this.buriedDepth = buriedDepth;
public void setPipeAddr(String pipeAddr) {
this.pipeAddr = pipeAddr;
}
public BigDecimal getBuriedDepth()
{
public String getBuriedDepth() {
return buriedDepth;
}
public void setBuriedDepth(String buriedDepth) {
this.buriedDepth = buriedDepth;
}
public void setPipeTrend(String pipeTrend)
{
this.pipeTrend = pipeTrend;
......
......@@ -28,6 +28,16 @@ public class TSiteStationInfoData {
private int iconType;
private String companyType;
public String getCompanyType() {
return companyType;
}
public void setCompanyType(String companyType) {
this.companyType = companyType;
}
public int getIconType() {
return iconType;
}
......@@ -139,6 +149,7 @@ public class TSiteStationInfoData {
", powerCompany='" + powerCompany + '\'' +
", pressureFlows=" + pressureFlows +
", iconType=" + iconType +
", companyType='" + companyType + '\'' +
'}';
}
}
package com.zehong.system.domain;
import java.util.List;
public class TenterpriseInfoDataList {
private List<TdetectorUserData> data;
public List<TdetectorUserData> getData() {
return data;
}
public void setData(List<TdetectorUserData> data) {
this.data = data;
}
@Override
public String toString() {
return "TenterpriseInfoDataList{" +
"data=" + data +
'}';
}
}
......@@ -71,5 +71,5 @@ public interface PipeInterfaceMapper {
* 查询阀门井数据
* @return
*/
List<PipeDate> selectvalveData();
List<DeviceData> selectvalveData();
}
......@@ -68,5 +68,5 @@ public interface IPipeInterfaceService {
* 查询阀门井数据
* @return
*/
List<PipeDate> selectvalveData();
List<DeviceData> selectvalveData();
}
......@@ -112,8 +112,8 @@ public class PipeInterfaceServiceImpl implements IPipeInterfaceService {
* @return
*/
@Override
public List<PipeDate> selectvalveData() {
List<PipeDate> pipeDates = pipeInterfaceMapper.selectvalveData();
public List<DeviceData> selectvalveData() {
List<DeviceData> pipeDates = pipeInterfaceMapper.selectvalveData();
return pipeDates;
}
}
......@@ -15,6 +15,7 @@
<result property="path" column="coordinates" />
<result property="buildCompany" column="build_unit" />
<result property="powerCompany" column="beyond_enterprise_name" />
<result property="companyType" column="beyond_enterprise_id" />
</resultMap>
<!--调压箱-->
......@@ -28,6 +29,7 @@
<result property="latitude" column="latitude" />
<result property="companyType" column="device_id" />
<result property="beyondEnterpriseName" column="beyond_enterprise_name" />
<result property="companyType" column="beyond_enterprise_id" />
</resultMap>
<!--下级设备数据-->
......@@ -48,6 +50,7 @@
<result property="buildyear" column="create_time" />
<result property="buildCompany" column="build_unit" />
<result property="powerCompany" column="beyond_enterprise_name" />
<result property="companyType" column="beyond_enterprise_id" />
</resultMap>
<!--监控数据-->
......@@ -60,6 +63,7 @@
<result property="latitude" column="latitude" />
<result property="videoAddress" column="video_address" />
<result property="type" column="type" />
<result property="companyType" column="beyond_enterprise_id" />
</resultMap>
<!--燃气用户数据-->
......@@ -70,7 +74,6 @@
<result property="latitude" column="latitude" />
<result property="phone" column="phone" />
<result property="address" column="address" />
<result property="companyType" column="user_id" />
</resultMap>
<!--查询企业名称id-->
......@@ -81,20 +84,20 @@
<!--查询管道数据列表-->
<select id="selectPipeData" parameterType="PipeDate" resultMap="PipeDateResult">
select pipe_id,pipe_diameter,pipe_material,buried_depth,pipe_trend,build_date,pipe_addr,coordinates,remarks,build_unit,beyond_enterprise_name from t_pipe_info
select beyond_enterprise_id,pipe_id,pipe_diameter,pipe_material,buried_depth,pipe_trend,build_date,pipe_addr,coordinates,remarks,build_unit,beyond_enterprise_name from t_pipe_info
where is_del='0'
</select>
<!--获取分组数据-->
<select id="selectGroupPipeData" parameterType="PipeDate" resultMap="PipeDateResult">
select pipe_id,pipe_diameter,pipe_material,buried_depth,pipe_trend,build_date,pipe_addr,coordinates,remarks,build_unit,beyond_enterprise_name from t_pipe_info
select beyond_enterprise_id,pipe_id,pipe_diameter,pipe_material,buried_depth,pipe_trend,build_date,pipe_addr,coordinates,remarks,build_unit,beyond_enterprise_name from t_pipe_info
where is_del='0'
group by beyond_enterprise_name
</select>
<!--调压箱数据查询方法-->
<select id="selectDeviceData" resultMap="DeviceDateResult">
select device_id,device_type,device_name,device_code,device_addr,longitude,latitude,beyond_enterprise_name from t_device_info
select beyond_enterprise_id,device_id,device_type,device_name,device_code,device_addr,longitude,latitude,beyond_enterprise_name from t_device_info
where device_type='2' and is_del='0'
</select>
......@@ -106,7 +109,7 @@
<!--场站信息查询方法-->
<select id="selectTSiteStationInfoData" resultMap="TSiteStationInfoDataResult">
select site_station_id,site_station_name,site_station_type,longitude,latitude,create_time,build_unit,beyond_enterprise_name
select beyond_enterprise_id,site_station_id,site_station_name,site_station_type,longitude,latitude,create_time,build_unit,beyond_enterprise_name
from t_site_station_info where is_del='0'
</select>
......@@ -118,13 +121,13 @@
<!--监控信息查询-->
<select id="selectTvideoManagerData" resultMap="TvideoManagerDataResult">
select video_manager_id,video_name,resource_id,longitude,latitude,video_address,type from t_video_manager
select beyond_enterprise_id,video_manager_id,video_name,resource_id,longitude,latitude,video_address,type from t_video_manager
where is_del='0'
</select>
<!--燃气用户信息查询接口-->
<select id="selectTdetectorUser" resultMap="TdetectorUserDataResult">
select nick_name,user_type,longitude,latitude,phone,address,user_id from t_detector_user
select nick_name,user_type,longitude,latitude,phone,address from t_detector_user
where is_del='0'
</select>
......@@ -135,7 +138,7 @@
<!--查询阀门井数据-->
<select id="selectvalveData" resultMap="DeviceDateResult">
select device_id,device_type,device_name,device_code,device_addr,longitude,latitude,beyond_enterprise_name from t_device_info
select beyond_enterprise_id,device_id,device_type,device_name,device_code,device_addr,longitude,latitude,beyond_enterprise_name from t_device_info
where device_type='1' and is_del='0'
</select>
......
/*
* @Author: your name
* @Date: 2022-02-23 15:28:07
* @LastEditTime: 2022-02-25 18:43:58
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /newDev/gassafety-progress/gassafetyprogress-web/src/api/bigWindow/getdevice.js
*/
import request from '@/utils/request'
// 查询管道
export function getPipe(query) {
return request({
url: '/pipe/pipe/selectPipeData',
method: 'get',
params: query
})
}
// 调压箱
export function getTyx(query) {
return request({
url: '/pipe/pipe/selectDeviceData',
method: 'get',
params: query
})
}
// 是阀门
export function getFm(query) {
return request({
url: '/pipe/pipe/selectvalveData',
method: 'get',
params: query
})
}
// 厂站
export function getCz(query) {
return request({
url: '/pipe/pipe/selectTSiteStationInfoData',
method: 'get',
params: query
})
}
// 监控
export function getVideo(query) {
return request({
url: '/pipe/pipe/selectTvideoManagerData',
method: 'get',
params: query
})
}
// 燃气用户接口
export function getUser(query) {
return request({
url: '/pipe/pipe/selectTdetectorUser',
method: 'get',
params: query
})
}
// 获取公司名称以及id
export function getCompany(query) {
return request({
url: '/pipe/pipe/selectTenterpriseInfoData',
method: 'get',
params: query
})
}
\ No newline at end of file
......@@ -3,7 +3,7 @@ import request from '@/utils/request'
// 查询探测器用户列表
export function listDetectorUser(query) {
return request({
url: '/detector/detectorUser/list',
url: '/supervise/user/list',
method: 'get',
params: query
})
......@@ -12,7 +12,7 @@ export function listDetectorUser(query) {
// 探测器用户列表
export function detectorUserList(query) {
return request({
url: '/detector/detectorUser/detectorUserList',
url: '/supervise/user/detectorUserList',
method: 'get',
params: query
})
......@@ -21,7 +21,7 @@ export function detectorUserList(query) {
// 查询探测器用户详细
export function getDetectorUser(userId) {
return request({
url: '/detector/detectorUser/' + userId,
url: '/supervise/user/' + userId,
method: 'get'
})
}
......@@ -29,7 +29,7 @@ export function getDetectorUser(userId) {
// 新增探测器用户
export function addDetectorUser(data) {
return request({
url: '/detector/detectorUser',
url: '/supervise/user',
method: 'post',
data: data
})
......@@ -38,7 +38,7 @@ export function addDetectorUser(data) {
// 修改探测器用户
export function updateDetectorUser(data) {
return request({
url: '/detector/detectorUser',
url: '/supervise/user',
method: 'put',
data: data
})
......@@ -47,7 +47,7 @@ export function updateDetectorUser(data) {
// 删除探测器用户
export function delDetectorUser(userId) {
return request({
url: '/detector/detectorUser/' + userId,
url: '/supervise/user/' + userId,
method: 'delete'
})
}
......
<!--
* @Author: your name
* @Date: 2022-01-26 20:07:52
* @LastEditTime: 2022-02-17 10:13:02
* @LastEditTime: 2022-02-25 18:34:00
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
......@@ -62,22 +62,22 @@
</div>
<div class="tbody flex">
<div class="first zzz">{{ "流量计与压力表" }}</div>
<div class="">{{ deviceData.pressureFlow.length }}</div>
<div class="">{{ deviceData.pressureFlows.length }}</div>
<div class="">
{{ (Math.random() * deviceData.pressureFlow.length) >> 1 }}
{{ (Math.random() * deviceData.pressureFlows.length) >> 1 }}
</div>
<div class="">
{{ (Math.random() * deviceData.pressureFlow.length) >> 1 }}
{{ (Math.random() * deviceData.pressureFlows.length) >> 1 }}
</div>
<div class="">
{{ (Math.random() * deviceData.pressureFlow.length) >> 1 }}
{{ (Math.random() * deviceData.pressureFlows.length) >> 1 }}
</div>
<div class="">
{{ (Math.random() * deviceData.pressureFlow.length) >> 1 }}
{{ (Math.random() * deviceData.pressureFlows.length) >> 1 }}
</div>
<div class="last zzz">
{{
deviceData.pressureFlow.filter((item) => {
deviceData.pressureFlows.filter((item) => {
return item.deviceState == 2;
}).length
}}
......@@ -102,12 +102,29 @@ export default {
"公司位于长江三角洲经济快速增长、风景秀丽的太湖之畔——无锡。 公司自1984年成立至今,已经过了3次跨越式的发展。2004年至今公司投入5000多万元资金建设新的生产基地,目前已竣工并投入生产,占地面积达40000m2,厂房面积近15000m2。公司2004年的年产值达4350多万元,并且每年以平均30%的速度快速增长。",
};
},
computed: {
prodTest() {
return this.vueRoot.$store.state.user.systemSetting.prod_test;
},
company() {
return this.vueRoot.$store.state.bigWindowCompany.company;
},
},
mounted() {
// 如果不是测试,而是真数据,就要用帧数据的东西
if (this.prodTest != "test") {
this.companyType = {};
this.company.forEach((item) => {
this.companyType[item.conpanyId] = item.companyName;
});
}
},
methods: {
close() {
this.mapClass.infowindowClose();
},
btnClick() {
this.vueRoot.centerDataFunc(this.deviceData.pressureFlow);
this.vueRoot.centerDataFunc(this.deviceData.pressureFlows);
},
},
};
......
<!--
* @Author: your name
* @Date: 2022-01-27 14:25:45
* @LastEditTime: 2022-02-17 10:11:42
* @LastEditTime: 2022-02-25 17:53:43
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /hello-world/src/views/components/User.vue
......@@ -26,8 +26,8 @@
<div class="group flex">
<div class="left first">管道压力:</div>
<div :title="deviceData.address" class="right zzz">
{{ pipePressure[deviceData.pipePressure] }}
<div :title="deviceData.pipePressure" class="right zzz">
{{ pipePressure[deviceData.pipePressure + 1] }}
</div>
<div class="left">所属公司:</div>
<div class="right last">{{ companyType[deviceData.companyType] }}</div>
......@@ -44,7 +44,9 @@
<div class="left first">管道走向:</div>
<div class="right">{{ deviceData.pipeTrend }}</div>
<div class="left">权属单位:</div>
<div :title="deviceData.powerCompany" class="right last zzz">{{ deviceData.powerCompany }}</div>
<div :title="deviceData.powerCompany" class="right last zzz">
{{ deviceData.powerCompany }}
</div>
</div>
<div class="group flex">
<div class="first left">建设年代:</div>
......@@ -53,10 +55,13 @@
<div class="last right">{{ deviceData.buildCompany }}</div>
</div>
<div class="group flex">
<div class="first once left">管道位置:</div>
<div :title="deviceData.pipeAddr" class=" last pipeAddr right zzz">
<div
v-unValue
:title="deviceData.pipeAddr"
class="last pipeAddr right zzz"
>
{{ deviceData.pipeAddr }}
</div>
</div>
......@@ -65,7 +70,6 @@
<script>
import { companyType, pipePressure } from "@/utils/mapClass/config.js";
export default {
data() {
return {
......@@ -73,6 +77,24 @@ export default {
pipePressure,
};
},
computed:{
prodTest(){
return this.vueRoot.$store.state.user.systemSetting.prod_test
},
company(){
return this.vueRoot.$store.state.bigWindowCompany.company;
}
},
mounted(){
// 如果不是测试,而是真数据,就要用帧数据的东西
if(this.prodTest !="test"){
this.companyType={};
this.company.forEach(item=>{
this.companyType[item.conpanyId] = item.companyName;
})
}
},
methods: {
close() {
this.mapClass.infowindowClose();
......@@ -125,12 +147,12 @@ export default {
.last {
border: none;
}
.once{
flex:1;
.once {
flex: 1;
}
.pipeAddr{
flex:3;
padding:0 3em 0 1em;
.pipeAddr {
flex: 3;
padding: 0 3em 0 1em;
}
}
.flex {
......
......@@ -15,7 +15,9 @@
<div class="group flex first">
<div class="left">用户姓名:</div>
<div :title="deviceData.usrName" class="right zzz">{{ deviceData.usrName }}</div>
<div :title="deviceData.usrName" class="right zzz">
{{ deviceData.usrName }}
</div>
</div>
<div class="group flex">
......@@ -39,6 +41,7 @@
<script>
import { companyType } from "@/utils/mapClass/config.js";
import { mapGetters } from "vuex";
export default {
data() {
......@@ -46,6 +49,23 @@ export default {
companyType,
};
},
computed: {
prodTest() {
return this.vueRoot.$store.state.user.systemSetting.prod_test;
},
company() {
return this.vueRoot.$store.state.bigWindowCompany.company;
},
},
mounted() {
// 如果不是测试,而是真数据,就要用帧数据的东西
if (this.prodTest != "test") {
this.companyType = {};
this.company.forEach((item) => {
this.companyType[item.conpanyId] = item.companyName;
});
}
},
methods: {
close() {
this.mapClass.infowindowClose();
......@@ -73,18 +93,17 @@ export default {
}
.group {
border: 1px solid #cccccc;
border-top:none;
border-top: none;
height: 28px;
font-size: 14px;
line-height: 28px;
color: #ffffff;
&.first {
border-top:1px solid #cccccc;
border-top: 1px solid #cccccc;
margin-top: 10px;
}
div {
flex: 1;
}
.left {
border-right: 1px solid #cccccc;
......@@ -94,7 +113,7 @@ export default {
.right {
box-sizing: border-box;
text-align: left;
padding:0 1em;
padding: 0 1em;
}
}
.flex {
......
/*
* @Author: your name
* @Date: 2022-01-07 11:29:13
* @LastEditTime: 2022-02-25 17:17:17
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /newDev/gassafety-progress/gassafetyprogress-web/src/directive/permission/index.js
*/
import hasRole from './hasRole'
import hasPermi from './hasPermi'
import unValue from './unValue'
const install = function(Vue) {
Vue.directive('hasRole', hasRole)
Vue.directive('hasPermi', hasPermi)
Vue.directive('unValue', unValue)
}
if (window.Vue) {
......
/*
* @Author: your name
* @Date: 2022-02-25 17:07:40
* @LastEditTime: 2022-02-25 17:15:54
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /newDev/gassafety-progress/gassafetyprogress-web/src/directive/permission/hasValue.js
*/
/**
* 无内容显示-
* Copyright (c) 2021 gassafety
*/
export default {
inserted(el, binding, vnode) {
console.log("el",el)
el.innerHTML = el.innerHTML.replace(/\s+/g, "") ? el.innerHTML : "-";
}
};
/*
* @Author: your name
* @Date: 2022-01-07 11:29:13
* @LastEditTime: 2022-02-25 15:36:12
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /newDev/gassafety-progress/gassafetyprogress-web/src/store/getters.js
*/
const getters = {
sidebar: state => state.app.sidebar,
size: state => state.app.size,
......@@ -10,9 +18,11 @@ const getters = {
introduction: state => state.user.introduction,
roles: state => state.user.roles,
permissions: state => state.user.permissions,
systemSetting: state => state.user.systemSetting,
permission_routes: state => state.permission.routes,
topbarRouters:state => state.permission.topbarRouters,
defaultRoutes:state => state.permission.defaultRoutes,
sidebarRouters:state => state.permission.sidebarRouters,
company:state=>state.bigWindowCompany.company,
}
export default getters
/*
* @Author: your name
* @Date: 2022-01-07 11:29:13
* @LastEditTime: 2022-02-25 15:36:22
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /newDev/gassafety-progress/gassafetyprogress-web/src/store/index.js
*/
import Vue from 'vue'
import Vuex from 'vuex'
import app from './modules/app'
import user from './modules/user'
import bigWindowCompany from './modules/bigWindowCompany'
import tagsView from './modules/tagsView'
import permission from './modules/permission'
import settings from './modules/settings'
......@@ -15,7 +25,8 @@ const store = new Vuex.Store({
user,
tagsView,
permission,
settings
settings,
bigWindowCompany
},
getters
})
......
/*
* @Author: your name
* @Date: 2022-02-25 13:53:11
* @LastEditTime: 2022-02-25 15:01:59
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /newDev/gassafety-progress/gassafetyprogress-web/src/store/modules/bigWindowDevice.js
*/
import { getCompany } from "@/api/bigWindow/getDevice";
const state = {
// 公司名称
company: {},
};
const mutations = {
SET_COMPANY: (state, company) => {
state.company = company.map((item) => ({
conpanyId: item.enterpriseId,
companyName: item.enterpriseName,
}));
console.log(state.company);
},
};
const actions = {
// 登录
GetCompany({ commit }) {
getCompany().then((res) => {
commit("SET_COMPANY", res);
});
},
};
export default {
namespaced: true,
state,
mutations,
actions,
};
......@@ -57,9 +57,8 @@ const user = {
})
})
},
// 获取用户信息
GetInfo({ commit, state }) {
GetInfo({ commit, state,dispatch}) {
return new Promise((resolve, reject) => {
getInfo().then(res => {
const user = res.user
......@@ -77,6 +76,12 @@ const user = {
commit('SET_SYSTEMSETTING', res.systemSetting)
commit('SET_POSTS',res.posts)
commit('SET_ENTERPRISEID',user.deptId)
// 大屏公司获取
// 第一个参数是其他模块的 actions 路径,
// 第二个是传给 actions 的数据, 如果不需要传数据, 也必须预留,
// 第三个参数是配置选项, 申明这个 acitons 不是当前模块的
dispatch("bigWindowCompany/GetCompany",{},{root:true})
console.log(res.systemSetting)
resolve(res)
}).catch(error => {
......
/*
* @Author: your name
* @Date: 2022-01-11 13:45:12
* @LastEditTime: 2022-02-17 10:12:27
* @LastEditTime: 2022-02-26 09:55:44
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/utils/mapClass.js
......@@ -31,7 +31,7 @@ export class EditorMap {
mouseToolPolineOptions = null;
// 存放所有的设备的数组集合,这是一个对象,对象里面是各种设备的数组
allDevic = {};
allDevice = {};
// 存放所有的管道
pipeArr = {};
// 当前的infowindow的组件
......@@ -247,8 +247,8 @@ export class EditorMap {
* @return {*}
*/
addDevice(deviceData, compontent) {
const { longitude: lng, latitude: lat, type, companyType } = deviceData;
const icon = svgUrl[type];
const { longitude: lng, latitude: lat, iconType } = deviceData;
const icon = svgUrl[iconType];
let device = this.createMarker({
map: this.map,
anchor: "bottom-center",
......@@ -258,10 +258,10 @@ export class EditorMap {
});
// device.hide();
// 如果没有有这个公司的数组,就创建,有就直接push
if (!Array.isArray(this.allDevic[companyType])) {
this.allDevic[companyType] = [];
if (!Array.isArray(this.allDevice[iconType])) {
this.allDevice[iconType] = [];
}
this.allDevic[companyType].push(device);
this.allDevice[iconType].push(device);
// 设备的事件函数
this.deviceEvent(device, compontent);
......@@ -287,7 +287,9 @@ export class EditorMap {
*/
markerClick(target, compontent) {
const deviceExtData = target.getExtData();
const { longitude: lng, latitude: lat } = deviceExtData;
// 创建一个可以控制的组件,将其dom插入infowindow
this.infowindowComponent = this.createInfowindowDom(
this.vue,
......@@ -295,6 +297,7 @@ export class EditorMap {
deviceExtData,
compontent
);
// 没恩么用,控制台测试的时候用着玩的
window.func = () => {
const { longitude: lng, latitude: lat } = target.getExtData();
......@@ -316,6 +319,7 @@ export class EditorMap {
anchor: "middle-left",
offset: [20, -10],
});
this.infowindow.open(this.map);
}
// 创建要加入到infowindow里的
......@@ -344,22 +348,25 @@ export class EditorMap {
}
// 地图上add管道
addPipeLine(objData, component) {
const { path, pipePressure, companyType } = objData;
const { path, pipePressure, iconType } = objData;
console.log(path);
// 根据压力获取颜色
const color = pipeColor[pipePressure];
const color = pipeColor[pipePressure + 1];
const pipe = this.createPipeLine({
path,
path: eval(path),
strokeWeight: 4,
strokeColor: color,
extData: objData,
cursor: "pointer",
});
this.map.add(pipe);
console.log(pipe.getExtData());
// pipe.hide();
if (!Array.isArray(this.pipeArr[companyType])) {
this.pipeArr[companyType] = [];
if (!Array.isArray(this.pipeArr[iconType])) {
this.pipeArr[iconType] = [];
}
this.pipeArr[companyType].push(pipe);
this.pipeArr[iconType].push(pipe);
// console.log(this.pipeArr);
// this.map.panTo([path[0][0], path[0][1]]);
this.pipeEvent(pipe, component);
......@@ -380,7 +387,7 @@ export class EditorMap {
const target = e.target;
// 根据管道压力获取颜色
const { pipePressure } = target.getExtData();
const color = pipeColor[pipePressure];
const color = pipeColor[pipePressure + 1];
// 获取当前颜色
const options = target.getOptions();
options.strokeColor = color;
......@@ -434,33 +441,56 @@ export class EditorMap {
this.infowindow.open(this.map);
}
infowindowClose() {
if(!this.infowindow) return;
if (!this.infowindow) return;
this.infowindow.close();
}
// 根据公司过滤是否显示 公司由一个数组传过来
companyFilter(companyArr) {
for (let pipeItem in this.pipeArr) {
// 如果item属于数组说明要显示,凑则就是隐藏
if (companyArr.indexOf(+pipeItem) >= 0) {
// if (companyArr.indexOf(+pipeItem+'') >= 0) {
// this.pipeArr[pipeItem].forEach((pipe) => {
// pipe.show();
// });
// } else {
// this.pipeArr[pipeItem].forEach((pipe) => {
// pipe.hide();
// });
// }
this.pipeArr[pipeItem].forEach((pipe) => {
const data = pipe.getExtData();
if (companyArr.indexOf(data.companyType + "") >= 0) {
pipe.show();
});
} else {
this.pipeArr[pipeItem].forEach((pipe) => {
pipe.hide();
});
}
});
}
for (let deviceItem in this.allDevic) {
if (companyArr.indexOf(+deviceItem) >= 0) {
this.allDevic[deviceItem].forEach((device) => {
for (let deviceItem in this.allDevice) {
// if (companyArr.indexOf(+deviceItem+'') >= 0) {
// this.allDevice[deviceItem].forEach((device) => {
// device.show();
// });
// } else {
// this.allDevice[deviceItem].forEach((device) => {
// device.hide();
// });
// }
console.log(this.allDevice);
this.allDevice[deviceItem].forEach((device) => {
const data = device.getExtData();
// 燃气没有公司,所以没有device.companyType不收到公司的控制
if (
companyArr.indexOf(data.companyType + "") >= 0 ||
!data.companyType
) {
device.show();
});
} else {
this.allDevic[deviceItem].forEach((device) => {
device.hide();
});
}
});
}
}
// 卫星图切换
......
<!--
* @Author: your name
* @Date: 2022-01-11 13:44:17
* @LastEditTime: 2022-02-22 15:09:22
* @LastEditTime: 2022-02-26 10:08:49
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/views/Home.vue
......@@ -14,15 +14,11 @@
<PipeColor />
<!-- 底部按钮 -->
<div class="home-div">
<img
src="@/assets/mapinages/bottombanner.png"
alt=""
style="width: 100%; height: 100%; z-index: 999"
/>
<img src="@/assets/mapinages/bottombanner.png" alt="" style="" />
<div class="listingsSty fangy">
<div
@click="allCompany"
:class="selarr.length == 3 ? 'active' : ''"
:class="selarr.length == companyLength ? 'active' : ''"
class="firsty"
>
全部
......@@ -121,6 +117,7 @@
<script>
// @ is an alias to /src
import { EditorMap } from "@/utils/mapClass/map";
import { mapGetters, mapActions } from "vuex";
import {
pipeData,
tiaoyaxiang,
......@@ -129,6 +126,14 @@ import {
jiankong,
user,
} from "@/utils/mapClass/config.js";
import {
getPipe,
getTyx,
getFm,
getCz,
getVideo,
getUser,
} from "@/api/bigWindow/getDevice";
import Line from "@/components/bigWindow/Line.vue";
import VideoView from "@/components/bigWindow/VideoView.vue";
import DeviceA from "@/components/bigWindow/DeviceA.vue";
......@@ -204,41 +209,81 @@ export default {
selarr1:[],
};
},
computed: {
...mapGetters(["company", "systemSetting"]),
companyLength() {
return this.typeList.length;
},
},
watch: {
selarr(newValue) {
if (newValue.length == 3) {
if (newValue.length == this.companyLength) {
this.$refs.mychild.choice(0);
this.$refs.mychild2.choice(0);
}
},
},
mounted() {
const path = eval(this.$store.state.user.systemSetting.map_center);
// console.log(99999999999999)
// getPipe().then(res=>{
// console.log("成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功",res)
// }).catch(res=>{
// console.log(123)
// })
// return;
const path = eval(this.systemSetting.map_center);
this.map = new EditorMap(
"map",
{
center:path,
center: path,
mapStyle: "amap://styles/f71d3a3d73e14f5b2bf5508bf1411758",
zoom: 14.5,
},
this
);
this.addPipeLine();
// 这是测试,用本地数据
if (this.systemSetting.prod_test === "test") {
this.addPipeLine(pipeData, Line);
this.addDevice(tiaoyaxiang, DeviceA);
this.addDevice(famen, DeviceA);
this.addDevice(changzhan, DeviceA);
this.addDevice(user, User);
this.addDevice(jiankong, VideoView);
} else {
// 调用状态管理器方法获取公司信息每次都要调取,因为每次进来都是更新的
this.GetCompany();
this.typeList = this.company.map((item) => ({
val: item.conpanyId,
name: item.companyName,
}));
this.selarr = this.company.map((item) => item.conpanyId);
// getPipe() getTyx() getFm() getCz() getVideo() getUser()
this.goMap(getPipe, this.addPipeLine, Line);
this.goMap(getTyx, this.addDevice, DeviceA);
this.goMap(getFm, this.addDevice, DeviceA);
this.goMap(getCz, this.addDevice, DeviceA);
this.goMap(getVideo, this.addDevice, VideoView);
this.goMap(getUser, this.addDevice, User);
// getVideo().then((res) => {
// console.log("getVideo", res);
// });
}
this.currentTime();
this.$refs.mychild.choice(0);
this.$refs.mychild2.choice(0);
},
methods: {
addPipeLine() {
for (let comp in pipeData) {
pipeData[comp].forEach((pipe) => {
this.map.addPipeLine(pipe, Line);
...mapActions({
GetCompany: "bigWindowCompany/GetCompany",
}),
// 管道上图
addPipeLine(data, component) {
for (let comp in data) {
data[comp].forEach((pipe) => {
this.map.addPipeLine(pipe, component);
});
}
},
......@@ -250,6 +295,20 @@ export default {
});
}
},
goMap(httpFunc, addFunc, component) {
httpFunc().then((res) => {
console.log("resresres", res);
// 根据数据格式不同,赋值不同,如果是个数组,就用res,如果不是就用res.data
let config = {};
if (Array.isArray(res)) {
config = { data: res };
} else {
config = { data: res.data };
}
addFunc(config, component);
});
},
centerShow(boolean) {
this.show = boolean;
},
......@@ -260,10 +319,10 @@ export default {
},
allCompany() {
if (this.selarr.length == 3) {
if (this.selarr.length == this.companyLength) {
this.selarr = [];
} else {
this.selarr = [1, 2, 3];
this.selarr = this.company.map((item) => item.conpanyId);
}
this.map.companyFilter(this.selarr);
......@@ -409,28 +468,36 @@ export default {
position: fixed;
bottom: 0;
margin-left: 25%;
z-index: 1000;
// z-index: 1000;
img {
width: 100%;
height: 100%;
position: absolute;
z-index: -1;
}
}
.listingsSty {
/* height: 25px; */
position: fixed;
// position: fixed;
/* border: 1px solid #fff; */
bottom: 0;
margin-bottom: 10px;
width: 30%;
margin-left: 10%;
margin-left: 25%;
width: 50%;
display: flex;
justify-content: space-between;
padding-top: 25px;
// font-family: 'arialbd';
}
.firsty {
width: 15%;
// width: 15%;
min-width: 80px;
height: 35px;
text-align: center;
line-height: 35px;
/* border: 1px solid #fff; */
color: #fff;
font-size: 16px;
float: left;
margin-left: 8%;
// float: left;
// margin-left: 8%;
cursor: pointer;
// font-family: 'arialbd';
}
......
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