zjs_project hace 1 año
padre
commit
eaefef1472

+ 16 - 5
src/pages/webgl_rxdz/webgl_rxdz.vue

@@ -618,13 +618,23 @@
 			voiceMaskChange(voiceMask){
 				this.voiceMaskShow = voiceMask;
 			},
+			//黄山数据处理
+			hushangHandle(param){
+				let expand = {};
+				expand.landImg = "https://dm.static.elab-plus.com/huangshan/zizaigu/share/A9.png";
+				expand.baseImg = "https://dm.static.elab-plus.com/huangshan/zizaigu/project/A9-180-1.5F-L形.jpg";
+				expand.bgPrototypeImg = "https://dm.static.elab-plus.com/huangshan/zizaigu/project/A9-180-1.5F-L形【图例】.jpg";
+				expand.landNo = "A9";
+				expand.buildingArea = "95";
+				expand.layer = "2层建筑&(带大露台)";
+				expand.structureDescription = "大开间面·尽览景致";
+				param.expand = JSON.stringify(expand);
+				return param;
+			},
 			async submitHouse(){
 				if(this.overChange){
-					// return uni.showToast({
-					//     title: "空间正在调整",
-					//     icon: "none",
-					//     duration: 3000
-					// });
+					this.$message.warning("空间正在调整");
+					return false
 				}
 				// this.$refs.myLoading.showLoading("提交中...")
 				let shottingImg = await this.shottingAction() + "?x-oss-process=image/auto-orient,1/quality,Q_46/format,jpg";//开始截图
@@ -692,6 +702,7 @@
 					}
 					param.layoutStruct.push(houseData)
 				})
+				param = this.hushangHandle(param)
 				console.warn("submitHouse-param: ", param);
 				let trackparam = {
 					type: 'CLK', //埋点类型

+ 23 - 7
src/pages/webgl_rxdz_customize/webgl_rxdz_customize.html

@@ -5,11 +5,11 @@
     <div class="contentBox">
         <!-- 图片区域 -->
         <div class="picArea">
-            <div class="master-pic">
+            <div class="master-pic" v-if="tabData[tabIndex] && tabData[tabIndex].hardboundEffect.length>0">
 				<el-carousel :autoplay="false" :loop="false" :indicator-dots="false"
 					@change="swiperChangeImg" class="master-pic-swiper" 
 					:current="currImgIdx" ref="carousel">
-                    <el-carousel-item v-for="(img,s) in hardboundEffect" :key="s" :item-id="s" class="master-pic-img">
+                    <el-carousel-item v-for="(img,s) in tabData[tabIndex].hardboundEffect" :key="s" :item-id="s" class="master-pic-img">
                         <img @touchstart="mytouchstart" @touchmove="mytouchmove" @touchend="mytouchend" class="master-pic-img" :src="img" mode="aspectFill" />
 						<div class="lookHouseView rows justify-center" v-if="tabIndex==0 && (!shareUserId || shareUserId==userId)" @click="toMode">
 							<img class="icon-ai" src="https://dm.static.elab-plus.com/miniProgram/iconfont/icon-ai.png" mode="widthFix"/>
@@ -18,9 +18,9 @@
                         <!-- <c-img class="master-pic-img" :style="'background-color:#fff'" :src="img" mode="aspectFill"></c-img> -->
                     </el-carousel-item>
                 </el-carousel>
-				<div class="indicator-view rows" v-if="hardboundEffect && hardboundEffect.length > 1">
+				<div class="indicator-view rows" v-if="tabData[tabIndex].hardboundEffect && tabData[tabIndex].hardboundEffect.length > 1">
 					<div class="indicator-item" :class="{'active': currImgIdx == idx}" 
-					v-for="(item, idx) in hardboundEffect" :key="idx"></div>
+					v-for="(item, idx) in tabData[tabIndex].hardboundEffect" :key="idx"></div>
 				</div>
             </div>
             <div class="tabList rows flex-start">
@@ -47,18 +47,34 @@
             </div>
             <!-- 文字信息区域 -->
             <div class="info-bar">
+				<div class="info-item" v-if="layoutStruct.expand && layoutStruct.expand.landNo">
+				    <div class="info-item-label">地块</div>
+				    <div class="info-item-value">{{layoutStruct.expand.landNo || '-'}}</div>
+				</div>
+				<div class="info-item" v-if="layoutStruct.expand && layoutStruct.expand.buildingArea">
+				    <div class="info-item-label">建筑面积<span class="textAbout">约</span></div>
+				    <div class="info-item-value">{{layoutStruct.expand.buildingArea+'m²' || '-'}}</div>
+				</div>
+				<div class="info-item" v-if="layoutStruct.expand && layoutStruct.expand.layer">
+				    <div class="info-item-label">层数</div>
+				    <pre class="info-item-value">{{layoutStruct.expand.layer.replace(/&/g,'\n') || '-'}}</pre>
+				</div>
+				<div class="info-item" v-if="layoutStruct.expand && layoutStruct.expand.structureDescription">
+				    <div class="info-item-label">结构</div>
+				    <pre class="info-item-value">{{layoutStruct.expand.structureDescription.replace(/&|·/g,'\n') || '-'}}</pre>
+				</div>
                 <div class="info-item">
                     <div class="info-item-label">户型</div>
                     <div class="info-item-value eslipe">{{form.layoutName || '-'}}</div>
                 </div>
                 <div class="info-item">
-                    <div class="info-item-label">面积<text class="textAbout">约</text></div>
+                    <div class="info-item-label">地块面积<span class="textAbout">约</span></div>
                     <div class="info-item-value">{{form.layoutArea?(form.layoutArea+'m²'):'-'}}</div>
                 </div>
-                <div class="info-item">
+                <!-- <div class="info-item">
                     <div class="info-item-label">家庭结构</div>
                     <div class="info-item-value">{{layoutStruct.spaceName || '-'}}</div>
-                </div>
+                </div> -->
                 <div class="info-item" v-if="form.style">
                     <div class="info-item-label">风格</div>
                     <div class="info-item-value">{{form.style || '-'}}</div>

+ 4 - 2
src/pages/webgl_rxdz_customize/webgl_rxdz_customize.scss

@@ -153,6 +153,7 @@ page {
         padding: 90rem 60rem 20rem;
 		box-sizing: border-box;
 		color: #fff;
+		z-index: 3;
 		.line{
 			position: absolute;
 			top:0rem;
@@ -244,7 +245,7 @@ page {
                 font-family: "DIN Alternate Bold";
                 font-weight: bold;
                 font-size: 34rem;
-                white-space: nowrap;
+                // white-space: nowrap;
             }
         }
     }
@@ -258,7 +259,7 @@ page {
 	left: 0;
 	top:930rem;
 	
-	z-index: -1;
+	z-index: 1;
 	overflow: hidden;
 	box-sizing: border-box;
 	.img{
@@ -274,6 +275,7 @@ page {
 	padding-top:128rem;
 	padding-bottom:300rem;
     box-sizing: border-box;
+	z-index: 3;
     .bottom-title{
 		font-family: "DIN Alternate Bold";
 		font-weight: 700;

+ 31 - 9
src/pages/webgl_rxdz_customize/webgl_rxdz_customize.vue

@@ -103,6 +103,25 @@ export default {
 			// this.showToast("敬请期待!");
 			this.$message.warning("敬请期待");
 		},
+		tabDataHandle(expand){
+			let tmp = expand;
+			let data = {
+				name : "我的地块",
+				imgUrl : tmp.landImg,
+				hardboundEffect:[tmp.landImg],
+				gsImage:tmp.landImg,
+				area:'',
+			}
+			this.tabData.push(data);
+			data = {
+				name : "我的房子",
+				imgUrl : tmp.baseImg,
+				hardboundEffect:[tmp.baseImg,tmp.bgPrototypeImg],
+				gsImage:tmp.baseImg,
+				area:'',
+			}
+			this.tabData.push(data)
+		},
         async getIdData(){
 			let userId = this.userId || '';
             let params = {
@@ -118,16 +137,22 @@ export default {
             const res = await requestConfig('getCustomizedRecord', params);
             if (res.success ) {
                 let single = res.list[0];
+				this.tabIndex = 0;//表明是户型首图
+				this.tabData = [];
+				if(single.expand){
+					single.expand = JSON.parse(single.expand);
+					this.tabDataHandle(single.expand)
+				}
 				this.layoutStruct = JSON.parse(JSON.stringify(single));
                 // this.number = single.landCode
                 this.form = single.layoutStruct.find(it=>it.floor==single.curFloor);
 
                 this.hardboundEffect = this.form.layoutImgCustomized? [this.form.layoutImgCustomized] : [];//赋值轮播图
-				this.tabIndex = 0;//表明是户型首图
-				this.tabData = [];
 				let data = {
 					name : this.form.layoutName,
 					imgUrl : this.form.layoutImgCustomized,
+					hardboundEffect:[this.form.layoutImgCustomized],
+					gsImage:this.form.layoutImgCustomized,
 					area:'',
 				}
                 this.tabData.push(data);
@@ -141,6 +166,8 @@ export default {
 					let data = {
 						name : item.spaceName,
 						imgUrl : item.hardboundEffect[0],
+						hardboundEffect:item.hardboundEffect,
+						gsImage:item.hardboundEffect[0],
 						area:curSpaceArea,
 					}
 					this.tabData.push(data);
@@ -154,13 +181,8 @@ export default {
             }
             this.tabIndex = id;
             this.currImgIdx = 0;
-			if(id>0){//提取空间轮播图
-				this.hardboundEffect = this.form.houseJson[id - 1].hardboundEffect;//赋值轮播图
-				this.gsImage = this.hardboundEffect[0];//获取高斯模糊的图片
-			}else{
-				this.hardboundEffect = this.form.layoutImgCustomized? [this.form.layoutImgCustomized] : [];//赋值轮播图
-				this.gsImage = this.form.layoutImgCustomized;//获取高斯模糊的图片
-			}
+			this.hardboundEffect = this.tabData[id].hardboundEffect? this.tabData[id].hardboundEffect : [];//赋值轮播图
+			this.gsImage = this.tabData[id].gsImage;//获取高斯模糊的图片
             let param = {
                 type: 'CLK', //埋点类型
                 clkId: 'clk_2cmina_23080421', //点击ID

+ 4 - 0
src/static/globlShowModel.js

@@ -26,6 +26,10 @@ var globlShowModel = [
 	"BP_L_TeaTable02",
 	"BP_B_bigbed01",
 	"BP_T_bathtub01",
+	"BP_G_tree00",
+	"BP_G_tree01",
+	"BP_G_tree02",
+	"BP_G_tree03",
 ];
 
 module.exports = globlShowModel;

+ 3 - 3
src/static/layoutModelData.js

@@ -7,7 +7,7 @@ var layoutModel = [
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_B_verysmallbed.glb', name: '0.9m床',modelName: 'BP_B_verysmallbed', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_L_31sofa.gltf', name: '4人沙发',modelName: 'BP_L_31sofa01', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_L_31TV.glb', name: '电视墙',modelName: 'BP_L_31TV01', type:1},
-	// {url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_D_4people_square.glb', name: '4人方桌',modelName: 'BP_D_4people_square', type:1},
+	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_D_4people_square.glb', name: '4人方桌',modelName: 'BP_D_4people_square', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_B_yigui.glb', name: '衣柜',modelName: 'BP_B_yigui01', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_L_311sofa01.gltf', name: '5人沙发',modelName: 'BP_L_311sofa01', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_L_321sofa.gltf', name: '6人沙发',modelName: 'BP_L_321sofa01', type:1},
@@ -16,7 +16,7 @@ var layoutModel = [
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_D_6people_long.gltf', name: '6人长桌',modelName: 'BP_D_6people_long01', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_D_8people_long.gltf', name: '8人长桌',modelName: 'BP_D_8people_long', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_D_12people_round1.gltf', name: '12人圆桌',modelName: 'BP_D_12people_round', type:1},
-	// {url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_B_penzai01.glb', name: '盆栽',modelName: 'BP_B_penzai02', type:1},
+	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_B_penzai01.glb', name: '盆栽',modelName: 'BP_B_penzai02', type:1},
 
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_L_backsofa01.gltf', name: '靠背沙发01',modelName: 'BP_D_backsofa01', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_L_facesofa01.gltf', name: '对坐沙发01',modelName: 'BP_D_facesofa01', type:1},
@@ -57,7 +57,7 @@ var layoutModel = [
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_K_shuipen01.glb', name: '水盆01',modelName: 'BP_K_shuipen01', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_K_shuipen02.glb', name: '水盆02',modelName: 'BP_K_shuipen02', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_K_Kitchentable001.glb', name: '台面',modelName: 'BP_K_Kitchentable002', type:1},
-	// {url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_L_2sofa.glb', name: '2人沙发',modelName: 'BP_L_2sofa', type:1},
+	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_L_2sofa.glb', name: '2人沙发',modelName: 'BP_L_2sofa', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_K_caozuotai01.glb', name: '操作台01',modelName: 'BP_K_caozuotai001', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_K_caozuotai02.glb', name: '操作台02',modelName: 'BP_K_caozuotai002', type:1},
 	{url: 'https://dm.static.elab-plus.com/miniProgram/model/BP_K_caozuotai03.glb', name: '操作台03',modelName: 'BP_K_caozuotai03', type:1},

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 5 - 5
webgl/static/js/app.js