fix: BUG修改
This commit is contained in:
parent
7b6a1d772e
commit
89970d51c1
@ -37,6 +37,8 @@
|
|||||||
hideArr: [],
|
hideArr: [],
|
||||||
colorArr: [],
|
colorArr: [],
|
||||||
};
|
};
|
||||||
|
let firstEnter = 0;
|
||||||
|
let dealArr = [];
|
||||||
async function main() {
|
async function main() {
|
||||||
// 创建实例需要传入的参数,部署环境serviceConfig 和 用户有效期getAccessToken
|
// 创建实例需要传入的参数,部署环境serviceConfig 和 用户有效期getAccessToken
|
||||||
const applicationOptions = {
|
const applicationOptions = {
|
||||||
@ -68,7 +70,53 @@
|
|||||||
obvDocument: obvDocument,
|
obvDocument: obvDocument,
|
||||||
viewer3dItem: viewer3dItems[0],
|
viewer3dItem: viewer3dItems[0],
|
||||||
});
|
});
|
||||||
// 设置监听事件
|
// 监听模型树加载完成,可以查询模型树(getObjectTree)
|
||||||
|
obvApi.addEventListener(
|
||||||
|
OBV.ViewerEventTypes.V3dModelTreeLoadedEvent,
|
||||||
|
(event) => {
|
||||||
|
console.log("V3dModelTreeLoadedEvent", event);
|
||||||
|
|
||||||
|
// 设置监听事件(主要用于模型树隐藏)
|
||||||
|
obvApi.addEventListener(
|
||||||
|
OBV.ViewerEventTypes.V3dHideEvent,
|
||||||
|
(event) => {
|
||||||
|
console.log(event);
|
||||||
|
// obvApi
|
||||||
|
// .getObjectTree(event.nodeIdArray[0].modelId)
|
||||||
|
// .then(async (modelTreeData) => {
|
||||||
|
// console.log(JSON.parse(JSON.stringify(modelTreeData)));
|
||||||
|
// let responseData = JSON.parse(JSON.stringify(modelTreeData))
|
||||||
|
// dealArr.push({modelId: responseData.modelId, dbId: responseData.rootId})
|
||||||
|
// await dealArrData(responseData.root.children);
|
||||||
|
// // 往父级传递
|
||||||
|
// window.parent.postMessage({ msg: dealArr, tip: 'hidden' });
|
||||||
|
// });
|
||||||
|
// 往父级传递
|
||||||
|
window.parent.postMessage({ msg: event.nodeIdArray, tip: 'hidden' });
|
||||||
|
}
|
||||||
|
);
|
||||||
|
// 设置监听事件(主要用于模型树显示)
|
||||||
|
obvApi.addEventListener(
|
||||||
|
OBV.ViewerEventTypes.V3dShowEvent,
|
||||||
|
(event) => {
|
||||||
|
console.log(event);
|
||||||
|
// obvApi
|
||||||
|
// .getObjectTree(event.nodeIdArray[0].modelId)
|
||||||
|
// .then(async (modelTreeData) => {
|
||||||
|
// console.log(JSON.parse(JSON.stringify(modelTreeData)));
|
||||||
|
// let responseData = JSON.parse(JSON.stringify(modelTreeData))
|
||||||
|
// dealArr.push({dbId: responseData.rootId})
|
||||||
|
// await dealArrData(responseData.root.children);
|
||||||
|
// // 往父级传递
|
||||||
|
// window.parent.postMessage({ msg: dealArr, tip: 'hidden' });
|
||||||
|
// });
|
||||||
|
// 往父级传递
|
||||||
|
window.parent.postMessage({ msg: event.nodeIdArray, tip: 'show' });
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
// 设置监听事件(构件选择)
|
||||||
obvApi.addEventListener(
|
obvApi.addEventListener(
|
||||||
OBV.ViewerEventTypes.V3dSelectionChangedEvent,
|
OBV.ViewerEventTypes.V3dSelectionChangedEvent,
|
||||||
(event) => {
|
(event) => {
|
||||||
@ -77,26 +125,39 @@
|
|||||||
window.parent.postMessage({ msg: event.nodeIdArray });
|
window.parent.postMessage({ msg: event.nodeIdArray });
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
// 监听相机改变
|
// 监听相机改变
|
||||||
obvApi.addEventListener(
|
obvApi.addEventListener(
|
||||||
OBV.ViewerEventTypes.V3dCameraChangeEvent,
|
OBV.ViewerEventTypes.V3dCameraChangeEvent,
|
||||||
(event) => {
|
(event) => {
|
||||||
console.log("V3dCameraChangeEvent", event);
|
console.log("V3dCameraChangeEvent", event);
|
||||||
// 操作模型
|
if (firstEnter == 0) {
|
||||||
renderConfigModel(obvApi);
|
// 首次进入才操作模型
|
||||||
|
// 操作模型
|
||||||
|
renderConfigModel(obvApi);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
// 处理数据
|
||||||
|
function dealArrData(arr) {
|
||||||
|
arr.map(item => {
|
||||||
|
if(item.children && item.children.length > 0){
|
||||||
|
dealArrData(item.children)
|
||||||
|
}
|
||||||
|
dealArr.push({dbId: item.dbId})
|
||||||
|
})
|
||||||
|
}
|
||||||
function renderConfigModel(obvApi) {
|
function renderConfigModel(obvApi) {
|
||||||
console.log(obvApi);
|
console.log(obvApi);
|
||||||
console.log(configValue.hideArr);
|
console.log(configValue.hideArr);
|
||||||
|
++firstEnter; // 避免多次调用
|
||||||
// 隐藏构件
|
// 隐藏构件
|
||||||
if (configValue.hideArr.length > 0) {
|
if (configValue.hideArr.length > 0) {
|
||||||
obvApi.hide(configValue.hideArr);
|
obvApi.hide(configValue.hideArr);
|
||||||
} else {
|
|
||||||
obvApi.showAll();
|
|
||||||
}
|
}
|
||||||
|
// else {
|
||||||
|
// obvApi.showAll();
|
||||||
|
// }
|
||||||
// 构件着色
|
// 构件着色
|
||||||
if (configValue.colorArr.length > 0) {
|
if (configValue.colorArr.length > 0) {
|
||||||
configValue.colorArr.map((item) => {
|
configValue.colorArr.map((item) => {
|
||||||
@ -112,9 +173,10 @@
|
|||||||
1
|
1
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
} else {
|
|
||||||
obvApi.restoreObjectsColor();
|
|
||||||
}
|
}
|
||||||
|
// else {
|
||||||
|
// obvApi.restoreObjectsColor();
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
// 访问的令牌 getAccessToken 和 令牌有效期 expiresIn
|
// 访问的令牌 getAccessToken 和 令牌有效期 expiresIn
|
||||||
function getAccessToken(callBack) {
|
function getAccessToken(callBack) {
|
||||||
@ -127,6 +189,7 @@
|
|||||||
const data = e.data || {};
|
const data = e.data || {};
|
||||||
console.log(data.token);
|
console.log(data.token);
|
||||||
console.log(data.urn);
|
console.log(data.urn);
|
||||||
|
firstEnter = 0;
|
||||||
if (data.token && data.urn) {
|
if (data.token && data.urn) {
|
||||||
configValue.viewToken = data.token;
|
configValue.viewToken = data.token;
|
||||||
configValue.urn = data.urn;
|
configValue.urn = data.urn;
|
||||||
|
|||||||
@ -14,7 +14,7 @@ var COMPANY = '' //通用
|
|||||||
// COMPANY = 'zjsj'//中建四局
|
// COMPANY = 'zjsj'//中建四局
|
||||||
// COMPANY = 'zjwj'//中建五局
|
// COMPANY = 'zjwj'//中建五局
|
||||||
// COMPANY = 'sccr'//四川成润
|
// COMPANY = 'sccr'//四川成润
|
||||||
COMPANY = 'pssh'//坪山沙湖项目
|
// COMPANY = 'pssh'//坪山沙湖项目
|
||||||
// COMPANY = 'jlw'//金林湾
|
// COMPANY = 'jlw'//金林湾
|
||||||
// COMPANY = 'shzj'//上海张江
|
// COMPANY = 'shzj'//上海张江
|
||||||
// COMPANY = 'shjg'//上海优益(上海建工)
|
// COMPANY = 'shjg'//上海优益(上海建工)
|
||||||
|
|||||||
@ -67,7 +67,7 @@ if (process.env.NODE_ENV == 'development') {
|
|||||||
// axios.defaults.baseURL = 'http://183.234.150.152:9090/' //华发 huaxin 123456789
|
// axios.defaults.baseURL = 'http://183.234.150.152:9090/' //华发 huaxin 123456789
|
||||||
// axios.defaults.baseURL = 'http://182.90.224.147:18170' //瑞士恒通线上
|
// axios.defaults.baseURL = 'http://182.90.224.147:18170' //瑞士恒通线上
|
||||||
// axios.defaults.baseURL = 'http://58.250.210.9:9090/' //深汕线上
|
// axios.defaults.baseURL = 'http://58.250.210.9:9090/' //深汕线上
|
||||||
// axios.defaults.baseURL = 'http://101.43.164.214:11111/' //百色线上
|
axios.defaults.baseURL = 'http://101.43.164.214:11111/' //百色线上
|
||||||
// axios.defaults.baseURL = 'http://101.43.164.214:12345/'//内蒙古线上
|
// axios.defaults.baseURL = 'http://101.43.164.214:12345/'//内蒙古线上
|
||||||
// axios.defaults.baseURL = 'http://121.196.214.246/api/'//金林湾线上新
|
// axios.defaults.baseURL = 'http://121.196.214.246/api/'//金林湾线上新
|
||||||
// axios.defaults.baseURL = 'http://42.194.144.62:8088/'//中建四局线上(新)地址
|
// axios.defaults.baseURL = 'http://42.194.144.62:8088/'//中建四局线上(新)地址
|
||||||
@ -79,7 +79,7 @@ if (process.env.NODE_ENV == 'development') {
|
|||||||
// axios.defaults.baseURL ='http://192.168.34.221:30001/' //郭圣雄本地
|
// axios.defaults.baseURL ='http://192.168.34.221:30001/' //郭圣雄本地
|
||||||
// axios.defaults.baseURL ='http://192.168.34.221:12350/' //金林湾本地
|
// axios.defaults.baseURL ='http://192.168.34.221:12350/' //金林湾本地
|
||||||
// axios.defaults.baseURL ='http://42.194.144.62:8099/' //坪山沙湖
|
// axios.defaults.baseURL ='http://42.194.144.62:8099/' //坪山沙湖
|
||||||
axios.defaults.baseURL ='http://125.88.207.86:8099/' //坪山沙湖(最新)地址
|
// axios.defaults.baseURL ='http://125.88.207.86:8099/' //坪山沙湖(最新)地址
|
||||||
// axios.defaults.baseURL ='http://huli.zjzhiliao.com/jxjgdapi/' //金林湾测试线上
|
// axios.defaults.baseURL ='http://huli.zjzhiliao.com/jxjgdapi/' //金林湾测试线上
|
||||||
// axios.defaults.baseURL ='http://101.43.164.214:45001/' //上海张江
|
// axios.defaults.baseURL ='http://101.43.164.214:45001/' //上海张江
|
||||||
// axios.defaults.baseURL ='http://101.43.164.214:45011/' //上海优益(上海建工)
|
// axios.defaults.baseURL ='http://101.43.164.214:45011/' //上海优益(上海建工)
|
||||||
|
|||||||
@ -11,10 +11,13 @@
|
|||||||
:value="item.value"
|
:value="item.value"
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
|
<el-button type="primary" size="small" @click="saveSelected" v-if="formData.type == 1" style="margin-left: 10px;"
|
||||||
|
>保存</el-button
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-show">
|
<!-- <div class="data-show" v-if="formData.type == 1">
|
||||||
<span>选中的数据值:</span>
|
<span>选中的数据值:</span>
|
||||||
<div class="selected-box" v-if="formData.type == 1">
|
<div class="selected-box">
|
||||||
<template v-show="selectedHideList.length > 0">
|
<template v-show="selectedHideList.length > 0">
|
||||||
<div v-for="(item, index) in selectedHideList" :key="index">
|
<div v-for="(item, index) in selectedHideList" :key="index">
|
||||||
<span>{{ item ? item.dbId : "" }}</span>
|
<span>{{ item ? item.dbId : "" }}</span>
|
||||||
@ -22,7 +25,13 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
<div class="selected-box" v-if="formData.type == 2">
|
<el-button type="primary" size="small" @click="saveSelected"
|
||||||
|
>保存</el-button
|
||||||
|
>
|
||||||
|
</div> -->
|
||||||
|
<div class="data-show" v-if="formData.type == 2">
|
||||||
|
<span>选中的数据值:</span>
|
||||||
|
<div class="selected-box">
|
||||||
<template v-show="selectedColorList.length > 0">
|
<template v-show="selectedColorList.length > 0">
|
||||||
<div v-for="(item, index) in selectedColorList" :key="index">
|
<div v-for="(item, index) in selectedColorList" :key="index">
|
||||||
<span
|
<span
|
||||||
@ -148,30 +157,50 @@ export default {
|
|||||||
this.getModelList();
|
this.getModelList();
|
||||||
},
|
},
|
||||||
getIframeMessage(e) {
|
getIframeMessage(e) {
|
||||||
console.log("Message from iframe:", e.data.msg);
|
console.log("Message from iframe:", e.data);
|
||||||
if (e.data.msg && e.data.msg.length > 0) {
|
if (e.data.msg && e.data.msg.length > 0) {
|
||||||
if (this.formData.type == 1) {
|
if (this.formData.type == 1) {
|
||||||
let dataIndex = null;
|
if (e.data.tip == "show") {
|
||||||
dataIndex = this.selectedHideList.find((item) => {
|
let dataShowIndex = null;
|
||||||
return item.dbId == e.data.msg[0].dbId;
|
e.data.msg.map((item) => {
|
||||||
});
|
dataShowIndex = this.selectedHideList.findIndex((item2) => {
|
||||||
if (!dataIndex) {
|
return item2.dbId == item.dbId;
|
||||||
this.selectedHideList.push({
|
});
|
||||||
...e.data.msg[0],
|
console.log(dataShowIndex);
|
||||||
|
if (dataShowIndex>=0) {
|
||||||
|
this.selectedHideList.splice(dataShowIndex, 1);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
let dataHiddenIndex = null;
|
||||||
|
e.data.msg.map((item) => {
|
||||||
|
dataHiddenIndex = this.selectedHideList.find((item2) => {
|
||||||
|
return item2.dbId == item.dbId;
|
||||||
|
});
|
||||||
|
if (!dataHiddenIndex) {
|
||||||
|
this.selectedHideList.push({
|
||||||
|
...item,
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
let dataIndex = null;
|
if (!e.data.tip) {
|
||||||
dataIndex = this.selectedColorList.find((item) => {
|
let dataIndex = null;
|
||||||
return item.dbId == e.data.msg[0].dbId;
|
e.data.msg.map((item) => {
|
||||||
});
|
dataIndex = this.selectedColorList.find((item2) => {
|
||||||
if (!dataIndex) {
|
return item2.dbId == item.dbId;
|
||||||
this.selectedColorList.push({
|
});
|
||||||
...e.data.msg[0],
|
if (!dataIndex) {
|
||||||
color: this.formData.color,
|
this.selectedColorList.push({
|
||||||
|
...item,
|
||||||
|
color: this.formData.color,
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
this.selectedColorList = this.selectedColorList;
|
||||||
this.$forceUpdate();
|
this.$forceUpdate();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -230,15 +259,17 @@ export default {
|
|||||||
@include flex;
|
@include flex;
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
.selected-box {
|
.selected-box {
|
||||||
flex: 1%;
|
flex: 1;
|
||||||
min-width: 208px;
|
min-width: 208px;
|
||||||
min-height: 32px;
|
min-height: 32px;
|
||||||
|
max-height: 100px;
|
||||||
border: 1px solid #c0c4cc;
|
border: 1px solid #c0c4cc;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
@include flex;
|
@include flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
padding-left: 6px;
|
padding-left: 6px;
|
||||||
margin-right: 15px;
|
margin-right: 15px;
|
||||||
|
overflow-y: scroll;
|
||||||
> div {
|
> div {
|
||||||
@include flex;
|
@include flex;
|
||||||
background-color: #f4f4f5;
|
background-color: #f4f4f5;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user