Browse Source

门店列表,海报

twt 1 year ago
parent
commit
e05cb7cf77

+ 10 - 2
pages/activity/jkDetail.vue

@@ -424,7 +424,12 @@
 		   
 		   
 		},
-	
+		onShow() {
+			this.shopName=this.$store.state.ckshopInfo.shopName;
+			this.ckshopdata=this.$store.state.ckshopInfo
+			this.shopInfo=this.$store.state.ckshopInfo
+			//console.log(this.shopInfo)
+		},
 		onPullDownRefresh(){
 			//this.getInfo();
 			this.queryActivityInfo();
@@ -798,7 +803,10 @@
 			},
 			showCkshop(){
 				console.log("选择门店")
-				this.ckshopShow=true;
+				//this.ckshopShow=true;
+				uni.navigateTo({
+					url:'/pages/shop/ckshopList?goodsId='+this.collectingID+'&type=5'
+				})
 				
 			},
 			noShowShop(){

+ 8 - 0
pages/index/onlineBooking.vue

@@ -420,6 +420,14 @@
 				this.selectedItems = []
 			},
 			yuyue() {
+				if(this.shopInfo.shopState!=1){
+					uni.showToast({
+						title: '当前门店暂未营业',
+						icon: 'none',
+						duration: 3000
+					});
+					return false
+				}
 				if(!this.userInfo){
 					this.authorizShow=true
 				}else{

+ 203 - 10
pages/index/paintShopList.vue

@@ -1,6 +1,17 @@
 <template>
 	<view class="box">
-
+        <view class="regionBox">
+        	<view class="regionLine" @click="gocity">
+        		<view class="regionTxt">{{cityName}}</view>
+        		<image src="../../static/timg/icon_arrow_def@2x.png" mode="" class="jtbelow"></image>
+        	</view>
+        	<view class="regionSx"></view>
+        	<view class="regionLine" @click="quCilck">
+        		<view class="regionTxt">{{areaName}}</view>
+        		<image src="../../static/timg/icon_arrow_def@2x.png" mode="" class="jtbelow"></image>
+        	</view>
+        </view>
+		<view style="height: 90rpx;"></view>
 		<view class="shopline" v-for="(item,index) in queryShopList" @click="goDetail(item)">
 			<view class="shoplineLeft">
 				<image :src="item.photoPath" mode="" class="shopImg" v-if="item.photoPath"></image>
@@ -28,7 +39,20 @@
 		<view class="noMore" v-if="noMoreShow && (queryShopList.length!=0)">没有更多数据</view>
 		<!-- 无数据空白页 -->
 		<nodata v-if="queryShopList.length==0"></nodata>
-
+        <uni-popup ref="popup" type="right" :mask-click="true">
+        	<view class="popup-content">
+        		<scroll-view class="brandList" scroll-y="true">
+        			<!-- :class="{areaActvie:item.area==areaName}" -->
+        			<view v-for="item in areaList" class="areaListLine"
+        			 
+        			 @click="checkarea(item)">
+        			  <span >{{item.area}}</span>
+        			  <image v-if="item.code==area" class="areaCkIcon" src="http://dmsphoto.66km.com.cn/thFiles/0A1DADEA-1807-4ABC-B391-ECC8B1882DA4.png" mode=""></image>
+        			</view>
+        		</scroll-view>
+        	</view>
+        	
+        </uni-popup>
 	</view>
 </template>
 
@@ -48,25 +72,86 @@
 				queryShopList: '',
 				noMoreShow: false,
                 goodsId:'',
-
+                cityName:'城市',
+                area:'',
+                cityCode:'',
+                areaName:'区域',
+                loading:false,
+                areaList:'',
 
 			}
 		},
 
 		onLoad(opt) {
-			
-			
-			this.getqueryShopList() //获取全部门店列表
+			var that = this;
+			uni.removeStorageSync('selectCity');
+			uni.authorize({
+				scope: 'scope.userLocation',
+				success() {
+					uni.getLocation({
+						type: 'gcj02',
+						success: function(res) {
+							console.log(res)
+							that.location.lat = res.latitude
+							that.location.lng = res.longitude
+					         that.getAdress();
+							//that.getqueryShopList() //获取全部门店列表
+					
+						},
+						fail(err) {
+					      console.log(err)
+						  that.getqueryShopList() //获取全部门店列表
+						}
+					});
+				},
+				fail: (err) => {
+					 that.getqueryShopList();
+					 
+				}})
+			//this.getqueryShopList() //获取全部门店列表
+		},
+		onShow() {
+			const selectCity = uni.getStorageSync('selectCity');
+			//console.log("onShow")
+			//console.log(selectCity)
+			if(selectCity){
+				this.cityName=selectCity.city
+				this.cityCode=selectCity.code
+				this.areaName='区域'
+				this.area=''
+				this.getAreaList()
+				this.getqueryShopList() //获取门店列表
+			}
 		},
 		methods: {
-
-
+            quCilck(){
+            	this.$refs.popup.open("right")
+            	this.popupShow=true;
+            },
+            gocity(){
+            	uni.navigateTo({
+            		url:'/pages/subPack/chooseCity?type=3'
+            	})
+            },
+            checkarea(item){
+            	if(this.area==item.code){
+            		this.areaName='区域'
+            		this.area=''
+            		this.getqueryShopList() //获取门店列表
+            	}else{
+            		this.areaName=item.area
+            		this.area=item.code
+            		this.getqueryShopList() //获取门店列表
+            	}
+            	this.$refs.popup.close()
+            },
 			getqueryShopList() {
 				uni.showLoading({
 					title: '加载中'
 				})
 				this.$http('openSheetMetalSprayPaint/queryBpshopList', {
-     
+                      city:this.cityCode,
+                      area:this.area
 				}, 'GET').then(res => {
 					uni.hideLoading();
 					this.queryShopList = res.data
@@ -74,7 +159,49 @@
 
 				})
 			},
-
+         getAreaList(){
+            	this.$http('openSheetMetalSprayPaint/shop-area-list', {
+            	    city:this.cityCode
+            	}, 'GET').then(res => {
+            	    this.areaList=res.data
+            	
+            	})
+            },
+			getAdress(){
+				var that=this;
+				var location = this.location.lng + ',' + this.location.lat
+				console.log('location'+location)
+				uni.request({
+					url: 'https://restapi.amap.com/v3/geocode/regeo',
+					data: {
+						key: '389a059efa3f499d9145eb84b1c3248d',
+						location: location,
+					},
+					dataType: "json",
+					success: (res) => {
+						console.log('定位城市', res);
+						if(res.data.regeocode){
+							console.log("城市名称")
+							 console.log(res.data.regeocode.addressComponent.city)
+							// console.log(res.data.pois[0].cityname)
+							let cityname = res.data.regeocode.addressComponent.city;
+							var cityCode = res.data.regeocode.addressComponent.adcode
+							cityCode = cityCode.slice(0, -2)
+							cityCode = cityCode + '00'
+							this.cityName = cityname
+							this.cityCode = cityCode
+							that.getqueryShopList() //获取全部门店列表
+							that.getAreaList()
+							
+						}else{
+							console.log("接口获取失败")
+							that.cityCode = ''
+							that.getqueryShopList() //获取全部门店列表
+						}
+						
+					}
+				});
+			},
 			goDetail(item) {
 				 this.$store.commit('mutationsckshopInfo', item)	
 				uni.navigateBack({
@@ -338,4 +465,70 @@
 		color: #999999;
 		font-size: 28rpx;
 	}
+	.regionSx{
+		width: 2rpx;height: 33rpx;background:#EEEEEE;
+	}
+	.regionLine{
+		display: flex;justify-content: center;font-size: 26rpx;
+		width: 370rpx;line-height: 33rpx;color: #3C3C3C;
+	}
+	.regionBox{
+		display: flex;
+		justify-content: center;
+		background: #FFFFFF;
+		padding: 20rpx 0;
+		margin-bottom: 20rpx;
+		position: fixed;
+		width: 100vw;
+		top: 0;left: 0;
+	}
+	.jtbelow{
+		width: 14rpx;height: 7rpx;
+		margin-left: 10rpx;margin-top: 10rpx;
+	}
+	.popup-content{
+		width: 590rpx;
+		background: #FFFFFF;
+		height: 100vh;
+	}
+	.brandList{
+		height:99vh;
+	}
+	.areaListLine{
+		padding:30rpx 24rpx;
+		color: #666666;
+		font-size: 28rpx;
+		border-bottom: 1px solid #eaeaea;
+		display: flex;
+		justify-content: space-between;
+		line-height: 28rpx;
+	}
+	.areaActvie{
+		background: #F19D01;
+		color: #FFFFFF;
+	}
+	.popup-content{
+		width: 590rpx;
+		background: #FFFFFF;
+		height: 100vh;
+	}
+	.brandList{
+		height:99vh;
+	}
+	.areaListLine{
+		padding:30rpx 24rpx;
+		color: #666666;
+		font-size: 28rpx;
+		border-bottom: 1px solid #eaeaea;
+		display: flex;
+		justify-content: space-between;
+		line-height: 28rpx;
+	}
+	.areaActvie{
+		background: #F19D01;
+		color: #FFFFFF;
+	}
+	.areaCkIcon{
+		width: 38rpx;height: 28rpx;
+	}
 </style>

+ 1 - 1
pages/index/shopList.vue

@@ -162,7 +162,7 @@
 			},
 			gocity(){
 				uni.navigateTo({
-					url:'/pages/subPack/chooseCity'
+					url:'/pages/subPack/chooseCity?type=1'
 				})
 			},
 			checkarea(item){

+ 5 - 2
pages/integral/integralgoodsDetail.vue

@@ -194,7 +194,7 @@
 			
 		},
 		onShow() {
-			//this.shopInfo=this.$store.state.ckshopInfo;
+			this.shopInfo=this.$store.state.ckshopInfo;
 			
 			//console.log(this.shopInfo)
 		},
@@ -224,7 +224,10 @@
 				this.ckshopShow=false;
 			},
 			ckShop(){
-				this.ckshopShow=true;
+				//this.ckshopShow=true;
+				uni.navigateTo({
+					url:'/pages/shop/ckshopList?goodsId='+this.id+'&type=4'
+				})
 			},
 			ckshop2(item){
 				if(item.qty){

+ 217 - 14
pages/shop/ckshopList.vue

@@ -1,6 +1,17 @@
 <template>
 	<view class="box">
-
+        <view class="regionBox">
+        	<view class="regionLine" @click="gocity">
+        		<view class="regionTxt">{{cityName}}</view>
+        		<image src="../../static/timg/icon_arrow_def@2x.png" mode="" class="jtbelow"></image>
+        	</view>
+        	<view class="regionSx"></view>
+        	<view class="regionLine" @click="quCilck">
+        		<view class="regionTxt">{{areaName}}</view>
+        		<image src="../../static/timg/icon_arrow_def@2x.png" mode="" class="jtbelow"></image>
+        	</view>
+        </view>
+		<view style="height: 90rpx;"></view>
 		<view class="shopline" v-for="(item,index) in queryShopList" @click="goDetail(item)">
 			<view class="shoplineLeft">
 				<image :src="item.photoPath" mode="" class="shopImg" v-if="item.photoPath"></image>
@@ -28,7 +39,20 @@
 		<view class="noMore" v-if="noMoreShow && (queryShopList.length!=0)">没有更多数据</view>
 		<!-- 无数据空白页 -->
 		<nodata v-if="queryShopList.length==0"></nodata>
-
+        <uni-popup ref="popup" type="right" :mask-click="true">
+        	<view class="popup-content">
+        		<scroll-view class="brandList" scroll-y="true">
+        			<!-- :class="{areaActvie:item.area==areaName}" -->
+        			<view v-for="item in areaList" class="areaListLine"
+        			 
+        			 @click="checkarea(item)">
+        			  <span >{{item.area}}</span>
+        			  <image v-if="item.code==area" class="areaCkIcon" src="http://dmsphoto.66km.com.cn/thFiles/0A1DADEA-1807-4ABC-B391-ECC8B1882DA4.png" mode=""></image>
+        			</view>
+        		</scroll-view>
+        	</view>
+        	
+        </uni-popup>
 	</view>
 </template>
 
@@ -48,14 +72,21 @@
 				queryShopList: '',
 				noMoreShow: false,
                 goodsId:'',
-
-
+                cityName:'城市',
+                area:'',
+                cityCode:'',
+				areaName:'区域',
+				loading:false,
+                areaList:'',
+				type:'',
 			}
 		},
 
 		onLoad(opt) {
 			var that = this;
 			this.goodsId=opt.goodsId;
+			this.type=opt.type
+			uni.removeStorageSync('selectCity');
 			uni.authorize({
 				scope: 'scope.userLocation',
 				success() {
@@ -65,8 +96,8 @@
 							console.log(res)
 							that.location.lat = res.latitude
 							that.location.lng = res.longitude
-					
-							that.getqueryShopList() //获取全部门店列表
+					         that.getAdress();
+							//that.getqueryShopList() //获取全部门店列表
 					
 						},
 						fail(err) {
@@ -80,25 +111,152 @@
 					 
 				}})
 		},
+		onShow() {
+			const selectCity = uni.getStorageSync('selectCity');
+			//console.log("onShow")
+			//console.log(selectCity)
+			if(selectCity){
+				this.cityName=selectCity.city
+				this.cityCode=selectCity.code
+				this.areaName='区域'
+				this.area=''
+				this.getAreaList()
+				this.getqueryShopList() //获取门店列表
+			}
+		},
 		methods: {
-
-
+            quCilck(){
+            	this.$refs.popup.open("right")
+            	this.popupShow=true;
+            },
+            gocity(){
+				if(this.type==4){
+					uni.navigateTo({
+						url:'/pages/subPack/chooseCity?type=4&id='+this.goodsId
+					})
+				}else if(this.type==5){
+					uni.navigateTo({
+						url:'/pages/subPack/chooseCity?type=5&id='+this.goodsId
+					})
+				}else{
+					uni.navigateTo({
+						url:'/pages/subPack/chooseCity?type=2&id='+this.goodsId
+					})
+				}
+            	
+            },
+           checkarea(item){
+				if(this.area==item.code){
+					this.areaName='区域'
+					this.area=''
+					this.getqueryShopList() //获取门店列表
+				}else{
+					this.areaName=item.area
+					this.area=item.code
+					this.getqueryShopList() //获取门店列表
+				}
+				this.$refs.popup.close()
+			},
 			getqueryShopList() {
 				uni.showLoading({
 					title: '加载中'
 				})
-				this.$http('openMall/openStoreList', {
-                    goodsId:this.goodsId,
-					lat: this.location.lat ? this.location.lat : '',
-					lng: this.location.lng ? this.location.lng : '',
-				}, 'GET').then(res => {
+				if(this.type==4){
+					var url='openIntegralMall/getShopList'
+					var	params = {
+							id:this.goodsId,
+							city:this.cityCode,
+							area:this.area
+						}
+				}else if(this.type==5){
+						var url='openHome/queryShopList'
+						var	params = {
+								collectingID:this.goodsId,
+								city:this.cityCode,
+								area:this.area
+							}
+				}
+				else{
+					var url='openMall/openStoreList'
+					var	params = {
+							goodsId:this.goodsId,
+							id:this.goodsId,
+							lat: this.location.lat ? this.location.lat : '',
+							lng: this.location.lng ? this.location.lng : '',
+							city:this.cityCode,
+							area:this.area
+						}
+					
+				}
+				this.$http(url,params, 'GET').then(res => {
 					uni.hideLoading();
 					this.queryShopList = res.data
 					//console.log('list+=', this.queryShopList);
 
 				})
 			},
-
+            getAreaList(){
+				if(this.type==4){
+					var url='openIntegralMall/shop-area-list'
+					var	params = {
+							city:this.cityCode,
+							id:this.goodsId,
+						}
+				}else if(this.type==5){
+					//集客
+					var url='openHome/shop-area-list'
+					var	params = {
+							city:this.cityCode,
+							collectingID:this.goodsId,
+						}
+				}
+				else{
+					var url='openMall/shop-area-list'
+					var	params = {
+							city:this.cityCode,
+							id:this.goodsId,
+						}
+				}
+            	this.$http(url, params, 'GET').then(res => {
+            	    this.areaList=res.data
+            	
+            	})
+            },
+			getAdress(){
+				var that=this;
+				var location = this.location.lng + ',' + this.location.lat
+				console.log('location'+location)
+				uni.request({
+					url: 'https://restapi.amap.com/v3/geocode/regeo',
+					data: {
+						key: '389a059efa3f499d9145eb84b1c3248d',
+						location: location,
+					},
+					dataType: "json",
+					success: (res) => {
+						console.log('定位城市', res);
+						if(res.data.regeocode){
+							console.log("城市名称")
+							 console.log(res.data.regeocode.addressComponent.city)
+							// console.log(res.data.pois[0].cityname)
+							let cityname = res.data.regeocode.addressComponent.city;
+							var cityCode = res.data.regeocode.addressComponent.adcode
+							cityCode = cityCode.slice(0, -2)
+							cityCode = cityCode + '00'
+							this.cityName = cityname
+							this.cityCode = cityCode
+							that.getqueryShopList() //获取全部门店列表
+							that.getAreaList()
+							
+						}else{
+							console.log("接口获取失败")
+							that.cityCode = ''
+							that.getqueryShopList() //获取全部门店列表
+						}
+						
+					}
+				});
+			},
 			goDetail(item) {
 				 this.$store.commit('mutationsckshopInfo', item)	
 				uni.navigateBack({
@@ -362,4 +520,49 @@
 		color: #999999;
 		font-size: 28rpx;
 	}
+	.regionSx{
+		width: 2rpx;height: 33rpx;background:#EEEEEE;
+	}
+	.regionLine{
+		display: flex;justify-content: center;font-size: 26rpx;
+		width: 370rpx;line-height: 33rpx;color: #3C3C3C;
+	}
+	.regionBox{
+		display: flex;
+		justify-content: center;
+		background: #FFFFFF;
+		padding: 20rpx 0;
+		margin-bottom: 20rpx;
+		position: fixed;
+		width: 100vw;
+		top: 0;left: 0;
+	}
+	.jtbelow{
+		width: 14rpx;height: 7rpx;
+		margin-left: 10rpx;margin-top: 10rpx;
+	}
+	.popup-content{
+		width: 590rpx;
+		background: #FFFFFF;
+		height: 100vh;
+	}
+	.brandList{
+		height:99vh;
+	}
+	.areaListLine{
+		padding:30rpx 24rpx;
+		color: #666666;
+		font-size: 28rpx;
+		border-bottom: 1px solid #eaeaea;
+		display: flex;
+		justify-content: space-between;
+		line-height: 28rpx;
+	}
+	.areaActvie{
+		background: #F19D01;
+		color: #FFFFFF;
+	}
+	.areaCkIcon{
+		width: 38rpx;height: 28rpx;
+	}
 </style>

+ 5 - 3
pages/shop/wp.vue

@@ -59,6 +59,7 @@
 			//this.canvasW = uni.getSystemInfoSync().windowWidth
 			//this.canvasH = this.calculateCanvasHeight()
 			this.avatar=opt.img;
+			//this.avatar='http://dmsphoto.66km.com.cn/marketing/B7511CA2-CC50-4F2C-867D-DB15783CE3C5.jpg';
 			console.log(this.avatar.slice(0,5))
 			/* if(this.avatar.slice(0,5)=='https'){
 				
@@ -179,7 +180,7 @@
 			},
 			async toDrawCanvas() {
 				const padding = uni.upx2px(34)
-				const cardHeight = uni.upx2px(380)
+				const cardHeight = uni.upx2px(420)
 				const cw = this.canvasW - 2 * padding
                const r = uni.upx2px(12)
 				let ctx = uni.createCanvasContext('mini_poster', this)
@@ -200,7 +201,8 @@
 				this.drawCard(ctx, padding, padding, cw, cardHeight)
 				// draw avatar
 				const av = uni.upx2px(540)
-				const topimgh = uni.upx2px(317)
+				const topimgh = uni.upx2px(360)
+				//const topimgh ='auto'
 				//console.log(av)
 				//console.log(topimgh)
 				const hi = await this.downloadImage(this.avatar)
@@ -273,7 +275,7 @@
 				// draw company
 				//let vp = y + uni.upx2px(45)
 				//const hp = x + uni.upx2px(52)
-				let vp =  uni.upx2px(400)
+				let vp =  uni.upx2px(440)
 				
 				var hp = uni.upx2px(36)
 				ctx.setTextBaseline('center')

+ 27 - 6
pages/subPack/chooseCity.vue

@@ -51,11 +51,13 @@
 					lng: '',
 					lat: '',
 				},
-				
-
+				type:'',
+                id:'',
 			}
 		},
-		onLoad() {
+		onLoad(opt) {
+			this.type=opt.type
+			this.id=opt.id
 			this.getData();
 		},
 		onShow() {
@@ -147,11 +149,30 @@
 				uni.showLoading({
 					title: '加载中'
 				})
-
-				let url = 'opencarOwnerHome/shop-city-list',
-					params = {
+				var	params = {
 						
 					}
+                if(this.type==2){
+					//项目商品下单
+					var url = 'openMall/shop-city-list'
+					params.id=this.id
+				}else if(this.type==3){
+					//板金喷漆
+					var url = 'openSheetMetalSprayPaint/shop-city-list'
+				}else if(this.type==1){
+					//门店列表
+					var url = 'opencarOwnerHome/shop-city-list'
+				}else if(this.type==4){
+					//积分商城
+					var url = 'openIntegralMall/shop-city-list'
+					params.id=this.id
+				}else if(this.type==5){
+					//集客
+					var url = 'openHome/shop-city-list'
+					params.collectingID=this.id
+				}
+				
+				
 				this.$http(url, params, 'GET').then(res => {
 					uni.hideLoading()
 

+ 1 - 1
utils/request.js

@@ -10,7 +10,7 @@ const extConfig = uni.getExtConfigSync();
 console.log(extConfig)
 const baseUrl=extConfig.url+'/'
 //const baseUrl='http://192.168.0.127:20189/'
-//const baseUrl='http://192.168.0.174:20187/'
+//const baseUrl='http://192.168.0.146:20187/'
 //const baseUrl='http://dms.66km.com.cn/'
 
 //wx2c6f04c0dcd15984正式  wx33053a645546ec31 E37BB296-5A08-4534-859D-B351BA611AF9 EEADACCD-8A19-499D-8AD7-6975D2C93243