zjs_project преди 1 година
родител
ревизия
ba319ddeaa

+ 6 - 3
src/components/newBottomCom/viewPlot/viewPlot.html

@@ -7,7 +7,7 @@
 	<!-- 布局空间列表数据 -->
 	<div class="swiper-view">
 		<div class="tab-content rows flex-start">
-			<div @click="tabIndex=index;selectIndex=0;" class="tab-item columns"
+			<div @click="changeType(index)" class="tab-item columns"
 				:class="{'tabActive': tabIndex == index}" 
 				v-for="(tab,index) in plotList" :key="index" >
 				<!-- <img class="tab-img" :src="tab.imageUrl" mode="aspectFill" /> -->
@@ -18,7 +18,7 @@
 	</div>
 	<div class="plot-content" v-if="plotList && plotList.length>0">
 		<div class="content  rows flex-start">
-			<div @click="changeOption(index)" class="item columns"
+			<div @click="changeOption(item,index)" class="item columns"
 				:class="{'active': selectIndex == index}" 
 				v-for="(item,index) in plotList[tabIndex].dataList" :key="index" >
 				<img class="img" :src="item.renderImage" mode="aspectFill" />
@@ -28,7 +28,10 @@
 			</div>
 		</div>
 	</div>
-	<div class="btn-list rows rows-between">
+	<div class="btn-list rows rows-between" v-if="unSelect">
+		<div class="btn rows up up3 justify-center">确认</div>
+	</div>
+	<div class="btn-list rows rows-between" v-else>
 		<div class="btn rows up up2 justify-center" @click="confirm">确认</div>
 	</div>
 </div>

+ 4 - 0
src/components/newBottomCom/viewPlot/viewPlot.scss

@@ -169,4 +169,8 @@
 .up2{
 	color: rgba(255, 255, 255, 1);
 	background-image:linear-gradient(124deg, rgba(245, 201, 82, 1) 0%, rgba(239, 149, 57, 1) 100%);
+}
+.up3{
+	color: rgba(255, 255, 255, 1);
+	background-image:linear-gradient(124deg, #ccc 0%, #ccc 100%);
 }

+ 19 - 0
src/components/newBottomCom/viewPlot/viewPlot.vue

@@ -27,6 +27,7 @@
 				selectSpace:null,
 				plotList:[],//布局数据
 				spaceList:[],
+				unSelect:false,
 			}
 		},
 		props:{
@@ -114,16 +115,32 @@
 						this.tabIndex = this.plotList.length - 1;
 						this.selectIndex = this.plotList[this.tabIndex].dataList.length - 1;
 						this.lastTabIndex = this.tabIndex;
+						this.unSelect = true;
 					}
 				});
 				console.warn("***viewPlot***", this.plotList)
 			},
+			changeType(index){
+				this.tabIndex=index;
+				this.selectIndex=0;
+				let item = this.plotList[this.tabIndex].dataList[this.selectIndex];
+				if(item.id==this.selectSpace.layoutId){
+					this.unSelect = true;
+				}else{
+					this.unSelect = false;
+				}
+			},
 			//切换选项
 			changeOption(id) {
 				if (id == this.selectIndex) {
 					return false;
 				}
 				this.selectIndex = id;
+				if(item.id==this.selectSpace.layoutId){
+					this.unSelect = true;
+				}else{
+					this.unSelect = false;
+				}
 				// this.plotList[this.tabIndex].checkedIndex = this.optionIndex;
 				// if (this.tabIndex == 0) { //当前为角色时,则需要同步变更上面的
 				// 	this.currImgIdx = id;
@@ -167,6 +184,8 @@
 					}
 				};
 				util.trackRequest(param);
+				this.selectSpace.layoutId = plot.id;
+				this.unSelect = true;
 				this.$parent.$parent.userSelectPlot(plot,this.selectSpace);//告知页面,用户选择的布局id
 				this.lastTabIndex = this.tabIndex;
 			},

+ 1 - 1
src/components/newQCCom/viewCareful/viewCareful.html

@@ -6,7 +6,7 @@
 			<div class="careful-item" v-for="(carefulItem,index) in carefulList" :key="carefulItem.spaceId">
 				<div class="columns rows-between" >
 					<div class="item-top rows rows-between" :class="{active:selectIndex==index}">
-						<div class="rows">
+						<div class="rows" @click="selectSpace(carefulItem,index)">
 							<div class="index-view rows justify-center">{{carefulItem.index+1}}</div>
 							<div class="name-view eslipe" >{{carefulItem.name}}</div>
 							<div class="percent-view">{{carefulItem.percent}}%</div>

+ 4 - 0
src/components/newQCCom/viewCareful/viewCareful.vue

@@ -181,6 +181,10 @@
 				this.$parent.$parent.callBackFun = this.callBack;//向父页面注册通知回调函数
 				this.$emit("curSpaceChange",data);//通知父组件-空间面积变化
 			},
+			selectSpace(item,index){
+				this.selectIndex = index;
+				this.$parent.$parent.curSpaceSelect(item);//向父页面通知空间被选中了
+			},
 			//去往详情页面
 			goRoam(){
 				let item = this.lastCareList[this.selectIndex];

+ 6 - 3
src/components/newQCCom/viewPlot/viewPlot.html

@@ -7,7 +7,7 @@
 	<!-- 布局空间列表数据 -->
 	<div class="swiper-view">
 		<div class="tab-content rows flex-start">
-			<div @click="tabIndex=index;selectIndex=0;" class="tab-item columns"
+			<div @click="changeType(index)" class="tab-item columns"
 				:class="{'tabActive': tabIndex == index}" 
 				v-for="(tab,index) in plotList" :key="index" >
 				<!-- <img class="tab-img" :src="tab.imageUrl" mode="aspectFill" /> -->
@@ -18,7 +18,7 @@
 	</div>
 	<div class="plot-content" v-if="plotList && plotList.length>0">
 		<div class="content  rows flex-start">
-			<div @click="changeOption(index)" class="item columns"
+			<div @click="changeOption(item,index)" class="item columns"
 				:class="{'active': selectIndex == index}" 
 				v-for="(item,index) in plotList[tabIndex].dataList" :key="index" >
 				<img class="img" :src="item.renderImage" mode="aspectFill" />
@@ -28,7 +28,10 @@
 			</div>
 		</div>
 	</div>
-	<div class="btn-list rows rows-between">
+	<div class="btn-list rows rows-between" v-if="unSelect">
+		<div class="btn rows up up3 justify-center">确认</div>
+	</div>
+	<div class="btn-list rows rows-between" v-else>
 		<div class="btn rows up up2 justify-center" @click="confirm">确认</div>
 	</div>
 </div>

+ 4 - 0
src/components/newQCCom/viewPlot/viewPlot.scss

@@ -169,4 +169,8 @@
 .up2{
 	color: rgba(255, 255, 255, 1);
 	background-image:linear-gradient(124deg, rgba(245, 201, 82, 1) 0%, rgba(239, 149, 57, 1) 100%);
+}
+.up3{
+	color: rgba(255, 255, 255, 1);
+	background-image:linear-gradient(124deg, #ccc 0%, #ccc 100%);
 }

+ 20 - 1
src/components/newQCCom/viewPlot/viewPlot.vue

@@ -27,6 +27,7 @@
 				plotList:[],//布局数据
 				curHouseObj:null,
 				spaceList:[],
+				unSelect:false,
 			}
 		},
 		props:{
@@ -112,16 +113,32 @@
 						this.tabIndex = this.plotList.length - 1;
 						this.selectIndex = this.plotList[this.tabIndex].dataList.length - 1;
 						this.lastTabIndex = this.tabIndex;
+						this.unSelect = true;
 					}
 				});
 				console.warn("***viewPlot***", this.plotList)
 			},
+			changeType(index){
+				this.tabIndex=index;
+				this.selectIndex=0;
+				let item = this.plotList[this.tabIndex].dataList[this.selectIndex];
+				if(item.id==this.selectSpace.layoutId){
+					this.unSelect = true;
+				}else{
+					this.unSelect = false;
+				}
+			},
 			//切换选项
-			changeOption(id) {
+			changeOption(item,id) {
 				if (id == this.selectIndex) {
 					return false;
 				}
 				this.selectIndex = id;
+				if(item.id==this.selectSpace.layoutId){
+					this.unSelect = true;
+				}else{
+					this.unSelect = false;
+				}
 				// this.plotList[this.tabIndex].checkedIndex = this.optionIndex;
 				// if (this.tabIndex == 0) { //当前为角色时,则需要同步变更上面的
 				// 	this.currImgIdx = id;
@@ -165,6 +182,8 @@
 					}
 				};
 				util.trackRequest(param);
+				this.selectSpace.layoutId = plot.id;
+				this.unSelect = true;
 				this.$parent.$parent.userSelectPlot(plot,this.selectSpace);//告知页面,用户选择的布局id
 				this.lastTabIndex = this.tabIndex;
 			},

+ 2 - 0
src/pages/webgl_rxdz/webgl_rxdz.vue

@@ -1786,6 +1786,8 @@
 				}
 				this.selectSpace = this.spaceList.find(it=>it.spaceId==gltf.spaceId);
 				this.$store.state.curSpaceId = this.selectSpace.spaceId;
+				this.currentChangeSpaceId = this.selectSpace.spaceId;
+				// this.moveMeshCenter(this.selectSpace);
 				this.changeSpaceColor(this.selectSpace.spaceId,1);//设置选中空间的颜色
 				console.warn("***selectSpaceHandle***",this.selectSpace)
 			},

+ 2 - 0
src/pages/webgl_rxdz_test/webgl_rxdz_test.vue

@@ -1610,6 +1610,8 @@
 				}
 				this.selectSpace = this.spaceList.find(it=>it.spaceId==gltf.spaceId);
 				this.$store.state.curSpaceId = this.selectSpace.spaceId;
+				this.currentChangeSpaceId = this.selectSpace.spaceId;
+				// this.moveMeshCenter(this.selectSpace);
 				this.changeSpaceColor(this.selectSpace.spaceId,1);//设置选中空间的颜色
 				console.warn("***selectSpaceHandle***",this.selectSpace)
 			},