Bläddra i källkod

Merge branch 'master' of http://git.zthymaoyi.com/zyw/tourism

achao 1 år sedan
förälder
incheckning
c29bcf2444

+ 4 - 0
uni_applet/App.vue

@@ -78,6 +78,10 @@
 		text-align:center;
 		color:#999 ;
 	}
+	.default_button{
+		color:#f8bc31;
+		padding:5rpx;
+	}
 	.merchants_button,.merchants_unable_button,.merchants_default_button,.merchants_caution_button{
 		background:#5F7DE9;
 		color:#fff;

+ 1 - 1
uni_applet/pageA/cxTable.vue

@@ -1,6 +1,6 @@
 <template>
 	<view class="content">
-		<image src="../static/image/cxb.png" mode="widthFix" style="width: 100vw;"></image>
+		<image src="https://taohaoliang.oss-cn-beijing.aliyuncs.com/chaoxi.png" mode="widthFix" style="width: 100vw;"></image>
 		<view class="table">
 			<view class="row" v-for="(item,index) in tableList" :class="item.check?'row-active':''">
 				<image src="../static/image/today.png" mode="widthFix" v-if="item.check" style="width: 34rpx;position: absolute;left: 5px;height: auto;"></image>

+ 1 - 1
uni_applet/pageA/enter/cateringindustry.vue

@@ -186,7 +186,7 @@
 						content: '确定提交入驻信息?',
 						success (res) {
 						    if (res.confirm) {
-								that.$u.debounce(confirmSubmit, 500)
+								that.$u.debounce(that.confirmSubmit, 500)
 						    } else if (res.cancel) {
 						      console.log('用户点击取消')
 						    }

+ 1 - 1
uni_applet/pageA/enter/hotel.vue

@@ -151,7 +151,7 @@
 						content: '确定提交入驻信息?',
 						success (res) {
 						    if (res.confirm) {
-								that.$u.debounce(confirmSubmit, 500)
+								that.$u.debounce(that.confirmSubmit, 500)
 						    } else if (res.cancel) {
 						      console.log('用户点击取消')
 						    }

+ 2 - 2
uni_applet/pageA/enter/myCateringdustry/addGroupBuyingNext.vue

@@ -162,7 +162,7 @@
 						content: '确认添加团购信息?',
 						success (res) {
 						    if (res.confirm) {
-								that.$u.debounce(confirmSubmit, 500)
+								that.$u.debounce(that.confirmSubmit, 500)
 						    } else if (res.cancel) {
 						      console.log('用户点击取消')
 						    }
@@ -280,7 +280,7 @@
 								content: '确认取消该分类?',
 								success (res) {
 								    if (res.confirm) {
-										that.$u.debounce(classifycancelSubmit, 500)
+										that.$u.debounce(that.classifycancelSubmit, 500)
 								    } else if (res.cancel) {
 								      console.log('用户点击取消')
 								    }

+ 2 - 2
uni_applet/pageA/enter/myCateringdustry/addfood.vue

@@ -29,7 +29,7 @@
 					<u--input inputAlign='right' v-model="form.dishName" placeholder="输入菜品名称.2-8个字" border="none"></u--input>
 				</u-form-item>
 				<u-form-item
-				labelPosition="left"
+				  labelPosition="left"
 					labelWidth='150'
 					label="菜品单价(选填)"
 					prop="userInfo"
@@ -157,7 +157,7 @@
 					content: '确认添加菜品信息?',
 					success (res) {
 					    if (res.confirm) {
-							that.$u.debounce(confirmSubmit, 500)
+							that.$u.debounce(that.confirmSubmit, 500)
 					    } else if (res.cancel) {
 					      console.log('用户点击取消')
 					    }

+ 12 - 2
uni_applet/pageA/enter/myCateringdustry/edit.vue

@@ -109,7 +109,7 @@
 	export default {
 		data() {
 			return {
-				content:'确定提交入驻信息',
+				content:'确定提交入驻信息',
 				isSubmit:false,
 				form:{
 					commonId:uni.getStorageSync("userInfo").id,
@@ -213,7 +213,17 @@
 					}
 					this.form.label=arr.toString()
 				}
-				this.isSubmit = true
+				uni.showModal({
+						title: '提示',
+						content: '确定提交入驻信息?',
+						success (res) {
+						    if (res.confirm) {
+								that.$u.debounce(that.confirmSubmit, 500)
+						    } else if (res.cancel) {
+						      console.log('用户点击取消')
+						    }
+						  }
+					})
 			},
 			confirmSubmit() {
 				uni.showLoading({

+ 99 - 79
uni_applet/pageA/enter/myCateringdustry/index.vue

@@ -1,55 +1,64 @@
 <template>
 	<view class='content'>
 		<view class='wrap'>
-			<view class='flex align-items-flex-start justify-space-between'>	
-			<view class="flex">
-				<view class="head_sculpture">
-					<u--image :showLoading="true" :src="currectData.coverImage" width="80rpx" height="80rpx" shape="circle"></u--image>
-				</view>
-				<view>
-					<view @click='switchShop' style='font-size:28rpx;'>{{currectData.shopNames}}<image src="@/static/image/yjt.png" mode=""
-								style="margin-left:10rpx;width:12rpx;height: 21rpx;"></image></view>
-					<view style='color:#999;font-size:24rpx;'>{{currectData.detailedAddress}}</view>
+			<view class='flex align-items-flex-start justify-space-between'>
+				<view class="flex">
+					<view class="head_sculpture">
+						<u--image :showLoading="true" :src="currectData.coverImage" width="80rpx" height="80rpx"
+							shape="circle"></u--image>
+					</view>
+					<view>
+						<view @click='switchShop' style='font-size:28rpx;'>{{currectData.shopNames}}
+							<image src="@/static/image/yjt.png" mode=""
+								style="margin-left:10rpx;width:12rpx;height: 21rpx;"></image>
+						</view>
+						<view style='color:#999;font-size:24rpx;'>{{currectData.detailedAddress}}</view>
+					</view>
 				</view>
-			</view>
-				
+
 				<view>
-					<view class='caution' v-if='currectData.status!="显示中"&&currectData.status!="已隐藏"'>{{currectData.status}}</view>
+					<view class='caution' v-if='currectData.status!="显示中"&&currectData.status!="已隐藏"'>
+						{{currectData.status}}</view>
 				</view>
 			</view>
-			</view>
-			<view class='wrap'>
+		<view class='wrap'>
 			<view>
 				<view style='font-size:28rpx;'>店铺照片</view>
-				<view  style='flex-wrap: wrap;' class='flex'>
+				<view style='flex-wrap: wrap;' class='flex'>
 					<view class='shop_image' v-for='item in currectData.indoorImageArray'>
-						<u--image :showLoading="true" :radius='10' :src="item" width="100rpx" height="100rpx" ></u--image>
+						<u--image :showLoading="true" :radius='10' :src="item" width="100rpx"
+							height="100rpx"></u--image>
 					</view>
 				</view>
 			</view>
 			<view style='margin:20rpx 0 30rpx;'>
 				<view class='switch_show flex' style='font-size:34rpx;'>
-					<view :class='showStatus==0?"active":""' @click='switchShow(0)'>商品展示({{currectData.displaysNum?currectData.displaysNum:0}})</view>
-					<view :class='showStatus==1?"active":""' @click='switchShow(1)'>团购({{currectData.groupNum?currectData.groupNum:0}})</view>
+					<view :class='showStatus==0?"active":""' @click='switchShow(0)'>
+						商品展示({{currectData.displaysNum?currectData.displaysNum:0}})</view>
+					<view :class='showStatus==1?"active":""' @click='switchShow(1)'>
+						团购({{currectData.groupNum?currectData.groupNum:0}})</view>
 				</view>
 				<view v-if='showStatus==0' style='font-size:28rpx;'>
 					<view v-for='item in  currectData.dishClassifyInfoList' v-show='item.dishesNum'>
-						<view>
+						<view class=='flex  justify-space-between'>
 							<view>{{item.classifyName}}({{item.dishesNum}})</view>
+							<view @click='up(item)' class="merchants_button">置顶</view>
 						</view>
 						<view style='flex-wrap: wrap;text-align:center;' class='flex'>
 							<view style='margin:10rpx;' v-for='item1 in item.foodDishesInfoList'>
-								<u--image :showLoading="true" :src="item1.dishImage" width="150rpx" height="150rpx"  ></u--image>
+								<u--image :showLoading="true" :src="item1.dishImage" width="150rpx"
+									height="150rpx"></u--image>
 								<view>{{item1.dishName}}</view>
 							</view>
 						</view>
-						
+
 					</view>
-					
+
 				</view>
 				<view v-if='showStatus==1'>
 					<view style='margin:10rpx;' v-for='item1 in currectData.foodGroupInfoList'>
-						<u--image v-if='item1.showImage' :showLoading="true" :src="item1.showImage":width="width" :height="height"></u--image>
+						<u--image v-if='item1.showImage' :showLoading="true" :src="item1.showImage" :width="width"
+							:height="height"></u--image>
 						<view>{{item1.groupTitle}}</view>
 						<view class='flex justify-space-between align-item-center'>
 							<view>{{item1.groupPrice}}</view>
@@ -59,26 +68,29 @@
 								<view>待用{{item1.notUseNum}}</view>
 							</view>
 						</view>
-						
 					</view>
 				</view>
 			</view>
-			
 		</view>
-		<view v-if='currectData.status=="显示中"||currectData.status=="已隐藏"' style='margin:20rpx;' class='flex justify-space-between'>
+		<view v-if='currectData.status=="显示中"||currectData.status=="已隐藏"' style='margin:20rpx;'
+			class='flex justify-space-between'>
 			<view class='merchants_button' @click='addfood'>添加菜品</view>
 			<view class='merchants_button' @click='addGroupBuying'>添加团购</view>
 			<view class='merchants_button' @click='shopSetting'>店铺设置</view>
 		</view>
 		<view v-else style='margin:20rpx;' class='flex justify-space-between'>
-			<view v-if='currectData.status=="审核中"||currectData.status=="已禁用"' class='merchants_unable_button' >添加菜品</view>
-			<view v-if='currectData.status=="审核中"||currectData.status=="已禁用"' class='merchants_unable_button' >添加团购</view>
-			<view v-if='currectData.status=="审核中"||currectData.status=="已禁用"' class='merchants_unable_button' >店铺设置</view>
-			<view v-if='currectData.status=="已驳回"' ></view>
+			<view v-if='currectData.status=="审核中"||currectData.status=="已禁用"' class='merchants_unable_button'>添加菜品
+			</view>
+			<view v-if='currectData.status=="审核中"||currectData.status=="已禁用"' class='merchants_unable_button'>添加团购
+			</view>
+			<view v-if='currectData.status=="审核中"||currectData.status=="已禁用"' class='merchants_unable_button'>店铺设置
+			</view>
+			<view v-if='currectData.status=="已驳回"'></view>
 			<view v-if='currectData.status=="已驳回"' class='merchants_button' @click='editCateringindustry'>编辑店铺信息</view>
 			<view v-if='currectData.status=="已驳回"'></view>
 		</view>
-		<u-picker immediateChange='true' title='选择店铺' @cancel='show = false' @confirm='shopConfirm' :show="show" :columns="columns" keyName="shopNames"></u-picker>
+		<u-picker immediateChange='true' title='选择店铺' @cancel='show = false' @confirm='shopConfirm' :show="show"
+			:columns="columns" keyName="shopNames"></u-picker>
 	</view>
 </template>
 
@@ -87,50 +99,49 @@
 	export default {
 		data() {
 			return {
-				dataList:[],
-				currectData:{},
-				showStatus:0,
-				show:false,
-				height:'',
-				width:'',
-				columns:[]
+				dataList: [],
+				currectData: {},
+				showStatus: 0,
+				show: false,
+				height: '',
+				width: '',
+				columns: []
 			}
 		},
 		onLoad() {
 			that = this
 		},
-		onShow(){
-			this.height = (uni.getSystemInfoSync().windowWidth/2);
-			
-			this.width = uni.getSystemInfoSync().windowWidth-50;
+		onShow() {
+			this.height = (uni.getSystemInfoSync().windowWidth / 2);
+			this.width = uni.getSystemInfoSync().windowWidth - 50;
 			console.log(this.height)
 			uni.showLoading({
 				title: '加载中',
 				mask: true
 			})
 			this.$request.baseRequest('admin.tourism.foodInfo', 'list', {
-				commonId:uni.getStorageSync("userInfo").id,
-				page:1,
-				limit:9999
+				commonId: uni.getStorageSync("userInfo").id,
+				page: 1,
+				limit: 9999
 			}, failres => {
 				uni.showToast({
 					icon: "none",
 					title: failres.errmsg,
 					duration: 3000
 				});
-						
+
 				uni.hideLoading()
 			}).then(res => {
-				for(var i=0;i<res.data.items.length;i++){
-					if(res.data.items[i].indoorImage){
-						res.data.items[i].indoorImageArray=res.data.items[i].indoorImage.split(',')
+				for (var i = 0; i < res.data.items.length; i++) {
+					if (res.data.items[i].indoorImage) {
+						res.data.items[i].indoorImageArray = res.data.items[i].indoorImage.split(',')
 					}
-					if(res.data.items[i].foodGroupInfoList){
-						for(var q=0;q<res.data.items[i].foodGroupInfoList.length;q++){
+					if (res.data.items[i].foodGroupInfoList) {
+						for (var q = 0; q < res.data.items[i].foodGroupInfoList.length; q++) {
 							var data = res.data.items[i].foodGroupInfoList[q]
-							if(data.dishImage){
+							if (data.dishImage) {
 								var images = data.dishImage.split(',')
-								data.showImage=images[0]
+								data.showImage = images[0]
 							}
 						}
 					}
@@ -139,41 +150,47 @@
 				this.dataList = res.data.items
 				this.currectData = res.data.items[0]
 				uni.hideLoading()
-						
+
 			})
-			
+
 		},
 		methods: {
-			shopConfirm(e){
+			up(item) {
+
+			},
+			shopConfirm(e) {
 				console.log(e)
-				this.currectData =e.value[0]
+				this.currectData = e.value[0]
 				this.show = false
 			},
-			switchShop(){
+			switchShop() {
 				this.show = true
 			},
-			switchShow(status){
-				this.showStatus=status
+			switchShow(status) {
+				this.showStatus = status
 			},
-			addfood(){
+			addfood() {
 				uni.navigateTo({
-					url:'/pageA/enter/myCateringdustry/addfood?foodId='+this.currectData.id+'&shopNames='+this.currectData.shopNames
+					url: '/pageA/enter/myCateringdustry/addfood?foodId=' + this.currectData.id + '&shopNames=' +
+						this.currectData.shopNames
 				})
 			},
-			editCateringindustry(){
+			editCateringindustry() {
 				uni.navigateTo({
-					url:'/pageA/enter/myCateringdustry/edit?foodId='+this.currectData.id
+					url: '/pageA/enter/myCateringdustry/edit?foodId=' + this.currectData.id
 				})
 			},
-			addGroupBuying(){
+			addGroupBuying() {
 				uni.navigateTo({
-					url:'/pageA/enter/myCateringdustry/addGroupBuying?foodId='+this.currectData.id+'&shopNames='+this.currectData.shopNames
+					url: '/pageA/enter/myCateringdustry/addGroupBuying?foodId=' + this.currectData.id +
+						'&shopNames=' + this.currectData.shopNames
 				})
 			},
-			shopSetting(){
-				uni.setStorageSync('myCateringdustry',JSON.stringify(this.currectData))
+			shopSetting() {
+				uni.setStorageSync('myCateringdustry', JSON.stringify(this.currectData))
 				uni.navigateTo({
-					url:'/pageA/enter/myCateringdustry/shopSetting/index?foodId='+this.currectData.id+'&shopNames='+this.currectData.shopNames
+					url: '/pageA/enter/myCateringdustry/shopSetting/index?foodId=' + this.currectData.id +
+						'&shopNames=' + this.currectData.shopNames
 				})
 			}
 		}
@@ -181,19 +198,22 @@
 </script>
 
 <style lang='scss' scoped>
-	.wrap{
-		padding:20rpx;
+	.wrap {
+		padding: 20rpx;
 	}
-	.head_sculpture{
+
+	.head_sculpture {
 		padding: 0 20rpx 20rpx 0;
 	}
-	.shop_image{
-		margin:10rpx;
+
+	.shop_image {
+		margin: 10rpx;
 	}
-	.switch_show{
-		.active{
-			font-weight:600;
-			color:#5F7DE9;
+
+	.switch_show {
+		.active {
+			font-weight: 600;
+			color: #5F7DE9;
 		}
 	}
-</style>
+</style>

+ 1 - 1
uni_applet/pageA/enter/myCateringdustry/shopSetting/editCertificate.vue

@@ -72,7 +72,7 @@
 						content: '确定提交证件图片?',
 						success (res) {
 						    if (res.confirm) {
-								that.$u.debounce(confirmSubmit, 500)
+								that.$u.debounce(that.confirmSubmit, 500)
 						    } else if (res.cancel) {
 						      console.log('用户点击取消')
 						    }

+ 1 - 1
uni_applet/pageA/enter/myCateringdustry/shopSetting/editShopImage.vue

@@ -64,7 +64,7 @@
 						content: '确定提交店铺图片?',
 						success (res) {
 						    if (res.confirm) {
-								that.$u.debounce(confirmSubmit, 500)
+								that.$u.debounce(that.confirmSubmit, 500)
 						    } else if (res.cancel) {
 						      console.log('用户点击取消')
 						    }

+ 1 - 1
uni_applet/pageA/enter/myCateringdustry/shopSetting/editShopInformation.vue

@@ -142,7 +142,7 @@
 						content: '确定提交店铺信息?',
 						success (res) {
 						    if (res.confirm) {
-								that.$u.debounce(confirmSubmit, 500)
+								that.$u.debounce(that.confirmSubmit, 500)
 						    } else if (res.cancel) {
 						      console.log('用户点击取消')
 						    }

+ 1 - 1
uni_applet/pageA/enter/myCateringdustry/shopSetting/foodInfomation.vue

@@ -153,7 +153,7 @@
 						content: '确定删除菜品?',
 						success (res) {
 						    if (res.confirm) {
-								that.$u.debounce(confirmSubmit, 500)
+								that.$u.debounce(that.confirmSubmit, 500)
 						    } else if (res.cancel) {
 						      console.log('用户点击取消')
 						    }

+ 11 - 1
uni_applet/pageA/enter/myCateringdustry/shopSetting/index.vue

@@ -204,7 +204,17 @@
 				})
 			},
 			del(){
-				this.isDel = true
+				uni.showModal({
+						title: '提示',
+						content: '确定删除店铺?',
+						success (res) {
+						    if (res.confirm) {
+								that.$u.debounce(confirmDelSubmit, 500)
+						    } else if (res.cancel) {
+						      console.log('用户点击取消')
+						    }
+						  }
+					})
 			},
 			change(e){
 				this.currectStatus = 1

+ 1 - 1
uni_applet/pageA/find/createLifeService.vue

@@ -211,7 +211,7 @@
 					content: this.content,
 					success (res) {
 					    if (res.confirm) {
-							that.$u.debounce(confirmSubmit, 500)
+							that.$u.debounce(that.confirmSubmit, 500)
 					    } else if (res.cancel) {
 					      console.log('用户点击取消')
 					    }

+ 405 - 0
uni_applet/pageA/find/edit.vue

@@ -0,0 +1,405 @@
+<template>
+	<view class='content'>
+		<view class='wrap'>
+			<u--form  ref="uForm">
+				<u-form-item labelPosition='left' label="主体">
+					<u-radio-group activeColor="#f8bc31" placement='row'  v-model="form.mainBody">
+						<u-radio name="个人" >个人</u-radio>
+						<u-radio name="商铺" >商铺</u-radio>
+					</u-radio-group>
+				</u-form-item>
+				<u-form-item v-if='form.mainBody=="商铺"' labelWidth='80' labelPosition='left' label="店铺名称">	
+					<u-input maxlength="15" inputAlign='right' border='none' placeholder='输入店铺名称' v-model="form.shopNames" />
+				</u-form-item>
+				<u-form-item v-if='form.mainBody=="个人"' labelWidth='80' labelPosition='left' label="服务名称">
+					<u-input maxlength="15" inputAlign='right' border='none' placeholder='输入服务名称,如跑腿、代驾' v-model="form.shopNames" />
+				</u-form-item>
+				<u-form-item labelWidth='80' labelPosition='top' label="封面图片">
+					<u-upload :fileList="fileList1" @afterRead="afterRead($event,0)" @delete="deletePic" name="1" multiple
+						:maxCount="1"></u-upload>
+				</u-form-item>
+				
+				<u-form-item labelWidth='80' labelPosition='left' @click='placeSelect(),hideKeyboard()' label="店铺位置">
+					<view style='text-align:right;' v-if="form.province">{{ form.province }}{{ form.city }}{{ form.area }}</view>
+					<view style='text-align:right;' v-else>
+						<text style='text-align:right;'>选择位置 </text>
+						<image src="@/static/image/find/yjt.png" mode=""
+							style="margin-left:10rpx;width:12rpx;height: 21rpx;"></image>
+					</view>
+				</u-form-item>
+				<u-form-item labelWidth='80' labelPosition='left' label="详细地址">
+					<u-input maxlength="15" inputAlign='right' border='none' placeholder='输入详细地址,不超过15个字' v-model="form.detailedAddress" />
+				</u-form-item>
+				<u-form-item  labelWidth='80' labelPosition='top' label="业务描述">
+					<u--textarea  v-model="form.serviceDescription" autoHeight placeholder="输入业务描述,0-200个字" ></u--textarea> 
+				</u-form-item>
+				<view class='title'>以下信息为选填信息</view>
+				<u-form-item v-if='form.mainBody=="商铺"' labelWidth='160' labelPosition='left' label="联系人(仅平台可见)">
+					<u-input inputAlign='right' placeholder='输入联系人' border='none' v-model="form.realname" type="select" />
+				</u-form-item>
+				<u-form-item  v-if='form.mainBody=="个人"' labelWidth='160' labelPosition='left' label="姓名(仅平台可见)">
+					<u-input inputAlign='right' placeholder='输入姓名' border='none' v-model="form.realname" type="select" />
+				</u-form-item>
+				<u-form-item labelWidth='160' labelPosition='left' label="称呼(所有人可见)">
+					<u-input inputAlign='right' placeholder='输入称呼,如李先生' border='none' v-model="form.sex" type="select" />
+				</u-form-item>
+				<u-form-item labelWidth='160' labelPosition='left' label="联系电话(所有人可见)">
+					<u-input type='digit' inputAlign='right' maxlength="15" placeholder='输入联系电话' border='none' v-model="form.phone"  />
+				</u-form-item>
+				<u-form-item v-if='form.mainBody=="商铺"' labelWidth='80' labelPosition='top' label="营业执照">
+					<u-upload height='208' width='320' :fileList="fileList2" @afterRead="afterRead($event,1)" @delete="deletePic" name="2" multiple
+						:maxCount="1">
+						<image style='width:594rpx;height:378rpx;' src="../../static/image/find/yingyezhizhao.png" mode=""></image>
+						</u-upload>
+				</u-form-item>
+				<view v-if='form.mainBody=="个人"' class='caution'>注:如提供风险类服务,请上传身份证信息</view>
+				<u-form-item  v-if='form.mainBody=="个人"' labelWidth='120' labelPosition='top' label="身份证头像面">
+					<u-upload height='208' width='320' :fileList="fileList4" @afterRead="afterRead($event,2)" @delete="deletePic" name="4" multiple
+						:maxCount="1">
+						<view class="bgc">
+							<image class='circle' style='width:123rpx;height:123rpx;' src="../../static/image/find/camera.png" mode=""></image>
+							<view>请上传头像面</view>
+						</view>
+						</u-upload>
+				</u-form-item>
+				<u-form-item  v-if='form.mainBody=="个人"' labelWidth='120' labelPosition='top' label="身份证国徽面">
+					<u-upload  height='208' width='320' :fileList="fileList6" @afterRead="afterRead($event,3)" @delete="deletePic" name="6" multiple
+						:maxCount="1">
+						<view class="bgc1">
+							<image class='circle' style='width:123rpx;height:123rpx;' src="../../static/image/find/camera.png" mode=""></image>
+							<view>请上传国徽面</view>
+						</view>
+					</u-upload>
+				</u-form-item>
+				<u-form-item   v-if='form.mainBody=="个人"' labelWidth='120' labelPosition='left' label="身份证号码">
+					<u-input  inputAlign='right' border='none' placeholder='请输入身份证号码' v-model="form.personNo" />
+				</u-form-item>
+				<view></view>
+			</u--form>
+			
+			<view class="footer">
+				<button @click='submit' class="submit">提交</button>
+			</view>
+		</view>
+		<!-- <u-modal :show="isSubmit" :content='content' @confirm="$u.debounce(confirmSubmit, 500)" showCancelButton
+			@cancel="isSubmit=false" @close="isSubmit=false" closeOnClickOverlay></u-modal> -->
+	</view>
+</template>
+
+<script>
+	var that
+	import uploadImage from '@/components/ossutil/uploadFile.js';
+	export default {
+		data() {
+			return {
+				form:{
+					mainBody:'商铺',
+					city: '',
+					area: '',
+					province: '',
+					location: '',
+					detailedAddress: '',
+					personImageFront:'',
+					personImageBack:'',
+					personNo:'',
+					
+				},
+				id:'',
+				content:'确定提交店铺信息',
+				isSubmit:false,
+				// 封面
+				fileList:[],
+				fileList1:[],
+				// 营业执照
+				fileList2:[],
+				fileList3:[],
+				// 头像面
+				fileList4:[],
+				fileList5:[],
+				// 国徽面
+				fileList6:[],
+				fileList7:[],
+			}
+		},
+		onLoad(options) {
+			that = this
+			this.id=options.id
+		},
+		onShow() {
+			this.getList()
+		},
+		methods: {
+			getList(){
+				this.$request.baseRequest('admin.tourism.productManagement', 'get', {
+					id: this.id
+				}, failres => {
+					uni.showToast({
+						icon: "none",
+						title: failres.errmsg,
+						duration: 3000
+					});
+							
+					uni.hideLoading()
+				}).then(res => {
+					console.log(res)
+					this.form=res.data
+							
+				})
+			},
+			submit(){
+				uni.showModal({
+					title:'123',
+					success: () => {
+							console.log(123)
+					}
+				})
+				
+				
+				
+				if(this.form.mainBody=='商铺'){
+					this.content='确定提交店铺信息'
+				}else{
+					this.content='确定提交服务信息'
+				}
+				if(this.form.mainBody=='商铺'&&this.form.shopNames.length<2||this.form.mainBody=='商铺'&&this.form.shopNames.length>15){
+					uni.showToast({
+						icon: "none",
+						title: '店铺名称2-15个字!',
+						duration: 2000
+					});
+					return
+				}
+				if(this.form.mainBody=='个人'&&this.form.shopNames.length<2||this.form.mainBody=='个人'&&this.form.shopNames.length>15){
+					uni.showToast({
+						icon: "none",
+						title: '服务名称2-15个字!',
+						duration: 2000
+					});
+					return
+				}
+				if(!this.form.coverImage){
+					uni.showToast({
+						icon: "none",
+						title: '封面图片不能为空!',
+						duration: 2000
+					});
+					return
+				}
+				if(this.form.mainBody=='商铺'&!this.form.province){
+					uni.showToast({
+						icon: "none",
+						title: '店铺位置不能为空!',
+						duration: 2000
+					});
+					return
+				}
+				if(this.form.mainBody=='个人'&!this.form.province){
+					uni.showToast({
+						icon: "none",
+						title: '定位不能为空!',
+						duration: 2000
+					});
+					return
+				}
+				if(this.form.detailedAddress.length<6||this.form.detailedAddress.length>15){
+					uni.showToast({
+						icon: "none",
+						title: '详细地址6-15个字!',
+						duration: 2000
+					});
+					return
+				}
+				if(this.form.realname&&this.form.realname.length>6&&this.form.mainBody=='商铺'){
+					uni.showToast({
+						icon: "none",
+						title: '联系人最多6个字!',
+						duration: 2000
+					});
+					return
+				}
+				if(this.form.realname&&this.form.realname.length>6&&this.form.mainBody=='个人'){
+					uni.showToast({
+						icon: "none",
+						title: '姓名最多6个字!',
+						duration: 2000
+					});
+					return
+				}
+				uni.showModal({
+					title: '提示',
+					content: this.content,
+					success (res) {
+					    if (res.confirm) {
+							that.$u.debounce(that.confirmSubmit, 500)
+					    } else if (res.cancel) {
+					      console.log('用户点击取消')
+					    }
+					  }
+				})
+				// this.isSubmit = true
+			},
+			confirmSubmit() {
+				uni.showLoading({
+					title: '加载中',
+					mask: true
+				})
+				this.$request.baseRequest('admin.tourism.productManagement', 'add', {
+					productManagement: JSON.stringify(this.form)
+				}, failres => {
+					uni.showToast({
+						icon: "none",
+						title: failres.errmsg,
+						duration: 3000
+					});
+			
+					uni.hideLoading()
+				}).then(res => {
+					this.isSubmit = false
+					uni.showToast({
+						icon: "success",
+						title: '提交成功!',
+						duration: 2000
+					});
+					uni.navigateBack()
+			
+				})
+			},
+			placeSelect() {
+				uni.chooseLocation({
+					success: function(res) {
+						console.log(res);
+						that.form.location = res.latitude + ',' + res.longitude
+						let _address = that.$helper.formatLocation(res.address)
+						console.log(_address)
+						that.form.province = _address.Province
+						that.form.city = _address.City
+						that.form.area = _address.Country
+						that.form.detailedAddress = _address.Village
+						that.$forceUpdate()
+					}
+				});
+			},
+			hideKeyboard() {
+				uni.hideKeyboard()
+			},
+			// 删除图片
+			deletePic(event,status) {
+				this[`fileList${event.name}`].splice(event.index, 1)
+			},
+			// 新增图片
+			async afterRead(event,status) {
+				// 当设置 multiple 为 true 时, file 为数组格式,否则为对象格式
+				let lists = [].concat(event.file)
+				let fileListLen = this[`fileList${event.name}`].length
+				lists.map((item) => {
+					this[`fileList${event.name}`].push({
+						...item,
+						status: 'uploading',
+						message: '上传中'
+					})
+				})
+				for (let i = 0; i < lists.length; i++) {
+					const result = await this.uploadFilePromise(lists[i].url,status)
+					
+					let item = this[`fileList${event.name}`][fileListLen]
+					this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, {
+						status: 'success',
+						message: '',
+						url: result
+					}))
+					fileListLen++
+					console.log(that.form, this[`fileList${event.name}`])
+					
+				}
+			},
+			uploadFilePromise(res,status) {
+				return new Promise((resolve, reject) => {
+					uploadImage(res, 'cardImages/',
+						result => {
+							if(status==0){
+								that.form.coverImage = result
+							}else if(status==1){
+								that.form.businessLicense = result
+							}else if(status==2){
+								that.form.personImageFront = result
+									uni.showLoading({
+										title: '加载中',
+										mask: true
+									})
+									that.$request.baseRequest('admin.tourism.productManagement', 'personShibie', {
+										personImageFront: that.form.personImageFront
+									}, failres => {
+										uni.showToast({
+											icon: "none",
+											title: failres.errmsg,
+											duration: 3000
+										});	
+										uni.hideLoading()
+									}).then(res => {
+										console.log(res)
+										uni.hideLoading()
+										that.form.personNo=res.data.recPersonNo
+										console.log(that.form)
+										that.$forceUpdate()	
+									})
+							}else if(status==3){
+								that.form.personImageBack = result
+							}
+							resolve(res)
+						}
+					)
+				})
+			},
+			
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+ .wrap{
+	 padding:20rpx;
+ }
+ .title{
+	 font-size:36rpx;
+	 font-weight:600;
+	 margin:20rpx 0;
+ }
+ /deep/.u-radio-group,/deep/.u-radio-group--row {
+	flex-direction: row-reverse !important;
+	.u-radio{
+		margin-left:10rpx;
+	}
+ }
+ // 人像
+ .bgc,.bgc1{
+	 width:672rpx;
+	 height:417rpx;
+	 background:url('https://taohaoliang.oss-cn-beijing.aliyuncs.com/pcfiles/card2.png') no-repeat center;
+	 background-size: 100%;
+	 text-align:center;
+ }
+ // 国徽
+ .bgc1{
+ 	 background:url('https://taohaoliang.oss-cn-beijing.aliyuncs.com/pcfiles/card.png') no-repeat center;
+	 background-size: 100%;
+ }
+ .circle{
+	margin:110rpx 0 20rpx 0;
+ }
+ /deep/.u-upload {
+ 
+ 	.u-upload__deletable {
+ 		height: 40rpx;
+ 		width: 40rpx;
+ 		line-height: 40rpx;
+ 	}
+ 
+ 	.u-upload__deletable__icon {
+ 		top: 8rpx;
+ 	}
+ 
+ 	.uicon-close {
+ 		font-size: 20px !important;
+ 	}
+ }
+</style>

+ 287 - 3
uni_applet/pageA/my/mypublish.vue

@@ -1,22 +1,306 @@
 <template>
 	<view>
+		<view class="flex content1">
+			<view class=" search-wrap">
+				<view class="search flex justify-space-between align-item-center flex-between" @click="search">
+					<view class="left flex  align-item-center">
+						<image class="dSLComVueTopLeftImg" style="width: 30rpx;height: 30rpx;flex: none;"
+							src="@/static/image/card/search.png"></image>
+						<view class="search-val"> {{searchVal?searchVal:'搜索店铺或服务 '}}</view>
+					</view>
 		
+					<view class="right">
+						<image style='width:32rpx;height:32rpx;' v-if="searchVal" @click.stop="delSearchVal"
+							src="@/static/image/card/searchdel.png" mode="widthFix"></image>
+					</view>
+				</view>
+			</view>
+		</view>
+		<mescroll-uni :up="upOption" :down="downOption" ref="mescrollRef" @init="mescrollInit" @up="upCallback"
+			@down="downCallback" :top="108">
+			<view class='findItem' v-for='item in findList'>
+				<view style='align-items: flex-start;' class='flex'>
+					<view class="left">
+						<view class='cover'>
+							<u--image radius='4' :showLoading="true" :src="item.coverImage" width="86px"
+								height="86px" @click="click"></u--image>
+						</view>
+					</view>
+					<view class="right">
+						<view class='flex'>
+							<view  class='flex'>
+								<view class="main-body">
+									{{item.mainBody=="商铺"?'商铺':'个人'}}
+								</view>
+								<view class='name'>{{item.shopNames}}</view>
+							</view>
+							<view><view class='iconfont applet-androidgengduo'></view></view>
+						</view>
+						<view class='description'>
+							<mote-lines-divide :dt="item.serviceDescription" :line="3" expandText="展开"
+								foldHint="收起" />
+						</view>
+					</view>
+				</view>
+				<view class='address flex justify-space-between'>
+					<view class='flex'>
+						<view class='iconfont applet-dizhi'></view>
+						<view @click.stop="toShopDetail(item)">{{item.detailedAddress}}</view>
+					</view>
+					<view class='flex'>
+						<view @click='edit(item)' class='default_button'>编辑</view>
+						<view @click='del(item)' class='default_button'>删除</view>
+					</view>
+					
+				</view>
+			</view>
+		</mescroll-uni>
 	</view>
 </template>
 
 <script>
+	var that
+	import MoteLinesDivide from "@/components/text-over-flow/text-over-flow.vue"
+	import MescrollMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mescroll-mixins.js";
 	export default {
+		components: {
+			MoteLinesDivide,
+		},
+		mixins: [MescrollMixin],
 		data() {
 			return {
-				
+				searchVal:'',
+				findList:[],
+				handleList:[],
+				curPageLen:0,
+				totalPage:0,
+				currectData:{},
+			}
+		},
+		onLoad() {
+			that = this
+		},
+		onShow() {
+			if (uni.getStorageSync("search_val")) {
+				this.searchVal = uni.getStorageSync("search_val")
+				this.mescroll.resetUpScroll()
 			}
 		},
 		methods: {
+			edit(item){
+				uni.navigateTo({
+					url: "/pageA/find/edit?id="+item.id
+				})
+			},
+			del(item){
+				that.currectData = item
+				uni.showModal({
+					title: '提示',
+					content: '确定删除发布内容?',
+					success (res) {
+					    if (res.confirm) {
+							that.$u.debounce(that.delSubmit, 500)
+					    } else if (res.cancel) {
+					      console.log('用户点击取消')
+					    }
+					  }
+				})
+			},
+			delSubmit() {
+				uni.showLoading({
+					title: '加载中',
+					mask: true
+				})
+				this.$request.baseRequest('admin.tourism.productManagement', 'delete', {
+					id: this.currectData.id
+				}, failres => {
+					uni.showToast({
+						icon: "none",
+						title: failres.errmsg,
+						duration: 3000
+					});
+			
+					uni.hideLoading()
+				}).then(res => {
+					uni.showToast({
+						icon: "success",
+						title: '删除成功!',
+						duration: 2000
+					});
+					that.mescroll.resetUpScroll()
 			
+				})
+			},
+			toShopDetail(val){
+				console.log(val)
+				uni.navigateTo({
+					url: "/pageA/food/detailMap?val="+JSON.stringify(val)
+				})
+				
+			},
+			delSearchVal() {
+				this.searchVal = ''
+				uni.removeStorageSync("search_val")
+				that.mescroll.resetUpScroll()
+			},
+			search() {
+				// if (this.userInfo.phone) {
+				uni.navigateTo({
+					url: "/pageA/find/search"
+				})
+				// } else {
+				// 	this.showAuthorizePhone = true
+				// }
+			},
+			async upCallback(page) {
+				// if (uni.getStorageSync("userInfo").id) {
+				uni.showLoading({
+					title: '数据加载中'
+				})
+			
+				var finddata = await that.getfindList(page)
+				if (page.num == 1) that.findList = [], that.handleList = [];
+				that.curPageLen = finddata.data.items.length;
+				that.handleList = finddata.data.items
+				that.totalPage = finddata.data.total;
+				if (that.handleList.length > 0) {
+					that.findList = that.handleList
+				}
+				uni.hideLoading()
+				that.$nextTick(() => {
+					that.mescroll.endBySize(that.curPageLen, that.totalPage)
+				});
+			
+				// }
+			},
+			getfindList(page) {
+				return new Promise((resolve, reject) => {
+					that.$request.baseRequest('admin.tourism.productManagement', 'list', {
+						page: page.num,
+						limit: page.size,
+						searchKeyWord: this.searchVal,
+						myFlag:1,
+						// classify: this.typeName
+					}, failres => {
+						uni.showToast({
+							icon: "none",
+							title: failres.errmsg,
+							duration: 3000
+						});
+						
+					}).then(res => {
+						resolve(res)
+					})
+				})
+			
+			},
 		}
 	}
 </script>
 
-<style>
-
+<style lang='scss' scoped>
+	.content1 {
+		position: fixed;
+		top: 0;
+		left: 0;
+		padding: 20rpx;
+		background-color: #fff;
+		z-index: 99;
+		width: 100vw;
+	
+		.search {
+			// color: #9199af;
+			// background: #f9d27d;
+			border-radius: 50rpx;
+			padding: 10rpx 0 10rpx 30rpx;
+			box-sizing: border-box;
+			margin-right: 20rpx;
+		}
+	
+		.left {
+			width: 80%;
+	
+			view {
+				height: 40rpx;
+				line-height: 40rpx;
+				white-space: nowrap;
+				overflow: scroll;
+				position: relative;
+				margin-left: 20rpx;
+				color: #9199af;
+			}
+		}
+	
+		.right {
+			// width:14%;
+			margin-right: 20rpx
+		}
+	}
+	
+	.search-wrap {
+		width: 100%;
+		background: #f9f9f9;
+		// border: 1px solid #f9d27d;
+		border-radius: 50rpx;
+	}
+	.findItem {
+		background: #fff;
+		margin: 10rpx;
+		border-radius: 20rpx;
+		padding: 20rpx;
+		font-size: 32rpx;
+	
+		.main-body {
+			color: #E95700;
+			background: #FDF2E5;
+			font-size: 12px;
+			padding: 6rpx 14rpx;
+			box-sizing: border-box;
+			border-radius: 10rpx;
+			width:80rpx;
+		}
+	
+		.left {
+			margin-right: 20rpx;
+	
+			.cover {
+				border-radius: 8rpx;
+			}
+		}
+	
+		.name {
+			font-size: 30rpx;
+			color: #333;
+			margin-left: 10rpx;
+			overflow-x: scroll;
+			white-space: nowrap;
+			width: 49vw;
+			font-weight: 600;
+			letter-spacing: 3rpx;
+		}
+	
+		.description {
+			color: #333;
+			margin-top: 10rpx;
+			width: 67vw;
+			font-size: 28rpx;
+		}
+	
+		.address {
+			margin-top: 20rpx;
+			width: 100%;
+			font-size: 28rpx;
+			color: #999;
+		}
+	}
+	
+	.applet-dianpu1 {
+		font-size: 44rpx;
+		color: #eaad1a;
+	}
+	
+	.applet-dizhi {
+		font-size: 38rpx;
+		color: #393733;
+	}
 </style>

+ 11 - 2
uni_applet/pages.json

@@ -299,7 +299,6 @@
 					"navigationBarTitleText": "通知详情",
 					"enablePullDownRefresh": false
 				}
-
 			},
 			{
 				"path": "notice/index",
@@ -359,7 +358,17 @@
 				}
 
 			}
-		]
+
+		    ,{
+                    "path" : "find/edit",
+                    "style" :                                                                                    
+                {
+                    "navigationBarTitleText": "编辑",
+                    "enablePullDownRefresh": false
+                }
+                
+                }
+            ]
 	}],
 	"preloadRule": {
 		"pages/accommodation/accommodation": {

+ 1 - 1
uni_applet/pages/my/my.vue

@@ -69,7 +69,7 @@
 					<u-cell
 					    title="我的发布"
 					    isLink
-					    url="/pages/componentsB/badge/badge"
+					    url="/pageA/my/mypublish"
 					></u-cell>
 					<u-cell
 					    title="房源发布"

BIN
uni_applet/static/image/cxb.png


+ 14 - 10
uni_applet/style/icons/iconfont.css

@@ -1,9 +1,9 @@
 @font-face {
   font-family: "iconfont"; /* Project id 4101096 */
-  src: url('//at.alicdn.com/t/c/font_4101096_wzrvwev9f5.woff2?t=1685946465587') format('woff2'),
-       url('//at.alicdn.com/t/c/font_4101096_wzrvwev9f5.woff?t=1685946465587') format('woff'),
-       url('//at.alicdn.com/t/c/font_4101096_wzrvwev9f5.ttf?t=1685946465587') format('truetype'),
-       url('//at.alicdn.com/t/c/font_4101096_wzrvwev9f5.svg?t=1685946465587#iconfont') format('svg');
+  src: url('//at.alicdn.com/t/c/font_4101096_alqtra1v8eo.woff2?t=1689140442696') format('woff2'),
+       url('//at.alicdn.com/t/c/font_4101096_alqtra1v8eo.woff?t=1689140442696') format('woff'),
+       url('//at.alicdn.com/t/c/font_4101096_alqtra1v8eo.ttf?t=1689140442696') format('truetype'),
+       url('//at.alicdn.com/t/c/font_4101096_alqtra1v8eo.svg?t=1689140442696#iconfont') format('svg');
 }
 
 .iconfont {
@@ -14,16 +14,20 @@
   -moz-osx-font-smoothing: grayscale;
 }
 
-.applet-gerenzhongxin-copy:before {
-  content: "\e6da";
+.applet-androidgengduo:before {
+  content: "\e78d";
 }
 
-.applet-dizhiku:before {
-  content: "\e64d";
+.applet-danxuankuang:before {
+  content: "\e609";
 }
 
-.applet-dianpu:before {
-  content: "\e6d9";
+.applet-sousuo:before {
+  content: "\e8b9";
+}
+
+.applet-denglu-shuruqingkong:before {
+  content: "\e60b";
 }
 
 .applet-dianpu1:before {