高敬炎 2 éve
szülő
commit
3298e668a3

+ 205 - 0
uni_applet/pageA/food/fondMap.vue

@@ -0,0 +1,205 @@
+
+<template>
+  <view>
+    <view class="map-container">
+      <map style="width: 100%; height: 100vh;" :show-location='true' ref="map" id="map" :latitude="latitude"
+        :longitude="longitude" :markers="marker" :scale="scale" @callouttap='callouttap' 
+        v-if="mapShow">
+        <view class="cover-view">
+          <view style="margin-top: 20rpx;" @click="onControltap">
+            <image class="cover-image" src="@/static/image/food/location.png"></image>
+            <view>定位</view>
+          </view>
+        </view>
+      </map>
+    </view>
+    <view class="search" :style="{top:topHeight+'px'}">
+      <searchBar @click="search" :city="city"></searchBar>
+    </view>
+    <cardList :stationList="markerIdClick" v-if="tag" style="position: fixed;top: 70%;"></cardList>
+    <tabbar :current="current"></tabbar>
+  </view>
+</template>
+ 
+<script>
+  export default {
+    data() {
+      return {
+        mapShow: false,
+        topHeight: 20,
+        tag: false,
+        latitude: '', //纬度
+        longitude: '', //经度
+        scale: 12, //缩放级别
+        current: 1,
+        marker: [],
+        pageSize: 10,
+        pageNum: 1,
+        total: 0, // 总数据量
+        markerIdClick: [],
+        mapList: [],
+      }
+    },
+    async onLoad() {
+      // let userLocation = uni.getStorage({
+      //   key: 'userLocation'
+      // })
+      // await userLocation.then(data => {
+      //   let arr = data[1].data.split(',')
+      //   this.longitude = arr[0]
+      //   this.latitude = arr[1]
+      //   console.log(arr);
+      // })
+      this.getStationList()
+      const {
+        height,
+        top
+      } = uni.getMenuButtonBoundingClientRect();
+      this.topHeight = height + top + 13
+    },
+    methods: {
+     search(searchInp) {
+        console.log('search页面子向父传值', searchInp);
+      },
+      regionChange() {
+        this.tag = false
+        if (this.pageNum * this.pageSize >= this.total) return
+        this.pageNum++
+        this.getStationList()
+      },
+      //定位
+      onControltap() {
+        uni.createMapContext("map", this).moveToLocation({ //moveToLocation将地图中心移动到当前定位点,需要配合map组件的show-location使用
+          latitude: this.latitude,
+          longitude: this.longitude,
+        });
+        console.log('定位');
+      },
+      //气泡点击事件
+      callouttap(e) {
+        let id = String(e.detail.markerId)
+        let arr = this.mapList.find(item => {
+          return item.stationId === id
+        })
+        this.markerIdClick = [arr]
+        this.tag = true
+      },
+	  getList(){
+		  return new Promise((resolve, reject) => {
+			this.$request.baseRequest('admin.tourism.foodInfo', 'foodList', {
+						page: 1,
+						limit: 9999,
+					}, failres => {
+						uni.showToast({
+							icon: "none",
+							title: failres.errmsg,
+							duration: 3000
+						});
+			
+					}).then(res => {
+						uni.hideLoading()
+						 resolve(res)
+					})
+		  })
+	  },
+      async getStationList() {
+        console.log('发送请求前 打印用户经纬度', this.latitude, this.longitude);
+        const data = await this.getList()
+		console.log('queryStationInfos,信息列表显示总数据', data);
+        this.total = data.total
+        data.data.items.forEach(item => {
+			item.latitude=item.location.split(',')[0]
+			item.longitude=item.location.split(',')[1]
+          this.marker.push({
+            id: Number(item.id),
+            iconPath: '/static/image/food/location.png', //显示的图标
+            latitude: Number(item.latitude),
+            longitude: Number(item.longitude),
+            width: 30, 
+            height: 30, 
+            callout: { //气泡窗口 
+              content: '空闲' , //文本
+              color: '#ffffff',
+              fontSize: 15, 
+              borderRadius: 15, 
+              padding: '10',
+              bgColor: '#406390', 
+              display: 'ALWAYS', //常显
+            }
+          })
+        })
+        this.mapShow = true
+        this.mapList = this.mapList.concat(data.data.items)
+        console.log(this.marker);
+        // for (let index in obj.list) {
+        //   let stationMarker = {
+        //     iconPath: '/static/images/mapStation.png', //显示的图标 
+        //     id: Number(index) || 0,
+        //     title: this.mapList[index].stationName || '',
+        //     latitude: Number(this.mapList[index].stationLat),
+        //     longitude: Number(this.mapList[index].stationLng),
+        //     width: 30, 
+        //     height: 30, 
+        //     callout: { //气泡窗口 
+        //       content: '空闲' + this.mapList[index].totalFree, //文本
+        //       color: '#ffffff', //文字颜色
+        //       fontSize: 15, //文本大小
+        //       borderRadius: 15, //边框圆角
+        //       padding: '10',
+        //       bgColor: '#406390', //背景颜色
+        //       display: 'ALWAYS', //常显
+        //     }
+        //   }
+        //   // console.log(stationMarker, 'stationMarker');
+        //   this.marker.push(stationMarker)
+        // }
+      }
+    }
+  }
+</script>
+ 
+<style scoped lang="scss">
+  /deep/ .uni-searchbar__box-search-input {
+    color: #fff !important;
+  }
+ 
+  .search {
+    position: fixed;
+    width: 80%;
+  }
+ 
+  .map-container {
+    margin-top: -40rpx;
+    position: relative;
+    overflow: hidden;
+    border-radius: 50rpx 50rpx 0 0;
+ 
+    .cover-view {
+      display: flex;
+      flex-direction: column;
+      align-items: center;
+      justify-content: center;
+      /* width: 80rpx;
+			height: 160rpx; */
+      padding: 42rpx 22rpx;
+      color: #4F575F;
+      font-weight: 400;
+      background-color: #fff;
+      background-size: 120rpx 120rpx;
+      background-position: center center;
+      position: absolute;
+      top: 150rpx;
+      right: 32rpx;
+      border-radius: 15rpx;
+ 
+ 
+    }
+ 
+    .cover-image {
+      display: inline-block;
+      width: 50rpx;
+      height: 50rpx;
+ 
+    }
+  }
+</style>

+ 35 - 10
uni_applet/pageA/food/menu.vue

@@ -2,14 +2,17 @@
 	<view class="content">
 
 		<view class="">
-			<u-search placeholder="日照香炉生紫烟" v-model="keyword" clearabled :show-action='false'></u-search>
+			<view style='margin:20rpx;'>
+				<u-search placeholder="搜索美食" v-model="keyword" clearabled :show-action='false'></u-search>
+			</view>
+			
 			<view class="head flex">
 				<image :src="dataObj.coverImage" style="width:60rpx;height:60rpx;border-radius:50%;"></image>
 				<view class="right">
 					{{dataObj.shopNames}}
 				</view>
 			</view>
-			<view class="wrap" v-if="dataObj.dishClassifyInfoList.length>0">
+			<view class="wrap" v-if="dataObj.dishClassifyInfoList&&dataObj.dishClassifyInfoList.length>0">
 				<view class="item1" v-for="item in dataObj.dishClassifyInfoList" v-if="item.foodDishesInfoList&&item.foodDishesInfoList.length>0">
 					<view class="row">
 						{{item.classifyName}}
@@ -21,7 +24,7 @@
 								<view class="name">
 									{{item1.dishName}}
 								</view>
-								<view class="price" v-if="item1.dishPrice">
+								<view class="price" v-if="dataObj.lookFlag==0">
 									¥{{item1.dishPrice}}
 								</view>
 								<view class="" v-else>
@@ -35,11 +38,11 @@
 			</view>
 		</view>
 		<view class="bottom-wrap">
-			<view class="left">
+			<view class="left" :style='{width:dataObj.contactsPhone?"60vw":"100vw",}'>
 				<text>营业时间:</text>
-				<text>123</text>
+				<text>{{dataObj.startDate}}~{{dataObj.startDate}}</text>
 			</view>
-			<view class="right">
+			<view @click='toTel' v-if='dataObj.contactsPhone' class="right">
 				电话订餐
 			</view>
 		</view>
@@ -65,6 +68,27 @@
 
 		},
 		methods: {
+			toTel(){
+				that.$request.baseRequest('admin.tourism.phoneRecordInfo', 'add', {
+					commonId:uni.getStorageSync("userInfo").id,
+					phone:this.dataObj.contactsPhone
+				
+				}, failres => {
+					uni.showToast({
+						icon: "none",
+						title: failres.errmsg,
+						duration: 3000
+					});
+				
+				}).then(res => {
+					
+				
+				})
+				// uni.makePhoneCall({phoneNumber: this.dataObj.contactsPhone, // 成功回调
+				// success: (res) => {console.log('调用成功!')	},
+				// // 失败回调
+				// fail: (res) => {console.log('调用失败!')}})
+			},
 			init() {
 				uni.showLoading({
 					title: '数据加载中'
@@ -122,7 +146,7 @@
 		.item1 .row:before{
 			position: absolute;
 			content: '';
-			background: red;
+			background: #fbb612;
 			width: 6rpx;
 			height: 40rpx;
 			    top: 2px;
@@ -140,7 +164,7 @@
 					margin-bottom: 20rpx;
 				}
 				.price{
-					color: #E95700;
+					color: #fbb612;
 				}
 			}
 		}
@@ -162,7 +186,7 @@
 		.left{
 			
 			padding: 40rpx;
-			background: red;
+			background: #f7f4ed;
 			width: 60vw;
 			box-sizing: border-box;
 			
@@ -171,7 +195,8 @@
 			box-sizing: border-box;
 			padding: 40rpx;
 			width: 40vw;
-			background: #E95700;
+			background: #fbb612;
+			color:#fff;
 		}
 	}
 </style>

+ 11 - 2
uni_applet/pages.json

@@ -8,7 +8,7 @@
 			"style": {
 				"navigationBarTitleText": "美食推荐",
 				"enablePullDownRefresh": false,
-				"navigationBarBackgroundColor": "#fff"
+				"navigationStyle":"custom"
 			}
 
 		},
@@ -128,7 +128,16 @@
 				}
 
 			}
-		]
+		    ,{
+                    "path" : "food/fondMap",
+                    "style" :                                                                                    
+                {
+                    "navigationBarTitleText": "美食地图",
+                    "enablePullDownRefresh": false
+                }
+                
+                }
+            ]
 	}],
 	"preloadRule": {
 		"pages/accommodation/accommodation": {

+ 166 - 3
uni_applet/pages/accommodation/accommodation.vue

@@ -1,19 +1,182 @@
 <template>
 	<view>
 		
+		
+		<u-modal :show="showAuthorizePhone" :showConfirmButton="false">
+		 	<view class="slot-content">
+		 		<view class="auth-card">
+		 			<view class="img">
+		 				<img class="avatar-img" src="@/static/logo.png" mode="widthFix">
+		 			</view>
+		 			<view class="content">手机登录后才能查看名片哦~</view>
+		 		</view>
+		 		<view class="auth-btncard">
+		 			<view class="btn-unok">
+		 				<u-button :customStyle="customStyleUnOk" @click="showAuthorizePhone=false" :plain="true">
+		 					拒绝</u-button>
+		 			</view>
+		 			<view class="btn-ok">
+		 				<u-button :customStyle="customStyleOk" open-type="getPhoneNumber"
+		 					@getphonenumber="getPhoneNumber"> 立即登录</u-button>
+		 			</view>
+		 		</view>
+		 	</view>
+		 </u-modal>
+		<u-modal :show="showAuthorizeUser" :showConfirmButton="false">
+			<view class="slot-content">
+				<view class="auth-card">
+					<view class="img">
+						<img class="avatar-img" src="@/static/logo.png" mode="widthFix">
+					</view>
+					<view class="content">邀请您补全个人信息<br></br>(昵称、头像)</view>
+					<view style="margin-left: 100rpx;margin-right: 100rpx">
+						<u-form :model="userInfo" ref="uForm">
+							<u-form-item label="头像">
+								<button class="avatar-wrapper" open-type="chooseAvatar" @chooseavatar="onChooseAvatar"
+									slot="right">
+									<image class="avatar"
+										:src="userInfo.head?userInfo.head:'https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQP6yfMxBgJ0F3YRqJCJ1aPAK2dQagdusBZg/0'">
+									</image>
+								</button>
+							</u-form-item>
+							<u-form-item label="昵称">
+								<u-input inputAlign='right' v-model="userInfo.nickname" class="weui-input"
+									@blur="userNameInput" placeholder="请输入昵称" border="false" />
+								<!-- <input type="nickname" :value="userInfo.nickname" class="weui-input" @blur="userNameInput" placeholder="请输入昵称"/> -->
+							</u-form-item>
+						</u-form>
+					</view>
+				</view>
+				<view class="auth-btncard">
+					<view class="btn-unok"><u-button :customStyle="customStyleUnOk" @click="authUser(0)">
+							拒绝</u-button>
+					</view>
+					<view class="btn-ok">
+						<u-button :customStyle="customStyleOk" @click="authUser(1)"> 允许</u-button>
+					</view>
+				</view>
+			</view>
+		</u-modal>
 	</view>
 </template>
 
 <script>
+	var that
 	export default {
 		data() {
 			return {
-				
+				showAuthorizePhone:false,
+				showAuthorizeUser:false,
+				userInfo: {
+					head: '',
+					nickname: '',
+					phone: '',
+				},
+				customStyleUnOk: {
+					marginTop: '20rpx',
+					color: '#eaad1a',
+					border: '2px solid #eaad1a',
+					"border-radius": "10px",
+					fontSize: "32rpx"
+				},
+				customStyleOk: {
+					marginTop: '20rpx',
+					color: '#fff',
+					border: '2px solid #eaad1a',
+					"border-radius": "10px",
+					fontSize: "32rpx",
+					background: "#eaad1a"
+				},
 			};
+		},
+		onLoad(){
+			that = this
+		},
+		onShow: function() {
+			
+			if (uni.getStorageSync("userInfo").phone) {
+			} else {
+				this.showAuthorizePhone = true
+			}
+		
+		},
+		methods:{
+			async getPhoneNumber(e) {
+				console.log(0)
+				that.userInfo = await this.$request.wxlogin()
+				console.log(that.userInfo,1111)
+				that.userInfo.phone = await this.$request.getPhone(e, that.userInfo)
+				console.log(that.userInfo,2222)
+				this.showAuthorizePhone = false
+				this.showAuthorizeUser = true
+			
+			},
+			async authUser(type) {
+				//同步信息,没有头像和昵称自动生成
+				this.userInfo = await this.$request.syncInfo(this.userInfo)
+				if (this.userInfo.openId) {
+					uni.setStorageSync("userInfo", that.userInfo)
+					that.showAuthorizeUser = false
+					// that.mescroll.resetUpScroll()
+				}
+			},
 		}
 	}
 </script>
 
-<style lang="scss">
-
+<style lang="scss" scoped>
+	.auth-btncard {
+		display: flex !important;
+		justify-content: space-between !important;
+	
+		.btn-unok {
+			width: 40%;
+		}
+	
+		.btn-ok {
+			width: 40%;
+		}
+	}
+	
+	.auth-card {
+		text-align: center;
+	
+		.avatar-img {
+			width: 250rpx;
+		}
+	
+		.title {
+			font-size: 20rpx;
+		}
+	
+		.content {
+			font-size: 32rpx;
+			font-weight: bold;
+			color: #1A1A1A;
+			margin-bottom: 30rpx;
+		}
+	}
+	
+	.avatar-wrapper {
+		color: #333 !important;
+		border: none !important;
+		border-radius: 0 !important;
+		background-color: transparent !important;
+		padding: 0;
+	}
+	
+	.avatar-wrapper::after {
+		border: none !important;
+	}
+	
+	.avatar {
+		width: 100rpx;
+		height: 100rpx;
+		overflow: hidden;
+		border-radius: 100%;
+	}
+	
+	/deep/.u-popup__content {
+		border-radius: 20rpx !important;
+	}
 </style>

+ 33 - 22
uni_applet/pages/find/find.vue

@@ -8,7 +8,7 @@
 			<view class=" search-wrap">
 				<view class="search flex justify-space-between align-item-center flex-between" @click="search">
 					<view class="left flex">
-						<uni-icons type="search" size="24" color="#9199af"></uni-icons>
+						<image class="dSLComVueTopLeftImg" style="width: 30rpx;height: 30rpx;flex: none;" src="@/static/image/card/search.png"></image>
 						<text class="search-val"> {{searchVal?searchVal:'搜索店铺或服务 '}}</text>
 					</view>
 			
@@ -214,36 +214,27 @@
 					})
 				})
 			},
+			
 			async upCallback(page) {
 					// if (uni.getStorageSync("userInfo").id) {
 						uni.showLoading({
 							title: '数据加载中'
 						})
-						await that.$request.baseRequest('admin.tourism.productManagement', 'list', {
-							page: page.num,
-							limit: page.size,
-							// searchContent: this.searchVal,
-							// classify: this.typeName
-						}, failres => {
-							uni.showToast({
-								icon: "none",
-								title: failres.errmsg,
-								duration: 3000
-							});
-							uni.hideLoading()
-						}).then(res => {
-							if (page.num == 1) that.findList = [],that.handleList = [];
-							that.curPageLen = res.data.items.length;
-							that.handleList = res.data.items
-							that.totalPage = res.data.total;
-							
-						})
+						
+						var finddata=await that.getfindList(page)
+						console.log(finddata,0)
+						if (page.num == 1) that.findList = [],that.handleList = [];
+						that.curPageLen = finddata.data.items.length;
+						that.handleList = finddata.data.items
+						that.totalPage = finddata.data.total;
 						for(var i=0;i<that.handleList.length;i++){
+							console.log(111)
 							that.handleList[i].latitude=that.handleList[i].location.split(',')[0]
 							that.handleList[i].longitude=that.handleList[i].location.split(',')[1]
 							var data=await that.getDistance(that.handleList[i].latitude,that.handleList[i].longitude) 
+							console.log(222)
 							that.handleList[i].distance=(data.distance/1000).toFixed(2)
-							console.log(data)
+							console.log(data,i==that.handleList.length-1,111111111111)
 							if(i==that.handleList.length-1){
 								setTimeout(()=>{
 									console.log(that.handleList)
@@ -278,7 +269,27 @@
 			 }).then(res => {
 			 	this.fileList=res.data.items
 			 })
-		 }
+		 },
+		 getfindList(page){
+		 	return new Promise((resolve, reject) => {
+		 		that.$request.baseRequest('admin.tourism.productManagement', 'list', {
+		 			page: page.num,
+		 			limit: page.size,
+		 			// searchContent: this.searchVal,
+		 			// classify: this.typeName
+		 		}, failres => {
+		 			uni.showToast({
+		 				icon: "none",
+		 				title: failres.errmsg,
+		 				duration: 3000
+		 			});
+		 			uni.hideLoading()
+		 		}).then(res => {
+		 			 resolve(res)
+		 		})
+		 	})
+		 	
+		 },
 		}
 	}
 </script>

+ 80 - 50
uni_applet/pages/food/food.vue

@@ -1,5 +1,19 @@
 <template>
 	<view class="content">
+		<u-navbar
+		            title="美食推荐"
+		            :safeAreaInsetTop="true"
+					placeholder='true'
+					fixed
+		        >
+		            <view
+		                class="u-nav-slot"
+		                slot="left"
+						@click='leftClick'
+		            >
+		               <view class="iconfont applet-colors-ditu"></view>
+		            </view>
+		        </u-navbar>
 		<view class="flex content1">
 			<view @click='placeSelect' class='address flex'>
 				<view class='detailedAddress'>{{detailedAddress}}</view>
@@ -8,7 +22,7 @@
 			<view class=" search-wrap">
 				<view class="search flex justify-space-between align-item-center flex-between" @click="search">
 					<view class="left flex">
-						<uni-icons type="search" size="24" color="#9199af"></uni-icons>
+						<image class="dSLComVueTopLeftImg" style="width: 30rpx;height: 30rpx;flex: none;" src="@/static/image/card/search.png"></image>
 						<text class="search-val"> {{searchVal?searchVal:'搜索美食'}}</text>
 					</view>
 
@@ -20,29 +34,24 @@
 			</view>
 		</view>
 		<view class="tag-type">
-			<uni-tag :circle="true" :text="item.iname" :inverted="inverted"
-				style="width: 61px;text-align: center; margin-left: 20px;" v-for='item in jobs' @click="change(item)" />
+			<uni-tag :circle="true" v-for='item in jobs' :text="item.iname" type='' 
+				style="width: 61px;text-align: center; margin-left: 20px;" @click="change(item)" />
 		</view>
 		<scroll-view scroll-x="true" scroll-with-animation="true" class='list-type'>
 			<view v-for='item in searchTypes' @click='changetype(item)'
 				:class='searchType==item.value?"Semibold active":"Regular"' class="typeitem">{{item.name}}</view>
 		</scroll-view>
 		<view>
-			<mescroll-uni :up="upOption" :down="downOption" ref="mescrollRef" @init="mescrollInit" @up="upCallback"
-				@down="downCallback" :top="250">
+			<mescroll-uni height="1200" :up="upOption" :down="downOption" ref="mescrollRef" @init="mescrollInit" @up="upCallback"
+				@down="downCallback" >
 				<view class='findItem' v-for='item in findList' @click="toShop(item)">
 					<view style='align-items: flex-start;' class='flex'>
-						<view class="left">
-							<view class='cover'>
-								<u--image radius='4' :showLoading="true" :src="item.coverImage" width="80px"
-									height="80px"></u--image>
-							</view>
-						</view>
-						<view class="right">
-							<view class='cover'>
-								<u--image radius='4' :showLoading="true" :src="item.indoorImage" width="80px"
+						<view style='width:100vw;' class="left flex">
+							<view v-for='item1 in item.foodDishesInfoList' @click.stop='previewImg(item1)' style='margin:10rpx;'>
+								<u--image  radius='4' :showLoading="true" :src="item1.dishImage" width="80px"
 									height="80px"></u--image>
 							</view>
+								
 						</view>
 					</view>
 					<view class='flex row2'>
@@ -55,7 +64,7 @@
 						<text class="text" v-for='item1 in item.labels'> {{item1}}</text>
 					</view>
 					<view class='address flex justify-space-between'>
-						<view class='flex'>
+						<view style='width:60vw;' class='flex'>
 							<view class='iconfont applet-dizhi'></view>
 							<view class="detailedAddress">
 								{{item.detailedAddress}}
@@ -63,8 +72,8 @@
 							<!-- <view>{{item.province}}{{item.city}}{{item.area}}</view> -->
 							
 						</view>
-						<view style="color: #888;">
-							{{item.distance}}km
+						<view style="color: #888;width:40vw;text-align:right;">
+							{{item.distance1>1000?item.distance:item.distance1}} {{item.distance1>1000?'km':'m'}}
 						</view>
 					</view>
 				</view>
@@ -83,6 +92,8 @@
 	var qqmapsdk = new QQMapWX({
 		key: 'HQ6BZ-RMALQ-TGF5H-BXJQB-UFYN3-Q5BYM'
 	});
+	
+	import uniTag from '@/uni_modules/uni-tag/components/uni-tag/uni-tag.vue';
 	import MoteLinesDivide from "@/components/text-over-flow/text-over-flow.vue"
 	import MescrollMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mescroll-mixins.js";
 	import {
@@ -90,7 +101,8 @@
 	} from '@/util/util.js'
 	export default {
 		components: {
-			MoteLinesDivide
+			MoteLinesDivide,
+			uniTag
 		},
 		mixins: [MescrollMixin],
 		data() {
@@ -120,31 +132,38 @@
 				}, {
 					name: '距离最近',
 					value: '2'
-				}, {
-					name: '最多点赞',
-					value: '3'
-				}, {
-					name: '我的收藏',
-					value: '4'
-				}],
+				},
+				// {
+				// 	name: '最多点赞',
+				// 	value: '3'
+				// }, {
+				// 	name: '我的收藏',
+				// 	value: '4'
+				// },
+				],
 				jobs: [{
 						id: 1,
 						iname: '海鲜',
+						checked:false
 					},
 					{
 						id: 2,
-						iname: '自助'
+						iname: '自助',
+						checked:false
 					}, {
 						id: 3,
 						iname: '烧烤',
+						checked:false
 					},
 					{
 						id: 4,
 						iname: '火锅',
+						checked:false
 					},
 					{
 						id: 5,
-						iname: '家常菜'
+						iname: '家常菜',
+						checked:false
 					}
 				],
 				upOption: {
@@ -167,9 +186,23 @@
 		onShow() {
 			//判断是否有定位权限
 			this.searchVal = uni.getStorageSync("search_val")
-			this.isdingwei()
+			if(this.detailedAddress=='正在定位...'){
+				this.isdingwei()
+			}
 		},
 		methods: {
+			leftClick(){
+				uni.navigateTo({
+					url: "/pageA/food/fondMap"
+				})
+			},
+			previewImg(item){
+				uni.previewImage({
+					current: 0,    
+					urls: [item.dishImage],
+					loop:true,
+				})
+			},
 			toShop(val){
 				uni.navigateTo({
 					url: "/pageA/food/menu?val="+JSON.stringify(val)
@@ -340,28 +373,20 @@
 					that.totalPage = res.data.total;
 				})
 				if (that.handleList.length > 0) {
-					for (var i = 0; i < that.handleList.length; i++) {
-
-						that.handleList[i].latitude = that.handleList[i].location.split(',')[0]
-						that.handleList[i].longitude = that.handleList[i].location.split(',')[1]
-						var data = await that.getDistance(that.handleList[i].latitude, that.handleList[i].longitude)
-						that.handleList[i].distance = (data.distance / 1000).toFixed(2)
-						if (that.handleList[i].label) {
-							that.handleList[i].labels = that.handleList[i].label.split(",")
-						}
-						// if (i == that.handleList.length - 1) {
-						// 	setTimeout(() => {
-						// 		console.log(that.handleList)
-						// 		that.findList = that.handleList
-						// 		that.loading = false
-						// 		that.$nextTick(() => {
-						// 			that.mescroll.endBySize(that.curPageLen, that.totalPage)
-						// 		});
-
-						// 		uni.hideLoading()
-						// 	}, 100)
-						// }
-					}
+					// for (var i = 0; i < that.handleList.length; i++) {
+
+					// 	that.handleList[i].latitude = that.handleList[i].location.split(',')[0]
+					// 	that.handleList[i].longitude = that.handleList[i].location.split(',')[1]
+					// 	var data = await that.getDistance(that.handleList[i].latitude, that.handleList[i].longitude)
+					// 	that.handleList[i].distance1 = JSON.parse(JSON.stringify(data.distance))
+					// 	that.handleList[i].distance = (data.distance / 1000).toFixed(2)
+					// 	if (that.handleList[i].label) {
+					// 		that.handleList[i].labels = that.handleList[i].label.split(",")
+					// 	}
+					// 	if(that.handleList[i].foodDishesInfoList){
+					// 		that.handleList[i].foodDishesInfoList = that.handleList[i].foodDishesInfoList.splice(0,3)
+					// 	}
+					// }
 					that.findList = that.handleList
 					
 				} else {
@@ -431,6 +456,7 @@
 		margin: 10rpx;
 		border-radius: 20rpx;
 		padding: 20rpx;
+		font-size:32rpx;
 		.row2{
 			margin: 20rpx 0;
 		}
@@ -465,6 +491,7 @@
 
 	.applet-dizhi {
 		color: #393733;
+		font-size:38rpx;
 	}
 
 	.group {
@@ -544,5 +571,8 @@
 	}
 	.tag-type{
 		background: #fff;
+		uni-tag{
+			margin-left:20rpx !important;
+		}
 	}
 </style>

BIN
uni_applet/static/image/card/search.png


BIN
uni_applet/static/image/food/location.png


BIN
uni_applet/static/image/nav-icon/antOutline-compass Copy.png


BIN
uni_applet/static/image/nav-icon/antOutline-compass.png


BIN
uni_applet/static/image/nav-icon/antOutline-user Copy.png


BIN
uni_applet/static/image/nav-icon/antOutline-user.png


BIN
uni_applet/static/image/nav-icon/iconPark-landscape Copy.png


BIN
uni_applet/static/image/nav-icon/iconPark-landscape.png


BIN
uni_applet/static/image/nav-icon/md-restaurant_menu Copy.png


BIN
uni_applet/static/image/nav-icon/md-restaurant_menu.png


BIN
uni_applet/static/image/nav-icon/riLine-hotel-line Copy.png


BIN
uni_applet/static/image/nav-icon/riLine-hotel-line.png


+ 5 - 17
uni_applet/style/icons/iconfont-colors.css

@@ -2,9 +2,9 @@
   font-family: "iconfont"; /* Project id 4106227 */
   /* Color fonts */
   src: 
-       url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAAVUAAwAAAAAChQAAAUFAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIl4jHgZgADwKjAyJVgE2AiQDWAsuAAQgBYF8ByAb2wdRlArO38g+DuNY8P/KoLsrRiEfHjft/SQ1EqTmdFVhFYWqQ1nFdHQaJsZ2CkxVzkQS/8PfL/W/i8YcRukHHdAMr7N4NJ+dzbpsLTqd1XLmlqjTqBBtn0xPBMAAkAAIyNIpABagyczAuhCyEFqS0IqtWoPABojgLChwIBALpR6QwW0B2IHA3uwIIlhGhF8bYDgpuO3/Wgj5+lcBHwuCssKAvFLJUGuoDgDFfBnSAQVRINxDZHhJSWlJNi5B/sUvNC/wAM0jY591DihQ9wHIUUsGaAAOEBOeziAIgOWdRNRmpyAAgH70CB+52HncUOxEd4cBcAbIDYDqBRAigodBEkkZTqYEVsaphFR4vEzi4jQlQCJxkDswDkqRPImTz9TNHEt+Szeof+MN1vD8Ofhnz0TLXrxoNOwl+j0i0bJd4HezrQbnlWuczOYY2nPuDgfjKsfdwSaTo0mz4FPL4sw7nMzbHIyrHU3bHY9rDQb2ZPwb2qdvEH3VXJbIUMojtXFbzWja3iKqaK3TC6LXvqE9MqQ5nWra3rnvQsEL0TL1rWeqZ+A1q0cFy7jzTXsJfVDSLlD87tq7sjW2xtaKXwwatHeVFxVHT9QeSdvHmHIuSlsm+nDq+fznjXNFZP1hnRATCyibDV0l0RdK0TJSgp8YN3Mr934aEbmVFF9LxKbMfikR8U9mYt4hMq6Cid/KfDjrK0p3/tqmk87V72UNu8HvEi3bM/qRiBoqQlLmmIYl07+DlNd94ubHI87ujVMnoaJ5FQOkzK9IOroX6h1ToyvV0QpFwuALUxVVIq68xdly4liQyRRijt6JsADbl3rydrTeblsZvXQJv2qJ9RLtSPvfY+NvpIjtJv9egO5V/3nXepOTdxzd2rH564UiiqaclWW+yRmBsSuKav3La3Tbji+u8c4uTg+bfjAo2+v5W58ceRYWzO24b9lybHqtPLtMG1iY0DsYlemZ36WJn3Rcql+12FVXK+1In9SWTPmmvYGLmNbZEFg5hG1NYiK+lDCfMZkRwtnzuTVBAbsW/7UlhXYUF3eEJie3hxYX26qk5CZoR3Y8F4xXnaNy/2rDxdxcd9V64WuVW04uHF+vp2fl5l7cIHylcs95RTkYqVZHDapUpFCrK5VSBRCJjLweReaEwQREZSsm6+omFdk5YHCcYpIDUk72sZjbc6p0+fLSUz09YIBRjephx1puPVm7IVOny9wgv7aWKXQ6jKpFAlZXSrNk8Q7pwIA0W2aUDsz2BTIyzZ4l49fJZuHnac2783g+b3eLJRtd780e+oljWIsqpXFoyKTUaBIGcErTJ5TG4WGjUlNX5p++IHp7R0FNx7aM1ytqQ7paNiqaW3Acz+/JQ/wII/bhYiCGcT74ZRUHTvvBB4zwIatjP2xyJPStwGJIaKMwHVDhnAEDEoeM/qQdVp8QFuM8GBlIMa5R5ygF9T/5jD5BfQgiIc8ainj/vUZpym/WNKMd+HBb7myeJvAMaB5SSr5JIGOPZAD8W8AAfCkpYRLQLN1VQZ5aStNlAk9SoI80+H/aSIpBcmablmQsX/0foKeLPzgl2wkTYOAnvxtCTtNkiZIig7EBgWyA6RkpSAwObdKIg9cmAznUmxZww9hdlpDjJXSjFYMYQEf2tjFUoB2dGEcfmjGCaEQgKgomowSliTC7aLl8VLjRcmo3ubCqER7BKLppUH5CV0LVNMJ9haP4U7IJAAA=') format('woff2'),
-       url('//at.alicdn.com/t/c/font_4106227_b656u3mughe.woff?t=1686017789532') format('woff'),
-       url('//at.alicdn.com/t/c/font_4106227_b656u3mughe.ttf?t=1686017789532') format('truetype');
+       url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAAKwAAwAAAAABPwAAAJiAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIiAjEgZgADwKgyiCZQE2AiQDEAsOAAQgBYF8ByAb2APIBh5Ir+9NZhb+RPaTZyE5yJXMiqrQXQbOqQOaWPLABjTDKqCmKLH+D3jBn27RBXJza5yfvYTNOSbkJySGRJT2E0AAfiACiQZIJKAAGwBC2LE0j/exUAqxDBtK26D1A5p6I6IfpaIUkEQImzRr3qwuF9E/6dKwDJAGNg8BoKHdA3Q6C+RjVOFYRRZg1wVa2LEsgGO9jX2XeVbtmOMFHMAsYDsAFap459uEVkkpPcI7ecLk1ShjXUSbBe4FUb16rIpaI2zmHs/CXaj2wlzbxq6GnrLdmjXRa9dGtpVrogjY0G5HZMP2azvINprWvm7a3TTFfmG+eOFZ+OwZRt6qi08vRqxyn9yzIGrN5eeX2y+4eRAjdvWlZ/kHXhyI3ijMy7cHz3+bsdO9YHfl90nl31ehcsmznSFLvG8P/c7VpK2osI0/+92pXYEl/hS/r/zBgNfBKa6zLtdd1+T45mEr882lWVn/Rs3NcukhdSKP3mhSZfLVKz+y32V3Cd+fFF5pf7J3fyKPQoH6uaUlrVsXl5bqWsWtS/PKlU/Jr7lp/+ZQIHTRhY3duanbHgeH/w3G30qnoPaIVfm1/qfdTAjau1O9T7QVHZUok6IgfByrfTr9/n6ve6DKH6dcqf/mXLemPryG9U6el0mAHS3A7bylghrUkuc3JoD7H7mGxOdEDUTUroWk5LTITjMkQrkQhMChafiJAyQpRxKk0GkD2YhjzCw7OksYSG+GM4x+ttsYWtGX/oxlCD0ZRTEFFElYmWY01/p1qXy9Vj4ljoh0fDv6MorRDKzUb8g1lVtHU1hHKIUBAA==') format('woff2'),
+       url('//at.alicdn.com/t/c/font_4106227_ar9noypo3nk.woff?t=1687662029675') format('woff'),
+       url('//at.alicdn.com/t/c/font_4106227_ar9noypo3nk.ttf?t=1687662029675') format('truetype');
 }
 
 .iconfont {
@@ -15,18 +15,6 @@
   -moz-osx-font-smoothing: grayscale;
 }
 
-.applet-colors-tianjia1:before {
-  content: "\e7f2";
-}
-
-.applet-colors-tianjia:before {
-  content: "\e7f3";
-}
-
-.applet-colors-tianjia3:before {
-  content: "\e7f0";
-}
-
-.applet-colors-tianjia2:before {
-  content: "\e7f1";
+.applet-colors-ditu:before {
+  content: "\e620";
 }

+ 2 - 1
uni_applet/util/request.js

@@ -122,9 +122,10 @@ const wxlogin = () => {
 
 //获取手机号
 const getPhone = (e, userInfo) => {
+	console.log(e,userInfo)
 	let promise = new Promise(function(resolve, reject) {
 		if (e.mp.detail.errMsg === "getPhoneNumber:ok") {
-			let appId = 'wx5d8906c2208c899f'
+			let appId = 'wxa88225ca7712d558'
 			let sessionKey = userInfo.sessionKey
 			let encryptedData = e.mp.detail.encryptedData
 			let iv = e.mp.detail.iv