fix: BUG修改
This commit is contained in:
parent
7b6a1d772e
commit
89970d51c1
@ -37,6 +37,8 @@
|
||||
hideArr: [],
|
||||
colorArr: [],
|
||||
};
|
||||
let firstEnter = 0;
|
||||
let dealArr = [];
|
||||
async function main() {
|
||||
// 创建实例需要传入的参数,部署环境serviceConfig 和 用户有效期getAccessToken
|
||||
const applicationOptions = {
|
||||
@ -68,7 +70,53 @@
|
||||
obvDocument: obvDocument,
|
||||
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(
|
||||
OBV.ViewerEventTypes.V3dSelectionChangedEvent,
|
||||
(event) => {
|
||||
@ -77,26 +125,39 @@
|
||||
window.parent.postMessage({ msg: event.nodeIdArray });
|
||||
}
|
||||
);
|
||||
|
||||
// 监听相机改变
|
||||
obvApi.addEventListener(
|
||||
OBV.ViewerEventTypes.V3dCameraChangeEvent,
|
||||
(event) => {
|
||||
console.log("V3dCameraChangeEvent", event);
|
||||
if (firstEnter == 0) {
|
||||
// 首次进入才操作模型
|
||||
// 操作模型
|
||||
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) {
|
||||
console.log(obvApi);
|
||||
console.log(configValue.hideArr);
|
||||
++firstEnter; // 避免多次调用
|
||||
// 隐藏构件
|
||||
if (configValue.hideArr.length > 0) {
|
||||
obvApi.hide(configValue.hideArr);
|
||||
} else {
|
||||
obvApi.showAll();
|
||||
}
|
||||
// else {
|
||||
// obvApi.showAll();
|
||||
// }
|
||||
// 构件着色
|
||||
if (configValue.colorArr.length > 0) {
|
||||
configValue.colorArr.map((item) => {
|
||||
@ -112,9 +173,10 @@
|
||||
1
|
||||
);
|
||||
});
|
||||
} else {
|
||||
obvApi.restoreObjectsColor();
|
||||
}
|
||||
// else {
|
||||
// obvApi.restoreObjectsColor();
|
||||
// }
|
||||
}
|
||||
// 访问的令牌 getAccessToken 和 令牌有效期 expiresIn
|
||||
function getAccessToken(callBack) {
|
||||
@ -127,6 +189,7 @@
|
||||
const data = e.data || {};
|
||||
console.log(data.token);
|
||||
console.log(data.urn);
|
||||
firstEnter = 0;
|
||||
if (data.token && data.urn) {
|
||||
configValue.viewToken = data.token;
|
||||
configValue.urn = data.urn;
|
||||
|
||||
@ -14,7 +14,7 @@ var COMPANY = '' //通用
|
||||
// COMPANY = 'zjsj'//中建四局
|
||||
// COMPANY = 'zjwj'//中建五局
|
||||
// COMPANY = 'sccr'//四川成润
|
||||
COMPANY = 'pssh'//坪山沙湖项目
|
||||
// COMPANY = 'pssh'//坪山沙湖项目
|
||||
// COMPANY = 'jlw'//金林湾
|
||||
// COMPANY = 'shzj'//上海张江
|
||||
// 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://182.90.224.147:18170' //瑞士恒通线上
|
||||
// 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://121.196.214.246/api/'//金林湾线上新
|
||||
// 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:12350/' //金林湾本地
|
||||
// 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://101.43.164.214:45001/' //上海张江
|
||||
// axios.defaults.baseURL ='http://101.43.164.214:45011/' //上海优益(上海建工)
|
||||
|
||||
@ -11,10 +11,13 @@
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
<el-button type="primary" size="small" @click="saveSelected" v-if="formData.type == 1" style="margin-left: 10px;"
|
||||
>保存</el-button
|
||||
>
|
||||
</div>
|
||||
<div class="data-show">
|
||||
<!-- <div class="data-show" v-if="formData.type == 1">
|
||||
<span>选中的数据值:</span>
|
||||
<div class="selected-box" v-if="formData.type == 1">
|
||||
<div class="selected-box">
|
||||
<template v-show="selectedHideList.length > 0">
|
||||
<div v-for="(item, index) in selectedHideList" :key="index">
|
||||
<span>{{ item ? item.dbId : "" }}</span>
|
||||
@ -22,7 +25,13 @@
|
||||
</div>
|
||||
</template>
|
||||
</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">
|
||||
<div v-for="(item, index) in selectedColorList" :key="index">
|
||||
<span
|
||||
@ -148,30 +157,50 @@ export default {
|
||||
this.getModelList();
|
||||
},
|
||||
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 (this.formData.type == 1) {
|
||||
let dataIndex = null;
|
||||
dataIndex = this.selectedHideList.find((item) => {
|
||||
return item.dbId == e.data.msg[0].dbId;
|
||||
if (e.data.tip == "show") {
|
||||
let dataShowIndex = null;
|
||||
e.data.msg.map((item) => {
|
||||
dataShowIndex = this.selectedHideList.findIndex((item2) => {
|
||||
return item2.dbId == item.dbId;
|
||||
});
|
||||
if (!dataIndex) {
|
||||
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({
|
||||
...e.data.msg[0],
|
||||
...item,
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
} else {
|
||||
if (!e.data.tip) {
|
||||
let dataIndex = null;
|
||||
dataIndex = this.selectedColorList.find((item) => {
|
||||
return item.dbId == e.data.msg[0].dbId;
|
||||
e.data.msg.map((item) => {
|
||||
dataIndex = this.selectedColorList.find((item2) => {
|
||||
return item2.dbId == item.dbId;
|
||||
});
|
||||
if (!dataIndex) {
|
||||
this.selectedColorList.push({
|
||||
...e.data.msg[0],
|
||||
...item,
|
||||
color: this.formData.color,
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
this.selectedColorList = this.selectedColorList;
|
||||
this.$forceUpdate();
|
||||
}
|
||||
},
|
||||
@ -230,15 +259,17 @@ export default {
|
||||
@include flex;
|
||||
margin-top: 10px;
|
||||
.selected-box {
|
||||
flex: 1%;
|
||||
flex: 1;
|
||||
min-width: 208px;
|
||||
min-height: 32px;
|
||||
max-height: 100px;
|
||||
border: 1px solid #c0c4cc;
|
||||
border-radius: 4px;
|
||||
@include flex;
|
||||
flex-wrap: wrap;
|
||||
padding-left: 6px;
|
||||
margin-right: 15px;
|
||||
overflow-y: scroll;
|
||||
> div {
|
||||
@include flex;
|
||||
background-color: #f4f4f5;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user