twt 3 周之前
父节点
当前提交
e0775f5593
共有 4 个文件被更改,包括 492 次插入2 次删除
  1. 7 0
      pages.json
  2. 7 1
      pages/index/carGroup.vue
  3. 1 1
      pages/index/index.vue
  4. 477 0
      pages/index/wiper.vue

+ 7 - 0
pages.json

@@ -102,6 +102,13 @@
 				"navigationBarTitleText": "选择车型"
 				
 			}
+		},
+		{
+			"path": "pages/index/wiper",
+			"style": {
+				"navigationBarTitleText": "雨刷",
+				"navigationStyle": "custom"
+			}
 		}
 	],
 	/* "tabBar": {

+ 7 - 1
pages/index/carGroup.vue

@@ -61,7 +61,13 @@
 				  uni.navigateTo({
 				  	url:'/pages/index/gearboxOil?nLevelID='+this.optdata.nLevelID+'&logo='+this.optdata.logo+'&value='+e.value+'&id='+e.id+'&isVin='+this.optdata.isVin+'&vin='+this.optdata.vin
 				  })
-			  }else{
+			  }
+			  else if(this.type==4){
+				  uni.navigateTo({
+					url:'/pages/index/wiper?nLevelID='+this.optdata.nLevelID+'&logo='+this.optdata.logo+'&value='+e.value+'&id='+e.id+'&isVin='+this.optdata.isVin+'&vin='+this.optdata.vin
+				  })
+			  }
+			  else{
 				 uni.navigateTo({
 				 	url:'/pages/index/byItem?nLevelID='+e.carModelInfo.nLevelID+'&logo='+this.optdata.logo+'&manufactor='+this.optdata.manufactor+'&carSeries='+this.optdata.carSeries+'&brand='+this.optdata.brand+'&value='+e.value+'&id='+e.id
 				 })  

+ 1 - 1
pages/index/index.vue

@@ -117,7 +117,7 @@
 			 							<image class="productImg" src="/static/img/bsxglq.png" mode=""></image>
 			 							<view class="productTxt" >变速箱滤清器</view>
 			 						</view>
-			 						<view class="productLine">
+			 						<view class="productLine" @click="goCarModelType(4)">
 			 							<image class="productImg" src="/static/img/yusha.png" mode=""></image>
 			 							<view class="productTxt" >雨刮</view>
 			 						</view>

+ 477 - 0
pages/index/wiper.vue

@@ -0,0 +1,477 @@
+<template>
+	<view class="content">
+	  <homenav :iStatusBarHeight="iStatusBarHeight" :title="'雨刷'"></homenav>
+	  <view class="box">
+		  <view class="historyLine" >
+			  <view class="historyLogoBox">
+			  	<image :src="optdata.logo" mode="" class="historylinecarImg"></image>
+			  </view>
+			  <view>
+			  	<view class="historylinecar">{{optdata.value}}</view>
+			  	<view class="historyLineVin" v-if="optdata.isVin==1">
+			  		<view class="vinms">VIN</view>
+			  		<view class="vinNum">{{optdata.vin}}</view>
+			  	</view>
+			  </view>
+			
+		  </view>
+		 
+	  </view>
+	 <view class="cont">
+		 <view class="topBox">
+		 	<view class="topLine" @click="goby">
+		 		<image src="../../static/img/icon_baoyang.png" mode="" class="toplineImg"></image>
+		 		<view class="topName">保养周期</view>
+		 	</view>
+		 	<view class="topsx"></view>
+		 	<view class="topLine" @click="gopz">
+		 		<image src="../../static/img/icon_cheliang.png" mode="" class="toplineImg"></image>
+		 		<view class="topName">车辆配置</view>
+		 	</view>
+		 </view>
+	 </view>
+		  
+	    <view class="listBox" v-if="MaintainPartList.length!=0">
+			<view class="jiyouBox" v-if="loading">
+				<view class="title">前雨刷</view>
+				<view class="jylineBox">
+					<view class="jyline" v-for="(item,index) in MaintainPartList" ><!-- @click="godetail(item)" -->
+						<view class="jyimgBox">
+							<image v-if="item.imgs.split(',')[0]" :src="item.imgs.split(',')[0]" mode="aspectFit" class="jyimg"></image>
+							<image v-else src="../../static/img/noimg.png" mode="aspectFit" class="jyimg"></image>
+						</view>
+						<view class="jylineRight">
+							<view class="jyName">
+								<span class="jyNametxt">{{item.name}} | {{item.partsCode}} | {{item.factoryNumber}} </span>
+							</view>
+							<view class="modelRemark">{{item.modelRemark}}</view>
+							<view v-for="(exObj,exindex) in item.ExtendDatas" class="exspanBox">
+							   <span class="exspan1" v-for="ex in Object.keys(exObj)" v-if="ex!='partsId'&&exObj[ex]">{{ex}}: <span class="exspan2">{{exObj[ex]}}</span></span>
+							</view>
+						</view>
+						
+					</view>
+				</view>
+				<nodata v-if="MaintainPartList.length==0"></nodata>
+			</view>
+		</view>
+		<view class="listBox" v-if="afterList.length!=0">
+			<view class="jiyouBox" v-if="loading">
+				<view class="title">前雨刷安装视频</view>
+				<view class="jylineBox">
+					<view class="jyline" v-for="(item,index) in afterList" @click="godetail(item)">
+						<view class="jyimgBox">
+							<image v-if="item.imgs.split(',')[0]" :src="item.imgs.split(',')[0]" mode="aspectFit" class="jyimg"></image>
+							<image v-else src="../../static/img/noimg.png" mode="aspectFit" class="jyimg"></image>
+						</view>
+						<view class="jylineRight">
+							<view class="jyName">
+								<!-- <span class="best">最佳</span> -->
+								<span class="jyNametxt">{{item.name}} | {{item.specificationModel}} | {{item.partsCode}} </span>
+							</view>
+							<view class="modelRemark">{{item.modelRemark}}</view>
+							<view v-for="(exObj,exindex) in item.ExtendDatas" class="exspanBox">
+							   <span class="exspan1" v-for="ex in Object.keys(exObj)" v-if="ex!='partsId'&&exObj[ex]">{{ex}}: <span class="exspan2">{{exObj[ex]}}</span></span>
+							</view>
+						</view>
+						
+					</view>
+				</view>
+				<nodata v-if="afterList.length==0"></nodata>
+			</view>
+		</view>
+		  
+		<view v-if="disclaimerShow" class="tiTk">
+		     <view class="disclaimerShowBOx">
+		       <view class="disclaimerTitle">免责声明</view>
+		       <view class="disclaimerTxt">
+				   <view class="disclaimerTxtLIne">1、本系统只作为查询辅助工具,在使用中如有对数据与实车配件产品不匹配疑问时,请务必核实实车配件产品及原车维修保养手册所推荐产品标准</view>
+			       <view class="disclaimerTxtLIne">2、如有系统匹配疑问,无法辅助销售,欢迎进入反馈通道及时反馈</view>
+				   <view class="disclaimerTxtLIne">3、对于使用系统中出现的个别型号不匹配的情况一切解释权归本公司所有</view>
+				   <view class="disclaimerTxtLIne">我司将会不断完善升级系统,力求为客户提供最准确,最完善的配件数据查询服务。</view>
+			   </view>
+		       <view class="disclaimerXc">
+				   <checkbox-group @change="disclaimerChange">
+					   <checkbox style="transform:scale(0.7)" value="1" :checked="disclaimerchecked"  />下次不再提醒
+				   </checkbox-group>
+				   
+		         
+		       </view>
+		
+		       <view class="disclaimerBtnBox" @click="disclaimerBtn">
+		         我知道了
+		       </view>
+		
+		     </view>
+		</view>
+	 
+	  
+	 
+	
+	  
+	</view>
+</template>
+
+<script>
+	import homenav from "../../components/homenav/nav.vue"
+	import nodata from '../../components/nodata/nodata.vue'
+	export default {
+		components: {
+			homenav,nodata
+		},
+		data() {
+			return {
+				optdata:'',
+				isVin:'',
+				vin:'',
+				scarid:'',
+				iStatusBarHeight:'',
+				loading:false,
+				MaintainPartList:[],
+				afterList:[],
+				disclaimerShow:false,
+				disclaimerchecked:false,
+			}
+		},
+		onLoad(opt) {
+			var disclaimercheckedck=uni.getStorageSync('disclaimerchecked');
+			if(disclaimercheckedck!=1){
+			  this.disclaimerShow=true;
+			}
+		   console.log(opt);
+		   this.iStatusBarHeight = uni.getSystemInfoSync().statusBarHeight;
+           this.optdata=opt;
+		    this.queryMaintainPartList()
+		   if(opt.scarid){
+			   this.scarid=opt.scarid;
+			   this.queryCarModelGroupInfo()
+			  
+		   }else{
+			   if(opt.isVin==1){
+				   this.isVin=1;
+				   this.vin=opt.vin
+			   }
+			   		 
+			   this.saveQueryHistory()
+		   }
+		   
+		},
+		methods: {
+		   disclaimerChange(e){
+			   console.log(e)
+			   this.disclaimerchecked=e.detail.value[0]
+		   },
+		   disclaimerBtn(){
+			   console.log(this.disclaimerchecked)
+			   this.disclaimerShow=false;
+			    if(this.disclaimerchecked){
+			    uni.setStorageSync('disclaimerchecked', 1);
+			   } 
+		   },
+		   queryCarModelGroupInfo(){
+			   uni.showLoading({ title: '加载中'});
+			   this.$http('matchingByOpen/queryCarModelGroupInfo', {
+			     id:this.scarid,
+			    
+			    },'POST').then(res => {
+					uni.hideLoading();
+			   		var data={
+						value:res.data.value,
+						id:res.data.id,
+						nLevelID:res.data.carModelInfo.nLevelID,
+						logo:res.data.carModelInfo.logo,
+					}
+					 this.optdata=data;
+			   		this.saveQueryHistory()
+			   })
+		   },
+		   queryMaintainPartList(){
+		   			 uni.showLoading({ title: '加载中'});
+		   			 this.loading=false;
+		   			 this.$http('partsByOpen/queryMaintainPartList', {
+		   			   groupId:this.optdata.id,
+		   			   componentCode:'006001',
+		   			   
+		   			  },'POST').then(res => {
+		   				  this.loading=true;
+		   				 uni.hideLoading();
+		   				 this.MaintainPartList=res.data;//前雨刷
+		   			 })
+					 this.$http('partsByOpen/queryMaintainPartList', {
+					   groupId:this.optdata.id,
+					   componentCode:'006004',
+					   
+					  },'POST').then(res => {
+					 		   				
+						  uni.hideLoading();
+						  this.afterList=res.data;//后雨刷
+					 })
+		   },
+		   saveQueryHistory(){
+			   this.$http2('saveQueryHistory', {
+			     nLevelID:this.optdata.nLevelID,
+				 logo:this.optdata.logo,
+				 title:this.optdata.value,
+				 groupId:this.optdata.id,
+				 isVin:this.isVin,
+				 vin:this.vin
+			    },'POST').then(res => {
+			   				
+			   		
+			   })
+		   },
+           goby(){
+				 uni.navigateTo({
+					url:'/pages/index/maintenance?nLevelID='+this.optdata.nLevelID+'&id='+this.optdata.id
+				 })
+           },
+           godetail(e){
+			 uni.navigateTo({
+				url:'/pages/index/goodsDetail?id='+e.id
+			 })
+           },
+           gopz(){
+			 uni.navigateTo({
+				url:'/pages/index/carConfiguration?nLevelID='+this.optdata.nLevelID
+			 })
+           }
+		}
+	}
+</script>
+
+<style scoped>
+.disclaimerShowBOx{
+  width: 600rpx;
+  background: #FFFFFF;
+  border-radius: 10rpx;
+  padding-top: 24rpx;
+
+}
+.modelRemark{
+	font-weight: 400;
+	    color: #F19D01;
+		font-size: 26rpx;
+}
+.jylineRight{
+	width: 450rpx;padding-left: 16rpx;
+}
+.disclaimerXc{
+	padding-left: 24rpx;
+}
+.disclaimerTitle{
+  text-align: center;font-size: 30rpx;color: #333333;
+}
+.disclaimerTxt{
+color: #333333;font-size: 28rpx;
+padding: 30rpx;line-height: 40rpx;
+}
+.disclaimerBtnBox{
+  display: flex;justify-content: center;color: #3F90F7;
+  border-top: 1px solid #EEEEEE;line-height: 90rpx;margin-top: 24rpx;
+}
+.tiTk{
+	position: fixed;
+	left: 0;top: 0;
+	background: rgba(0, 0, 0, 0.4);
+	width: 100vw;height: 100vh;
+	display: flex;
+	justify-content: center;
+	align-items: center;
+}
+	.exspan1{
+	  margin-top: 5rpx;
+	  font-size: 24rpx;
+	  font-family: PingFangSC-Regular, PingFang SC;
+	  font-weight: 400;
+	  color: #999999;
+	  display: block;
+	 
+	}
+	.exspan2{
+		font-size: 24rpx;
+		font-family: PingFangSC-Regular, PingFang SC;
+		color:#3C3C3C;
+		font-style: normal;
+	}
+.content{
+	min-height: 100vh;
+	background: #F4F5F7;
+}
+.box{
+	padding: 0 24rpx;
+	background: #ffffff;
+}
+.historylinecarImg{
+	width: 54rpx;
+	height: 54rpx;
+}
+.historyLogoBox{
+		display: flex;align-items: center;
+		padding-right: 14rpx;
+	}
+.historylinecar{
+	font-weight: 500;font-size: 26rpx;
+	color: #1A1A1A;
+	line-height: 46rpx;width: 636rpx;
+}
+.historyLine{
+	display: flex;
+	padding: 30rpx 0;
+}
+.title{
+	font-weight: 500;font-size: 28rpx;
+	color: #1A1A1A;border-top-right-radius: 16rpx;
+	line-height: 40rpx;border-top-left-radius: 16rpx;
+	padding:20rpx 30rpx;background:#FF4F00;color: #ffffff;
+}
+.lineBox{
+padding: 0 24rpx;	
+}
+.line{
+	width: 332rpx;
+	height: 206rpx;
+	background: #FFFFFF;
+	border-radius: 16rpx;
+}
+.lineTitle{
+	font-weight: 500;font-size: 28rpx;padding-top: 32rpx;
+	color: #1A1A1A;padding-left: 30rpx;
+	line-height: 40rpx;
+}
+.lineEnglish{
+	font-weight: 400;font-size: 24rpx;
+	color: #999999;padding-left: 30rpx;
+	line-height: 34rpx;padding-top: 10rpx;
+}
+.lineImg1{
+	width: 82rpx;height: 92rpx;
+}
+.lineImgbox{
+	text-align: right;
+}
+.lineImg2{
+	width: 106rpx;height: 82rpx;    margin-top: 10rpx;
+}
+.historyLineVin{
+	display: flex;background: #ffffff;
+}
+.historyLineCar{
+	display: flex;justify-content: space-between;
+}
+.vinNum{
+	font-weight: 400;font-size: 22rpx;padding-left: 10rpx;
+	color: #999999;line-height: 30rpx;
+}
+.vinms{
+	width: 38rpx;
+	height: 26rpx;
+	background: linear-gradient(224deg, #FFDA28 0%, #FFBF35 100%);
+	border-radius: 4rpx;
+	text-align: center;
+	line-height: 26rpx;
+	font-weight: 600;
+	color: #FFFFFF;
+	font-size: 18rpx;
+	margin-top: 2rpx;
+}
+.cont {
+		padding: 30rpx 24rpx;
+	}
+	.toplineImg{
+		width: 35rpx;
+		height: 34rpx;
+	}
+	.topName{
+		line-height: 34rpx;font-weight: 400;
+color: #FFFFFF;font-size: 28rpx;padding-left: 16rpx;
+	}
+	.topBox{
+		width: 702rpx;
+		height: 98rpx;
+		background: #FFFFFF linear-gradient(132deg, #FF8635 0%, #FF4828 100%);
+		border-radius: 16rpx;
+		display: flex;justify-content: center;
+	}
+	.topsx{
+		width: 2rpx;background: #ffffff;
+		margin-left: 85rpx;margin-right: 85rpx;
+		height: 54rpx;margin-top: 22rpx;
+	}
+	.topLine{
+		display: flex;padding-top: 34rpx;
+	}
+	.jiyouBox{
+		border-radius: 16rpx;
+		background: #ffffff;
+	}
+	.jiyoutopTitle{
+		font-weight: 500;font-size: 28rpx;
+		color: #1A1A1A;
+		line-height: 40rpx;
+	}
+	.jyzl{
+		font-weight: 400;line-height: 40rpx;
+		color: #666666;font-size: 24rpx;
+	}
+	.jyimg{
+		width: 200rpx;
+		height: 200rpx;
+		border-radius: 10rpx;
+	}
+	.jyline{
+		width: 302rpx;padding-top: 30rpx;
+	}
+	.jyName{
+		font-weight: 500;font-size: 28rpx;
+		color: #1A1A1A;
+		line-height:36rpx ;
+		overflow: hidden; 
+		text-overflow: ellipsis; 
+		display: -webkit-box; 
+		-webkit-box-orient: vertical; 
+		-webkit-line-clamp: 2;
+		padding-top: 10rpx;
+		width: 450rpx;
+		padding-bottom: 10rpx;
+	}
+	.best{
+		color: #FF4F00;border-radius: 6rpx;
+		padding: 0 8rpx;border: 1px solid #FF4F00;
+	}
+	.jylineBox{
+		/* display: flex;justify-content: space-between;flex-wrap: wrap; */
+		padding: 0 24rpx 30rpx 24rpx;
+	}
+	.jyline{
+		display: flex;
+	}
+	.historyLineVin{
+		display: flex;background: #ffffff;
+	}
+	.historyLineCar{
+		display: flex;justify-content: space-between;
+	}
+	.vinNum{
+		font-weight: 400;font-size: 22rpx;padding-left: 10rpx;
+		color: #999999;line-height: 30rpx;
+	}
+	.vinms{
+		width: 38rpx;
+		height: 26rpx;
+		background: linear-gradient(224deg, #FFDA28 0%, #FFBF35 100%);
+		border-radius: 4rpx;
+		text-align: center;
+		line-height: 26rpx;
+		font-weight: 600;
+		color: #FFFFFF;
+		font-size: 18rpx;
+		margin-top: 2rpx;
+	}
+	.listBox{
+	  padding: 30rpx 24rpx;	
+	  padding-top: 0;
+	}
+	.jyimgBox{
+		border: 1px solid #f3f3f3;    width: 200rpx;border-radius: 10rpx;
+	}
+</style>