Просмотр исходного кода

Merge branch 'master' of http://git.sjzkeji.com/panghu/school_webUser

zpj 2 лет назад
Родитель
Сommit
f2fe8de89b
45 измененных файлов с 2432 добавлено и 1654 удалено
  1. 3 1
      api/common.js
  2. 4 1
      common/css/common.css
  3. 11 15
      components/en-from/en-upload/en-upload.vue
  4. 111 105
      manifest.json
  5. 6 1
      pages-address/edit-add.vue
  6. 4 3
      pages-address/select-school.vue
  7. 18 24
      pages-buy/dry-clean.vue
  8. 4 10
      pages-buy/dry-mod/select-shop.vue
  9. 12 10
      pages-buy/group-det.vue
  10. 90 70
      pages-buy/group.vue
  11. 11 3
      pages-buy/save-dry.vue
  12. 5 5
      pages-buy/save-order.vue
  13. 2 2
      pages-buy/ticket-det.vue
  14. 6 5
      pages-buy/ticket.vue
  15. 125 107
      pages-my/comment.vue
  16. 36 13
      pages-my/my-publish.vue
  17. 2 1
      pages-my/my-ticket.vue
  18. 26 20
      pages-my/notice/list.vue
  19. 1 1
      pages-my/user-info.vue
  20. 56 6
      pages-order/express-info.vue
  21. 26 2
      pages-order/group-info.vue
  22. 44 3
      pages-order/laundry-info.vue
  23. 60 9
      pages-order/takeout-info.vue
  24. 25 1
      pages-order/ticket-info.vue
  25. 61 30
      pages-position/Internship-position.vue
  26. 77 51
      pages-school/add-circle.vue
  27. 67 15
      pages-school/circle-info.vue
  28. 40 12
      pages-school/school-circle.vue
  29. 43 9
      pages-takeout/aptitude.vue
  30. 1 1
      pages-takeout/confirm-mod/select-address.vue
  31. 17 25
      pages-takeout/confirm-order.vue
  32. 18 7
      pages-takeout/goods-order.vue
  33. 24 16
      pages-takeout/replace-take.vue
  34. 5 5
      pages-takeout/shop-mod/info.vue
  35. 139 58
      pages-takeout/shop-mod/menu.vue
  36. 750 743
      pages-takeout/shop.vue
  37. 84 28
      pages-takeout/takeout.vue
  38. 18 14
      pages.json
  39. 129 41
      pages/index/index.vue
  40. 111 60
      pages/index/search-list.vue
  41. 43 12
      pages/order/index.vue
  42. 12 4
      service/tools.js
  43. BIN
      static/img/index/index-xsms.png
  44. BIN
      static/img/order/lxsj.png
  45. 105 105
      yarn.lock

+ 3 - 1
api/common.js

@@ -28,4 +28,6 @@ export const getCommonText = (data) => request(commonUrl + 'text', 'post', { ...
 // 获取实习岗位二维码
 // 获取实习岗位二维码
 export const commonPracticeCode = (data) => request(commonUrl + 'practice_code', 'post', { ...data })
 export const commonPracticeCode = (data) => request(commonUrl + 'practice_code', 'post', { ...data })
 // 获取外卖配送费
 // 获取外卖配送费
-export const getDeliveryMoney = (data) => request(commonUrl + 'delivery_money', 'post', { ...data },false)
+export const getDeliveryMoney = (data) => request(commonUrl + 'delivery_money', 'post', { ...data },false)
+// 是否是小程序上架审核
+export const commonApplet = (data) => request(commonUrl + 'applet', 'post', { ...data })

+ 4 - 1
common/css/common.css

@@ -373,6 +373,9 @@ image {
 .pb-5 {
 .pb-5 {
 	padding-bottom: 5rpx;
 	padding-bottom: 5rpx;
 }
 }
+.pb-10 {
+	padding-bottom: 10rpx;
+}
 .p-b-20 {
 .p-b-20 {
 	padding-bottom: 20rpx;
 	padding-bottom: 20rpx;
 }
 }
@@ -461,7 +464,7 @@ image {
 	margin-right: 40px;
 	margin-right: 40px;
 }
 }
 .mr-46{
 .mr-46{
-	margin-right: 46px;
+	margin-right: 46rpx;
 }
 }
 
 
 
 

+ 11 - 15
components/en-from/en-upload/en-upload.vue

@@ -351,20 +351,16 @@
 							console.log('--------------------')
 							console.log('--------------------')
 							res.tempFiles.forEach((file) => {
 							res.tempFiles.forEach((file) => {
 								console.log(file.size,"+++++++++++++");
 								console.log(file.size,"+++++++++++++");
-								if (file.size > (1048576 * 3)) {
-									tools.error('上传的图片最大3MB')
-								} else {
-									if (this.list.length > 100) {
-										tools.error('最多上传100张')
-									} else {
-										console.log('--aaaaaaaaaa------------------')
-										if (tools.getPlatform() === 'H5') {
-											this.uploadingFile(file);
-										} else {
-											this.uploadingFile(file.path);
-										}
-									}
-								}
+                if (this.list.length > 100) {
+                  tools.error('最多上传100张')
+                } else {
+                  console.log('--aaaaaaaaaa------------------')
+                  if (tools.getPlatform() === 'H5') {
+                    this.uploadingFile(file);
+                  } else {
+                    this.uploadingFile(file.path);
+                  }
+                }
 							})
 							})
 						}
 						}
 					},
 					},
@@ -605,4 +601,4 @@
 			}
 			}
 		}
 		}
 	}
 	}
-</style>
+</style>

+ 111 - 105
manifest.json

@@ -1,106 +1,112 @@
 {
 {
-	"name": "学校",
-	"appid": "__UNI__1578510",
-	"description": "",
-	"versionName": "1.0.1",
-	"versionCode": 101,
-	"transformPx": false,
-	/* 5+App特有相关 */
-	"app-plus": {
-		"usingComponents": true,
-		"nvueStyleCompiler": "uni-app",
-		"compilerVersion": 3,
-		"splashscreen": {
-			"alwaysShowBeforeRender": true,
-			"waiting": true,
-			"autoclose": true,
-			"delay": 0
-		},
-		"safearea": {
-			"background": "#FFFFFF",
-			"bottom": {
-				"offset": "auto"
-			}
-		},
-		/* 模块配置 */
-		"modules": {},
-		/* 应用发布信息 */
-		"distribute": {
-			/* android打包配置 */
-			"android": {
-				"permissions": [
-					"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
-					"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
-					"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
-					"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
-					"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
-					"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
-					"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
-					"<uses-permission android:name=\"android.permission.CAMERA\"/>",
-					"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
-					"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
-					"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
-					"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
-					"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
-					"<uses-feature android:name=\"android.hardware.camera\"/>",
-					"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
-				]
-			},
-			/* ios打包配置 */
-			"ios": {},
-			/* SDK配置 */
-			"sdkConfigs": {}
-		}
-	},
-	/* 快应用特有相关 */
-	"quickapp": {},
-	/* 小程序特有相关 */
-	"mp-weixin": {
-		"appid": "wx3530a27aa802e153",
-		"setting": {
-			"urlCheck": false,
-			"minified": true
-		},
-		"usingComponents": true,
-		"permission": {
-			"scope.userLocation": {
-				"desc": "获取您的位置授权,用于更准确的,更快捷的为您服务"
-			}
-		},
-		"safearea": {
-			"background": "#FFFFFF",
-			"bottom": {
-				"offset": "auto"
-			}
-		},
-		"requiredPrivateInfos": ["getLocation"]
-	},
-	"mp-alipay": {
-		"usingComponents": true
-	},
-	"mp-baidu": {
-		"usingComponents": true
-	},
-	"mp-toutiao": {
-		"usingComponents": true
-	},
-	"uniStatistics": {
-		"enable": false
-	},
-	"vueVersion": "2",
-	"h5": {
-		"devServer": {
-			"https": false,
-			"proxy": {
-				"/api": {
-					"target": "https://test-userapi.sjzkeji.com",
-					"changeOrigin": true,
-					"secure": false,
-					"pathRewrite": {
-						"^/api": "api"
-					}
-				}
-			}
-		}
-	}
-}
+    "name" : "君子校园",
+    "appid" : "__UNI__23D1B9A",
+    "description" : "",
+    "versionName" : "1.0.1",
+    "versionCode" : 101,
+    "transformPx" : false,
+    /* 5+App特有相关 */
+    "app-plus" : {
+        "usingComponents" : true,
+        "nvueStyleCompiler" : "uni-app",
+        "compilerVersion" : 3,
+        "splashscreen" : {
+            "alwaysShowBeforeRender" : true,
+            "waiting" : true,
+            "autoclose" : true,
+            "delay" : 0
+        },
+        "safearea" : {
+            "background" : "#FFFFFF",
+            "bottom" : {
+                "offset" : "auto"
+            }
+        },
+        /* 模块配置 */
+        "modules" : {
+            "Camera" : {}
+        },
+        /* 应用发布信息 */
+        "distribute" : {
+            /* android打包配置 */
+            "android" : {
+                "permissions" : [
+                    "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
+                    "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
+                    "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
+                    "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
+                    "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
+                    "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
+                    "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
+                    "<uses-permission android:name=\"android.permission.CAMERA\"/>",
+                    "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
+                    "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
+                    "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
+                    "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
+                    "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
+                    "<uses-feature android:name=\"android.hardware.camera\"/>",
+                    "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
+                ]
+            },
+            /* ios打包配置 */
+            "ios" : {
+                "dSYMs" : false
+            },
+            /* SDK配置 */
+            "sdkConfigs" : {
+                "ad" : {}
+            }
+        }
+    },
+    /* 快应用特有相关 */
+    "quickapp" : {},
+    /* 小程序特有相关 */
+    "mp-weixin" : {
+        "appid" : "wx3530a27aa802e153",
+        "setting" : {
+            "urlCheck" : false,
+            "minified" : true
+        },
+        "usingComponents" : true,
+        "permission" : {
+            "scope.userLocation" : {
+                "desc" : "获取您的位置授权,用于更准确的,更快捷的为您服务"
+            }
+        },
+        "safearea" : {
+            "background" : "#FFFFFF",
+            "bottom" : {
+                "offset" : "auto"
+            }
+        },
+        "requiredPrivateInfos" : [ "getLocation" ]
+    },
+    "mp-alipay" : {
+        "usingComponents" : true
+    },
+    "mp-baidu" : {
+        "usingComponents" : true
+    },
+    "mp-toutiao" : {
+        "usingComponents" : true
+    },
+    "uniStatistics" : {
+        "enable" : false
+    },
+    "vueVersion" : "2",
+    "h5" : {
+        "devServer" : {
+            "https" : false,
+            "proxy" : {
+                "/api" : {
+                    "target" : "https://test-userapi.sjzkeji.com",
+                    "changeOrigin" : true,
+                    "secure" : false,
+                    "pathRewrite" : {
+                        "^/api" : "api"
+                    }
+                }
+            }
+        }
+    }
+}

+ 6 - 1
pages-address/edit-add.vue

@@ -135,7 +135,12 @@
 							uni.navigateBack({
 							uni.navigateBack({
 								delta: 1
 								delta: 1
 							});
 							});
-							uni.setStorageSync('isConfirmAddressFlag',true);
+							let addressData = {
+								flag: true,
+								is_default: this.fromData.is_default,
+								id: this.fromData.id
+							}
+							uni.setStorageSync('isConfirmAddressFlag',addressData);
 						},1500)
 						},1500)
 					}else{
 					}else{
 						tools.error(res.msg);
 						tools.error(res.msg);

+ 4 - 3
pages-address/select-school.vue

@@ -143,9 +143,10 @@
 						})
 						})
 					}else{
 					}else{
 						// 跳转校友圈
 						// 跳转校友圈
-						uni.reLaunch({
-							url:'/pages-school/school-circle'
-						})
+						uni.$emit('operateType', true);
+						uni.navigateBack({
+							delta: 1,
+						});
 					}
 					}
 				}else{
 				}else{
 					uni.switchTab({
 					uni.switchTab({

+ 18 - 24
pages-buy/dry-clean.vue

@@ -8,7 +8,8 @@
 				<view class="display-flex mb-16">
 				<view class="display-flex mb-16">
 					<view class="w410 fs-40 fw-600 text-overflow-ellipsis-one">{{siteData.name?siteData.name:'请选择站点'}}
 					<view class="w410 fs-40 fw-600 text-overflow-ellipsis-one">{{siteData.name?siteData.name:'请选择站点'}}
 					</view>
 					</view>
-					<view class="fs-28 fw-400 fc-41ABF5 text-align-right" @click="selectsShop()">【{{siteData.name?'切换':'选择'}}站点】</view>
+					<view class="fs-28 fw-400 fc-41ABF5 text-align-right" @click="selectsShop()">
+						【{{siteData.name?'切换':'选择'}}站点】</view>
 				</view>
 				</view>
 				<view class="display-flex">
 				<view class="display-flex">
 					<view v-if="siteData.city_name||siteData.address" class="w410 fs-26 fw-400 fc-9">
 					<view v-if="siteData.city_name||siteData.address" class="w410 fs-26 fw-400 fc-9">
@@ -29,8 +30,8 @@
 		<view class="box-border-box p-24" @click="openText()">
 		<view class="box-border-box p-24" @click="openText()">
 			<view class="sy-box flex-justify-space box-border-box p-16">
 			<view class="sy-box flex-justify-space box-border-box p-16">
 				<view class="align-items-center">
 				<view class="align-items-center">
-					<uni-icons type="help" size="20" color="#666"></uni-icons>
-					<view class="fc-6 fs-28 ml-10">使用须知</view>
+					<uni-icons type="help" size="20" color="#FB3D03"></uni-icons>
+					<view class="fc-6 fs-28 ml-10 fc-FB3D03">使用须知</view>
 				</view>
 				</view>
 				<image src="@/static/img/toRight.png" mode=""></image>
 				<image src="@/static/img/toRight.png" mode=""></image>
 			</view>
 			</view>
@@ -41,7 +42,6 @@
 			<Menu ref="menuBox" style="height: 100%;" @relCardBuy='relCardBuy'></Menu>
 			<Menu ref="menuBox" style="height: 100%;" @relCardBuy='relCardBuy'></Menu>
 		</view>
 		</view>
 
 
-
 		<view class="shop-buttom-money box-border-box">
 		<view class="shop-buttom-money box-border-box">
 			<view class="shop-buttom-money-1 flex-justify-space align-items-center">
 			<view class="shop-buttom-money-1 flex-justify-space align-items-center">
 				<image src="@/static/img/takeout/buy-icon.png" mode="scaleToFill" @click="openBuyCrad()"></image>
 				<image src="@/static/img/takeout/buy-icon.png" mode="scaleToFill" @click="openBuyCrad()"></image>
@@ -51,15 +51,16 @@
 				<view class="">
 				<view class="">
 					<view class="">
 					<view class="">
 						<span class="fw-600 fs-24 fc-f">¥</span>
 						<span class="fw-600 fs-24 fc-f">¥</span>
-						<span class="fw-600 fs-44 fc-f">{{cardData.total_price||'0'}}</span>
+						<span class="fw-600 fs-44 fc-f">{{cardData.total_price ||'0'}}</span>
+					</view>
+					<view class="fc-f">
+						配送费: {{siteData.delivery_money?siteData.delivery_money:'0.00'}}
 					</view>
 					</view>
 				</view>
 				</view>
 				<view class="shop-buttom-money-2 text-align-center fc-f fs-32 fw-600" @click="createOrder()">去结算</view>
 				<view class="shop-buttom-money-2 text-align-center fc-f fs-32 fw-600" @click="createOrder()">去结算</view>
 			</view>
 			</view>
 		</view>
 		</view>
 
 
-
-
 		<uni-popup ref="popupBuy" type="bottom">
 		<uni-popup ref="popupBuy" type="bottom">
 			<view class="buy-card flex-index-css">
 			<view class="buy-card flex-index-css">
 				<view class="buy-card-top box-border-box plr-32 flex-justify-space align-items-center">
 				<view class="buy-card-top box-border-box plr-32 flex-justify-space align-items-center">
@@ -108,7 +109,10 @@
 						<view class="">
 						<view class="">
 							<view class="">
 							<view class="">
 								<span class="fw-600 fs-24 fc-f">¥</span>
 								<span class="fw-600 fs-24 fc-f">¥</span>
-								<span class="fw-600 fs-44 fc-f">{{cardData.total_price||'0'}}</span>
+								<span class="fw-600 fs-44 fc-f">{{cardData.total_price ||'0'}}</span>
+							</view>
+							<view class="fc-f">
+								配送费: {{siteData.delivery_money?siteData.delivery_money:'0.00'}}
 							</view>
 							</view>
 						</view>
 						</view>
 						<view class="shop-buttom-money-2 text-align-center fs-32 fc-f fw-600">去结算</view>
 						<view class="shop-buttom-money-2 text-align-center fs-32 fc-f fw-600">去结算</view>
@@ -165,16 +169,14 @@
 					total_num: 0,
 					total_num: 0,
 					total_price: 0,
 					total_price: 0,
 				},
 				},
-
+				total_price: '',
 				isAJAX: false,
 				isAJAX: false,
 			}
 			}
 		},
 		},
-		onLoad(e) {
-			if (e.data) {
-				this.siteData = JSON.parse(decodeURIComponent(e.data));
-			}
-		},
 		onShow() {
 		onShow() {
+			uni.$once('stationData', data => {
+				this.siteData = data
+			})
 			this.getText();
 			this.getText();
 			this.getCardList();
 			this.getCardList();
 		},
 		},
@@ -197,9 +199,7 @@
 				} else {
 				} else {
 					tools.error('暂未选择商品')
 					tools.error('暂未选择商品')
 				}
 				}
-
 			},
 			},
-
 			relCardBuy() {
 			relCardBuy() {
 				// 重置购物车
 				// 重置购物车
 				this.getCardList();
 				this.getCardList();
@@ -215,7 +215,6 @@
 					}
 					}
 				})
 				})
 			},
 			},
-
 			getText() {
 			getText() {
 				getCommonText().then((res) => {
 				getCommonText().then((res) => {
 					if (res.code === 1) {
 					if (res.code === 1) {
@@ -223,7 +222,6 @@
 					}
 					}
 				})
 				})
 			},
 			},
-
 			selectsShop() {
 			selectsShop() {
 				uni.navigateTo({
 				uni.navigateTo({
 					url: '/pages-buy/dry-mod/select-shop?id=' + this.siteData.id
 					url: '/pages-buy/dry-mod/select-shop?id=' + this.siteData.id
@@ -235,11 +233,9 @@
 			closeMsg() {
 			closeMsg() {
 				this.$refs.popupText.close()
 				this.$refs.popupText.close()
 			},
 			},
-
 			openBuyCrad() {
 			openBuyCrad() {
 				this.$refs.popupBuy.open()
 				this.$refs.popupBuy.open()
 			},
 			},
-
 			addred(type, info) {
 			addred(type, info) {
 				if (this.isAJAX) {
 				if (this.isAJAX) {
 					return
 					return
@@ -265,7 +261,6 @@
 							tools.error(res.msg)
 							tools.error(res.msg)
 						}
 						}
 					})
 					})
-
 				} else if (type === 2) {
 				} else if (type === 2) {
 					// 加
 					// 加
 					let school_id = uni.getStorageSync('school_id');
 					let school_id = uni.getStorageSync('school_id');
@@ -285,10 +280,8 @@
 							tools.error(res.msg)
 							tools.error(res.msg)
 						}
 						}
 					})
 					})
-
 				}
 				}
 			},
 			},
-
 			createOrder() {
 			createOrder() {
 				if (this.cardData.goods_list.length == 0) {
 				if (this.cardData.goods_list.length == 0) {
 					return tools.error('请选择商品')
 					return tools.error('请选择商品')
@@ -298,7 +291,8 @@
 				}
 				}
 				console.log(this.siteData, '$$$$$$$$$$$');
 				console.log(this.siteData, '$$$$$$$$$$$');
 				uni.navigateTo({
 				uni.navigateTo({
-					url: '/pages-buy/save-dry?id=' + this.siteData.id + '&siteData_name=' + this.siteData.name + '&siteData_logo=' + this.siteData.logo 
+					url: '/pages-buy/save-dry?id=' + this.siteData.id + '&siteData_name=' + this.siteData.name +
+						'&delivery_money=' + this.siteData.delivery_money + '&siteData_logo=' + this.siteData.logo
 				})
 				})
 			},
 			},
 		},
 		},

+ 4 - 10
pages-buy/dry-mod/select-shop.vue

@@ -1,12 +1,10 @@
 <template>
 <template>
 	<view class="select-site-box iPhone-bottom flex-common-css box-border-box">
 	<view class="select-site-box iPhone-bottom flex-common-css box-border-box">
 		<Nav title='选择站点'></Nav>
 		<Nav title='选择站点'></Nav>
-
 		<scroll-view class="scroll-view-css box-border-box p-24" scroll-y="true">
 		<scroll-view class="scroll-view-css box-border-box p-24" scroll-y="true">
 			<view class="list-item" :class="id == item.id?'s-b':''" v-for="(item,i) in list" :key="i"
 			<view class="list-item" :class="id == item.id?'s-b':''" v-for="(item,i) in list" :key="i"
 				@click="selectFun(item)">
 				@click="selectFun(item)">
 				<!-- <image v-if="true" class="jlzj-box" src="@/static/img/buy/jlzj.png" mode=""></image> -->
 				<!-- <image v-if="true" class="jlzj-box" src="@/static/img/buy/jlzj.png" mode=""></image> -->
-
 				<view class="align-items-center mr-18">
 				<view class="align-items-center mr-18">
 					<view class="list-item-s">
 					<view class="list-item-s">
 						<image v-if="id == item.id" src="@/static/img/common/y-select.png" mode=""></image>
 						<image v-if="id == item.id" src="@/static/img/common/y-select.png" mode=""></image>
@@ -18,14 +16,11 @@
 						<view class="fs-26 fw-400 fc-9">{{item.city_name}}{{item.address}}</view>
 						<view class="fs-26 fw-400 fc-9">{{item.city_name}}{{item.address}}</view>
 					</view>
 					</view>
 				</view>
 				</view>
-
-
 				<view class="box-right text-align-center">
 				<view class="box-right text-align-center">
 					<view class="">
 					<view class="">
 						<view class="fs-28 mb-12">去下单</view>
 						<view class="fs-28 mb-12">去下单</view>
 						<!-- <view class="fs-26 fc-9">距您你{{item.distance}}km</view> -->
 						<!-- <view class="fs-26 fc-9">距您你{{item.distance}}km</view> -->
 					</view>
 					</view>
-
 				</view>
 				</view>
 			</view>
 			</view>
 		</scroll-view>
 		</scroll-view>
@@ -57,20 +52,19 @@
 					lon: uni.getStorageSync('lon'),
 					lon: uni.getStorageSync('lon'),
 					lat: uni.getStorageSync('lat'),
 					lat: uni.getStorageSync('lat'),
 				}
 				}
-
 				laundrySite(obj).then((res) => {
 				laundrySite(obj).then((res) => {
 					if (res.code === 1) {
 					if (res.code === 1) {
 						this.list = res.data;
 						this.list = res.data;
 					}
 					}
 				})
 				})
 			},
 			},
-
 			selectFun(item) {
 			selectFun(item) {
 				let obj = JSON.stringify(item);
 				let obj = JSON.stringify(item);
 				this.id = item.id;
 				this.id = item.id;
-				uni.reLaunch({
-					url: '/pages-buy/dry-clean?data=' + encodeURIComponent(obj)
-				})
+				uni.$emit('stationData', item)
+				uni.navigateBack({
+					delta: 1
+				});
 			},
 			},
 		},
 		},
 	}
 	}

+ 12 - 10
pages-buy/group-det.vue

@@ -13,7 +13,7 @@
 		</view>
 		</view>
 		
 		
 		<view class="scroll-view-css">
 		<view class="scroll-view-css">
-			<swiper class="swiper " circular :autoplay="true" :interval="3000" :duration="500" :current='BanenerCurrent' @change="onSwiperChange">
+			<swiper class="swiper " circular :autoplay="true" :interval="3000" :duration="500" @change="onSwiperChange">
 				<swiper-item v-for="(item,i) in obj.image" :key="i">
 				<swiper-item v-for="(item,i) in obj.image" :key="i">
 					<image class="swiper-item" :src="item" mode="aspectFill" @click="lookImg(obj.image,i)"></image>
 					<image class="swiper-item" :src="item" mode="aspectFill" @click="lookImg(obj.image,i)"></image>
 					<view class="swiper-num fc-f">{{BanenerCurrent}}/{{obj.image.length}}</view>
 					<view class="swiper-num fc-f">{{BanenerCurrent}}/{{obj.image.length}}</view>
@@ -23,14 +23,13 @@
 			<view class="box-border-box p-24 card-f">
 			<view class="box-border-box p-24 card-f">
 				<view class="card-top">
 				<view class="card-top">
 					<image src="@/static/img/buy/tg-det-bg.png" mode="scaleToFill"></image>
 					<image src="@/static/img/buy/tg-det-bg.png" mode="scaleToFill"></image>
-					
 					<view class="card-money">
 					<view class="card-money">
 						<view class="mb-4">
 						<view class="mb-4">
 							<span class="fs-28 fc-f fw-600">¥</span><span class="fs-48 fc-f fw-600">{{obj.price||''}}</span>
 							<span class="fs-28 fc-f fw-600">¥</span><span class="fs-48 fc-f fw-600">{{obj.price||''}}</span>
 						</view>
 						</view>
 						<view class="fs-24 fw-400 fc-f text-line-through">原价{{obj.line_price||''}}</view>
 						<view class="fs-24 fw-400 fc-f text-line-through">原价{{obj.line_price||''}}</view>
 					</view>
 					</view>
-					
+
 					<view class="info-1-time">
 					<view class="info-1-time">
 						<view class="time-title">倒计时</view>
 						<view class="time-title">倒计时</view>
 						<view class="time-day" v-if="showTime">{{time.day}}<text>天</text></view>
 						<view class="time-day" v-if="showTime">{{time.day}}<text>天</text></view>
@@ -131,7 +130,7 @@
 				tools.leftClick()
 				tools.leftClick()
 			},
 			},
 			onSwiperChange(e){
 			onSwiperChange(e){
-				this.BanenerCurrent = e.detail.current;
+				this.BanenerCurrent = (e.detail.current + 1);
 			},
 			},
 			setWidth(total,num){
 			setWidth(total,num){
 				let w  = 0
 				let w  = 0
@@ -249,18 +248,19 @@
 		.pwxq{
 		.pwxq{
 			width: 146rpx;
 			width: 146rpx;
 			height: 46rpx;
 			height: 46rpx;
-			margin: 38rpx auto 24rpx auto;
+			margin: 20rpx auto 24rpx;
 		}
 		}
 		
 		
 		.card-f{
 		.card-f{
 			width: 100%;
 			width: 100%;
 			position: relative;
 			position: relative;
-			height: 386rpx;
+			// height: 386rpx;
 			
 			
 			.card-top{
 			.card-top{
 				width: 100%;
 				width: 100%;
 				height: 148rpx;
 				height: 148rpx;
 				position: relative;
 				position: relative;
+				z-index: 2;
 				image{
 				image{
 					position: absolute;
 					position: absolute;
 					top: 0;
 					top: 0;
@@ -282,10 +282,12 @@
 				max-height: 234rpx;
 				max-height: 234rpx;
 				border-radius: 20rpx;
 				border-radius: 20rpx;
 				background-color: #fff;
 				background-color: #fff;
-				position: absolute;
-				top: 145rpx;
-				left: 24rpx;
-				z-index: 2;
+				// position: absolute;
+				// top: 145rpx;
+				// left: 24rpx;
+				margin: -24rpx 0 0 0;
+				position: relative;
+				z-index: 5;
 			}
 			}
 		}
 		}
 		.jd-f{
 		.jd-f{

+ 90 - 70
pages-buy/group.vue

@@ -1,60 +1,64 @@
 <template>
 <template>
-	<view class="group-box iPhone-bottom box-border-box">
+	<view class="group-box iPhone-bottom box-border-box flex-common-css">
 		<Nav title='团购专区'></Nav>
 		<Nav title='团购专区'></Nav>
-		
-		<image class="head-img" src="@/static/img/buy/group-bg.png" mode="scaleToFill"></image>
-		
-		<view class="box-border-box content-b">
-			<view class="box-card box-border-box mb-20" v-for="(item,i) in list" :key="i" @click="todet(item)">
-				<image class="goods-img mb-16" :src="item.cover_img" mode="aspectFill"></image>
-				<view class="text-overflow-ellipsis fs-32 fw-600 mb-20 w-100100">
-					{{item.title}}
-				</view>
-				<view class="mb-40 flex-justify-space align-items-center">
-					<view class="jd-f">
-						<view class="jd-1"></view>
-						<view class="jd-2" :style="{width:setWidth(item.number,item.sales)+'rpx'}"></view>
-					</view>
-					<view class="">
-						<span class="fs-24 fc-9">已团</span>
-						<span class="fs-24 ">{{item.sales}}件</span>
-						<span class="fs-24 fc-9">/剩</span>
-						<span class="fs-24 ">{{item.number - item.sales}}</span>
+		<scroll-view :scroll-y="true" class="scroll-view-css">
+			<image class="head-img" src="@/static/img/buy/group-bg.png" mode="scaleToFill"></image>
+			<view class="box-border-box content-b">
+				<view class="box-card box-border-box mb-20" v-for="(item,i) in list" :key="i" @click="todet(item)">
+					<image class="goods-img mb-16" :src="item.cover_img" mode="aspectFill"></image>
+					<view class="text-overflow-ellipsis fs-32 fw-600 mb-20 w-100100">
+						{{item.title}}
 					</view>
 					</view>
-				</view>
-				
-				<view class="info-box display-flex">
-					<view class="flex-1">
-						<span class="fs-28 fc-FB3D03 fw-400">团购价¥</span>
-						<span class="fs-40 fc-FB3D03 fw-600">{{item.price}}</span>
+					<view class="mb-40 flex-justify-space align-items-center">
+						<view class="jd-f">
+							<view class="jd-1"></view>
+							<view class="jd-2" :style="{width:setWidth(item.number,item.sales)+'rpx'}"></view>
+						</view>
+						<view class="">
+							<span class="fs-24 fc-9">已团</span>
+							<span class="fs-24 ">{{item.sales}}件</span>
+							<span class="fs-24 fc-9">/剩</span>
+							<span class="fs-24 ">{{item.number - item.sales}}</span>
+						</view>
 					</view>
 					</view>
-					<view class="info-box-qiang">
-						<image class="qiang-img" src="@/static/img/buy/qiang.png" mode="scaleToFill"></image>
-						<view class="jiang-box fc-65420c fs-24 fw-600">直降</view>
-						<view class="jiang-box-1 fs-24 fc-65420c fw-600">¥{{item.line_price - item.price}}</view>
-						<image class="jiang-img" src="@/static/img/buy/x-jt.png" mode="scaleToFill"></image>
+
+					<view class="info-box display-flex">
+						<view class="flex-1">
+							<span class="fs-28 fc-FB3D03 fw-400">团购价¥</span>
+							<span class="fs-40 fc-FB3D03 fw-600">{{item.price}}</span>
+						</view>
+						<view class="info-box-qiang">
+							<image class="qiang-img" src="@/static/img/buy/qiang.png" mode="scaleToFill"></image>
+							<view class="jiang-box fc-65420c fs-24 fw-600">直降</view>
+							<view class="jiang-box-1 fs-24 fc-65420c fw-600">¥{{item.line_price - item.price}}</view>
+							<image class="jiang-img" src="@/static/img/buy/x-jt.png" mode="scaleToFill"></image>
+						</view>
 					</view>
 					</view>
 				</view>
 				</view>
 			</view>
 			</view>
-		</view>
+		</scroll-view>
 	</view>
 	</view>
 </template>
 </template>
 
 
 <script>
 <script>
-	import {groupList} from '@/api/groupOrder.js';
+	import {
+		groupList
+	} from '@/api/groupOrder.js';
 	import tools from "@/service/tools";
 	import tools from "@/service/tools";
 	import EnBlank from "@/components/en-utils/en-blank/en-blank";
 	import EnBlank from "@/components/en-utils/en-blank/en-blank";
 	export default {
 	export default {
-		components:{EnBlank},
-		data(){
-			return{
-				page:1,
-				total:0,
-				list:[],
+		components: {
+			EnBlank
+		},
+		data() {
+			return {
+				page: 1,
+				total: 0,
+				list: [],
 			}
 			}
 		},
 		},
 		onReachBottom() {
 		onReachBottom() {
-			if(this.list.length < this.total){
+			if (this.list.length < this.total) {
 				this.page += 1;
 				this.page += 1;
 				this.getList();
 				this.getList();
 			}
 			}
@@ -64,27 +68,31 @@
 			this.list = [];
 			this.list = [];
 			this.getList();
 			this.getList();
 		},
 		},
-		methods:{
-			getList(){
+		mounted() {},
+		methods: {
+			getList() {
 				let school_id = uni.getStorageSync('school_id');
 				let school_id = uni.getStorageSync('school_id');
-				groupList({school_id:school_id,page:this.page}).then((res)=>{
-					if(res.code === 1){
-						this.list = [...this.list,...res.data.items];
+				groupList({
+					school_id: school_id,
+					page: this.page
+				}).then((res) => {
+					if (res.code === 1) {
+						this.list = [...this.list, ...res.data.items];
 						this.total = res.data.total;
 						this.total = res.data.total;
 					}
 					}
 				})
 				})
 			},
 			},
-			
-			setWidth(total,num){
-				let w  = 0
+
+			setWidth(total, num) {
+				let w = 0
 				let tH = 434;
 				let tH = 434;
-				w = (tH/total * num).toFixed(0)
+				w = (tH / total * num).toFixed(0)
 				console.log(w);
 				console.log(w);
 				return w
 				return w
 			},
 			},
-			todet(item){
+			todet(item) {
 				uni.navigateTo({
 				uni.navigateTo({
-					url:'/pages-buy/group-det?id=' + item.id
+					url: '/pages-buy/group-det?id=' + item.id
 				})
 				})
 			},
 			},
 		},
 		},
@@ -92,14 +100,16 @@
 </script>
 </script>
 
 
 <style scoped lang="scss">
 <style scoped lang="scss">
-	.content-b{
+	.content-b {
 		padding: 0 24rpx 24rpx;
 		padding: 0 24rpx 24rpx;
 	}
 	}
-	.jd-f{
+
+	.jd-f {
 		position: relative;
 		position: relative;
 		width: 434rpx;
 		width: 434rpx;
 		height: 18rpx;
 		height: 18rpx;
-		.jd-1{
+
+		.jd-1 {
 			position: absolute;
 			position: absolute;
 			top: 0;
 			top: 0;
 			left: 0;
 			left: 0;
@@ -109,40 +119,45 @@
 			border-radius: 200rpx 200rpx 200rpx 200rpx;
 			border-radius: 200rpx 200rpx 200rpx 200rpx;
 			z-index: 10;
 			z-index: 10;
 		}
 		}
-		.jd-2{
+
+		.jd-2 {
 			position: absolute;
 			position: absolute;
 			top: 0;
 			top: 0;
 			left: 0;
 			left: 0;
 			height: 18rpx;
 			height: 18rpx;
-			background: linear-gradient( 90deg, #FF545D 0%, #FF4B84 100%);
+			background: linear-gradient(90deg, #FF545D 0%, #FF4B84 100%);
 			// background-color: #FF2652;
 			// background-color: #FF2652;
 			border-radius: 200rpx 200rpx 200rpx 200rpx;
 			border-radius: 200rpx 200rpx 200rpx 200rpx;
 			z-index: 12;
 			z-index: 12;
 		}
 		}
 	}
 	}
-	
-	
-	.group-box{
+
+
+	.group-box {
 		background-color: #EF2864;
 		background-color: #EF2864;
-		min-height: 100vh;
-		.head-img{
+		height: 100vh;
+
+		.head-img {
 			width: 100%;
 			width: 100%;
 			height: 422rpx;
 			height: 422rpx;
 		}
 		}
-		.box-card{
+
+		.box-card {
 			width: 100%;
 			width: 100%;
 			min-height: 100rpx;
 			min-height: 100rpx;
 			background: #FFFFFF;
 			background: #FFFFFF;
 			padding: 16rpx;
 			padding: 16rpx;
-			box-shadow: 0rpx 0rpx 12rpx 0rpx rgba(51,51,51,0.1);
+			box-shadow: 0rpx 0rpx 12rpx 0rpx rgba(51, 51, 51, 0.1);
 			border-radius: 20rpx;
 			border-radius: 20rpx;
-			.goods-img{
+
+			.goods-img {
 				width: 100%;
 				width: 100%;
 				height: 452rpx;
 				height: 452rpx;
 				border-radius: 20rpx;
 				border-radius: 20rpx;
 				// margin-top: 24rpx;
 				// margin-top: 24rpx;
 			}
 			}
-			.info-box{
+
+			.info-box {
 				width: 100%;
 				width: 100%;
 				height: 72rpx;
 				height: 72rpx;
 				background: #FEE0E0;
 				background: #FEE0E0;
@@ -150,30 +165,35 @@
 				line-height: 72rpx;
 				line-height: 72rpx;
 				padding-left: 14rpx;
 				padding-left: 14rpx;
 				box-sizing: border-box;
 				box-sizing: border-box;
-				.info-box-qiang{
+
+				.info-box-qiang {
 					width: 148rpx;
 					width: 148rpx;
 					height: 72rpx;
 					height: 72rpx;
 					background: #F63E36;
 					background: #F63E36;
 					border-radius: 0rpx 20rpx 20rpx 0rpx;
 					border-radius: 0rpx 20rpx 20rpx 0rpx;
 					position: relative;
 					position: relative;
-					.qiang-img{
+
+					.qiang-img {
 						width: 60rpx;
 						width: 60rpx;
 						height: 60rpx;
 						height: 60rpx;
 						margin: 6rpx 22rpx 0 auto;
 						margin: 6rpx 22rpx 0 auto;
 					}
 					}
-					.jiang-box{
+
+					.jiang-box {
 						position: absolute;
 						position: absolute;
 						top: -30rpx;
 						top: -30rpx;
 						left: -22rpx;
 						left: -22rpx;
 						z-index: 20;
 						z-index: 20;
 					}
 					}
-					.jiang-box-1{
+
+					.jiang-box-1 {
 						position: absolute;
 						position: absolute;
 						top: 0rpx;
 						top: 0rpx;
 						left: -30rpx;
 						left: -30rpx;
 						z-index: 20;
 						z-index: 20;
 					}
 					}
-					.jiang-img{
+
+					.jiang-img {
 						position: absolute;
 						position: absolute;
 						width: 120rpx;
 						width: 120rpx;
 						height: 90rpx;
 						height: 90rpx;

+ 11 - 3
pages-buy/save-dry.vue

@@ -52,10 +52,14 @@
 						</view> -->
 						</view> -->
 					</view>
 					</view>
 				</view>
 				</view>
+				<view class="flex-justify-space mb-24">
+					<view class="fs-28 fw-400">配送费</view>
+					<view class="fs-32 fw-600">¥{{delivery_money?delivery_money:'0.00'}}</view>
+				</view>
 				<view class="box-buttom text-align-right">
 				<view class="box-buttom text-align-right">
 					<span class="fs-28 fc-9 fw-400">共{{cardData.total_num||'0'}}件,</span>
 					<span class="fs-28 fc-9 fw-400">共{{cardData.total_num||'0'}}件,</span>
 					<span class="fs-28 fc-0 fw-400">合计¥</span>
 					<span class="fs-28 fc-0 fw-400">合计¥</span>
-					<span class="fs-44 fc-0 fw-b">{{cardData.total_price||'0'}}</span>
+					<span class="fs-44 fc-0 fw-b">{{total_price||'0'}}</span>
 				</view>
 				</view>
 			</view>
 			</view>
 
 
@@ -77,7 +81,7 @@
 			<view class="flex-justify-space">
 			<view class="flex-justify-space">
 				<view class="align-items-flex-end box-1">
 				<view class="align-items-flex-end box-1">
 					<span class="fs-28 fc-f fw-600">¥</span>
 					<span class="fs-28 fc-f fw-600">¥</span>
-					<span class="fs-44 fc-f fw-600">{{cardData.total_price||'0'}}</span>
+					<span class="fs-44 fc-f fw-600">{{total_price||'0'}}</span>
 				</view>
 				</view>
 				<view class="text-align-center box-2 fs-32 fc-f fw-600" @click="toSave()">立即支付</view>
 				<view class="text-align-center box-2 fs-32 fc-f fw-600" @click="toSave()">立即支付</view>
 			</view>
 			</view>
@@ -125,7 +129,9 @@
 					total_price: 0,
 					total_price: 0,
 				},
 				},
 				siteData_logo: '',
 				siteData_logo: '',
-				siteData_name: ''
+				siteData_name: '',
+				delivery_money: '',
+				total_price: ''
 			}
 			}
 		},
 		},
 		onLoad(e) {
 		onLoad(e) {
@@ -133,6 +139,7 @@
 			this.fromData.site_id = e.id;
 			this.fromData.site_id = e.id;
 			this.siteData_logo = e.siteData_logo
 			this.siteData_logo = e.siteData_logo
 			this.siteData_name = e.siteData_name
 			this.siteData_name = e.siteData_name
+			this.delivery_money = e.delivery_money
 			this.getCardList();
 			this.getCardList();
 		},
 		},
 		methods: {
 		methods: {
@@ -144,6 +151,7 @@
 				}).then((res) => {
 				}).then((res) => {
 					if (res.code === 1) {
 					if (res.code === 1) {
 						this.cardData = res.data;
 						this.cardData = res.data;
+						this.total_price = (Number(res.data.total_price) + Number(this.delivery_money)).toFixed(2)
 					}
 					}
 				})
 				})
 			},
 			},

+ 5 - 5
pages-buy/save-order.vue

@@ -161,34 +161,34 @@
 									signType: ret.data.wx_pay.signType, //固定值
 									signType: ret.data.wx_pay.signType, //固定值
 									paySign: ret.data.wx_pay.paySign, //签名
 									paySign: ret.data.wx_pay.paySign, //签名
 									success: (ren) => {
 									success: (ren) => {
-										tools.success("支付成功");
 										this.isAJAX = false;
 										this.isAJAX = false;
+										tools.success("支付成功");
+										uni.setStorageSync('orderPayType', 3)
 										setTimeout(() => {
 										setTimeout(() => {
 											uni.switchTab({
 											uni.switchTab({
 												url: "/pages/order/index"
 												url: "/pages/order/index"
 											})
 											})
-											uni.setStorageSync('orderPayType', 3)
-										}, 1000)
+										}, 1000) 
 									},
 									},
 									fail: (err) => {
 									fail: (err) => {
 										this.isAJAX = false;
 										this.isAJAX = false;
 										tools.error("支付失败");
 										tools.error("支付失败");
+										uni.setStorageSync('orderPayType', 3)
 										setTimeout(() => {
 										setTimeout(() => {
 											uni.switchTab({
 											uni.switchTab({
 												url: "/pages/order/index"
 												url: "/pages/order/index"
 											})
 											})
-											uni.setStorageSync('orderPayType', 3)
 										}, 1000)
 										}, 1000)
 									},
 									},
 								});
 								});
 							} else {
 							} else {
 								this.isAJAX = false;
 								this.isAJAX = false;
 								tools.error("支付失败");
 								tools.error("支付失败");
+								uni.setStorageSync('orderPayType', 3)
 								setTimeout(() => {
 								setTimeout(() => {
 									uni.switchTab({
 									uni.switchTab({
 										url: "/pages/order/index"
 										url: "/pages/order/index"
 									})
 									})
-									uni.setStorageSync('orderPayType', 3)
 								}, 1000)
 								}, 1000)
 							}
 							}
 						})
 						})

+ 2 - 2
pages-buy/ticket-det.vue

@@ -13,7 +13,7 @@
 		</view>
 		</view>
 		
 		
 		<view class="scroll-view-css">
 		<view class="scroll-view-css">
-			<swiper class="swiper " circular :autoplay="true" :interval="3000" :duration="500" :current='BanenerCurrent' @change="onSwiperChange">
+			<swiper class="swiper " circular :autoplay="true" :interval="3000" :duration="500" @change="onSwiperChange">
 				<swiper-item v-for="(item,i) in obj.image" :key="i">
 				<swiper-item v-for="(item,i) in obj.image" :key="i">
 					<image class="swiper-item" :src="item" mode="aspectFill" @click="lookImg(obj.image,i)"></image>
 					<image class="swiper-item" :src="item" mode="aspectFill" @click="lookImg(obj.image,i)"></image>
 					<view class="swiper-num fc-f">{{BanenerCurrent}}/{{obj.image.length}}</view>
 					<view class="swiper-num fc-f">{{BanenerCurrent}}/{{obj.image.length}}</view>
@@ -83,7 +83,7 @@
 				tools.leftClick()
 				tools.leftClick()
 			},
 			},
 			onSwiperChange(e){
 			onSwiperChange(e){
-				this.BanenerCurrent = e.detail.current;
+				this.BanenerCurrent = (e.detail.current + 1);
 			},
 			},
 			toSave(){
 			toSave(){
 				if(!this.isTimeEnd){
 				if(!this.isTimeEnd){

+ 6 - 5
pages-buy/ticket.vue

@@ -88,14 +88,13 @@
 				search: '',
 				search: '',
 			}
 			}
 		},
 		},
-		onShow() {
+		onShow() {},
+		mounted() {
+			this.getTicket();
 			this.page = 1;
 			this.page = 1;
 			this.list = [];
 			this.list = [];
 			this.getList();
 			this.getList();
 		},
 		},
-		mounted() {
-			this.getTicket();
-		},
 		methods: {
 		methods: {
 			getTicket() {
 			getTicket() {
 				let operate_id = uni.getStorageSync('operate_id');
 				let operate_id = uni.getStorageSync('operate_id');
@@ -158,10 +157,11 @@
 	}
 	}
 </style>
 </style>
 <style scoped lang="scss">
 <style scoped lang="scss">
-	.pw-imgage{
+	.pw-imgage {
 		width: 85rpx;
 		width: 85rpx;
 		height: 45rpx;
 		height: 45rpx;
 	}
 	}
+
 	.wh32 {
 	.wh32 {
 		position: absolute;
 		position: absolute;
 		left: 24rpx;
 		left: 24rpx;
@@ -169,6 +169,7 @@
 		width: 32rpx;
 		width: 32rpx;
 		height: 32rpx;
 		height: 32rpx;
 	}
 	}
+
 	.w-470 {
 	.w-470 {
 		width: 470rpx;
 		width: 470rpx;
 	}
 	}

+ 125 - 107
pages-my/comment.vue

@@ -1,117 +1,135 @@
 <template>
 <template>
-	<view class="flex-common-css bgc-f">
-		<Nav :title="navTitle" titleColor="#333" bgckgroundBox='#fff'></Nav>
-		<scroll-view :scroll-y="true" class="scroll-view-css" @scrolltolower="scrolltolower">
-			<view class="content-box box-border-box">
-				<view class="item-box display-flex mb-26" v-for="(item,index) in listData" @click="toDet(item)">
-					<image class="item-img mr-16 flex-shrink0" :src="item.head_img" mode="aspectFill"></image>
-					<view class="item-right flex-justify-space">
-						<view class="common-view-css mr-46">
-							<view class="mb-4 fc-3 fs-28">
-								{{item.nickname}}
-							</view>
-							<view class="fs-24 fc-9 mb-16">
-								{{item.created_date}}
-							</view>
-							<view class="fs-30 fc-3">
-								{{item.msg}}
-							</view>
-						</view>
-						<image class="right-img" :src="item.image[0]" mode="aspectFill"></image>
-					</view>
-				</view>
-			</view>
-			<view v-if="listData.length === 0" class="scroll-view-css">
-				<EnBlank :customSrc='true'>
-					<template v-slot:blankImg>
-						<image class="black-custom-img" src="@/static/img/common/no-order.png" mode=""></image>
-					</template>
-				</EnBlank>
-			</view>
-		</scroll-view>
-	</view>
+  <view class="flex-common-css bgc-f">
+    <Nav :title="navTitle" titleColor="#333" bgckgroundBox='#fff'></Nav>
+    <scroll-view :scroll-y="true" class="scroll-view-css" @scrolltolower="scrolltolower">
+      <view class="content-box box-border-box">
+        <view class="item-box display-flex mb-26 box-border-box" v-for="(item,index) in listData" @click="toDet(item)">
+          <image class="item-img mr-16 flex-shrink0" :src="item.head_img" mode="aspectFill"></image>
+          <view class="item-right flex-justify-space box-border-box">
+            <view class="common-view-css mr-46">
+              <view class="mb-4 fc-3 fs-28">
+                {{item.nickname}}
+              </view>
+              <view class="fs-24 fc-9 mb-16">
+                {{item.created_date}}
+              </view>
+              <view class="fs-30 fc-3 msg-class text-overflow-ellipsis">
+                {{item.msg}}
+              </view>
+            </view>
+            <image class="right-img" :src="item.image[0]" mode="aspectFill"></image>
+          </view>
+        </view>
+      </view>
+      <view v-if="listData.length === 0" class="scroll-view-css">
+        <EnBlank :customSrc='true'>
+          <template v-slot:blankImg>
+            <image class="black-custom-img" src="@/static/img/common/no-order.png" mode=""></image>
+          </template>
+        </EnBlank>
+      </view>
+    </scroll-view>
+  </view>
 </template>
 </template>
 
 
 <script>
 <script>
-	import EnBlank from "@/components/en-utils/en-blank/en-blank";
-	import {
-		messageList
-	} from "@/api/message.js"
-	export default {
-		components: {
-			EnBlank
-		},
-		data() {
-			return {
-				navTitle: '',
-				listData: [],
-				page: 1,
-				total: 0
-			};
-		},
-		onLoad(data) {
-			if (data) {
-				this.messageList(data.type)
-				if (data.type == 1) {
-					this.navTitle = '系统消息'
-				} else if (data.type == 2) {
-					this.navTitle = '评论'
-				} else {
-					this.navTitle = '点赞'
-				}
-			}
-		},
-		mounted() {},
-		methods: {
-			toDet(item) {
-				if (item.news_id > 0) {
-					uni.navigateTo({
-						url: "/pages-school/circle-info?news_id=" + item.news_id
-					})
-				}
-			},
-			scrolltolower() {
-				if (this.listData.length < this.total) {
-					this.page += 1;
-					this.messageList();
-				}
-			},
-			messageList(type) {
-				messageList({
-					type: type,
-					page: this.page
-				}).then((res) => {
-					if (res.code == 1) {
-						if (res.data.items.length > 0) {
-							this.listData.push(...res.data.items)
-							this.total = res.data.total;
-						}
-					}
-				})
-			}
-		},
-	}
+  import EnBlank from "@/components/en-utils/en-blank/en-blank";
+  import {
+    messageList
+  } from "@/api/message.js"
+  import {
+    alumnInfo,
+  } from '@/api/alumni.js';
+  import tools from "@/service/tools";
+  export default {
+    components: {
+      EnBlank
+    },
+    data() {
+      return {
+        navTitle: '',
+        listData: [],
+        page: 1,
+        total: 0,
+        dataType: ''
+      };
+    },
+    onLoad(data) {
+      if (data) {
+        this.dataType = data.type
+        this.messageList(data.type)
+        if (data.type == 1) {
+          this.navTitle = '系统消息'
+        } else if (data.type == 2) {
+          this.navTitle = '评论'
+        } else {
+          this.navTitle = '点赞'
+        }
+      }
+    },
+    mounted() {},
+    methods: {
+      toDet(item) {
+        if (item.news_id > 0) {
+          alumnInfo({
+            news_id: item.news_id
+          }).then((res) => {
+            if (res.code === 1) {
+              uni.navigateTo({
+                url: "/pages-school/circle-info?news_id=" + item.news_id
+              })
+            } else {
+              tools.error(res.msg)
+            }
+          })
+        }
+      },
+      scrolltolower() {
+        if (this.listData.length < this.total) {
+          this.page += 1;
+          this.messageList(this.dataType);
+        }
+      },
+      messageList(type) {
+        messageList({
+          type: type,
+          page: this.page
+        }).then((res) => {
+          if (res.code == 1) {
+            if (res.data.items.length > 0) {
+              this.listData.push(...res.data.items)
+              this.total = res.data.total;
+            }
+          }
+        })
+      }
+    },
+  }
 </script>
 </script>
 
 
 <style lang="scss" scoped>
 <style lang="scss" scoped>
-	.content-box {
-		padding: 24rpx 24rpx 0;
-	}
+  .msg-class{
+    max-width: 420rpx;
+    word-wrap: break-word;
+  }
+  .content-box {
+    padding: 24rpx 24rpx 0;
+  }
 
 
-	.item-img {
-		width: 80rpx;
-		height: 80rpx;
-	}
+  .item-img {
+    width: 80rpx;
+    height: 80rpx;
+  }
 
 
-	.item-right {
-		width: 100%;
-		padding: 0 0 24rpx 0;
-		border-bottom: 2rpx solid #F9F9F9;
-	}
+  .item-right {
+    width: 100%;
+    padding: 0 0 24rpx 0;
+    border-bottom: 2rpx solid #F9F9F9;
+  }
 
 
-	.right-img {
-		width: 140rpx;
-		height: 140rpx;
-		border-radius: 12rpx;
-	}
-</style>
+  .right-img {
+    width: 140rpx;
+    height: 140rpx;
+    border-radius: 12rpx;
+  }
+</style>

+ 36 - 13
pages-my/my-publish.vue

@@ -13,7 +13,7 @@
 			<view class="item-box box-sizing-border b-rad-20 mb-20 bgc-f flex-justify-space"
 			<view class="item-box box-sizing-border b-rad-20 mb-20 bgc-f flex-justify-space"
 				v-for="(item,index) in listData" :key="index" @click="goToUrl(item)">
 				v-for="(item,index) in listData" :key="index" @click="goToUrl(item)">
 				<image class="item-head-img flex-shrink0 b-rad-50 mr-16" :src="item.head_img" mode="aspectFill"></image>
 				<image class="item-head-img flex-shrink0 b-rad-50 mr-16" :src="item.head_img" mode="aspectFill"></image>
-				<view class="itme-right common-view-css">
+				<view class="itme-right common-view-css box-border-box">
 					<view class="item-name flex-justify-space mb-16">
 					<view class="item-name flex-justify-space mb-16">
 						<view class="">
 						<view class="">
 							<view class="mb-4 fc-3 fs-28">
 							<view class="mb-4 fc-3 fs-28">
@@ -30,14 +30,14 @@
 							</view>
 							</view>
 						</view>
 						</view>
 					</view>
 					</view>
-					<view class="text-overflow-ellipsis-t fs-30 fc-3 mb-16">
+					<view class="item-content fs-30 fc-3 mb-16">
 						{{item.content}}
 						{{item.content}}
 					</view>
 					</view>
-					<!-- 	<view class="item-img-box mb-20 align-items-center flex-wrap-wrap">
+					<view class="item-img-box mb-20 align-items-center flex-wrap-wrap">
 						<image class="b-rad-12" v-for="imgUrl in item.image" :src="imgUrl" mode="aspectFill"
 						<image class="b-rad-12" v-for="imgUrl in item.image" :src="imgUrl" mode="aspectFill"
 							:class="item.image.length==1?'item-img-one':item.image.length==2?'item-img-two':'item-img-three'">
 							:class="item.image.length==1?'item-img-one':item.image.length==2?'item-img-two':'item-img-three'">
 						</image>
 						</image>
-					</view> -->
+					</view>
 					<view class="align-items-center mb-40">
 					<view class="align-items-center mb-40">
 						<view class="label-box align-items-center mr-20 b-rad-200 bgc-F2F2F2">
 						<view class="label-box align-items-center mr-20 b-rad-200 bgc-F2F2F2">
 							<image class="wz mr-8" src="@/static/img/my/wz.png" mode=""></image>
 							<image class="wz mr-8" src="@/static/img/my/wz.png" mode=""></image>
@@ -66,7 +66,9 @@
 								{{item.remark}}
 								{{item.remark}}
 							</view>
 							</view>
 						</view>
 						</view>
-						<uni-icons color="#999999" type="trash" size="20" @click.stop="alumniDelClick(item)"></uni-icons>
+						<view class="" @click.stop="alumniDelClick(item)">
+							<uni-icons color="#999999" type="trash" size="20"></uni-icons>
+						</view>
 					</view>
 					</view>
 				</view>
 				</view>
 			</view>
 			</view>
@@ -139,7 +141,8 @@
 								</view>
 								</view>
 							</view>
 							</view>
 							<view v-if="item.isOpen" class="fs-24 fc-6 text-align-center mb-12"
 							<view v-if="item.isOpen" class="fs-24 fc-6 text-align-center mb-12"
-								@click="openReply(1,item)">展开更多评论</view>
+								@click="openReply(1,item)">展开更多评论
+							</view>
 							<!-- 回复 -->
 							<!-- 回复 -->
 							<view class="mb-16" v-if="item.replyList.length > 0">
 							<view class="mb-16" v-if="item.replyList.length > 0">
 								<view class="list-box flex-justify-space" v-for="(info,index) in item.replyList"
 								<view class="list-box flex-justify-space" v-for="(info,index) in item.replyList"
@@ -194,7 +197,8 @@
 		setCreateRemark,
 		setCreateRemark,
 		alumniDel,
 		alumniDel,
 		setRemarkLike,
 		setRemarkLike,
-		delRemark
+		delRemark,
+		alumnInfo
 	} from "@/api/alumni.js"
 	} from "@/api/alumni.js"
 	import tools from "@/service/tools";
 	import tools from "@/service/tools";
 	export default {
 	export default {
@@ -234,8 +238,18 @@
 			this.alumnMyAlumni()
 			this.alumnMyAlumni()
 		},
 		},
 		methods: {
 		methods: {
-			goToUrl() {
-
+			goToUrl(item) {
+				alumnInfo({
+					news_id: item.news_id
+				}).then((res) => {
+					if (res.code === 1) {
+						uni.navigateTo({
+							url: "/pages-school/circle-info?news_id=" + item.news_id
+						})
+					} else {
+						tools.error(res.msg)
+					}
+				})
 			},
 			},
 			alumniDelClick(item) {
 			alumniDelClick(item) {
 				// 删除帖子
 				// 删除帖子
@@ -353,10 +367,13 @@
 			},
 			},
 			// 打开评论
 			// 打开评论
 			openMsg(item) {
 			openMsg(item) {
-				this.remarkData.news_id = item.news_id;
-				this.msgData.news_id = item.news_id;
-				this.remarkData.remark_id = 0;
-				this.getMsg();
+				uni.navigateTo({
+					url: "/pages-school/circle-info?news_id=" + item.news_id
+				})
+				// this.remarkData.news_id = item.news_id;
+				// this.msgData.news_id = item.news_id;
+				// this.remarkData.remark_id = 0;
+				// this.getMsg();
 			},
 			},
 			// 获取回复列表
 			// 获取回复列表
 			openReply(type, item) {
 			openReply(type, item) {
@@ -468,6 +485,12 @@
 </script>
 </script>
 
 
 <style lang="scss" scoped>
 <style lang="scss" scoped>
+	.item-content {
+		width: 558rpx;
+		// white-space: nowrap;
+		word-wrap: break-word;
+	}
+
 	.content-box {
 	.content-box {
 		padding: 20rpx 24rpx;
 		padding: 20rpx 24rpx;
 	}
 	}

+ 2 - 1
pages-my/my-ticket.vue

@@ -92,7 +92,8 @@
 				total: 0,
 				total: 0,
 			};
 			};
 		},
 		},
-		onShow() {
+		onShow() {},
+		mounted() {
 			this.page = 1;
 			this.page = 1;
 			this.itemData = [];
 			this.itemData = [];
 			this.getList();
 			this.getList();

+ 26 - 20
pages-my/notice/list.vue

@@ -1,7 +1,7 @@
 <template>
 <template>
 	<view class="notice-list iPhone-bottom flex-common-css box-border-box">
 	<view class="notice-list iPhone-bottom flex-common-css box-border-box">
 		<Nav title='搜索' bgckgroundBox='#fff'></Nav>
 		<Nav title='搜索' bgckgroundBox='#fff'></Nav>
-		
+
 		<scroll-view scroll-y="true" class="scroll-view-css box-border-box p-24" @scrolltolower="scrolltolower">
 		<scroll-view scroll-y="true" class="scroll-view-css box-border-box p-24" @scrolltolower="scrolltolower">
 			<view class="card-box box-border-box p-24" v-for="(item,i) in list" :key="i" @click="toDet(item)">
 			<view class="card-box box-border-box p-24" v-for="(item,i) in list" :key="i" @click="toDet(item)">
 				<view class="text-overflow-ellipsis fs-32 fw-600 mb-8">{{item.title}}</view>
 				<view class="text-overflow-ellipsis fs-32 fw-600 mb-8">{{item.title}}</view>
@@ -16,38 +16,43 @@
 </template>
 </template>
 
 
 <script>
 <script>
-	import {noticeList} from '@/api/notice.js';
+	import {
+		noticeList
+	} from '@/api/notice.js';
 	export default {
 	export default {
-		data(){
-			return{
-				list:[],
-				total:0,
-				page:1,
+		data() {
+			return {
+				list: [],
+				total: 0,
+				page: 1,
 			}
 			}
 		},
 		},
-		onShow() {
+		onShow() {},
+		mounted() {
 			this.page = 1;
 			this.page = 1;
 			this.list = [];
 			this.list = [];
 			this.getList();
 			this.getList();
 		},
 		},
-		methods:{
-			getList(){
-				noticeList({page:this.page}).then((res)=>{
-					if(res.code === 1){
-						this.list = [...this.list,...res.data.items];
+		methods: {
+			getList() {
+				noticeList({
+					page: this.page
+				}).then((res) => {
+					if (res.code === 1) {
+						this.list = [...this.list, ...res.data.items];
 						this.total = res.data.total;
 						this.total = res.data.total;
 					}
 					}
 				})
 				})
 			},
 			},
-			scrolltolower(){
-				if(this.list.length < this.total){
+			scrolltolower() {
+				if (this.list.length < this.total) {
 					this.page += 1;
 					this.page += 1;
 					this.getList();
 					this.getList();
 				}
 				}
 			},
 			},
-			toDet(item){
+			toDet(item) {
 				uni.navigateTo({
 				uni.navigateTo({
-					url: '/pages-my/notice/info?id=' +item.id
+					url: '/pages-my/notice/info?id=' + item.id
 				})
 				})
 			},
 			},
 		},
 		},
@@ -55,14 +60,15 @@
 </script>
 </script>
 
 
 <style scoped lang="scss">
 <style scoped lang="scss">
-	.notice-list{
-		.card-box{
+	.notice-list {
+		.card-box {
 			width: 100%;
 			width: 100%;
 			min-height: 224rpx;
 			min-height: 224rpx;
 			background: #FFFFFF;
 			background: #FFFFFF;
 			border-radius: 16rpx;
 			border-radius: 16rpx;
 		}
 		}
-		image{
+
+		image {
 			width: 32rpx;
 			width: 32rpx;
 			height: 32rpx;
 			height: 32rpx;
 		}
 		}

+ 1 - 1
pages-my/user-info.vue

@@ -35,7 +35,7 @@
 					</view>
 					</view>
 					<view class="item-right align-items-center" @click="goToUrl(3)">
 					<view class="item-right align-items-center" @click="goToUrl(3)">
 						<view class="fc-9198A2 fs-28 mr-6">
 						<view class="fc-9198A2 fs-28 mr-6">
-							{{userInfoData.phone?'去更改':'去绑定'}}
+							{{userInfoData.phone?userInfoData.phone:'去绑定'}}
 						</view>
 						</view>
 						<uni-icons color="#9198A2" type="right" size="20"></uni-icons>
 						<uni-icons color="#9198A2" type="right" size="20"></uni-icons>
 					</view>
 					</view>

+ 56 - 6
pages-order/express-info.vue

@@ -65,7 +65,7 @@
 		<view class="p-24-24-0 box-border-box">
 		<view class="p-24-24-0 box-border-box">
 			<view class="p-24 box-border-box bgc-f b-rad-20">
 			<view class="p-24 box-border-box bgc-f b-rad-20">
 				<view class="fs-28 fc-3 fw-600 mb-16">
 				<view class="fs-28 fc-3 fw-600 mb-16">
-				取件码
+					取件码
 				</view>
 				</view>
 				<view class="b-rad-12 p-24 box-border-box bgc-F3F4F6 align-items-center flex-wrap-wrap">
 				<view class="b-rad-12 p-24 box-border-box bgc-F3F4F6 align-items-center flex-wrap-wrap">
 					<view class="item-code text-align-center" v-for="(item,index) in infoData.pickup_code">
 					<view class="item-code text-align-center" v-for="(item,index) in infoData.pickup_code">
@@ -88,7 +88,7 @@
 									{{item.goods_name}}
 									{{item.goods_name}}
 								</view>
 								</view>
 								<view class="fs-32 fc-3 fw-600">
 								<view class="fs-32 fc-3 fw-600">
-									¥{{item.goods_money}}
+									¥{{(Number(item.goods_money)*Number(item.goods_num)).toFixed(2)}}
 								</view>
 								</view>
 							</view>
 							</view>
 							<!-- 				<view class="mb-2 fs-24 fc-9">
 							<!-- 				<view class="mb-2 fs-24 fc-9">
@@ -168,7 +168,7 @@
 					</view>
 					</view>
 				</view> -->
 				</view> -->
 				<view class="display-flex flex-justify-space pb-20 b-b-F9F9F9 mb-26"
 				<view class="display-flex flex-justify-space pb-20 b-b-F9F9F9 mb-26"
-					v-show="infoData.order_status == 3">
+					v-show="infoData.order_status == 3 || infoData.order_status == 4">
 					<view class="fs-28 fc-9">
 					<view class="fs-28 fc-9">
 						骑手信息
 						骑手信息
 					</view>
 					</view>
@@ -184,7 +184,8 @@
 						<view class="fs-28 fc-3 w-480 mr-8 text-align-right">
 						<view class="fs-28 fc-3 w-480 mr-8 text-align-right">
 							{{infoData.order_sn}}
 							{{infoData.order_sn}}
 						</view>
 						</view>
-						<image class="icon-fz" src="@/static/img/order/fz.png" mode=""></image>
+						<image class="icon-fz" src="@/static/img/order/fz.png" mode="" @click="copy(infoData.order_sn)">
+						</image>
 					</view>
 					</view>
 				</view>
 				</view>
 				<view class="display-flex flex-justify-space mb-26">
 				<view class="display-flex flex-justify-space mb-26">
@@ -203,6 +204,22 @@
 						{{infoData.pay_type_str}}
 						{{infoData.pay_type_str}}
 					</view>
 					</view>
 				</view>
 				</view>
+				<view class="display-flex flex-justify-space mb-26" v-if="infoData.order_status == 4">
+					<view class="fs-28 fc-9">
+						送达图片
+					</view>
+					<view class="fs-28 fc-3 w-480 text-align-right fc-41ABF5" @click="lookFinishImage(infoData.finish_image)">
+						点击查看
+					</view>
+				</view>
+				<view class="display-flex flex-justify-space mb-26" v-if="infoData.order_status == 4">
+					<view class="fs-28 fc-9">
+						完成时间
+					</view>
+					<view class="fs-28 fc-3 w-480 text-align-right">
+						{{infoData.finish_time}}
+					</view>
+				</view>
 				<view class="display-flex flex-justify-space mb-26">
 				<view class="display-flex flex-justify-space mb-26">
 					<view class="fs-28 fc-9">
 					<view class="fs-28 fc-9">
 						备注
 						备注
@@ -258,7 +275,34 @@
 			}
 			}
 		},
 		},
 		mounted() {},
 		mounted() {},
+		onUnload() {
+			const takeOutData = {}
+			expressOrderInfo({
+				order_id: this.infoData.id
+			}).then((res) => {
+				if (res.code == 1) {
+					takeOutData.id = this.infoData.id
+					takeOutData.order_status = res.data.order_status
+					takeOutData.order_status_str = res.data.order_status_str
+					uni.$emit('takeOutData', takeOutData)
+				}
+			})
+		},
 		methods: {
 		methods: {
+			lookFinishImage(img) {
+				tools.lookBigImg(1,img)
+			},
+			copy(value) {
+				uni.setClipboardData({
+					data: value,
+					success() {
+						tools.success('复制成功')
+					},
+					fail() {
+						tools.error("复制失败")
+					}
+				})
+			},
 			goToUrl() {
 			goToUrl() {
 				// 再来一单
 				// 再来一单
 				uni.navigateTo({
 				uni.navigateTo({
@@ -339,7 +383,7 @@
 							}).then((res) => {
 							}).then((res) => {
 								if (res.code == 1) {
 								if (res.code == 1) {
 									tools.success(res.msg)
 									tools.success(res.msg)
-									setTimeout(() =>{
+									setTimeout(() => {
 										this.expressOrderInfo(this.infoData.id)
 										this.expressOrderInfo(this.infoData.id)
 									}, 1500)
 									}, 1500)
 									this.isAJAX = false;
 									this.isAJAX = false;
@@ -406,10 +450,16 @@
 </script>
 </script>
 
 
 <style lang="scss" scoped>
 <style lang="scss" scoped>
-	.item-code{
+	.finish_image {
+		width: 34rpx;
+		height: 34rpx;
+	}
+
+	.item-code {
 		min-width: 30%;
 		min-width: 30%;
 		padding: 8rpx
 		padding: 8rpx
 	}
 	}
+
 	.bg-img {
 	.bg-img {
 		position: fixed;
 		position: fixed;
 		left: 0;
 		left: 0;

+ 26 - 2
pages-order/group-info.vue

@@ -62,7 +62,7 @@
 									{{infoData.goods_name}}
 									{{infoData.goods_name}}
 								</view>
 								</view>
 								<view class="fs-32 fc-3 fw-600">
 								<view class="fs-32 fc-3 fw-600">
-									¥{{infoData.goods_price}}
+									¥{{(Number(infoData.goods_price)*Number(infoData.goods_number)).toFixed(2)}}
 								</view>
 								</view>
 							</view>
 							</view>
 							<!-- 				<view class="mb-2 fs-24 fc-9">
 							<!-- 				<view class="mb-2 fs-24 fc-9">
@@ -149,7 +149,7 @@
 						<view class="fs-28 fc-3 w-480 mr-8 text-align-right">
 						<view class="fs-28 fc-3 w-480 mr-8 text-align-right">
 							{{infoData.order_sn}}
 							{{infoData.order_sn}}
 						</view>
 						</view>
-						<image class="icon-fz" src="@/static/img/order/fz.png" mode=""></image>
+						<image class="icon-fz" src="@/static/img/order/fz.png" mode="" @click="copy(infoData.order_sn)"></image>
 					</view>
 					</view>
 				</view>
 				</view>
 				<view class="display-flex flex-justify-space mb-26">
 				<view class="display-flex flex-justify-space mb-26">
@@ -214,7 +214,31 @@
 			}
 			}
 		},
 		},
 		mounted() {},
 		mounted() {},
+		onUnload() {
+			const takeOutData = {}
+			groupOrderInfo({
+				order_id: this.infoData.id
+			}).then((res) => {
+				if (res.code == 1) {
+					takeOutData.id = this.infoData.id
+					takeOutData.order_status = res.data.order_status
+					takeOutData.order_status_str = res.data.order_status_str
+					uni.$emit('takeOutData', takeOutData)
+				}
+			})
+		},
 		methods: {
 		methods: {
+			copy(value) {
+				uni.setClipboardData({
+					data: value,
+					success() {
+						tools.success('复制成功')
+					},
+					fail() {
+						tools.error("复制失败")
+					}
+				})
+			},
 			goToUrl() {
 			goToUrl() {
 				uni.navigateTo({
 				uni.navigateTo({
 					url: '/pages-buy/group'
 					url: '/pages-buy/group'

+ 44 - 3
pages-order/laundry-info.vue

@@ -70,7 +70,7 @@
 									{{item.goods_name}}
 									{{item.goods_name}}
 								</view>
 								</view>
 								<view class="fs-32 fc-3 fw-600">
 								<view class="fs-32 fc-3 fw-600">
-									¥{{item.goods_money}}
+									¥{{(Number(item.goods_money)*Number(item.goods_num)).toFixed(2)}}
 								</view>
 								</view>
 							</view>
 							</view>
 							<view class="fs-24 fc-9">
 							<view class="fs-24 fc-9">
@@ -87,6 +87,14 @@
 					<image v-if="goodsShow" class="icon-right" src="@/static/img/order/top.png" mode=""></image>
 					<image v-if="goodsShow" class="icon-right" src="@/static/img/order/top.png" mode=""></image>
 					<image v-else class="icon-right" src="@/static/img/order/bottom.png" mode=""></image>
 					<image v-else class="icon-right" src="@/static/img/order/bottom.png" mode=""></image>
 				</view>
 				</view>
+				<view class="align-items-center flex-justify-space mb-24">
+					<view class="fs-28 fc-3">
+						配送费
+					</view>
+					<view class="fs-32 fc-3">
+						¥{{infoData.delivery_money}}
+					</view>
+				</view>
 				<view class="align-items-center flex-justify-end">
 				<view class="align-items-center flex-justify-end">
 					<view class="fs-28 fc-9">
 					<view class="fs-28 fc-9">
 						共{{infoData.goods_number}}件,
 						共{{infoData.goods_number}}件,
@@ -111,7 +119,16 @@
 						<view class="fs-28 fc-3 w-480 mr-8 text-align-right">
 						<view class="fs-28 fc-3 w-480 mr-8 text-align-right">
 							{{infoData.order_sn}}
 							{{infoData.order_sn}}
 						</view>
 						</view>
-						<image class="icon-fz" src="@/static/img/order/fz.png" mode=""></image>
+						<image class="icon-fz" src="@/static/img/order/fz.png" mode="" @click="copy(infoData.order_sn)">
+						</image>
+					</view>
+				</view>
+				<view class="display-flex flex-justify-space mb-26">
+					<view class="fs-28 fc-9">
+						识别码
+					</view>
+					<view class="fs-28 fc-3 w-480 text-align-right">
+						{{infoData.only_code}}
 					</view>
 					</view>
 				</view>
 				</view>
 				<view class="display-flex flex-justify-space mb-26">
 				<view class="display-flex flex-justify-space mb-26">
@@ -177,7 +194,31 @@
 			}
 			}
 		},
 		},
 		mounted() {},
 		mounted() {},
+		onUnload() {
+			const takeOutData = {}
+			laundryOrderInfo({
+				order_id: this.infoData.id
+			}).then((res) => {
+				if (res.code == 1) {
+					takeOutData.id = this.infoData.id
+					takeOutData.order_status = res.data.order_status
+					takeOutData.order_status_str = res.data.order_status_str
+					uni.$emit('takeOutData', takeOutData)
+				}
+			})
+		},
 		methods: {
 		methods: {
+			copy(value) {
+				uni.setClipboardData({
+					data: value,
+					success() {
+						tools.success('复制成功')
+					},
+					fail() {
+						tools.error("复制失败")
+					}
+				})
+			},
 			goToUrl() {
 			goToUrl() {
 				uni.navigateTo({
 				uni.navigateTo({
 					url: '/pages-buy/dry-clean'
 					url: '/pages-buy/dry-clean'
@@ -237,7 +278,7 @@
 							}).then((res) => {
 							}).then((res) => {
 								if (res.code == 1) {
 								if (res.code == 1) {
 									tools.success(res.msg)
 									tools.success(res.msg)
-									setTimeout(() =>{
+									setTimeout(() => {
 										this.laundryOrderInfo(this.infoData.id)
 										this.laundryOrderInfo(this.infoData.id)
 									}, 1500)
 									}, 1500)
 									this.isAJAX = false;
 									this.isAJAX = false;

+ 60 - 9
pages-order/takeout-info.vue

@@ -20,7 +20,8 @@
 				<view class="p-b-20 mb-24 b-b-F9F9F9 fs-32 fc-3" v-show="infoData.order_status == 1">
 				<view class="p-b-20 mb-24 b-b-F9F9F9 fs-32 fc-3" v-show="infoData.order_status == 1">
 					请尽快支付
 					请尽快支付
 				</view>
 				</view>
-				<view class="p-b-20 mb-24 b-b-F9F9F9 fs-32 fc-3" v-if="infoData.order_status == 8 && infoData.refund_status == 1">
+				<view class="p-b-20 mb-24 b-b-F9F9F9 fs-32 fc-3"
+					v-if="infoData.order_status == 8 && infoData.refund_status == 1">
 					申请成功,请及时联系商家退款,避免已出餐
 					申请成功,请及时联系商家退款,避免已出餐
 				</view>
 				</view>
 				<view class="p-b-20 mb-24 b-b-F9F9F9 fs-32 fc-3"
 				<view class="p-b-20 mb-24 b-b-F9F9F9 fs-32 fc-3"
@@ -56,6 +57,12 @@
 							联系客服
 							联系客服
 						</view>
 						</view>
 					</view>
 					</view>
+					<view class="w-33 flex-direction align-items-center" @click="contactShop(infoData.shop_phone)">
+						<image class="mb-4 icon" src="@/static/img/order/lxsj.png" mode=""></image>
+						<view class="fs-24 fc-3">
+							联系商家
+						</view>
+					</view>
 					<view class="w-33 flex-direction align-items-center"
 					<view class="w-33 flex-direction align-items-center"
 						v-show="infoData.order_status == 2 || infoData.order_status == 4" @click="cancelOrder">
 						v-show="infoData.order_status == 2 || infoData.order_status == 4" @click="cancelOrder">
 						<image class="mb-4 icon" src="@/static/img/order/qxdd.png" mode=""></image>
 						<image class="mb-4 icon" src="@/static/img/order/qxdd.png" mode=""></image>
@@ -80,7 +87,7 @@
 									{{item.goods_name}}
 									{{item.goods_name}}
 								</view>
 								</view>
 								<view class="fs-32 fc-3 fw-600">
 								<view class="fs-32 fc-3 fw-600">
-									¥{{item.goods_price}}
+									¥{{ (Number(item.goods_number) * Number(item.goods_price)).toFixed(2) }}
 								</view>
 								</view>
 							</view>
 							</view>
 							<view class="mb-2 fs-24 fc-9">
 							<view class="mb-2 fs-24 fc-9">
@@ -105,7 +112,7 @@
 						打包费
 						打包费
 					</view>
 					</view>
 					<view class="fs-32 fc-3">
 					<view class="fs-32 fc-3">
-						{{infoData.pack_price}}
+						¥{{infoData.pack_price}}
 					</view>
 					</view>
 				</view>
 				</view>
 				<view class="align-items-center flex-justify-space mb-24">
 				<view class="align-items-center flex-justify-space mb-24">
@@ -113,7 +120,7 @@
 						配送费
 						配送费
 					</view>
 					</view>
 					<view class="fs-32 fc-3">
 					<view class="fs-32 fc-3">
-						{{infoData.delivery_money}}
+						¥{{infoData.delivery_money}}
 					</view>
 					</view>
 				</view>
 				</view>
 				<view class="align-items-center flex-justify-space pb-36 b-b-F9F9F9 mb-22">
 				<view class="align-items-center flex-justify-space pb-36 b-b-F9F9F9 mb-22">
@@ -160,7 +167,7 @@
 					</view>
 					</view>
 				</view>
 				</view>
 				<view class="display-flex flex-justify-space pb-20 b-b-F9F9F9 mb-26"
 				<view class="display-flex flex-justify-space pb-20 b-b-F9F9F9 mb-26"
-					v-show="infoData.order_status == 6">
+					v-show="infoData.order_status == 6 || infoData.order_status == 7">
 					<view class="fs-28 fc-9">
 					<view class="fs-28 fc-9">
 						骑手信息
 						骑手信息
 					</view>
 					</view>
@@ -176,7 +183,8 @@
 						<view class="fs-28 fc-3 w-480 mr-8 text-align-right">
 						<view class="fs-28 fc-3 w-480 mr-8 text-align-right">
 							{{infoData.order_sn}}
 							{{infoData.order_sn}}
 						</view>
 						</view>
-						<image class="icon-fz" src="@/static/img/order/fz.png" mode=""></image>
+						<image class="icon-fz" src="@/static/img/order/fz.png" mode="" @click="copy(infoData.order_sn)">
+						</image>
 					</view>
 					</view>
 				</view>
 				</view>
 				<view class="display-flex flex-justify-space mb-26">
 				<view class="display-flex flex-justify-space mb-26">
@@ -195,6 +203,14 @@
 						{{infoData.pay_type_str}}
 						{{infoData.pay_type_str}}
 					</view>
 					</view>
 				</view>
 				</view>
+				<view class="display-flex flex-justify-space mb-26" v-if="infoData.order_status == 7">
+					<view class="fs-28 fc-9">
+						完成时间
+					</view>
+					<view class="fs-28 fc-3 w-480 text-align-right">
+						{{infoData.finish_time}}
+					</view>
+				</view>
 				<view class="display-flex flex-justify-space mb-26">
 				<view class="display-flex flex-justify-space mb-26">
 					<view class="fs-28 fc-9">
 					<view class="fs-28 fc-9">
 						备注
 						备注
@@ -247,7 +263,42 @@
 			}
 			}
 		},
 		},
 		mounted() {},
 		mounted() {},
+		onUnload() {
+			const takeOutData = {}
+			orderInfo({
+				order_id: this.infoData.id
+			}).then((res) => {
+				if (res.code == 1) {
+					takeOutData.id = this.infoData.id
+					takeOutData.order_status = res.data.order_status
+					takeOutData.order_status_str = res.data.order_status_str
+					uni.$emit('takeOutData', takeOutData)
+				}
+			})
+		},
 		methods: {
 		methods: {
+			contactShop(phone) {
+				uni.makePhoneCall({
+					phoneNumber: phone, // 电话号码
+					success: function() {
+						console.log('拨打电话成功');
+					},
+					fail: function() {
+						console.log('拨打电话失败');
+					}
+				});
+			},
+			copy(value) {
+				uni.setClipboardData({
+					data: value,
+					success() {
+						tools.success('复制成功')
+					},
+					fail() {
+						tools.error("复制失败")
+					}
+				})
+			},
 			goToUrl() {
 			goToUrl() {
 				// 再来一单
 				// 再来一单
 				// uni.navigateTo({
 				// uni.navigateTo({
@@ -330,10 +381,10 @@
 								order_id: this.infoData.id
 								order_id: this.infoData.id
 							}).then((res) => {
 							}).then((res) => {
 								if (res.code == 1) {
 								if (res.code == 1) {
-									tools.success(res.msg)
-									setTimeout(() =>{
+									tools.success(res.msg, 3000)
+									setTimeout(() => {
 										this.orderInfo(this.infoData.id)
 										this.orderInfo(this.infoData.id)
-									}, 1500)
+									}, 3000)
 									this.isAJAX = false;
 									this.isAJAX = false;
 								} else {
 								} else {
 									tools.error(res.msg)
 									tools.error(res.msg)

+ 25 - 1
pages-order/ticket-info.vue

@@ -146,7 +146,7 @@
 						<view class="fs-28 fc-3 w-480 mr-8 text-align-right">
 						<view class="fs-28 fc-3 w-480 mr-8 text-align-right">
 							{{infoData.order_sn}}
 							{{infoData.order_sn}}
 						</view>
 						</view>
-						<image class="icon-fz" src="@/static/img/order/fz.png" mode=""></image>
+						<image class="icon-fz" src="@/static/img/order/fz.png" mode="" @click="copy(infoData.order_sn)"></image>
 					</view>
 					</view>
 				</view>
 				</view>
 				<view class="display-flex flex-justify-space mb-26">
 				<view class="display-flex flex-justify-space mb-26">
@@ -210,7 +210,31 @@
 			}
 			}
 		},
 		},
 		mounted() {},
 		mounted() {},
+		onUnload() {
+			const takeOutData = {}
+			ticketOrderInfo({
+				order_id: this.infoData.id
+			}).then((res) => {
+				if (res.code == 1) {
+					takeOutData.id = this.infoData.id
+					takeOutData.order_status = res.data.order_status
+					takeOutData.order_status_str = res.data.order_status_str
+					uni.$emit('takeOutData', takeOutData)
+				}
+			})
+		},
 		methods: {
 		methods: {
+			copy(value) {
+				uni.setClipboardData({
+					data: value,
+					success() {
+						tools.success('复制成功')
+					},
+					fail() {
+						tools.error("复制失败")
+					}
+				})
+			},
 			goToUrl() {
 			goToUrl() {
 				uni.navigateTo({
 				uni.navigateTo({
 					url: '/pages-buy/ticket'
 					url: '/pages-buy/ticket'

+ 61 - 30
pages-position/Internship-position.vue

@@ -3,7 +3,7 @@
 		<Nav title="实习岗位" leftColor="#fff" bgckgroundBox='transparent' titleColor="#fff"></Nav>
 		<Nav title="实习岗位" leftColor="#fff" bgckgroundBox='transparent' titleColor="#fff"></Nav>
 		<image class="bg" src="@/static/img/index/sxgw.png" mode=""></image>
 		<image class="bg" src="@/static/img/index/sxgw.png" mode=""></image>
 		<image class="code-img" :src="codeImg" mode="aspectFit"></image>
 		<image class="code-img" :src="codeImg" mode="aspectFit"></image>
-		<image @click="saveImg" class="but-img" src="@/static/img/index/bcdxc.png" mode=""></image>
+		<!-- <image @click="saveImg" class="but-img" src="@/static/img/index/bcdxc.png" mode=""></image> -->
 	</view>
 	</view>
 </template>
 </template>
 
 
@@ -34,40 +34,71 @@
 				console.log('触底');
 				console.log('触底');
 			},
 			},
 			saveImg() {
 			saveImg() {
-				uni.downloadFile({
-					url: this.codeImg,
-					success: downloadResult => {
-						if (downloadResult.statusCode === 200) {
-							// 下载成功,保存图片到系统相册
-							uni.saveImageToPhotosAlbum({
-								filePath: downloadResult.tempFilePath,
-								success: () => {
-									uni.showToast({
-										title: '图片保存成功'
-									});
-								},
-								fail: () => {
-									uni.showToast({
-										title: '图片保存失败',
-										icon: 'none'
-									});
+				let that = this
+				//获取授权列表,查看是否授权写入相册权限
+				uni.getSetting({
+					success(res) {
+						if (!res.authSetting['scope.writePhotosAlbum']) {
+							uni.authorize({
+								scope: 'scope.writePhotosAlbum',
+								success() {
+									that.saveimgtoAlbum(that.codeImg)
 								}
 								}
-							});
+							})
 						} else {
 						} else {
-							uni.showToast({
-								title: '图片下载失败',
-								icon: 'none'
-							});
+							that.saveimgtoAlbum(that.codeImg)
 						}
 						}
-					},
-					fail: () => {
-						uni.showToast({
-							title: '图片下载失败',
-							icon: 'none'
-						});
 					}
 					}
-				});
+				})
 			},
 			},
+			saveimgtoAlbum(imgurl) {
+				//图片保存到本地
+				let that = this
+				uni.downloadFile({
+					url: imgurl,
+					success: function(res) {
+						uni.showLoading()
+						uni.saveImageToPhotosAlbum({
+							filePath: res.tempFilePath,
+							success: function(data) {
+								uni.hideLoading()
+								uni.showToast({
+									title: '保存成功',
+									icon: 'success',
+									duration: 1500
+								})
+							},
+							fail: function(err) {
+								uni.hideLoading()
+								if (err.errMsg === "saveImageToPhotosAlbum:fail auth deny") {
+									uni.openSetting({
+										success(settingdata) {
+											if (settingdata.authSetting[
+													'scope.writePhotosAlbum']) {
+												uni.showToast({
+													title: '您已授权成功,请重新保存',
+													icon: 'success',
+													duration: 1500
+												})
+											} else {
+												uni.showToast({
+													title: '尚未授权,无法保存',
+													icon: 'none',
+													duration: 1500
+												})
+											}
+										}
+									})
+								}
+							},
+							complete(res) {
+								console.log(res);
+							}
+						})
+					}
+				})
+
+			}
 		},
 		},
 	}
 	}
 </script>
 </script>

+ 77 - 51
pages-school/add-circle.vue

@@ -1,10 +1,15 @@
 <template>
 <template>
 	<view class="add-circle-box iPhone-bottom flex-common-css box-border-box">
 	<view class="add-circle-box iPhone-bottom flex-common-css box-border-box">
+		<page-meta :page-style="'overflow:'+(show?'hidden':'visible')"></page-meta>
 		<Nav title='发圈子' bgckgroundBox='#fff'></Nav>
 		<Nav title='发圈子' bgckgroundBox='#fff'></Nav>
 		<view class="scroll-view-css box-border-box ptp-24">
 		<view class="scroll-view-css box-border-box ptp-24">
 			<view class="bgc-f box-border-box p-32">
 			<view class="bgc-f box-border-box p-32">
 				<view class="fs-34 fw-600 mb-20">内容描述 <span class='fs-34 fc-9 fw-400'>(必填)</span></view>
 				<view class="fs-34 fw-600 mb-20">内容描述 <span class='fs-34 fc-9 fw-400'>(必填)</span></view>
-				<textarea v-model="fromData.content" class="textarea-class fs-24" :maxlength='500' placeholder='这一刻说些什么'></textarea>
+				<textarea v-model="fromData.content" class="textarea-class fs-24" :maxlength='500' placeholder='这一刻说些什么'
+					@input='input'></textarea>
+				<view class="text-align-right fs-28 fc-9">
+					{{inputNum}}/500
+				</view>
 			</view>
 			</view>
 			<view class="bgc-f mb-20">
 			<view class="bgc-f mb-20">
 				<EnUpload v-model="fromData.image" number='9'></EnUpload>
 				<EnUpload v-model="fromData.image" number='9'></EnUpload>
@@ -17,7 +22,7 @@
 		<view class="box-border-box p-32" @click="save()">
 		<view class="box-border-box p-32" @click="save()">
 			<view class="b-bottom text-align-center fs-32 fw-600 fc-f">发布</view>
 			<view class="b-bottom text-align-center fs-32 fw-600 fc-f">发布</view>
 		</view>
 		</view>
-		<uni-popup ref="popup" type="bottom" background-color="#fff">
+		<uni-popup ref="popup" type="bottom" background-color="#fff" @change="change">
 			<view class="pop-box box-border-box p-24">
 			<view class="pop-box box-border-box p-24">
 				<view class="head-pop flex-justify-space align-items-center mb-24">
 				<view class="head-pop flex-justify-space align-items-center mb-24">
 					<uni-icons @click.stop="closePop(1)" type="closeempty" size="24"></uni-icons>
 					<uni-icons @click.stop="closePop(1)" type="closeempty" size="24"></uni-icons>
@@ -25,8 +30,9 @@
 					<view class="fs-28 fw-600 fc-41ABF5" @click.stop="closePop(2)">确定</view>
 					<view class="fs-28 fw-600 fc-41ABF5" @click.stop="closePop(2)">确定</view>
 				</view>
 				</view>
 				<view class="scroll-view-css">
 				<view class="scroll-view-css">
-					<view class="item-box fs-32 " :class="fromData.topic_id==item.id?'fc-41ABF5 bgc-D5EDFB':'bgc-F3F4F6'" 
-					v-for="(item,i) in classList" :key="i" @click="selectPopAddEditType(item)">{{item.name}}</view>
+					<view class="item-box fs-32 "
+						:class="fromData.topic_id==item.id?'fc-41ABF5 bgc-D5EDFB':'bgc-F3F4F6'"
+						v-for="(item,i) in classList" :key="i" @click="selectPopAddEditType(item)">{{item.name}}</view>
 				</view>
 				</view>
 			</view>
 			</view>
 		</uni-popup>
 		</uni-popup>
@@ -34,75 +40,90 @@
 </template>
 </template>
 
 
 <script>
 <script>
-	import {getTopic} from '@/api/category.js';
-	import {alumniSave} from '@/api/alumni.js';
+	import {
+		getTopic
+	} from '@/api/category.js';
+	import {
+		alumniSave
+	} from '@/api/alumni.js';
 	import tools from '@/service/tools';
 	import tools from '@/service/tools';
 	import EnUpload from '@/components/en-from/en-upload/en-upload.vue';
 	import EnUpload from '@/components/en-from/en-upload/en-upload.vue';
 	export default {
 	export default {
-		components:{EnUpload},
-		data(){
-			return{
-				fromData:{
-					news_id:'',
-					content:'',
-					image:[],
-					school_id:'',
-					topic_id:'',
+		components: {
+			EnUpload
+		},
+		data() {
+			return {
+				fromData: {
+					news_id: '',
+					content: '',
+					image: [],
+					school_id: '',
+					topic_id: '',
 				},
 				},
-				isAJAX:false,
-				classList:[],
-				typeName:'请选择发布类型',
+				isAJAX: false,
+				classList: [],
+				typeName: '请选择发布类型',
+				show: 'false',
+				inputNum: 0
 			}
 			}
 		},
 		},
 		onLoad(e) {
 		onLoad(e) {
-			if(e.news_id){
+			if (e.news_id) {
 				this.fromData.news_id = e.news_id;
 				this.fromData.news_id = e.news_id;
-			}else{
+			} else {
 				this.fromData.news_id = '';
 				this.fromData.news_id = '';
 			}
 			}
 		},
 		},
-		methods:{
-			selectPopAddEditType(item){
-				if(this.fromData.topic_id != item.id){
+		methods: {
+			input(e) {
+				console.log(e.detail);
+				this.inputNum = e.detail.cursor
+			},
+			change(e) {
+				this.show = e.show
+			},
+			selectPopAddEditType(item) {
+				if (this.fromData.topic_id != item.id) {
 					this.fromData.topic_id = item.id;
 					this.fromData.topic_id = item.id;
 					this.typeName = item.name;
 					this.typeName = item.name;
 				}
 				}
 			},
 			},
-			openPop(){
-				getTopic().then((res)=>{
-					if(res.code === 1){
+			openPop() {
+				getTopic().then((res) => {
+					if (res.code === 1) {
 						this.classList = res.data;
 						this.classList = res.data;
 						this.$refs.popup.open();
 						this.$refs.popup.open();
 					}
 					}
 				})
 				})
 			},
 			},
-			closePop(type){
-				if(type === 1){
+			closePop(type) {
+				if (type === 1) {
 					this.fromData.topic_id = '';
 					this.fromData.topic_id = '';
 					this.typeName = '请选择发布类型';
 					this.typeName = '请选择发布类型';
 				}
 				}
 				this.$refs.popup.close();
 				this.$refs.popup.close();
 			},
 			},
-			
-			save(){
-				
-				if(this.isAJAX){
+
+			save() {
+				if (this.isAJAX) {
 					return
 					return
 				}
 				}
 				this.isAJAX = true;
 				this.isAJAX = true;
 				let circleSchoolId = uni.getStorageSync('circleSchoolId');
 				let circleSchoolId = uni.getStorageSync('circleSchoolId');
 				let school_id = uni.getStorageSync('school_id');
 				let school_id = uni.getStorageSync('school_id');
-				this.fromData.school_id = circleSchoolId?circleSchoolId:school_id;
-				alumniSave(this.fromData).then((res)=>{
-					if(res.code === 1){
-						tools.success(res.msg)
-						setTimeout(()=>{
+				this.fromData.school_id = circleSchoolId ? circleSchoolId : school_id;
+				alumniSave(this.fromData).then((res) => {
+					if (res.code === 1) {
+						tools.success(res.msg, 1000)
+						setTimeout(() => {
 							this.isAJAX = false;
 							this.isAJAX = false;
-							uni.reLaunch({
-								url:'/pages-school/school-circle'
-							})
-						},1500)
-					}else{
+							uni.$emit('operateType', true);
+							uni.navigateBack({
+								delta: 1,
+							});
+						}, 1000)
+					} else {
 						tools.error(res.msg)
 						tools.error(res.msg)
 						this.isAJAX = false;
 						this.isAJAX = false;
 					}
 					}
@@ -113,36 +134,41 @@
 </script>
 </script>
 
 
 <style scoped lang="scss">
 <style scoped lang="scss">
-	.textarea-class{
+	.textarea-class {
 		width: 100%;
 		width: 100%;
 	}
 	}
-	.add-circle-box{
-		.b-bottom{
+
+	.add-circle-box {
+		.b-bottom {
 			width: 686rpx;
 			width: 686rpx;
 			height: 88rpx;
 			height: 88rpx;
 			line-height: 88rpx;
 			line-height: 88rpx;
-			background: linear-gradient( 105deg, #57CAFF 0%, #41ABF5 100%);
+			background: linear-gradient(105deg, #57CAFF 0%, #41ABF5 100%);
 			border-radius: 200rpx;
 			border-radius: 200rpx;
 		}
 		}
-		.right-icon{
+
+		.right-icon {
 			width: 32rpx;
 			width: 32rpx;
 			height: 32rpx;
 			height: 32rpx;
 		}
 		}
-		.head-pop{
+
+		.head-pop {
 			padding-bottom: 34rpx !important;
 			padding-bottom: 34rpx !important;
 			border-bottom: 1rpx solid #F2F2F2;
 			border-bottom: 1rpx solid #F2F2F2;
 		}
 		}
-		.pop-box{
+
+		.pop-box {
 			width: 100%;
 			width: 100%;
 			height: 50vh;
 			height: 50vh;
 			// background-color: #fff;
 			// background-color: #fff;
 			border-radius: 24rpx 24rpx 0rpx 0rpx;
 			border-radius: 24rpx 24rpx 0rpx 0rpx;
 			display: flex;
 			display: flex;
 			flex-direction: column;
 			flex-direction: column;
-			.item-box{
+
+			.item-box {
 				width: 100%;
 				width: 100%;
 				height: 92rpx;
 				height: 92rpx;
-				
+
 				border-radius: 200rpx;
 				border-radius: 200rpx;
 				line-height: 92rpx;
 				line-height: 92rpx;
 				text-align: center;
 				text-align: center;

+ 67 - 15
pages-school/circle-info.vue

@@ -28,7 +28,7 @@
 				</swiper>
 				</swiper>
 			</view>
 			</view>
 			<view class="box-border-box bz-box bgc-f b-b-F9F9F9 mt-24 mb-32">
 			<view class="box-border-box bz-box bgc-f b-b-F9F9F9 mt-24 mb-32">
-				<view class="fs-30 fw-600 mb-32">{{obj.content||''}}</view>
+				<view class="fs-30 fw-600 mb-32 item-content">{{obj.content||''}}</view>
 				<view class="card-4 flex-wrap-wrap">
 				<view class="card-4 flex-wrap-wrap">
 					<view class="label-box align-items-center mr-20 b-rad-200 bgc-F2F2F2">
 					<view class="label-box align-items-center mr-20 b-rad-200 bgc-F2F2F2">
 						<image class="wz mr-8" src="@/static/img/my/wz-two.png" mode=""></image>
 						<image class="wz mr-8" src="@/static/img/my/wz-two.png" mode=""></image>
@@ -45,7 +45,7 @@
 				</view>
 				</view>
 			</view>
 			</view>
 			<view class="fs-32 fc-3 fw-600 mb-16 plr-32 box-border-box">
 			<view class="fs-32 fc-3 fw-600 mb-16 plr-32 box-border-box">
-				评论<text class="fs-24 fc-9">({{list.length}})</text>
+				评论<text class="fs-24 fc-9">({{obj.remark}})</text>
 			</view>
 			</view>
 			<view v-if="list.length == 0" class="scroll-view-css">
 			<view v-if="list.length == 0" class="scroll-view-css">
 				<EnBlank :customSrc='true'>
 				<EnBlank :customSrc='true'>
@@ -57,7 +57,7 @@
 			<view v-else class="pop-box pop-msg box-border-box p-24">
 			<view v-else class="pop-box pop-msg box-border-box p-24">
 				<view class=" box-border-box plr-24">
 				<view class=" box-border-box plr-24">
 					<view class="list-box flex-justify-space" v-for="(item,i) in list" :key="i">
 					<view class="list-box flex-justify-space" v-for="(item,i) in list" :key="i">
-						<image class="list-box-img" src="@/static/img/my/bg.png" mode="scaleToFill"></image>
+						<image class="list-box-img" :src="item.head_img" mode="scaleToFill"></image>
 						<view class="flex-1 p-b-20">
 						<view class="flex-1 p-b-20">
 							<view class=" flex-justify-space">
 							<view class=" flex-justify-space">
 								<view class=" b-b-F9F9F9 mr-20">
 								<view class=" b-b-F9F9F9 mr-20">
@@ -86,12 +86,13 @@
 								</view>
 								</view>
 							</view>
 							</view>
 							<view v-if="item.isOpen" class="fs-24 fc-6 text-align-center mb-12"
 							<view v-if="item.isOpen" class="fs-24 fc-6 text-align-center mb-12"
-								@click="openReply(1,item)">展开更多评论</view>
+								@click="openReply(1,item)">展开更多评论
+							</view>
 							<!-- 回复 -->
 							<!-- 回复 -->
 							<view class="mb-16" v-if="item.count > 0">
 							<view class="mb-16" v-if="item.count > 0">
 								<view class="list-box flex-justify-space" v-for="(info,index) in item.replyList"
 								<view class="list-box flex-justify-space" v-for="(info,index) in item.replyList"
 									:key="index">
 									:key="index">
-									<image class="list-box-img" src="@/static/img/my/bg.png" mode="scaleToFill"></image>
+									<image class="list-box-img" :src="info.head_img" mode="scaleToFill"></image>
 									<view class="flex-1">
 									<view class="flex-1">
 										<view class=" flex-justify-space">
 										<view class=" flex-justify-space">
 											<view class=" b-b-F9F9F9 mr-20">
 											<view class=" b-b-F9F9F9 mr-20">
@@ -108,8 +109,8 @@
 												<view class="align-items-center mb-8">
 												<view class="align-items-center mb-8">
 													<view class="fs-24 fw-400 fc-9 ">{{info.created_date}}</view>
 													<view class="fs-24 fw-400 fc-9 ">{{info.created_date}}</view>
 													<uni-icons type="trash" size="18" class="ml-10"
 													<uni-icons type="trash" size="18" class="ml-10"
-														v-if="info.is_self == 1"
-														@click="delInfo(info, index, 2 ,i)" color="#BFBFBF"></uni-icons>
+														v-if="info.is_self == 1" @click="delInfo(info, index, 2 ,i)"
+														color="#BFBFBF"></uni-icons>
 												</view>
 												</view>
 											</view>
 											</view>
 											<view class="display-flex" @click.stop="handUp(2,info)">
 											<view class="display-flex" @click.stop="handUp(2,info)">
@@ -121,7 +122,8 @@
 										</view>
 										</view>
 									</view>
 									</view>
 								</view>
 								</view>
-								<view v-if="item.replyList.length < item.count  && item.count > 10"
+								<view
+									v-if="item.replyList.length>0 && item.replyList.length < item.count  && item.count > 10"
 									class="fs-24 fc-6 text-align-center mb-12" @click="openReply(2,item)">展开更多评论</view>
 									class="fs-24 fc-6 text-align-center mb-12" @click="openReply(2,item)">展开更多评论</view>
 							</view>
 							</view>
 
 
@@ -138,7 +140,6 @@
 				type="text" @focus='inputFocus(true)' @blur='inputFocus(false)' /> -->
 				type="text" @focus='inputFocus(true)' @blur='inputFocus(false)' /> -->
 			<!-- 			<textarea class="fs-input fs-36 fc-3" :focus='focus' v-model="msgData.content"
 			<!-- 			<textarea class="fs-input fs-36 fc-3" :focus='focus' v-model="msgData.content"
 				@click.stop="openInput(0,'','','')" @focus='inputFocus(true)' @blur='inputFocus(false)' auto-height /> -->
 				@click.stop="openInput(0,'','','')" @focus='inputFocus(true)' @blur='inputFocus(false)' auto-height /> -->
-
 			<view class="display-flex flex-shrink0">
 			<view class="display-flex flex-shrink0">
 				<view class="align-items-center mr-20" @click.stop="handUp(1,obj)">
 				<view class="align-items-center mr-20" @click.stop="handUp(1,obj)">
 					<uni-icons type="hand-up" size="22" :color="obj.is_like==1?'#FD5C02':'#999'"></uni-icons>
 					<uni-icons type="hand-up" size="22" :color="obj.is_like==1?'#FD5C02':'#999'"></uni-icons>
@@ -249,6 +250,7 @@
 				msgI: 0,
 				msgI: 0,
 				KeyboardHeight: 0, // 键盘高度
 				KeyboardHeight: 0, // 键盘高度
 				// showKeyNum: 0, //键盘打开的次数
 				// showKeyNum: 0, //键盘打开的次数
+				remark: ''
 			}
 			}
 		},
 		},
 		onLoad(e) {
 		onLoad(e) {
@@ -261,6 +263,28 @@
 				this.KeyboardHeight = res.height
 				this.KeyboardHeight = res.height
 			})
 			})
 		},
 		},
+		onUnload() {
+			const circleDataUp = {}
+			alumnInfo({
+				news_id: this.news_id
+			}).then((res) => {
+				if (res.code === 1) {
+					circleDataUp.news_id = res.data.news_id
+					circleDataUp.like = res.data.like
+					circleDataUp.remark = res.data.remark
+					circleDataUp.heat = res.data.heat
+					circleDataUp.is_like = res.data.is_like
+					uni.$emit('circleDataUp', circleDataUp)
+				}
+			})
+			// const circleDataUp = {
+			// 	news_id: this.obj.news_id,
+			// 	like: this.obj.like,
+			// 	remark: list.length,
+			// 	heat: this.obj.heat
+			// }
+			console.log("监听页面卸载");
+		},
 		methods: {
 		methods: {
 			// keyboardheightchange(e) {
 			// keyboardheightchange(e) {
 			// 	this.keyboardHeight = e.detail.height;
 			// 	this.keyboardHeight = e.detail.height;
@@ -295,6 +319,13 @@
 				}).then((res) => {
 				}).then((res) => {
 					if (res.code === 1) {
 					if (res.code === 1) {
 						this.obj = res.data;
 						this.obj = res.data;
+					} else {
+						tools.error(res.msg, 1000)
+						setTimeout(() => {
+							uni.navigateBack({
+								delta: 1
+							})
+						}, 1000)
 					}
 					}
 				})
 				})
 			},
 			},
@@ -365,7 +396,7 @@
 						news_id: item.news_id,
 						news_id: item.news_id,
 						is_like: is_like
 						is_like: is_like
 					}).then((res) => {
 					}).then((res) => {
-						this.handUpFun(res, item, is_like)
+						this.postFun(res, item, is_like)
 					})
 					})
 				} else {
 				} else {
 					// 点赞评论
 					// 点赞评论
@@ -382,13 +413,25 @@
 			handUpFun(res, item, is_like) {
 			handUpFun(res, item, is_like) {
 				if (res.code === 1) {
 				if (res.code === 1) {
 					item.is_like = is_like;
 					item.is_like = is_like;
-					if (is_like == 0) {
+					if (item.is_like == 0 && item.like > 0) {
 						item.like -= 1
 						item.like -= 1
 					} else {
 					} else {
 						item.like += 1
 						item.like += 1
 					}
 					}
 					this.isAJAX = false;
 					this.isAJAX = false;
-					tools.success(res.msg);
+					tools.success(res.msg, 1000);
+				} else {
+					this.isAJAX = false;
+					tools.error(res.msg);
+				}
+			},
+			// 点赞帖子
+			postFun(res, item, is_like) {
+				console.log(res, item, is_like);
+				if (res.code === 1) {
+					item.is_like = is_like;
+					this.isAJAX = false;
+					tools.success(res.msg, 1000);
 				} else {
 				} else {
 					this.isAJAX = false;
 					this.isAJAX = false;
 					tools.error(res.msg);
 					tools.error(res.msg);
@@ -429,10 +472,11 @@
 				this.isAJAX = true;
 				this.isAJAX = true;
 				setCreateRemark(this.msgData).then((res) => {
 				setCreateRemark(this.msgData).then((res) => {
 					if (res.code == 1) {
 					if (res.code == 1) {
-						tools.success('评论成功')
+						tools.success('评论成功', 1000)
 						setTimeout(() => {
 						setTimeout(() => {
 							this.isAJAX = false;
 							this.isAJAX = false;
 							this.closeInput()
 							this.closeInput()
+							console.log(this.msgType)
 							if (this.msgType == 0) {
 							if (this.msgType == 0) {
 								this.list.unshift(res.data)
 								this.list.unshift(res.data)
 								this.$forceUpdate()
 								this.$forceUpdate()
@@ -460,6 +504,9 @@
 							// this.list = [];
 							// this.list = [];
 							// this.page = 1;
 							// this.page = 1;
 							// this.getList();
 							// this.getList();
+							this.getInfo();
+
+							// remark
 						}, 1500)
 						}, 1500)
 					} else {
 					} else {
 						this.isAJAX = false;
 						this.isAJAX = false;
@@ -476,7 +523,7 @@
 					remark_id: item.id
 					remark_id: item.id
 				}).then((res) => {
 				}).then((res) => {
 					if (res.code === 1) {
 					if (res.code === 1) {
-						tools.success('删除成功')
+						tools.success('删除成功', 1000)
 						setTimeout(() => {
 						setTimeout(() => {
 							this.isAJAX = false;
 							this.isAJAX = false;
 							console.log(this.list[i], '88888888888888888');
 							console.log(this.list[i], '88888888888888888');
@@ -489,6 +536,7 @@
 							// this.list = [];
 							// this.list = [];
 							// this.page = 1;
 							// this.page = 1;
 							// this.getList();
 							// this.getList();
+							this.getInfo();
 						}, 1500)
 						}, 1500)
 					} else {
 					} else {
 						this.isAJAX = false;
 						this.isAJAX = false;
@@ -515,7 +563,7 @@
 					this.isAJAX = true;
 					this.isAJAX = true;
 					alumniReport(this.reportData).then((res) => {
 					alumniReport(this.reportData).then((res) => {
 						if (res.code === 1) {
 						if (res.code === 1) {
-							tools.success(res.msg)
+							tools.success(res.msg, 1000)
 							setTimeout(() => {
 							setTimeout(() => {
 								this.isAJAX = false;
 								this.isAJAX = false;
 								this.closePop(1);
 								this.closePop(1);
@@ -532,6 +580,10 @@
 </script>
 </script>
 
 
 <style scoped lang="scss">
 <style scoped lang="scss">
+	.item-content {
+		word-wrap: break-word;
+	}
+
 	.label-box {
 	.label-box {
 		padding: 0 12rpx;
 		padding: 0 12rpx;
 		height: 38rpx;
 		height: 38rpx;

+ 40 - 12
pages-school/school-circle.vue

@@ -70,7 +70,7 @@
 							</view>
 							</view>
 						</view>
 						</view>
 					</view>
 					</view>
-					<view class="card-2 fs-30 fw-400 mb-16 view-word-wrap" style="width: 560rpx;">
+					<view class="card-2 fs-30 fw-400 mb-16" style="width: 560rpx;">
 						{{item.content}}
 						{{item.content}}
 					</view>
 					</view>
 					<view class="card-3 flex-wrap-wrap mb-32" style="width: 560rpx;">
 					<view class="card-3 flex-wrap-wrap mb-32" style="width: 560rpx;">
@@ -116,13 +116,13 @@
 				<view class="head-pop flex-justify-space align-items-center mb-24">
 				<view class="head-pop flex-justify-space align-items-center mb-24">
 					<uni-icons @click.stop="closePop(1)" type="closeempty" size="24"></uni-icons>
 					<uni-icons @click.stop="closePop(1)" type="closeempty" size="24"></uni-icons>
 					<view class="fs-36 fc-0 fw-600">请输入举报内容</view>
 					<view class="fs-36 fc-0 fw-600">请输入举报内容</view>
-					<view class="fs-28 fw-600 fc-41ABF5">确定</view>
+					<view class="fs-28 fw-600 fc-41ABF5" @click.stop="closePop(2)">确定</view>
 				</view>
 				</view>
 				<view class="scroll-view-css">
 				<view class="scroll-view-css">
 					<textarea style="height: 100%;" v-model="reportData.content" class=" fs-24" :maxlength='50'
 					<textarea style="height: 100%;" v-model="reportData.content" class=" fs-24" :maxlength='50'
 						placeholder='请输入举报内容'></textarea>
 						placeholder='请输入举报内容'></textarea>
 				</view>
 				</view>
-				<view @click.stop="closePop(2)" class="b-bottom text-align-center fs-32 fw-600 fc-f">确认举报</view>
+				<!-- <view class="b-bottom text-align-center fs-32 fw-600 fc-f">确认举报</view> -->
 			</view>
 			</view>
 		</uni-popup>
 		</uni-popup>
 
 
@@ -322,8 +322,35 @@
 				alumni_str: '' // 校友圈提示
 				alumni_str: '' // 校友圈提示
 			}
 			}
 		},
 		},
-		onShow() {},
+		onShow() {
+			uni.$once('operateType', type => {
+				if (type) {
+					let circleSchoolId = uni.getStorageSync('circleSchoolId');
+					let schoolName = uni.getStorageSync('school_name');
+					let circleSchoolName = uni.getStorageSync('circleSchoolName');
+					this.schoolData.school_name = circleSchoolId ? circleSchoolName : schoolName;
+					this.classList = [];
+					this.getTopic();
+					this.list = [];
+					this.fromData.page = 1;
+					this.getList();
+					this.getCommonText()
+				}
+			})
+		},
 		mounted() {
 		mounted() {
+			uni.$on('circleDataUp', (data) => {
+				console.log(data, '*********************');
+				this.list.forEach((v, k) => {
+					if (v.news_id == data.news_id) {
+						v.like = data.like
+						v.remark = data.remark
+						v.heat = data.heat
+						v.is_like = data.is_like
+					}
+				})
+				this.$forceUpdate()
+			})
 			let circleSchoolId = uni.getStorageSync('circleSchoolId');
 			let circleSchoolId = uni.getStorageSync('circleSchoolId');
 			let schoolName = uni.getStorageSync('school_name');
 			let schoolName = uni.getStorageSync('school_name');
 			let circleSchoolName = uni.getStorageSync('circleSchoolName');
 			let circleSchoolName = uni.getStorageSync('circleSchoolName');
@@ -435,10 +462,10 @@
 						item.like += 1
 						item.like += 1
 					}
 					}
 					this.isAJAX = false;
 					this.isAJAX = false;
-					tools.success(res.msg);
+					tools.success(res.msg, 1000);
 				} else {
 				} else {
 					this.isAJAX = false;
 					this.isAJAX = false;
-					tools.error(res.msg);
+					tools.error(res.msg, 1000);
 				}
 				}
 			},
 			},
 			// 获取回复列表
 			// 获取回复列表
@@ -545,7 +572,7 @@
 				this.isAJAX = true;
 				this.isAJAX = true;
 				setCreateRemark(this.msgData).then((res) => {
 				setCreateRemark(this.msgData).then((res) => {
 					if (res.code == 1) {
 					if (res.code == 1) {
-						tools.success('评论成功')
+						tools.success('评论成功', 1000)
 						setTimeout(() => {
 						setTimeout(() => {
 							this.isAJAX = false;
 							this.isAJAX = false;
 							this.closeInput()
 							this.closeInput()
@@ -578,7 +605,7 @@
 					remark_id: item.id
 					remark_id: item.id
 				}).then((res) => {
 				}).then((res) => {
 					if (res.code === 1) {
 					if (res.code === 1) {
-						tools.success('删除成功')
+						tools.success('删除成功', 1000)
 						setTimeout(() => {
 						setTimeout(() => {
 							this.isAJAX = false;
 							this.isAJAX = false;
 							this.remarkData.list = [];
 							this.remarkData.list = [];
@@ -619,7 +646,7 @@
 					this.isAJAX = true;
 					this.isAJAX = true;
 					alumniReport(this.reportData).then((res) => {
 					alumniReport(this.reportData).then((res) => {
 						if (res.code === 1) {
 						if (res.code === 1) {
-							tools.success(res.msg)
+							tools.success(res.msg, 1000)
 							setTimeout(() => {
 							setTimeout(() => {
 								this.isAJAX = false;
 								this.isAJAX = false;
 								this.closePop(1);
 								this.closePop(1);
@@ -631,14 +658,11 @@
 					})
 					})
 				}
 				}
 			},
 			},
-
 			toDet(item) {
 			toDet(item) {
 				uni.navigateTo({
 				uni.navigateTo({
 					url: "/pages-school/circle-info?news_id=" + item.news_id
 					url: "/pages-school/circle-info?news_id=" + item.news_id
 				})
 				})
 			},
 			},
-
-
 		},
 		},
 	}
 	}
 </script>
 </script>
@@ -648,6 +672,10 @@
 	}
 	}
 </style>
 </style>
 <style scoped lang="scss">
 <style scoped lang="scss">
+	.card-2 {
+		word-wrap: break-word;
+	}
+
 	.navCustom {
 	.navCustom {
 		position: relative;
 		position: relative;
 		width: 100%;
 		width: 100%;

+ 43 - 9
pages-takeout/aptitude.vue

@@ -1,17 +1,17 @@
 <template>
 <template>
 	<view class="aptitude-index iPhone-bottom flex-common-css box-border-box bgc-f">
 	<view class="aptitude-index iPhone-bottom flex-common-css box-border-box bgc-f">
 		<Nav title='营业资质'></Nav>
 		<Nav title='营业资质'></Nav>
-		
+
 		<view class="scroll-view-css info-list box-border-box p-24 mb-20">
 		<view class="scroll-view-css info-list box-border-box p-24 mb-20">
 			<view class="card-box box-border-box p-24">
 			<view class="card-box box-border-box p-24">
 				<view class="mb-20 fw-600 fs-32">营业资质</view>
 				<view class="mb-20 fw-600 fs-32">营业资质</view>
-				<image v-for="(item,i) in 2" :key="i" @click="lookImg(i,item)"
-				src="@/static/img/my/bg.png" mode="scaleToFill"></image>
+				<image @click="lookImg(shopsInfo.license_img)"
+				:src="shopsInfo.license_img" mode="scaleToFill"></image>
 			</view>
 			</view>
 			<view class="card-box box-border-box p-24">
 			<view class="card-box box-border-box p-24">
 				<view class="mb-20 fw-600 fs-32">许可证</view>
 				<view class="mb-20 fw-600 fs-32">许可证</view>
-				<image v-for="(item,i) in 2" :key="i" @click="lookImg(i,item)"
-				src="@/static/img/my/bg.png" mode="scaleToFill"></image>
+				<image  @click="lookImg(shopsInfo.food_license_img)"
+                :src="shopsInfo.food_license_img" mode="scaleToFill"></image>
 			</view>
 			</view>
 		</view>
 		</view>
 	</view>
 	</view>
@@ -19,15 +19,49 @@
 
 
 <script>
 <script>
 	import tools from "@/service/tools";
 	import tools from "@/service/tools";
+  import {shopInfo} from "@/api/shop";
 	export default {
 	export default {
 		data(){
 		data(){
 			return{
 			return{
-				
+        shopId:'',
+        shopsInfo:{
+          license_img:'',
+          food_license_img:'',
+        }
 			}
 			}
 		},
 		},
+    onLoad(data) {
+      console.log(data)
+      if(data.shopId){
+        this.shopId=data.shopId
+        this.getShopInfo()
+      }else {
+        tools.leftClick()
+      }
+    },
+    mounted() {
+    },
 		methods:{
 		methods:{
-			lookImg(i,item){
-				tools.lookBigImg(i,item)
+      getShopInfo() {
+        const operate_id = uni.getStorageSync('operate_id')
+        shopInfo({
+          operate_id: operate_id,
+          shop_id: this.shopId
+        }).then((res) => {
+          if (res.code == 1) {
+            this.shopsInfo = res.data
+          } else {
+            tools.error(res.msg)
+            setTimeout(() => {
+              uni.navigateBack({
+                delta: 1
+              })
+            }, 1500)
+          }
+        })
+      },
+			lookImg(i){
+				tools.lookBigImg(i,[this.shopsInfo.license_img,this.shopsInfo.food_license_img])
 			},
 			},
 		},
 		},
 	}
 	}
@@ -51,4 +85,4 @@
 			}
 			}
 		}
 		}
 	}
 	}
-</style>
+</style>

+ 1 - 1
pages-takeout/confirm-mod/select-address.vue

@@ -70,7 +70,7 @@
 					if(res.code === 1){
 					if(res.code === 1){
 						this.list = res.data;
 						this.list = res.data;
 						let isConfirmAddressFlag = uni.getStorageSync('isConfirmAddressFlag');
 						let isConfirmAddressFlag = uni.getStorageSync('isConfirmAddressFlag');
-						if (isConfirmAddressFlag && AddressId) {
+						if (isConfirmAddressFlag.flag && AddressId) {
 							let item = ''
 							let item = ''
 							res.data.forEach((v,k) => {
 							res.data.forEach((v,k) => {
 								if(v.id == AddressId){
 								if(v.id == AddressId){

+ 17 - 25
pages-takeout/confirm-order.vue

@@ -2,7 +2,6 @@
 	<view class="confirm-order-box iPhone-bottom flex-common-css box-border-box">
 	<view class="confirm-order-box iPhone-bottom flex-common-css box-border-box">
 		<view class="bg-box"></view>
 		<view class="bg-box"></view>
 		<Nav title='提交订单' bgckgroundBox='transparent'></Nav>
 		<Nav title='提交订单' bgckgroundBox='transparent'></Nav>
-
 		<view class="scroll-view-css box-border-box p-24">
 		<view class="scroll-view-css box-border-box p-24">
 			<view class="box-card box-border-box mb-20 bgc-f">
 			<view class="box-card box-border-box mb-20 bgc-f">
 				<view class="box-input box-border-box p-b-20 mb-20" @click="selectFun(2)">
 				<view class="box-input box-border-box p-b-20 mb-20" @click="selectFun(2)">
@@ -21,20 +20,17 @@
 				<view class="p-b-20">
 				<view class="p-b-20">
 					<view class=" flex-justify-space box-border-box p-b-20">
 					<view class=" flex-justify-space box-border-box p-b-20">
 						<view class="fs-28 fw-600">取件码</view>
 						<view class="fs-28 fw-600">取件码</view>
-						<view class="align-items-center" @click="selectFun(4)">
+<!-- 						<view class="align-items-center" @click="selectFun(4)">
 							<view class="fs-24 fw-400 fc-9">修改</view>
 							<view class="fs-24 fw-400 fc-9">修改</view>
 							<image class="right-icon" src="@/static/img/toRight.png" mode=""></image>
 							<image class="right-icon" src="@/static/img/toRight.png" mode=""></image>
-						</view>
+						</view> -->
 					</view>
 					</view>
 					<view class="code-box box-border-box flex-wrap-wrap">
 					<view class="code-box box-border-box flex-wrap-wrap">
 						<view class="code-item fs-28 text-overflow-ellipsis-one"
 						<view class="code-item fs-28 text-overflow-ellipsis-one"
 							v-for="(item,i) in fromData.pickup_code" :key="i">{{item}}</view>
 							v-for="(item,i) in fromData.pickup_code" :key="i">{{item}}</view>
 					</view>
 					</view>
 				</view>
 				</view>
-
 			</view>
 			</view>
-
-
 			<view class="box-card box-border-box bgc-f mb-20">
 			<view class="box-card box-border-box bgc-f mb-20">
 				<view class="mb-32 b-b-F9F9F9">
 				<view class="mb-32 b-b-F9F9F9">
 					<view class="flex-justify-space mb-28" v-for="(item,i) in cardData.goods_list" :key="i">
 					<view class="flex-justify-space mb-28" v-for="(item,i) in cardData.goods_list" :key="i">
@@ -64,8 +60,6 @@
 						class="fw-600 fc-0 fs-44">{{((cardData.total_price - quanMoney) < 0?'0':(cardData.total_price - quanMoney)||0).toFixed(2)}}</span>
 						class="fw-600 fc-0 fs-44">{{((cardData.total_price - quanMoney) < 0?'0':(cardData.total_price - quanMoney)||0).toFixed(2)}}</span>
 				</view>
 				</view>
 			</view>
 			</view>
-
-
 			<view class="box-card box-border-box bgc-f mb-20">
 			<view class="box-card box-border-box bgc-f mb-20">
 				<view class="flex-justify-space b-b-F9F9F9  mb-24">
 				<view class="flex-justify-space b-b-F9F9F9  mb-24">
 					<view class="fs-28 fw-600 w158 mr-12">备注</view>
 					<view class="fs-28 fw-600 w158 mr-12">备注</view>
@@ -73,9 +67,6 @@
 				</view>
 				</view>
 				<view class="p-b-20"></view>
 				<view class="p-b-20"></view>
 			</view>
 			</view>
-
-
-
 			<view class="box-card box-border-box mb-20 bgc-f flex-justify-space">
 			<view class="box-card box-border-box mb-20 bgc-f flex-justify-space">
 				<view class="fs-28 fw-600 w158">支付方式</view>
 				<view class="fs-28 fw-600 w158">支付方式</view>
 				<view class="wx-box display-flex">
 				<view class="wx-box display-flex">
@@ -84,7 +75,6 @@
 				</view>
 				</view>
 			</view>
 			</view>
 		</view>
 		</view>
-
 		<view class="bottom-box box-border-box p-24">
 		<view class="bottom-box box-border-box p-24">
 			<view class="flex-justify-space">
 			<view class="flex-justify-space">
 				<view class="align-items-flex-end box-1">
 				<view class="align-items-flex-end box-1">
@@ -95,8 +85,6 @@
 				<view class="text-align-center box-2 fs-32 fc-f fw-600" @click="toSave()">立即支付</view>
 				<view class="text-align-center box-2 fs-32 fc-f fw-600" @click="toSave()">立即支付</view>
 			</view>
 			</view>
 		</view>
 		</view>
-
-
 		<Coupon ref="coupon" @giveCouPon='giveCouPon'></Coupon>
 		<Coupon ref="coupon" @giveCouPon='giveCouPon'></Coupon>
 		<SelectAddress ref="selectAddress" @giveAddress='giveAddress'></SelectAddress>
 		<SelectAddress ref="selectAddress" @giveAddress='giveAddress'></SelectAddress>
 		<Time ref="selectTime" @giveTime='giveTime'></Time>
 		<Time ref="selectTime" @giveTime='giveTime'></Time>
@@ -116,14 +104,11 @@
 	import {
 	import {
 		getShopIngList
 		getShopIngList
 	} from '@/api/shopping.js'
 	} from '@/api/shopping.js'
-
-
 	import tools from "@/service/tools";
 	import tools from "@/service/tools";
 	import Coupon from './confirm-mod/dryClean-coupon.vue';
 	import Coupon from './confirm-mod/dryClean-coupon.vue';
 	import SelectAddress from './confirm-mod/select-address.vue';
 	import SelectAddress from './confirm-mod/select-address.vue';
 	import Time from './confirm-mod/time.vue';
 	import Time from './confirm-mod/time.vue';
 	import EditCode from './confirm-mod/edit-code.vue';
 	import EditCode from './confirm-mod/edit-code.vue';
-
 	export default {
 	export default {
 		components: {
 		components: {
 			Coupon,
 			Coupon,
@@ -165,10 +150,13 @@
 		},
 		},
 		onShow() {
 		onShow() {
 			let isConfirmAddressFlag = uni.getStorageSync('isConfirmAddressFlag');
 			let isConfirmAddressFlag = uni.getStorageSync('isConfirmAddressFlag');
-			if (isConfirmAddressFlag) {
-				this.selectFun(2);
+			if (isConfirmAddressFlag.flag) {
+				this.selectFun(2,isConfirmAddressFlag);
 			}
 			}
 		},
 		},
+		onUnload() {
+			uni.removeStorageSync('isConfirmAddressFlag')
+		},
 		methods: {
 		methods: {
 			// 获取购物车
 			// 获取购物车
 			getCard() {
 			getCard() {
@@ -195,7 +183,7 @@
 				})
 				})
 			},
 			},
 
 
-			selectFun(type) {
+			selectFun(type,addressData) {
 				if (type === 1) {
 				if (type === 1) {
 					// 选择优惠券
 					// 选择优惠券
 					this.$refs.coupon.getList(this.type, this.fromData.coupon_id);
 					this.$refs.coupon.getList(this.type, this.fromData.coupon_id);
@@ -204,7 +192,12 @@
 					if (this.addressData.id) {
 					if (this.addressData.id) {
 						this.$refs.selectAddress.id = this.addressData.id;
 						this.$refs.selectAddress.id = this.addressData.id;
 					}
 					}
-					this.$refs.selectAddress.getList(this.addressData.id);
+					if (addressData && addressData.is_default == 1) {
+						this.$refs.selectAddress.id = addressData.id;
+						this.$refs.selectAddress.getList(addressData.id);
+					} else {
+						this.$refs.selectAddress.getList();
+					}
 				} else if (type === 3) {
 				} else if (type === 3) {
 					// 选择时间
 					// 选择时间
 					this.$refs.selectTime.getList();
 					this.$refs.selectTime.getList();
@@ -228,26 +221,22 @@
 				if (!this.fromData.address_id) {
 				if (!this.fromData.address_id) {
 					return tools.error('请先选择地址')
 					return tools.error('请先选择地址')
 				}
 				}
-				
 				let flag = false;
 				let flag = false;
 				flag = this.fromData.pickup_code.every(item => item)
 				flag = this.fromData.pickup_code.every(item => item)
 				if (!flag) {
 				if (!flag) {
 					return tools.error('请先输入取件码')
 					return tools.error('请先输入取件码')
 				}
 				}
-				
 				let codeRule = /^[A-Za-z0-9-]+$/
 				let codeRule = /^[A-Za-z0-9-]+$/
 				let flagRule = this.fromData.pickup_code.every((item) => {return codeRule.test(item)});
 				let flagRule = this.fromData.pickup_code.every((item) => {return codeRule.test(item)});
 				if(!flagRule){
 				if(!flagRule){
 					return tools.error('请输入正确的取件码')	
 					return tools.error('请输入正确的取件码')	
 				}
 				}
-				
 				if (this.isAJAX) {
 				if (this.isAJAX) {
 					return
 					return
 				}
 				}
 				this.isAJAX = true;
 				this.isAJAX = true;
 				this.fromData.school_id = uni.getStorageSync('school_id');
 				this.fromData.school_id = uni.getStorageSync('school_id');
 				this.fromData.site_id = uni.getStorageSync('site_id');
 				this.fromData.site_id = uni.getStorageSync('site_id');
-
 				getExpressCreate(this.fromData).then((res) => {
 				getExpressCreate(this.fromData).then((res) => {
 					if (res.code === 1) {
 					if (res.code === 1) {
 						getExpressPay({
 						getExpressPay({
@@ -262,6 +251,7 @@
 									signType: ret.data.wx_pay.signType, //固定值
 									signType: ret.data.wx_pay.signType, //固定值
 									paySign: ret.data.wx_pay.paySign, //签名
 									paySign: ret.data.wx_pay.paySign, //签名
 									success: (ren) => {
 									success: (ren) => {
+										uni.removeStorageSync('isConfirmAddressFlag')
 										tools.success("支付成功");
 										tools.success("支付成功");
 										this.isAJAX = false;
 										this.isAJAX = false;
 										setTimeout(() => {
 										setTimeout(() => {
@@ -273,6 +263,7 @@
 										}, 1000)
 										}, 1000)
 									},
 									},
 									fail: (err) => {
 									fail: (err) => {
+										uni.removeStorageSync('isConfirmAddressFlag')
 										this.isAJAX = false;
 										this.isAJAX = false;
 										tools.error("支付失败");
 										tools.error("支付失败");
 										setTimeout(() => {
 										setTimeout(() => {
@@ -285,6 +276,7 @@
 									},
 									},
 								});
 								});
 							} else {
 							} else {
+								uni.removeStorageSync('isConfirmAddressFlag')
 								this.isAJAX = false;
 								this.isAJAX = false;
 								tools.error("支付失败");
 								tools.error("支付失败");
 								setTimeout(() => {
 								setTimeout(() => {

+ 18 - 7
pages-takeout/goods-order.vue

@@ -31,7 +31,6 @@
 				</view> -->
 				</view> -->
 			</view>
 			</view>
 
 
-
 			<view class="box-card box-border-box bgc-f mb-20">
 			<view class="box-card box-border-box bgc-f mb-20">
 				<view class="mb-32 b-b-F9F9F9">
 				<view class="mb-32 b-b-F9F9F9">
 					<!-- <view class="fs-28 fw-600 mb-24">宋氏重庆鸡公煲(重工业店)宋氏重庆鸡公煲(重工业店)宋氏重庆鸡公煲(重工业店)</view> -->
 					<!-- <view class="fs-28 fw-600 mb-24">宋氏重庆鸡公煲(重工业店)宋氏重庆鸡公煲(重工业店)宋氏重庆鸡公煲(重工业店)</view> -->
@@ -79,7 +78,8 @@
 			<view class="box-card box-border-box bgc-f mb-20">
 			<view class="box-card box-border-box bgc-f mb-20">
 				<view class="flex-justify-space b-b-F9F9F9">
 				<view class="flex-justify-space b-b-F9F9F9">
 					<view class="fs-28 fw-600 w158 mr-12">备注</view>
 					<view class="fs-28 fw-600 w158 mr-12">备注</view>
-					<input v-model="fromData.note" class="flex-1 text-align-right fs-28" type="text" placeholder="请填写你的备注">
+					<input v-model="fromData.note" class="flex-1 text-align-right fs-28" type="text"
+						placeholder="请填写你的备注">
 				</view>
 				</view>
 				<!-- <view class="fs-28 fw-600 mb-16">平台将通过服务通知向你推送最新动态</view>
 				<!-- <view class="fs-28 fw-600 mb-16">平台将通过服务通知向你推送最新动态</view>
 				<view class="p-16 bgc-F3F4F6 b-rad-12 tz-an-f">
 				<view class="p-16 bgc-F3F4F6 b-rad-12 tz-an-f">
@@ -193,10 +193,14 @@
 		},
 		},
 		onShow() {
 		onShow() {
 			let isConfirmAddressFlag = uni.getStorageSync('isConfirmAddressFlag');
 			let isConfirmAddressFlag = uni.getStorageSync('isConfirmAddressFlag');
-			if (isConfirmAddressFlag) {
-				this.selectFun(2);
+			console.log("支付完后走了咩",isConfirmAddressFlag);
+			if (isConfirmAddressFlag.flag) {
+				this.selectFun(2, isConfirmAddressFlag);
 			}
 			}
 		},
 		},
+		onUnload() {
+			uni.removeStorageSync('isConfirmAddressFlag')
+		},
 		methods: {
 		methods: {
 			getDeliveryMoney(shop_id) {
 			getDeliveryMoney(shop_id) {
 				// 获取外卖配送费
 				// 获取外卖配送费
@@ -234,8 +238,7 @@
 					}
 					}
 				})
 				})
 			},
 			},
-
-			selectFun(type) {
+			selectFun(type, addressData) {
 				if (type === 1) {
 				if (type === 1) {
 					// 选择优惠券
 					// 选择优惠券
 					this.$refs.coupon.getList(this.type, this.fromData.coupon_id, this.fromData.shop_id);
 					this.$refs.coupon.getList(this.type, this.fromData.coupon_id, this.fromData.shop_id);
@@ -244,7 +247,12 @@
 					if (this.addressData.id) {
 					if (this.addressData.id) {
 						this.$refs.selectAddress.id = this.addressData.id;
 						this.$refs.selectAddress.id = this.addressData.id;
 					}
 					}
-					this.$refs.selectAddress.getList();
+					if (addressData && addressData.is_default == 1) {
+						this.$refs.selectAddress.id = addressData.id;
+						this.$refs.selectAddress.getList(addressData.id);
+					} else {
+						this.$refs.selectAddress.getList();
+					}
 				} else if (type === 3) {
 				} else if (type === 3) {
 					// 选择时间
 					// 选择时间
 					this.$refs.selectTime.getList(this.fromData.shop_id);
 					this.$refs.selectTime.getList(this.fromData.shop_id);
@@ -300,6 +308,7 @@
 									signType: ret.data.wx_pay.signType, //固定值
 									signType: ret.data.wx_pay.signType, //固定值
 									paySign: ret.data.wx_pay.paySign, //签名
 									paySign: ret.data.wx_pay.paySign, //签名
 									success: (ren) => {
 									success: (ren) => {
+										uni.removeStorageSync('isConfirmAddressFlag')
 										tools.success("支付成功");
 										tools.success("支付成功");
 										this.isAJAX = false;
 										this.isAJAX = false;
 										setTimeout(() => {
 										setTimeout(() => {
@@ -310,6 +319,7 @@
 										}, 1000)
 										}, 1000)
 									},
 									},
 									fail: (err) => {
 									fail: (err) => {
+										uni.removeStorageSync('isConfirmAddressFlag')
 										this.isAJAX = false;
 										this.isAJAX = false;
 										tools.error("支付失败");
 										tools.error("支付失败");
 										setTimeout(() => {
 										setTimeout(() => {
@@ -321,6 +331,7 @@
 									},
 									},
 								});
 								});
 							} else {
 							} else {
+								uni.removeStorageSync('isConfirmAddressFlag')
 								this.isAJAX = false;
 								this.isAJAX = false;
 								tools.error("支付失败");
 								tools.error("支付失败");
 								setTimeout(() => {
 								setTimeout(() => {

+ 24 - 16
pages-takeout/replace-take.vue

@@ -241,7 +241,7 @@
 			getCard() {
 			getCard() {
 				getShopIngList({
 				getShopIngList({
 					type: 2,
 					type: 2,
-					school_id: this.schoolData.school_id 
+					school_id: this.schoolData.school_id
 				}).then((res) => {
 				}).then((res) => {
 					if (res.code === 1) {
 					if (res.code === 1) {
 						this.cardData = res.data;
 						this.cardData = res.data;
@@ -257,20 +257,28 @@
 								}
 								}
 							}
 							}
 							// 初始设置code 输入框数量
 							// 初始设置code 输入框数量
-							if (this.isInitial) {
-								let saveData = uni.getStorageSync('saveData')
-								if (saveData) {
-									return
-								} else {
-									this.pickup_code = [];
-									for (let i = 0; i < this.cardData.total_num; i++) {
-										let obj = {
-											code: ''
-										};
-										this.pickup_code.push(obj);
-									}
-								}
-							}
+              console.log(this.pickup_code.length,this.cardData.total_num)
+              console.log(this.pickup_code.length<this.cardData.total_num)
+              if(this.pickup_code.length<this.cardData.total_num){
+                let maxNum = this.cardData.total_num-this.pickup_code.length
+                console.log(maxNum)
+                console.log('易安居完成asssssssssssssssssssss')
+                for (let i = 0; i < maxNum; i++) {
+                  let obj = {
+                    code: ''
+                  };
+                  this.pickup_code.push(obj);
+                  console.log( '---------------易安居完成'+i )
+                }
+                console.log( this.pickup_code)
+              }
+              // let saveData = uni.getStorageSync('saveData')
+              // if (saveData) {
+              //   return
+              // } else {
+              //   this.pickup_code = [];
+              //
+              // }
 						} else {
 						} else {
 							this.list.forEach(t => {
 							this.list.forEach(t => {
 								t.number = 0;
 								t.number = 0;
@@ -629,4 +637,4 @@
 		}
 		}
 
 
 	}
 	}
-</style>
+</style>

+ 5 - 5
pages-takeout/shop-mod/info.vue

@@ -18,10 +18,10 @@
 				<image src="@/static/img/takeout/info-phone.png" mode=""></image>
 				<image src="@/static/img/takeout/info-phone.png" mode=""></image>
 				<view class="fs-28 fw-400">联系电话:{{shopInfoData.shop_phone}} </view>
 				<view class="fs-28 fw-400">联系电话:{{shopInfoData.shop_phone}} </view>
 			</view>
 			</view>
-			<view class="right-img-f align-items-center">
+			<view class="right-img-f align-items-center" @click.stop="to()">
 				<image src="@/static/img/takeout/info-zz.png" mode=""></image>
 				<image src="@/static/img/takeout/info-zz.png" mode=""></image>
 				<view class="fs-28 fw-400">查看营业资质 </view>
 				<view class="fs-28 fw-400">查看营业资质 </view>
-				<image @click="to()" class="right-img" src="@/static/img/toRight.png" mode=""></image>
+				<image  class="right-img" src="@/static/img/toRight.png" mode=""></image>
 			</view>
 			</view>
 		</view>
 		</view>
 
 
@@ -59,7 +59,7 @@
 		methods: {
 		methods: {
 			to() {
 			to() {
 				uni.navigateTo({
 				uni.navigateTo({
-					url: '/pages-takeout/aptitude'
+					url: '/pages-takeout/aptitude?shopId='+this.shopId
 				})
 				})
 			},
 			},
 			shopInfo() {
 			shopInfo() {
@@ -71,7 +71,7 @@
 					if (res.code == 1) {
 					if (res.code == 1) {
 						this.shopInfoData = res.data
 						this.shopInfoData = res.data
 						res.data.business_hours.forEach((v, k) => {
 						res.data.business_hours.forEach((v, k) => {
-							// let time = 
+							// let time =
 							v.forEach((i, j) => {
 							v.forEach((i, j) => {
 								let time = ''
 								let time = ''
 								if (j == 0 || j == 3) {
 								if (j == 0 || j == 3) {
@@ -126,4 +126,4 @@
 			}
 			}
 		}
 		}
 	}
 	}
-</style>
+</style>

+ 139 - 58
pages-takeout/shop-mod/menu.vue

@@ -36,8 +36,14 @@
 									<image class="wh-44" src="@/static/img/takeout/add.png" @click="addred(2,i,k,info)"
 									<image class="wh-44" src="@/static/img/takeout/add.png" @click="addred(2,i,k,info)"
 										mode=""></image>
 										mode=""></image>
 								</view>
 								</view>
-								<view v-else class="right-only-right text-align-center fw-600 fs-28 fc-f"
-									@click="addred(3,i,k,info)">选规格</view>
+								<view v-else class="right-only-right text-align-center" @click="addred(3,i,k,info)">
+									<view class="fw-600 fs-28 fc-f">
+										选规格
+									</view>
+									<view class="selectedNum" v-if="info.num>0">
+										{{info.num}}
+									</view>
+								</view>
 							</view>
 							</view>
 						</view>
 						</view>
 					</view>
 					</view>
@@ -48,7 +54,7 @@
 			<view class="gg-box  flex-index-css">
 			<view class="gg-box  flex-index-css">
 				<view class="flex-justify-space  box-border-box p-32">
 				<view class="flex-justify-space  box-border-box p-32">
 					<view class="fs-32 fw-500 fc-0">商品详情规格</view>
 					<view class="fs-32 fw-500 fc-0">商品详情规格</view>
-					<view class="" @click="addred(4)">
+					<view class="" @click="gbPop">
 						<uni-icons type="closeempty" size="20"></uni-icons>
 						<uni-icons type="closeempty" size="20"></uni-icons>
 					</view>
 					</view>
 				</view>
 				</view>
@@ -158,6 +164,11 @@
 					line_price: '',
 					line_price: '',
 					num: 0,
 					num: 0,
 					goods_id: '',
 					goods_id: '',
+					is_quota: 0,
+					is_infinite: 0,
+					quota_num: 0,
+          payNum: 0,
+					stock: 0,
 					spec_key: '',
 					spec_key: '',
 					goods_spec_id: '',
 					goods_spec_id: '',
 					spec_name: [],
 					spec_name: [],
@@ -165,6 +176,7 @@
 					spec_list: [],
 					spec_list: [],
 					spec_attr: [],
 					spec_attr: [],
 				},
 				},
+				selectedNum: 1
 			}
 			}
 		},
 		},
 		watch: {
 		watch: {
@@ -192,8 +204,16 @@
 						this.isAjax = false
 						this.isAjax = false
 					}
 					}
 				} else {
 				} else {
-					// 加
-					++this.popData.num;
+          if (this.popData.is_infinite === 0 && this.popData.payNum > this.popData.stock) {
+            tools.error('最多购买' + this.popData.quota_num + '件')
+          } else if (this.popData.is_quota > 0 && this.popData.payNum > this.popData.quota_num) {
+            tools.error('限购' + this.popData.quota_num + '件')
+          }else {
+            // 加
+            ++this.popData.num;
+          }
+
+
 				}
 				}
 
 
 			},
 			},
@@ -232,22 +252,37 @@
 				})
 				})
 			},
 			},
 			setGoodsSpecPrice() {
 			setGoodsSpecPrice() {
+				console.log(this.popData.spec_ids)
 				if (this.popData.spec_ids.length > 0) {
 				if (this.popData.spec_ids.length > 0) {
 					let spec_ids = JSON.parse(JSON.stringify(this.popData.spec_ids))
 					let spec_ids = JSON.parse(JSON.stringify(this.popData.spec_ids))
 					spec_ids.sort((a, b) => a - b);
 					spec_ids.sort((a, b) => a - b);
 					let spec_key = spec_ids.join('_')
 					let spec_key = spec_ids.join('_')
 					this.popData.spec_key = spec_key
 					this.popData.spec_key = spec_key
+					console.log('this.popData.spec_list[spec_key]', this.popData.spec_list[spec_key])
 					if (this.popData.spec_list[spec_key] !== undefined) {
 					if (this.popData.spec_list[spec_key] !== undefined) {
 						this.popData.price = this.popData.spec_list[spec_key].seckill_money > 0 ? this.popData.spec_list[
 						this.popData.price = this.popData.spec_list[spec_key].seckill_money > 0 ? this.popData.spec_list[
 							spec_key].seckill_money : this.popData.spec_list[spec_key].price
 							spec_key].seckill_money : this.popData.spec_list[spec_key].price
 						this.popData.line_price = this.popData.spec_list[spec_key].line_price
 						this.popData.line_price = this.popData.spec_list[spec_key].line_price
+						if (this.popData.goods_spec_id !== this.popData.spec_list[spec_key].goods_spec_id + '') {
+							this.popData.num = 1
+						}
 						this.popData.goods_spec_id = this.popData.spec_list[spec_key].goods_spec_id + ''
 						this.popData.goods_spec_id = this.popData.spec_list[spec_key].goods_spec_id + ''
 						let cartKey = this.cartData.goods_list.findIndex(row => this.popData.goods_spec_id * 1 === row
 						let cartKey = this.cartData.goods_list.findIndex(row => this.popData.goods_spec_id * 1 === row
 							.goods_spec_id * 1)
 							.goods_spec_id * 1)
 						if (cartKey >= 0) {
 						if (cartKey >= 0) {
 							this.popData.num = this.cartData.goods_list[cartKey].goods_number
 							this.popData.num = this.cartData.goods_list[cartKey].goods_number
 						}
 						}
+					} else {
+						this.popData.line_price = '0.00'
+						this.popData.price = '0.00'
+						this.popData.num = 0
+						this.popData.goods_spec_id = ''
 					}
 					}
+				} else {
+					this.popData.price = '0.00'
+					this.popData.line_price = '0.00'
+					this.popData.num = 0
+					this.popData.goods_spec_id = ''
 				}
 				}
 			},
 			},
 			setShopIngList(cartData) {
 			setShopIngList(cartData) {
@@ -261,25 +296,30 @@
 					if (res.code === 1) {
 					if (res.code === 1) {
 						this.cartData = res.data
 						this.cartData = res.data
 						this.$emit('setCartData', this.cartData)
 						this.$emit('setCartData', this.cartData)
-						if (isStart) this.setGoodsNum()
+						this.setGoodsNum()
 					}
 					}
 				})
 				})
 			},
 			},
 			setGoodsNum() {
 			setGoodsNum() {
+
 				if (this.cartData.goods_list.length > 0) {
 				if (this.cartData.goods_list.length > 0) {
-					this.cartData.goods_list.forEach(item => {
-						this.categoryData.forEach(categoryItem => {
-							if (categoryItem.type === item.category_id) {
-								categoryItem.list.forEach(goodsItem => {
-									console.log(item.goods_id, goodsItem.goods_id)
-									if (item.goods_id === goodsItem.goods_id) {
+					let goodsIds = []
+					this.categoryData.forEach(categoryItem => {
+						categoryItem.list.forEach(goodsItem => {
+							goodsItem.num = 0
+							this.cartData.goods_list.forEach(item => {
+								if (item.goods_id === goodsItem.goods_id) {
+									if (goodsIds.indexOf(item.goods_id) < 0) {
+										goodsIds.push(item.goods_id)
 										goodsItem.num = item.goods_number * 1
 										goodsItem.num = item.goods_number * 1
+									} else {
+										goodsItem.num += item.goods_number * 1
 									}
 									}
-								})
-							}
-
+								}
+							})
 						})
 						})
 					})
 					})
+
 				} else {
 				} else {
 					//购物车数据清除
 					//购物车数据清除
 					this.categoryData.forEach(categoryItem => {
 					this.categoryData.forEach(categoryItem => {
@@ -355,43 +395,70 @@
 					}
 					}
 				} else if (type === 2) {
 				} else if (type === 2) {
 					// 加
 					// 加
-					if (item.is_infinite === 1 || item.stock > item.num) {
-            // ++item.num;
-						this.setSub(item, type);
-					} else {
+					if (item.is_infinite === 0  && item.num >= item.stock) {
+						tools.error('最多购买' + item.quota_num + '件')
+						this.isAjax = false
+					} else if (item.is_quota > 0 && item.num >= item.quota_num) {
+						tools.error('限购' + item.quota_num + '件')
 						this.isAjax = false
 						this.isAjax = false
+					} else {
+						this.setSub(item, type);
 					}
 					}
-					// this.menuList[i].list[k].num += 1;
-					// this.setSub(item);
+
 				} else if (type === 3) {
 				} else if (type === 3) {
 					// 选规格
 					// 选规格
+          console.log(item)
+					this.popData.is_quota = item.is_quota
+					this.popData.quota_num = item.quota_num
+					this.popData.is_infinite = item.is_infinite
+					this.popData.payNum = item.num
+					this.popData.stock = item.stock
 					this.getShopGoodsSpec(item)
 					this.getShopGoodsSpec(item)
 				} else {
 				} else {
 					this.$refs.popupGG.close();
 					this.$refs.popupGG.close();
-					this.isAjax = false
-					let cartKey = this.cartData.goods_list.findIndex(row => this.popData.goods_spec_id === row
-						.goods_spec_id)
-					console.log(cartKey)
-					let addType = this.popData.num > 0 ? 2 : 1
-					console.log('addType:' + addType)
-					if (addType === 2 && cartKey < 0) {
-						this.setShopIngAdd(this.popData.goods_id, this.popData.goodsItem.category_id, this.popData
-							.goods_spec_id, this.popData.num)
+					console.log('this.popData.goods_spec_id')
+					console.log(this.popData.goods_spec_id)
+					if (this.popData.goods_spec_id) {
+            if (this.popData.is_infinite === 0 && this.popData.payNum > this.popData.stock) {
+              tools.error('最多购买' + this.popData.quota_num + '件')
+              this.popData.num = this.popData.stock
+            } else if (this.popData.is_quota > 0 && this.popData.payNum > this.popData.quota_num) {
+              tools.error('限购' + this.popData.quota_num + '件')
+              this.popData.num = this.popData.quota_num
+            }else {
+              let cartKey = this.cartData.goods_list.findIndex(row => this.popData.goods_spec_id === row
+                  .goods_spec_id)
+              console.log(cartKey)
+              let addType = this.popData.num > 0 ? 2 : 1
+              console.log('addType:' + addType)
+              if (addType === 2 && cartKey < 0) {
+                this.setShopIngAdd(this.popData.goods_id, this.popData.goodsItem.category_id, this.popData
+                    .goods_spec_id, this.popData.num)
+              } else {
+                this.setShopIngNumber(this.popData.goods_id, this.popData.goodsItem.category_id, type, this
+                    .popData
+                    .goods_spec_id, this.popData.num)
+              }
+            }
+
 					} else {
 					} else {
-						this.setShopIngNumber(this.popData.goods_id, this.popData.goodsItem.category_id, type, this.popData
-							.goods_spec_id, this.popData.num)
+						console.log('无规格信息')
 					}
 					}
+					this.isAjax = false
 				}
 				}
 			},
 			},
+			gbPop() {
+				this.$refs.popupGG.close();
+			},
 			setSub(item, type) {
 			setSub(item, type) {
 				let cartKey = this.cartData.goods_list.findIndex(row => row.goods_id === item.goods_id)
 				let cartKey = this.cartData.goods_list.findIndex(row => row.goods_id === item.goods_id)
-				if (type === 2  && cartKey<0) {
-					this.setShopIngAdd(item.goods_id, item.category_id, '', 1,item)
+				if (type === 2 && cartKey < 0) {
+					this.setShopIngAdd(item.goods_id, item.category_id, '', 1, item)
 				} else {
 				} else {
-					this.setShopIngNumber(item.goods_id, item.category_id, type, '', 1,item)
+					this.setShopIngNumber(item.goods_id, item.category_id, type, '', 1, item)
 				}
 				}
 			},
 			},
-			setShopIngAdd(goodsId, categoryId, goodsSpecId, number,item) {
+			setShopIngAdd(goodsId, categoryId, goodsSpecId, number, item) {
 				setShopIngAdd({
 				setShopIngAdd({
 					'type': 1,
 					'type': 1,
 					'goods_id': goodsId,
 					'goods_id': goodsId,
@@ -401,20 +468,20 @@
 					'number': number,
 					'number': number,
 				}).then(res => {
 				}).then(res => {
 					this.isAjax = false
 					this.isAjax = false
-          if(res.code===1){
-            if(item){
-              ++item.num;
-            }
-            this.getShopIngList()
-          }else {
-            tools.error(res.msg)
-          }
+					if (res.code === 1) {
+						if (item) {
+							++item.num;
+						}
+						this.getShopIngList()
+					} else {
+						tools.error(res.msg)
+					}
 
 
 				}).catch(() => {
 				}).catch(() => {
 					this.isAjax = false
 					this.isAjax = false
 				})
 				})
 			},
 			},
-			setShopIngNumber(goodsId, categoryId, operation, goodsSpecId, number,item) {
+			setShopIngNumber(goodsId, categoryId, operation, goodsSpecId, number, item) {
 				setShopIngNumber({
 				setShopIngNumber({
 					'type': 1,
 					'type': 1,
 					'goods_id': goodsId,
 					'goods_id': goodsId,
@@ -424,21 +491,21 @@
 					'number': number,
 					'number': number,
 					'operation': operation === 2 ? 1 : 2,
 					'operation': operation === 2 ? 1 : 2,
 				}).then(res => {
 				}).then(res => {
-          this.isAjax = false
-          if(res.code===1){
-            if(item){
-              if(operation===2){
-                ++item.num;
-              }else {
-                --item.num;
-              }
+					this.isAjax = false
+					if (res.code === 1) {
+						if (item) {
+							if (operation === 2) {
+								++item.num;
+							} else {
+								--item.num;
+							}
 
 
-            }
+						}
 
 
-            this.getShopIngList()
-          }else {
-            tools.error(res.msg)
-          }
+						this.getShopIngList()
+					} else {
+						tools.error(res.msg)
+					}
 
 
 				}).catch(() => {
 				}).catch(() => {
 					this.isAjax = false
 					this.isAjax = false
@@ -542,6 +609,20 @@
 						background: linear-gradient(117deg, #57CAFF 0%, #41ABF5 100%);
 						background: linear-gradient(117deg, #57CAFF 0%, #41ABF5 100%);
 						border-radius: 12rpx;
 						border-radius: 12rpx;
 						line-height: 44rpx;
 						line-height: 44rpx;
+						position: relative;
+
+						.selectedNum {
+							position: absolute;
+							right: 2rpx;
+							top: -22rpx;
+							font-size: 24rpx;
+							color: #fff;
+							width: 32rpx;
+							height: 32rpx;
+							line-height: 32rpx;
+							background: #FB3D03;
+							border-radius: 50%;
+						}
 					}
 					}
 
 
 					.right-only-right-red {
 					.right-only-right-red {

+ 750 - 743
pages-takeout/shop.vue

@@ -1,754 +1,761 @@
 <template>
 <template>
-	<view class="shop-index iPhone-bottom flex-common-css box-border-box">
-		<image class="bg-img" :src="shopsInfo.shop_logo" mode="aspectFill"></image>
-		<view class="mb-box"></view>
-		<view class="nav-box">
-			<Nav :leftShow='false' :customNav='true' bgckgroundBox='transparent'>
-				<template>
-					<view slot="custom" class="">
-						<image class="nav-img" @click="toBack()" src="@/static/img/takeout/bg-back.png"
-							mode="scaleToFill"></image>
-					</view>
-				</template>
-			</Nav>
-		</view>
-		<view class="head-box bgc-f box-border-box plr-24" :style="{height:domHeigjt + 'rpx'}">
-			<view id="shopInfoBox" class="shop-info-box bgc-f box-border-box p-24">
-				<view class="info-box-top flex-justify-space mb-10">
-					<view class="box-top-left">
-						<view class="top-left-1 fs-40 fw-600 text-overflow-ellipsis-one">{{shopsInfo.shop_name}}
-						</view>
-						<view class="align-items-center mb-8">
-							<image class="img-x mr-12" src="@/static/img/index/index-x.png" mode=""></image>
-							<view class="fs-26 fw-600 fc-FF7F00 mr-12">{{shopsInfo.shop_score}}分</view>
-							<view class="fc-6 fs-24 mr-12">| 预计{{shopsInfo.delivery_time}}分钟 |</view>
-							<view class="fc-6 fs-24 mr-12">{{shopsInfo.shop_sales}}人购买</view>
-						</view>
-					</view>
-					<image class="box-top-right" :src="shopsInfo.shop_logo" mode="scaleToFill"></image>
-				</view>
-				<view class="fs-24 fw-400 fc-9 text-overflow-ellipsis-one">
-					公告:{{shopsInfo.notice}}
-				</view>
-				<view class="flex-wrap-wrap p-t-20" v-if="couponData.length>0">
-					<view class="info-box-quan-list" v-for="(item,i) in couponData" :key="i" @click="openCoupon">
-						<view class="" v-if="i<=2">
-							<image src="@/static/img/takeout/quan-bg.png" mode=""></image>
-							<view class="quan-list-1 fw-b fs-32 fc-f">
-								<span class="fw-b fs-20 fc-f">¥</span>{{item.money}}
-							</view>
-							<view class="quan-list-2 fw-400 fs-24 fc-f">领</view>
-						</view>
-					</view>
-				</view>
-			</view>
-		</view>
-		<view class="head-box-1 bgc-f box-border-box plr-24">
-			<view class="align-items-center shop-type-list">
-				<view class="shop-item fs-36" @click="seletShopType(item)"
-					:class="shopType === item.id?'s-item':'n-item'" v-for="(item,i) in shopTypeList" :key="i">
-					{{item.name}}
-					<!-- <view v-if="item.id == 2" class="pj-num" :class="shopType === item.id?'s-item':'n-item'">999+</view> -->
-				</view>
-				<view class="shop-item-bs" :style="{left:shopTypeBsLeft+'rpx'}"></view>
-			</view>
-		</view>
-		<view class="common-view-css bgc-f" style="overflow: hidden;">
-			<Menu style="height: 100%;" v-if="shopType === 1" :shop_id="shop_id" @setCartData="setCartData"
-				ref="goodsMenu"></Menu>
-			<Evaluate style="height: 100%;" :shopId='shop_id' :shopScore='shopsInfo.shop_score'
-				v-else-if="shopType === 2"></Evaluate>
-			<ShopInfo style="height: 100%;" :shopId='shop_id' v-else-if="shopType === 3"></ShopInfo>
-		</view>
-		<view v-if="shopType === 1" class="shop-buttom-money box-border-box" @click="openBuyCrad()">
-			<view class="shop-buttom-money-1 flex-justify-space align-items-center">
-				<image src="@/static/img/takeout/buy-icon.png" mode="scaleToFill"></image>
-				<view class="shop-buttom-num fs-24 fc-f text-align-center">{{cartData.total_num}}</view>
-				<view class="">
-					<view class="">
-						<span class="fw-600 fs-24 fc-f">¥</span>
-						<span class="fw-600 fs-44 fc-f">{{cartData.total_price}}</span>
-					</view>
-					<view class="fs-24 fc-ADADAD" v-if="delivery_money<=0">免配送</view>
-					<view class="fs-24 fc-f" v-else>配送费¥{{delivery_money}}</view>
-				</view>
-				<view v-if="cartData.is_place_order===1" class="shop-buttom-money-2 text-align-center fc-f fs-32 fw-600"
-					@click.stop="toConfirmOrder()">去结算
-				</view>
-				<view v-else class="err-msg fs-32 fw-600 fc-f mr-30">{{cartData.err_msg}}</view>
-			</view>
-		</view>
-		<uni-popup ref="popupBuy" type="bottom" background-color="#fff">
-			<view class="buy-card flex-index-css">
-				<view class="buy-card-top box-border-box plr-32 flex-justify-space align-items-center">
-					<view class="">
-						<span class="fs-32 fc-3 mr-12">已选商品</span>
-						<span class="fs-32 fc-9">(打包费<span
-								class="fs-32 fc-FB3D03">{{cartData.pack_price}}元</span>)</span>
-					</view>
-					<view class="fs-28 fw-400 fc-9 align-items-center" @click.stop="setShopIngDel">
-						<view class="">
-							<uni-icons type="trash" size="18" color="#999"></uni-icons>
-						</view>
-						<view class="fs-28 fw-400 fc-9">清空</view>
-					</view>
-				</view>
-				<view class="scroll-view-css box-border-box p-32">
-					<view class="buy-card-item display-flex" v-for="(goods,i) in cartData.goods_list" :key="i">
-						<image class="goods_img" :src="goods.goods_image" mode="scaleToFill"></image>
-						<view class="flex-1">
-							<view class="w-514 text-overflow-ellipsis-one fs-34 fw-600 mb-12">
-								{{goods.goods_name}}
-							</view>
-							<view class="w-514 text-overflow-ellipsis-one fs-24 fw-400 fc-9 mb-18">{{goods.goods_attr}}
-							</view>
-							<view class="flex-justify-space">
-								<view class="">
-									<span class="fs-24 fc-FB3D03 fw-400">¥</span>
-									<span class="fs-40 fc-FB3D03 fw-b">{{goods.price}}</span>
-								</view>
-								<view class="display-flex align-items-center">
-									<image class="wh-44" @click.stop="setShopIngNumber(goods,2)"
-										src="@/static/img/takeout/j.png" mode=""></image>
-									<view class="right-only-right-2 text-align-center fs-28 fw-400">
-										{{goods.goods_number}}
-									</view>
-									<image class="wh-44" src="@/static/img/takeout/add.png"
-										@click.stop="setShopIngNumber(goods,1)" mode=""></image>
-								</view>
-							</view>
-						</view>
-					</view>
-					<en-blank v-if="cartData.goods_list.length<=0" message="快去选购商品吧!~"></en-blank>
-				</view>
-				<view class="shop-buttom-money box-border-box" @click="createOrder()">
-					<view class="shop-buttom-money-1 flex-justify-space align-items-center">
-						<image src="@/static/img/takeout/buy-icon.png" mode="scaleToFill"></image>
-						<view class="shop-buttom-num fs-24 fc-f text-align-center">{{cartData.total_num}}</view>
-						<view class="">
-							<view class="">
-								<span class="fw-600 fs-24 fc-f">¥</span>
-								<span class="fw-600 fs-44 fc-f">{{cartData.total_price}}</span>
-							</view>
-							<view class="fs-24 fc-ADADAD" v-if="delivery_money<=0">免配送</view>
-							<view class="fs-24 fc-f" v-else>配送费¥{{delivery_money}}</view>
-						</view>
-						<view v-if="cartData.is_place_order===1"
-							class="shop-buttom-money-2 text-align-center fs-32 fc-f fw-600"
-							@click.stop="toConfirmOrder()">
-							去结算</view>
-						<view class="fs-32 fw-600 fc-f mr-30" v-else>{{cartData.err_msg}}</view>
-					</view>
-				</view>
-			</view>
-		</uni-popup>
-		<uni-popup ref="popupCoupon" type="bottom">
-			<view class="pop-coupon box-border-box p-24">
-				<view class="text-align-center fs-36 fw-600 box-title mb-32">
-					本店优惠券
-					<uni-icons @click="closeCoupon" class="box-close" type="closeempty" size="20"></uni-icons>
-				</view>
-				<view class="scroll-view-css">
-					<view v-if="couponData<= 0" class="blank-text fs-32 fc-6 text-align-center">
-						暂无优惠券
-					</view>
-					<!-- 					<EnBlank :customSrc='true' v-if="couponData<= 0">
+  <view class="shop-index iPhone-bottom flex-common-css box-border-box">
+    <image class="bg-img" :src="shopsInfo.shop_logo" mode="aspectFill"></image>
+    <view class="mb-box"></view>
+    <view class="nav-box">
+      <Nav :leftShow='false' :customNav='true' bgckgroundBox='transparent'>
+        <template>
+          <view slot="custom" class="">
+            <image class="nav-img" @click="toBack()" src="@/static/img/takeout/bg-back.png" mode="scaleToFill"></image>
+          </view>
+        </template>
+      </Nav>
+    </view>
+    <view class="head-box bgc-f box-border-box plr-24" :style="{height:domHeigjt + 'rpx'}">
+      <view id="shopInfoBox" class="shop-info-box bgc-f box-border-box p-24">
+        <view class="info-box-top flex-justify-space mb-10">
+          <view class="box-top-left">
+            <view class="top-left-1 fs-40 fw-600 text-overflow-ellipsis-one">{{shopsInfo.shop_name || ""}}
+            </view>
+            <view class="align-items-center mb-8">
+              <image class="img-x mr-12" src="@/static/img/index/index-x.png" mode=""></image>
+              <view class="fs-26 fw-600 fc-FF7F00 mr-12">{{shopsInfo.shop_score|| ""}}分</view>
+              <view class="fc-6 fs-24 mr-12">| 预计{{shopsInfo.delivery_time||""}}分钟 |</view>
+              <view class="fc-6 fs-24 mr-12">{{shopsInfo.shop_sales||""}}人购买</view>
+            </view>
+          </view>
+          <image class="box-top-right" :src="shopsInfo.shop_logo" mode="scaleToFill"></image>
+        </view>
+        <view class="fs-24 fw-400 fc-9 text-overflow-ellipsis-one">
+          公告:{{shopsInfo.notice||""}}
+        </view>
+        <view class="flex-wrap-wrap p-t-20" v-if="couponData.length>0">
+          <view class="info-box-quan-list" v-for="(item,i) in couponData" :key="i" @click="openCoupon">
+            <view class="" v-if="i<=2">
+              <image src="@/static/img/takeout/quan-bg.png" mode=""></image>
+              <view class="quan-list-1 fw-b fs-32 fc-f">
+                <span class="fw-b fs-20 fc-f">¥</span>{{item.money}}
+              </view>
+              <view class="quan-list-2 fw-400 fs-24 fc-f">领</view>
+            </view>
+          </view>
+        </view>
+      </view>
+    </view>
+    <view class="head-box-1 bgc-f box-border-box plr-24">
+      <view class="align-items-center shop-type-list">
+        <view class="shop-item fs-36" @click="seletShopType(item)" :class="shopType === item.id?'s-item':'n-item'"
+          v-for="(item,i) in shopTypeList" :key="i">
+          {{item.name}}
+          <!-- <view v-if="item.id == 2" class="pj-num" :class="shopType === item.id?'s-item':'n-item'">999+</view> -->
+        </view>
+        <view class="shop-item-bs" :style="{left:shopTypeBsLeft+'rpx'}"></view>
+      </view>
+    </view>
+    <view class="common-view-css bgc-f" style="overflow: hidden;">
+      <Menu style="height: 100%;" v-if="shopType === 1" :shop_id="shop_id" @setCartData="setCartData" ref="goodsMenu">
+      </Menu>
+      <Evaluate style="height: 100%;" :shopId='shop_id' :shopScore='shopsInfo.shop_score' v-else-if="shopType === 2">
+      </Evaluate>
+      <ShopInfo style="height: 100%;" :shopId='shop_id' v-else-if="shopType === 3"></ShopInfo>
+    </view>
+    <view v-if="shopType === 1" class="shop-buttom-money box-border-box" @click="openBuyCrad()">
+      <view class="shop-buttom-money-1 flex-justify-space align-items-center">
+        <image src="@/static/img/takeout/buy-icon.png" mode="scaleToFill"></image>
+        <view class="shop-buttom-num fs-24 fc-f text-align-center">{{cartData.total_num}}</view>
+        <view class="">
+          <view class="">
+            <span class="fw-600 fs-24 fc-f">¥</span>
+            <span class="fw-600 fs-44 fc-f">{{cartData.total_price}}</span>
+          </view>
+          <view class="fs-24 fc-ADADAD" v-if="delivery_money<=0">免配送</view>
+          <view class="fs-24 fc-f" v-else>配送费¥{{delivery_money}}</view>
+        </view>
+        <view v-if="cartData.is_place_order===1" class="shop-buttom-money-2 text-align-center fc-f fs-32 fw-600"
+          @click.stop="toConfirmOrder()">去结算
+        </view>
+        <view v-else class="err-msg fs-32 fw-600 fc-f mr-30">{{cartData.err_msg}}</view>
+      </view>
+    </view>
+    <uni-popup ref="popupBuy" type="bottom" background-color="#fff">
+      <view class="buy-card flex-index-css">
+        <view class="buy-card-top box-border-box plr-32 flex-justify-space align-items-center">
+          <view class="">
+            <span class="fs-32 fc-3 mr-12">已选商品</span>
+            <span class="fs-32 fc-9">(打包费<span class="fs-32 fc-FB3D03">{{cartData.pack_price}}元</span>)</span>
+          </view>
+          <view class="fs-28 fw-400 fc-9 align-items-center" @click.stop="setShopIngDel">
+            <view class="">
+              <uni-icons type="trash" size="18" color="#999"></uni-icons>
+            </view>
+            <view class="fs-28 fw-400 fc-9">清空</view>
+          </view>
+        </view>
+        <view class="scroll-view-css box-border-box p-32">
+          <view class="buy-card-item display-flex" v-for="(goods,i) in cartData.goods_list" :key="i">
+            <image class="goods_img" :src="goods.goods_image" mode="scaleToFill"></image>
+            <view class="flex-1">
+              <view class="w-514 text-overflow-ellipsis-one fs-34 fw-600 mb-12">
+                {{goods.goods_name}}
+              </view>
+              <view class="w-514 text-overflow-ellipsis-one fs-24 fw-400 fc-9 mb-18">{{goods.goods_attr}}
+              </view>
+              <view class="flex-justify-space">
+                <view class="">
+                  <span class="fs-24 fc-FB3D03 fw-400">¥</span>
+                  <span class="fs-40 fc-FB3D03 fw-b">{{goods.price}}</span>
+                </view>
+                <view class="display-flex align-items-center">
+                  <image class="wh-44" @click.stop="setShopIngNumber(goods,2)" src="@/static/img/takeout/j.png" mode="">
+                  </image>
+                  <view class="right-only-right-2 text-align-center fs-28 fw-400">
+                    {{goods.goods_number}}
+                  </view>
+                  <image class="wh-44" src="@/static/img/takeout/add.png" @click.stop="setShopIngNumber(goods,1)"
+                    mode=""></image>
+                </view>
+              </view>
+            </view>
+          </view>
+          <en-blank v-if="cartData.goods_list.length<=0" message="快去选购商品吧!~"></en-blank>
+        </view>
+        <view class="shop-buttom-money box-border-box" @click="createOrder()">
+          <view class="shop-buttom-money-1 flex-justify-space align-items-center">
+            <image src="@/static/img/takeout/buy-icon.png" mode="scaleToFill"></image>
+            <view class="shop-buttom-num fs-24 fc-f text-align-center">{{cartData.total_num}}</view>
+            <view class="">
+              <view class="">
+                <span class="fw-600 fs-24 fc-f">¥</span>
+                <span class="fw-600 fs-44 fc-f">{{cartData.total_price}}</span>
+              </view>
+              <view class="fs-24 fc-ADADAD" v-if="delivery_money<=0">免配送</view>
+              <view class="fs-24 fc-f" v-else>配送费¥{{delivery_money}}</view>
+            </view>
+            <view v-if="cartData.is_place_order===1" class="shop-buttom-money-2 text-align-center fs-32 fc-f fw-600"
+              @click.stop="toConfirmOrder()">
+              去结算</view>
+            <view class="fs-32 fw-600 fc-f mr-30" v-else>{{cartData.err_msg}}</view>
+          </view>
+        </view>
+      </view>
+    </uni-popup>
+    <uni-popup ref="popupCoupon" type="bottom">
+      <view class="pop-coupon box-border-box p-24">
+        <view class="text-align-center fs-36 fw-600 box-title mb-32">
+          本店优惠券
+          <uni-icons @click="closeCoupon" class="box-close" type="closeempty" size="20"></uni-icons>
+        </view>
+        <view class="scroll-view-css">
+          <view v-if="couponData<= 0" class="blank-text fs-32 fc-6 text-align-center">
+            暂无优惠券
+          </view>
+          <!-- 					<EnBlank :customSrc='true' v-if="couponData<= 0">
 						<template v-slot:blankImg>
 						<template v-slot:blankImg>
 							<image class="black-img" src="@/static/img/common/no-order.png" mode=""></image>
 							<image class="black-img" src="@/static/img/common/no-order.png" mode=""></image>
 						</template>
 						</template>
 					</EnBlank> -->
 					</EnBlank> -->
-					<view class="item-box display-flex mb-20" v-for="(item,index) in couponData" :key="index">
-						<view class="item-right flex-direction flex-justify-center flex-1 bgc-f">
-							<view class="fs-28 mb-12 ticket-name text-overflow-ellipsis fc-3 fw-600">
-								{{item.name}}
-							</view>
-							<view class="fs-24 fc-6">
-								有效时间:{{item.time_type_str}}
-							</view>
-						</view>
-						<view class="item-hr"></view>
-						<view class="item-left flex-direction align-items-center flex-justify-center bgc-FCE7E2">
-							<view class="align-items-center">
-								<view class="fs-30 fw-600 fc-FB3D03">¥</view>
-								<view class="fs-48 fw-600 fc-FB3D03">{{item.money}}</view>
-							</view>
-							<view class="fs-24 mb-18 fc-6">
-								满{{item.full_money}}可用
-							</view>
-							<view class="but-box fs-28 fc-f" @click="receiveCode(item)">
-								立即领取
-							</view>
-							<view class="ball"></view>
-							<view class="ball-two"></view>
-						</view>
-					</view>
-				</view>
-			</view>
-		</uni-popup>
-	</view>
+          <view class="item-box display-flex mb-20" v-for="(item,index) in couponData" :key="index">
+            <view class="item-right flex-direction flex-justify-center flex-1 bgc-f">
+              <view class="fs-28 mb-12 ticket-name text-overflow-ellipsis fc-3 fw-600">
+                {{item.name}}
+              </view>
+              <view class="fs-24 fc-6">
+                有效时间:{{item.time_type_str}}
+              </view>
+            </view>
+            <view class="item-hr"></view>
+            <view class="item-left flex-direction align-items-center flex-justify-center bgc-FCE7E2">
+              <view class="align-items-center">
+                <view class="fs-30 fw-600 fc-FB3D03">¥</view>
+                <view class="fs-48 fw-600 fc-FB3D03">{{item.money}}</view>
+              </view>
+              <view class="fs-24 mb-18 fc-6">
+                满{{item.full_money}}可用
+              </view>
+              <view class="but-box fs-28 fc-f" @click="receiveCode(item)">
+                立即领取
+              </view>
+              <view class="ball"></view>
+              <view class="ball-two"></view>
+            </view>
+          </view>
+        </view>
+      </view>
+    </uni-popup>
+  </view>
 </template>
 </template>
 
 
 <script>
 <script>
-	import Menu from './shop-mod/menu.vue';
-	import Evaluate from './shop-mod/evaluate.vue';
-	import ShopInfo from './shop-mod/info.vue';
-	import tools from "@/service/tools";
-	import EnBlank from "@/components/en-utils/en-blank/en-blank";
-	import {
-		receiveCoupon
-	} from "@/api/coupon.js"
-	import {
-		shopInfo,
-		shopCoupon
-	} from "@/api/shop.js"
-	import {
-		getDeliveryMoney
-	} from "@/api/common";
-	import {
-		getShopIngList,
-		setShopIngDel,
-		setShopIngNumber
-	} from "@/api/shopping";
-	export default {
-		components: {
-			Menu,
-			Evaluate,
-			ShopInfo,
-			EnBlank
-		},
-		data() {
-			return {
-				domHeigjt: 224,
-				shopTypeList: [{
-					name: "点菜",
-					id: 1
-				}, {
-					name: "评价",
-					id: 2
-				}, {
-					name: "店铺",
-					id: 3
-				}, ],
-				shopType: 1, //组件类型
-				shopTypeBsLeft: 12,
-				shop_id: '',
-				operate_id: '',
-				shopsInfo: {},
-				couponData: [], // 可领优惠卷
-				goodsData: [], // 可领优惠卷
-				categoryData: [], // 可领优惠卷
-				delivery_money: 0, // 可领优惠卷
-				cartData: {
-					total_price: 0,
-					total_num: 0,
-					total_goods_money: 0,
-					pack_price: 0,
-					must_category: 0,
-					is_place_order: 0,
-					err_msg: 0,
-					goods_list: [],
-				},
-				isAjax: false
-			}
-		},
-		onLoad(e) {
-			if (e) {
-				this.shop_id = e.shop_id
-				this.operate_id = uni.getStorageSync('operate_id')
-				this.shopInfo()
-			}
-		},
-		mounted() {
-			// this.getDomH();
-			this.shopCoupon()
-		},
-		methods: {
-			setShopIngDel() {
-				uni.showModal({
-					title: '提示',
-					content: '是否清除购物车商品?',
-					success: (res) => {
-						console.log(res)
-						if (res.confirm) {
-
-							setShopIngDel({
-								'shop_id': this.shop_id,
-								'type': 1,
-							}).then((res) => {
-								if (res.code === 1) {
-									tools.success(res.msg)
-									this.getShopIngList()
-									this.$refs.popupBuy.close()
-								} else {
-									tools.error(res.msg)
-								}
-							})
-						}
-					}
-				});
-			},
-			setShopIngNumber(item, type) {
-				if (this.isAjax) {
-					return
-				}
-				this.isAjax = true
-				setShopIngNumber({
-					'type': 1,
-					'goods_id': item.goods_id,
-					'shop_id': this.shop_id,
-					'category_id': item.category_id,
-					'goods_spec_id': item.goods_spec_id,
-					'operation': type === 1 ? 1 : 2,
-				}).then(res => {
-					this.isAjax = false
-					this.getShopIngList()
-				}).catch(() => {
-					this.isAjax = false
-				})
-			},
-			getShopIngList() {
-				getShopIngList({
-					'shop_id': this.shop_id,
-				}).then(res => {
-					if (res.code === 1) {
-						this.cartData = res.data
-						if (this.shopType === 1) {
-							setTimeout(() => {
-								console.log('我的数据执行了')
-								this.$refs.goodsMenu.setShopIngList(this.cartData)
-							}, 1000)
-
-						}
-					}
-				})
-			},
-			setCartData(cartData) {
-				this.cartData = cartData
-				this.getDeliveryMoney()
-			},
-			getDeliveryMoney() {
-				getDeliveryMoney({
-					'school_id': this.operate_id,
-					'shop_id': this.shop_id,
-				}).then(res => {
-					if (res.code === 1) {
-						this.delivery_money = res.data.delivery_money * 1
-					}
-				})
-			},
-			receiveCode(item) {
-				receiveCoupon({
-					grant_id: item.grant_id,
-					coupon_id: item.coupon_id
-				}).then((res) => {
-					if (res.code == 1) {
-						tools.success(res.msg)
-						this.couponData = []
-						this.shopCoupon()
-					} else {
-						tools.error(res.msg)
-					}
-				})
-			},
-			toBack() {
-				tools.leftClick()
-			},
-			getDomH() {
-				let info = uni.createSelectorQuery().select('#shopInfoBox');
-				info.boundingClientRect((data) => {
-					this.domHeigjt = data.height * 2 - 34
-				}).exec()
-			},
-
-			scrolltolower() {
-				console.log('触底');
-			},
-			seletShopType(item) {
-				if (this.shopType != item.id) {
-					this.shopType = item.id;
-					if (this.shopType == 1) {
-						this.shopTypeBsLeft = 12
-					} else if (this.shopType == 2) {
-						this.shopTypeBsLeft = 166
-					} else {
-						this.shopTypeBsLeft = 160 * 2
-					}
-				}
-			},
-			openBuyCrad() {
-				this.$refs.popupBuy.open()
-			},
-			createOrder() {},
-			openCoupon() {
-				this.$refs.popupCoupon.open()
-			},
-			closeCoupon() {
-				this.$refs.popupCoupon.close()
-			},
-			toConfirmOrder() {
-				uni.navigateTo({
-					url: '/pages-takeout/goods-order?shop_id=' + this.shop_id
-				})
-			},
-			shopInfo() {
-				const operate_id = uni.getStorageSync('operate_id')
-				shopInfo({
-					operate_id: operate_id,
-					shop_id: this.shop_id
-				}).then((res) => {
-					if (res.code == 1) {
-						this.shopsInfo = res.data
-					} else {
-						tools.error(res.msg)
-						tools.leftClick()
-					}
-				})
-			},
-			shopCoupon() {
-				shopCoupon({
-					operate_id: this.operate_id,
-					shop_id: this.shop_id
-				}).then((res) => {
-					if (res.code == 1) {
-						if (res.data.length > 0) {
-							this.domHeigjt = 224
-							this.couponData = res.data
-						} else {
-							this.domHeigjt = 156
-							// console.log(this.domHeigjt, '1111111111111111111');
-						}
-					}
-				})
-			}
-		},
-	}
+  import Menu from './shop-mod/menu.vue';
+  import Evaluate from './shop-mod/evaluate.vue';
+  import ShopInfo from './shop-mod/info.vue';
+  import tools from "@/service/tools";
+  import EnBlank from "@/components/en-utils/en-blank/en-blank";
+  import {
+    receiveCoupon
+  } from "@/api/coupon.js"
+  import {
+    shopInfo,
+    shopCoupon
+  } from "@/api/shop.js"
+  import {
+    getDeliveryMoney
+  } from "@/api/common";
+  import {
+    getShopIngList,
+    setShopIngDel,
+    setShopIngNumber
+  } from "@/api/shopping";
+  export default {
+    components: {
+      Menu,
+      Evaluate,
+      ShopInfo,
+      EnBlank
+    },
+    data() {
+      return {
+        domHeigjt: 224,
+        shopTypeList: [{
+          name: "点菜",
+          id: 1
+        }, {
+          name: "评价",
+          id: 2
+        }, {
+          name: "店铺",
+          id: 3
+        }, ],
+        shopType: 1, //组件类型
+        shopTypeBsLeft: 12,
+        shop_id: '',
+        operate_id: '',
+        shopsInfo: {},
+        couponData: [], // 可领优惠卷
+        goodsData: [], // 可领优惠卷
+        categoryData: [], // 可领优惠卷
+        delivery_money: 0, // 可领优惠卷
+        cartData: {
+          total_price: 0,
+          total_num: 0,
+          total_goods_money: 0,
+          pack_price: 0,
+          must_category: 0,
+          is_place_order: 0,
+          err_msg: 0,
+          goods_list: [],
+        },
+        isAjax: false
+      }
+    },
+    onLoad(e) {
+      if (e) {
+        this.shop_id = e.shop_id
+        this.operate_id = uni.getStorageSync('operate_id')
+        this.shopInfo()
+      }
+    },
+    mounted() {
+      // this.getDomH();
+      this.shopCoupon()
+    },
+    methods: {
+      setShopIngDel() {
+        uni.showModal({
+          title: '提示',
+          content: '是否清除购物车商品?',
+          success: (res) => {
+            console.log(res)
+            if (res.confirm) {
+
+              setShopIngDel({
+                'shop_id': this.shop_id,
+                'type': 1,
+              }).then((res) => {
+                if (res.code === 1) {
+                  tools.success(res.msg)
+                  this.getShopIngList()
+                  this.$refs.popupBuy.close()
+                } else {
+                  tools.error(res.msg)
+                }
+              })
+            }
+          }
+        });
+      },
+      setShopIngNumber(item, type) {
+        if (this.isAjax) {
+          return
+        }
+        this.isAjax = true
+        setShopIngNumber({
+          'type': 1,
+          'goods_id': item.goods_id,
+          'shop_id': this.shop_id,
+          'category_id': item.category_id,
+          'goods_spec_id': item.goods_spec_id,
+          'operation': type === 1 ? 1 : 2,
+        }).then(res => {
+          if (res.code == 1) {
+            this.isAjax = false
+            this.getShopIngList()
+          } else {
+            tools.error(res.msg)
+            this.isAjax = false
+            this.getShopIngList()
+          }
+        }).catch(() => {
+          this.isAjax = false
+        })
+      },
+      getShopIngList() {
+        getShopIngList({
+          'shop_id': this.shop_id,
+        }).then(res => {
+          if (res.code === 1) {
+            this.cartData = res.data
+            if (this.shopType === 1) {
+              setTimeout(() => {
+                console.log('我的数据执行了')
+                this.$refs.goodsMenu.setShopIngList(this.cartData)
+              }, 1000)
+
+            }
+          }
+        })
+      },
+      setCartData(cartData) {
+        this.cartData = cartData
+        this.getDeliveryMoney()
+      },
+      getDeliveryMoney() {
+        getDeliveryMoney({
+          'school_id': this.operate_id,
+          'shop_id': this.shop_id,
+        }).then(res => {
+          if (res.code === 1) {
+            this.delivery_money = res.data.delivery_money * 1
+          }
+        })
+      },
+      receiveCode(item) {
+        receiveCoupon({
+          grant_id: item.grant_id,
+          coupon_id: item.coupon_id
+        }).then((res) => {
+          if (res.code == 1) {
+            tools.success(res.msg)
+            this.couponData = []
+            this.shopCoupon()
+          } else {
+            tools.error(res.msg)
+          }
+        })
+      },
+      toBack() {
+        tools.leftClick()
+      },
+      getDomH() {
+        let info = uni.createSelectorQuery().select('#shopInfoBox');
+        info.boundingClientRect((data) => {
+          this.domHeigjt = data.height * 2 - 34
+        }).exec()
+      },
+
+      scrolltolower() {
+        console.log('触底');
+      },
+      seletShopType(item) {
+        if (this.shopType != item.id) {
+          this.shopType = item.id;
+          if (this.shopType == 1) {
+            this.shopTypeBsLeft = 12
+          } else if (this.shopType == 2) {
+            this.shopTypeBsLeft = 166
+          } else {
+            this.shopTypeBsLeft = 160 * 2
+          }
+        }
+      },
+      openBuyCrad() {
+        this.$refs.popupBuy.open()
+      },
+      createOrder() {},
+      openCoupon() {
+        this.$refs.popupCoupon.open()
+      },
+      closeCoupon() {
+        this.$refs.popupCoupon.close()
+      },
+      toConfirmOrder() {
+        uni.navigateTo({
+          url: '/pages-takeout/goods-order?shop_id=' + this.shop_id
+        })
+      },
+      shopInfo() {
+        const operate_id = uni.getStorageSync('operate_id')
+        shopInfo({
+          operate_id: operate_id,
+          shop_id: this.shop_id
+        }).then((res) => {
+          if (res.code == 1) {
+            this.shopsInfo = res.data
+          } else {
+            tools.error(res.msg)
+            setTimeout(() => {
+              uni.navigateBack({
+                delta: 1
+              })
+            }, 1500)
+          }
+        })
+      },
+      shopCoupon() {
+        shopCoupon({
+          operate_id: this.operate_id,
+          shop_id: this.shop_id
+        }).then((res) => {
+          if (res.code == 1) {
+            if (res.data.length > 0) {
+              this.domHeigjt = 224
+              this.couponData = res.data
+            } else {
+              this.domHeigjt = 156
+              // console.log(this.domHeigjt, '1111111111111111111');
+            }
+          }
+        })
+      }
+    },
+  }
 </script>
 </script>
 
 
 <style scoped lang="scss">
 <style scoped lang="scss">
-	.wh-44 {
-		width: 44rpx;
-		height: 44rpx;
-	}
-
-	.blank-text {
-		line-height: 32vh;
-	}
-
-	.pop-coupon {
-		width: 100%;
-		height: 42vh;
-		background-color: #F5F4F9;
-		border-radius: 24rpx 24rpx 0rpx 0rpx;
-		padding-top: 32rpx !important;
-		display: flex;
-		flex-direction: column;
-
-		.box-title {
-			position: relative;
-
-			.box-close {
-				position: absolute;
-				right: 22rpx;
-			}
-		}
-
-		.item-right {
-			padding: 24rpx;
-			box-sizing: border-box;
-			border-radius: 20rpx 0 0 20rpx;
-			position: relative;
-		}
-
-		.item-hr {
-			width: 0px;
-			height: auto;
-			border-right: 1rpx dashed #FB7850;
-		}
-
-		.item-hr-two {
-			width: 0px;
-			height: auto;
-			border-right: 1rpx dashed #999;
-		}
-
-		.item-left {
-			width: 220rpx;
-			height: auto;
-			padding: 20rpx 24rpx;
-			box-sizing: border-box;
-			position: relative;
-			border-radius: 0 20rpx 20rpx 0;
-		}
-
-		.but-box {
-			width: 152rpx;
-			height: 52rpx;
-			line-height: 52rpx;
-			text-align: center;
-			background: linear-gradient(225deg, #FB3D03 0%, #FF6901 100%);
-			border-radius: 200rpx;
-		}
-
-		.ball {
-			width: 24rpx;
-			height: 24rpx;
-			border-radius: 50%;
-			position: absolute;
-			top: -12rpx;
-			left: -12rpx;
-			background: #F5F5F5;
-			z-index: 2;
-		}
-
-		.ball-two {
-			width: 24rpx;
-			height: 24rpx;
-			border-radius: 50%;
-			position: absolute;
-			background: #F5F5F5;
-			z-index: 10;
-			bottom: -12rpx;
-			left: -12rpx;
-		}
-	}
-
-
-	.shop-index {
-		position: relative;
-
-		.right-only-right-red {
-			width: 44rpx;
-			height: 44rpx;
-			line-height: 40rpx;
-			border-radius: 12rpx;
-			border: 1rpx solid #41ABF5;
-			color: #41ABF5;
-		}
-
-		.right-only-right-add {
-			width: 44rpx;
-			height: 44rpx;
-			line-height: 40rpx;
-			background: linear-gradient(117deg, #57CAFF 0%, #41ABF5 100%);
-			border-radius: 12rpx;
-		}
-
-		.right-only-right-2 {
-			min-width: 50rpx;
-		}
-
-		.w-514 {
-			width: 514rpx;
-		}
-
-		.bg-img {
-			position: absolute;
-			top: 0;
-			left: 0;
-			width: 100%;
-			height: 280rpx;
-			z-index: -1;
-		}
-
-		.mb-box {
-			position: absolute;
-			top: 0;
-			left: 0;
-			width: 100%;
-			height: 280rpx;
-			z-index: -1;
-			background: rgba(51, 51, 51, 0.50);
-		}
-
-		.nav-box {
-			margin-bottom: 110rpx;
-
-			.nav-img {
-				width: 56rpx;
-				height: 56rpx;
-			}
-		}
-
-		.shop-buttom-money {
-			width: 100%;
-			height: 140rpx;
-			background: rgba(255, 255, 255, 0.8);
-			padding: 20rpx 24rpx;
-
-			.shop-buttom-money-1 {
-				width: 100%;
-				height: 100%;
-				background: #333333;
-				border-radius: 200rpx;
-				box-sizing: border-box;
-				padding-left: 136rpx;
-				// padding-right: 32rpx;
-				position: relative;
-
-				image {
-					position: absolute;
-					bottom: 0;
-					left: 8rpx;
-					width: 128rpx;
-					height: 128rpx;
-				}
-
-				.shop-buttom-num {
-					width: 32rpx;
-					height: 32rpx;
-					line-height: 32rpx;
-					background: #FB3D03;
-					border-radius: 50%;
-					position: absolute;
-					top: 36rpx;
-					left: 82rpx;
-				}
-
-				.shop-buttom-money-2 {
-					width: 200rpx;
-					height: 100rpx;
-					line-height: 100rpx;
-					background: #41ABF5;
-					border-radius: 0rpx 200rpx 200rpx 0rpx;
-				}
-			}
-		}
-
-
-		.head-box {
-			width: 100%;
-			position: relative;
-
-			.shop-info-box {
-				position: absolute;
-				top: -50rpx;
-				left: 24rpx;
-				width: 702rpx;
-				// min-height: 156rpx;
-				border-radius: 20rpx;
-				box-shadow: 0rpx 0rpx 20rpx 0rpx rgba(0, 0, 0, 0.1);
-
-				.info-box-top {
-					.box-top-left {
-						.top-left-1 {
-							width: 480rpx;
-							margin-bottom: 8rpx;
-						}
-
-						.img-x {
-							width: 24rpx;
-							height: 24rpx;
-						}
-					}
-
-					.box-top-right {
-						width: 100rpx;
-						height: 100rpx;
-						border-radius: 12rpx;
-					}
-				}
-
-				.info-box-quan-list {
-					width: 164rpx;
-					height: 48rpx;
-					margin: 0 8rpx 8rpx 0;
-					position: relative;
-
-					image {
-						width: 164rpx;
-						height: 48rpx;
-						position: absolute;
-						top: 0;
-						left: 0;
-						z-index: 1;
-					}
-
-					.quan-list-1 {
-						position: absolute;
-						top: 3rpx;
-						left: 8rpx;
-						z-index: 2;
-					}
-
-					.quan-list-2 {
-						position: absolute;
-						top: 8rpx;
-						right: 22rpx;
-						z-index: 2;
-					}
-				}
-			}
-		}
-
-		.head-box-1 {
-			width: 100%;
-			height: 88rpx;
-			border-bottom: 1rpx solid #eee;
-
-			.shop-type-list {
-				height: 88rpx;
-				position: relative;
-
-				.shop-item-bs {
-					position: absolute;
-					bottom: 0;
-					width: 40rpx;
-					height: 6rpx;
-					border-radius: 20rpx;
-					background-color: #41ABF5;
-					transition: left 0.5s;
-				}
-
-				.shop-item {
-					margin-right: 90rpx;
-					position: relative;
-
-					.pj-num {
-						position: absolute;
-						right: -80rpx;
-						top: 0;
-						text-align: left;
-						width: 80rpx;
-					}
-				}
-
-				.s-item {
-					font-weight: 600;
-					color: #333;
-				}
-
-				.n-item {
-					font-weight: 400;
-					color: #666;
-				}
-			}
-		}
-
-		.buy-card {
-			height: 828rpx;
-			background-color: #fff;
-			border-radius: 24rpx 24rpx 0rpx 0rpx;
-
-			.buy-card-top {
-				width: 100%;
-				height: 92rpx;
-				background: #FCF5DB;
-				border-radius: 24rpx 24rpx 0rpx 0rpx;
-			}
-
-			.buy-card-item {
-				width: 100%;
-				height: 176rpx;
-				margin-bottom: 32rpx;
-
-				.goods_img {
-					width: 152rpx;
-					height: 152rpx;
-					border-radius: 12rpx;
-					margin-right: 20rpx;
-				}
-			}
-		}
-
-	}
-</style>
+  .wh-44 {
+    width: 44rpx;
+    height: 44rpx;
+  }
+
+  .blank-text {
+    line-height: 32vh;
+  }
+
+  .pop-coupon {
+    width: 100%;
+    height: 42vh;
+    background-color: #F5F4F9;
+    border-radius: 24rpx 24rpx 0rpx 0rpx;
+    padding-top: 32rpx !important;
+    display: flex;
+    flex-direction: column;
+
+    .box-title {
+      position: relative;
+
+      .box-close {
+        position: absolute;
+        right: 22rpx;
+      }
+    }
+
+    .item-right {
+      padding: 24rpx;
+      box-sizing: border-box;
+      border-radius: 20rpx 0 0 20rpx;
+      position: relative;
+    }
+
+    .item-hr {
+      width: 0px;
+      height: auto;
+      border-right: 1rpx dashed #FB7850;
+    }
+
+    .item-hr-two {
+      width: 0px;
+      height: auto;
+      border-right: 1rpx dashed #999;
+    }
+
+    .item-left {
+      width: 220rpx;
+      height: auto;
+      padding: 20rpx 24rpx;
+      box-sizing: border-box;
+      position: relative;
+      border-radius: 0 20rpx 20rpx 0;
+    }
+
+    .but-box {
+      width: 152rpx;
+      height: 52rpx;
+      line-height: 52rpx;
+      text-align: center;
+      background: linear-gradient(225deg, #FB3D03 0%, #FF6901 100%);
+      border-radius: 200rpx;
+    }
+
+    .ball {
+      width: 24rpx;
+      height: 24rpx;
+      border-radius: 50%;
+      position: absolute;
+      top: -12rpx;
+      left: -12rpx;
+      background: #F5F5F5;
+      z-index: 2;
+    }
+
+    .ball-two {
+      width: 24rpx;
+      height: 24rpx;
+      border-radius: 50%;
+      position: absolute;
+      background: #F5F5F5;
+      z-index: 10;
+      bottom: -12rpx;
+      left: -12rpx;
+    }
+  }
+
+
+  .shop-index {
+    position: relative;
+
+    .right-only-right-red {
+      width: 44rpx;
+      height: 44rpx;
+      line-height: 40rpx;
+      border-radius: 12rpx;
+      border: 1rpx solid #41ABF5;
+      color: #41ABF5;
+    }
+
+    .right-only-right-add {
+      width: 44rpx;
+      height: 44rpx;
+      line-height: 40rpx;
+      background: linear-gradient(117deg, #57CAFF 0%, #41ABF5 100%);
+      border-radius: 12rpx;
+    }
+
+    .right-only-right-2 {
+      min-width: 50rpx;
+    }
+
+    .w-514 {
+      width: 514rpx;
+    }
+
+    .bg-img {
+      position: absolute;
+      top: 0;
+      left: 0;
+      width: 100%;
+      height: 280rpx;
+      z-index: -1;
+    }
+
+    .mb-box {
+      position: absolute;
+      top: 0;
+      left: 0;
+      width: 100%;
+      height: 280rpx;
+      z-index: -1;
+      background: rgba(51, 51, 51, 0.50);
+    }
+
+    .nav-box {
+      margin-bottom: 110rpx;
+
+      .nav-img {
+        width: 56rpx;
+        height: 56rpx;
+      }
+    }
+
+    .shop-buttom-money {
+      width: 100%;
+      height: 140rpx;
+      background: rgba(255, 255, 255, 0.8);
+      padding: 20rpx 24rpx;
+
+      .shop-buttom-money-1 {
+        width: 100%;
+        height: 100%;
+        background: #333333;
+        border-radius: 200rpx;
+        box-sizing: border-box;
+        padding-left: 136rpx;
+        // padding-right: 32rpx;
+        position: relative;
+
+        image {
+          position: absolute;
+          bottom: 0;
+          left: 8rpx;
+          width: 128rpx;
+          height: 128rpx;
+        }
+
+        .shop-buttom-num {
+          width: 32rpx;
+          height: 32rpx;
+          line-height: 32rpx;
+          background: #FB3D03;
+          border-radius: 50%;
+          position: absolute;
+          top: 36rpx;
+          left: 82rpx;
+        }
+
+        .shop-buttom-money-2 {
+          width: 200rpx;
+          height: 100rpx;
+          line-height: 100rpx;
+          background: #41ABF5;
+          border-radius: 0rpx 200rpx 200rpx 0rpx;
+        }
+      }
+    }
+
+
+    .head-box {
+      width: 100%;
+      position: relative;
+
+      .shop-info-box {
+        position: absolute;
+        top: -50rpx;
+        left: 24rpx;
+        width: 702rpx;
+        // min-height: 156rpx;
+        border-radius: 20rpx;
+        box-shadow: 0rpx 0rpx 20rpx 0rpx rgba(0, 0, 0, 0.1);
+
+        .info-box-top {
+          .box-top-left {
+            .top-left-1 {
+              width: 480rpx;
+              margin-bottom: 8rpx;
+            }
+
+            .img-x {
+              width: 24rpx;
+              height: 24rpx;
+            }
+          }
+
+          .box-top-right {
+            width: 100rpx;
+            height: 100rpx;
+            border-radius: 12rpx;
+          }
+        }
+
+        .info-box-quan-list {
+          width: 164rpx;
+          height: 48rpx;
+          margin: 0 8rpx 8rpx 0;
+          position: relative;
+
+          image {
+            width: 164rpx;
+            height: 48rpx;
+            position: absolute;
+            top: 0;
+            left: 0;
+            z-index: 1;
+          }
+
+          .quan-list-1 {
+            position: absolute;
+            top: 3rpx;
+            left: 8rpx;
+            z-index: 2;
+          }
+
+          .quan-list-2 {
+            position: absolute;
+            top: 8rpx;
+            right: 22rpx;
+            z-index: 2;
+          }
+        }
+      }
+    }
+
+    .head-box-1 {
+      width: 100%;
+      height: 88rpx;
+      border-bottom: 1rpx solid #eee;
+
+      .shop-type-list {
+        height: 88rpx;
+        position: relative;
+
+        .shop-item-bs {
+          position: absolute;
+          bottom: 0;
+          width: 40rpx;
+          height: 6rpx;
+          border-radius: 20rpx;
+          background-color: #41ABF5;
+          transition: left 0.5s;
+        }
+
+        .shop-item {
+          margin-right: 90rpx;
+          position: relative;
+
+          .pj-num {
+            position: absolute;
+            right: -80rpx;
+            top: 0;
+            text-align: left;
+            width: 80rpx;
+          }
+        }
+
+        .s-item {
+          font-weight: 600;
+          color: #333;
+        }
+
+        .n-item {
+          font-weight: 400;
+          color: #666;
+        }
+      }
+    }
+
+    .buy-card {
+      height: 828rpx;
+      background-color: #fff;
+      border-radius: 24rpx 24rpx 0rpx 0rpx;
+
+      .buy-card-top {
+        width: 100%;
+        height: 92rpx;
+        background: #FCF5DB;
+        border-radius: 24rpx 24rpx 0rpx 0rpx;
+      }
+
+      .buy-card-item {
+        width: 100%;
+        height: 176rpx;
+        margin-bottom: 32rpx;
+
+        .goods_img {
+          width: 152rpx;
+          height: 152rpx;
+          border-radius: 12rpx;
+          margin-right: 20rpx;
+        }
+      }
+    }
+
+  }
+</style>

+ 84 - 28
pages-takeout/takeout.vue

@@ -1,7 +1,6 @@
 <template>
 <template>
 	<view class="takeout-index iPhone-bottom flex-common-css box-border-box">
 	<view class="takeout-index iPhone-bottom flex-common-css box-border-box">
 		<view class="bg-index"></view>
 		<view class="bg-index"></view>
-
 		<view class="">
 		<view class="">
 			<Nav :leftShow='false' :customNav='true' :bgckgroundBox='bgckgroundBox'>
 			<Nav :leftShow='false' :customNav='true' :bgckgroundBox='bgckgroundBox'>
 				<template>
 				<template>
@@ -13,21 +12,20 @@
 								<view class="input-icon s-left">
 								<view class="input-icon s-left">
 									<uni-icons type="search" size="22" color="#999"></uni-icons>
 									<uni-icons type="search" size="22" color="#999"></uni-icons>
 								</view>
 								</view>
-								<input v-model="search" type="text" placeholder="请输入商家或者商品名称">
+								<input v-model="search" type="text" @confirm='searchClick' confirm-type="search" placeholder="请输入商家或者商品名称">
 							</view>
 							</view>
 						</view>
 						</view>
 					</view>
 					</view>
 				</template>
 				</template>
 			</Nav>
 			</Nav>
 		</view>
 		</view>
-
 		<scroll-view scroll-y="true" class="scroll-view-css" @scrolltolower="scrolltolower" @scroll="scrollFun">
 		<scroll-view scroll-y="true" class="scroll-view-css" @scrolltolower="scrolltolower" @scroll="scrollFun">
 			<view class="">
 			<view class="">
 				<view class="s-input box-border-box plr-24">
 				<view class="s-input box-border-box plr-24">
 					<view class="input-icon">
 					<view class="input-icon">
 						<uni-icons type="search" size="22" color="#999"></uni-icons>
 						<uni-icons type="search" size="22" color="#999"></uni-icons>
 					</view>
 					</view>
-					<input v-model="search" type="text" placeholder="请输入商家或者商品名称">
+					<input v-model="search" type="text" @confirm='searchClick' confirm-type="search" placeholder="请输入商家或者商品名称">
 					<view class="fs-28 fc-f index-search-box-buttom" @click="searchClick">搜索</view>
 					<view class="fs-28 fc-f index-search-box-buttom" @click="searchClick">搜索</view>
 				</view>
 				</view>
 				<!-- 			<view class="p-24 box-border-box">
 				<!-- 			<view class="p-24 box-border-box">
@@ -37,17 +35,19 @@
 						<view class="fs-28 fc-f index-search-box-buttom">搜索</view>
 						<view class="fs-28 fc-f index-search-box-buttom">搜索</view>
 					</view>
 					</view>
 				</view> -->
 				</view> -->
-
 				<view class="box-border-box plr-24">
 				<view class="box-border-box plr-24">
 					<view class="shop-box mb-32 box-border-box p-16">
 					<view class="shop-box mb-32 box-border-box p-16">
 						<image class="shop-box-bg" src="@/static/img/takeout/bg.png" mode="scaleToFill"></image>
 						<image class="shop-box-bg" src="@/static/img/takeout/bg.png" mode="scaleToFill"></image>
-
-						<swiper class="swiper-tj" :circular='false' indicator-active-color='#FF7F00'
-							indicator-color='#FDC583' :indicator-dots="false" :current='BanenerCurrent'
-							@change="onSwiperChange" :autoplay="true" :interval="3000" :duration="300">
+						<swiper class="swiper-tj" easing-function="easeInOutCubic" :circular='true' :current='BanenerCurrent'
+							@change="onSwiperChange" :autoplay="true" :interval="3000" :duration="500">
 							<swiper-item v-for="(item,i) in topShopData" :key="i" @click="toShop(item)">
 							<swiper-item v-for="(item,i) in topShopData" :key="i" @click="toShop(item)">
 								<view class="swiper-item display-flex">
 								<view class="swiper-item display-flex">
-									<image class="left-img" :src="item.shop_logo" mode="scaleToFill"></image>
+									<view class="left-img-box">
+										<image class="left-img" :src="item.shop_logo" mode="aspectFill"></image>
+										<view class="status-box fc-f" v-if="item.status != 1">
+											休息中
+										</view>
+									</view>
 									<view class="right-box flex-1">
 									<view class="right-box flex-1">
 										<view class="align-items-center mb-8">
 										<view class="align-items-center mb-8">
 											<view class="right-box-title fs-32 fw-600 text-overflow-ellipsis-one">
 											<view class="right-box-title fs-32 fw-600 text-overflow-ellipsis-one">
@@ -64,7 +64,7 @@
 										</view>
 										</view>
 										<view class="align-items-center flex-wrap-wrap">
 										<view class="align-items-center flex-wrap-wrap">
 											<view class="quan-list display-flex mr-12 mb-12"
 											<view class="quan-list display-flex mr-12 mb-12"
-												v-for="(itemCoupon,iCoupon) in item.coupon" :key="i">
+												v-for="(itemCoupon,iCoupon) in item.coupon" :key="iCoupon">
 												<view class="quan-list-1 fs-24 fc-f">券</view>
 												<view class="quan-list-1 fs-24 fc-f">券</view>
 												<view class="quan-list-2 fs-24 fc-FB3D03">{{itemCoupon.money}}元</view>
 												<view class="quan-list-2 fs-24 fc-FB3D03">{{itemCoupon.money}}元</view>
 											</view>
 											</view>
@@ -82,7 +82,7 @@
 				</view>
 				</view>
 
 
 				<view class="box-border-box plr-24 nav-type-box-f" :class="isScroll?'nav-bg':''">
 				<view class="box-border-box plr-24 nav-type-box-f" :class="isScroll?'nav-bg':''">
-					<view class="nav-type-box">
+					<scroll-view class="nav-type-box" scroll-x="true">
 						<view class="nav-type-list" @click="clickClass(0)">
 						<view class="nav-type-list" @click="clickClass(0)">
 							<image src="@/static/img/takeout/all.png" mode=""></image>
 							<image src="@/static/img/takeout/all.png" mode=""></image>
 							<view :class="category_id == 0?'fc-41ABF5':''" class="fs-24 fw-400 text-align-center">全部
 							<view :class="category_id == 0?'fc-41ABF5':''" class="fs-24 fw-400 text-align-center">全部
@@ -93,7 +93,7 @@
 							<view class="fs-24 fw-400" :class="category_id == item.id?'fc-41ABF5':''">{{item.name}}
 							<view class="fs-24 fw-400" :class="category_id == item.id?'fc-41ABF5':''">{{item.name}}
 							</view>
 							</view>
 						</view>
 						</view>
-					</view>
+					</scroll-view>
 				</view>
 				</view>
 
 
 
 
@@ -104,8 +104,14 @@
 							<image class="black-custom-img" src="@/static/img/common/no-order.png" mode=""></image>
 							<image class="black-custom-img" src="@/static/img/common/no-order.png" mode=""></image>
 						</template>
 						</template>
 					</EnBlank>
 					</EnBlank>
-					<view v-else class="goos-list-box box-border-box p-24 display-flex" v-for="(item,i) in listData" @click="toShop(item)">
-						<image class="left-img" :src="item.shop_logo" mode="scaleToFill"></image>
+					<view v-else class="goos-list-box box-border-box p-24 display-flex" v-for="(item,i) in listData"
+						:key='i' @click="toShop(item)">
+						<view class="left-img-box">
+							<image class="left-img" :src="item.shop_logo" mode="aspectFill"></image>
+							<view class="status-box fc-f" v-if="item.status != 1">
+								休息中
+							</view>
+						</view>
 						<view class="flex-1">
 						<view class="flex-1">
 							<view class="align-items-center mb-8">
 							<view class="align-items-center mb-8">
 								<view class="right-box-title fs-32 fw-600 text-overflow-ellipsis-one">
 								<view class="right-box-title fs-32 fw-600 text-overflow-ellipsis-one">
@@ -121,14 +127,14 @@
 							</view>
 							</view>
 							<view class="align-items-center flex-wrap-wrap">
 							<view class="align-items-center flex-wrap-wrap">
 								<view class="quan-list display-flex mr-12 mb-12"
 								<view class="quan-list display-flex mr-12 mb-12"
-									v-for="(itemCoupon,iCoupon) in item.coupon" :key="i">
+									v-for="(itemCoupon,iCoupon) in item.coupon" :key="iCoupon">
 									<view class="quan-list-1 fs-24 fc-f">券</view>
 									<view class="quan-list-1 fs-24 fc-f">券</view>
 									<view class="quan-list-2 fs-24 fc-FB3D03">{{itemCoupon.money}}元</view>
 									<view class="quan-list-2 fs-24 fc-FB3D03">{{itemCoupon.money}}元</view>
 								</view>
 								</view>
 							</view>
 							</view>
 
 
 							<view class="goods-items-list display-flex view-nowrap">
 							<view class="goods-items-list display-flex view-nowrap">
-								<view class="goods-items-list-box" v-for="(info,iGoods) in item.goods">
+								<view class="goods-items-list-box" v-for="(info,iGoods) in item.goods" :key='iGoods'>
 									<image class="mb-12" :src="info.goods_image" mode="scaleToFill"></image>
 									<image class="mb-12" :src="info.goods_image" mode="scaleToFill"></image>
 									<view class="mb-8 fw-600 text-overflow-ellipsis-one fs-26">{{info.goods_name}}
 									<view class="mb-8 fw-600 text-overflow-ellipsis-one fs-26">{{info.goods_name}}
 									</view>
 									</view>
@@ -157,6 +163,9 @@
 	import {
 	import {
 		getTakeaway
 		getTakeaway
 	} from "@/api/category.js"
 	} from "@/api/category.js"
+	import {
+	  shopInfo
+	} from "@/api/shop.js"
 	import tools from "@/service/tools";
 	import tools from "@/service/tools";
 	export default {
 	export default {
 		components: {
 		components: {
@@ -174,9 +183,6 @@
 				listData: [],
 				listData: [],
 				navList: []
 				navList: []
 			}
 			}
-		},
-		onShow() {
-
 		},
 		},
 		mounted() {
 		mounted() {
 			this.shopTop()
 			this.shopTop()
@@ -204,7 +210,7 @@
 				this.BanenerCurrent = e.detail.current;
 				this.BanenerCurrent = e.detail.current;
 			},
 			},
 			scrollFun(e) {
 			scrollFun(e) {
-				if (e.target.scrollTop > 50) {
+				if (e.target.scrollTop > 60) {
 					this.isScroll = true;
 					this.isScroll = true;
 				} else {
 				} else {
 					this.isScroll = false;
 					this.isScroll = false;
@@ -214,8 +220,18 @@
 				console.log('触底');
 				console.log('触底');
 			},
 			},
 			toShop(item) {
 			toShop(item) {
-				uni.navigateTo({
-					url: `/pages-takeout/shop?shop_id=` + item.shop_id
+				const operate_id = uni.getStorageSync('operate_id')
+				shopInfo({
+					operate_id: operate_id,
+					shop_id: item.shop_id
+				}).then((res) => {
+					if (res.code == 1) {
+						uni.navigateTo({
+							url: '/pages-takeout/shop?shop_id=' + item.shop_id
+						})
+					} else {
+						tools.error(res.msg)
+					}
 				})
 				})
 			},
 			},
 			shopTop() {
 			shopTop() {
@@ -355,10 +371,29 @@
 					box-sizing: border-box;
 					box-sizing: border-box;
 					padding: 16rpx;
 					padding: 16rpx;
 
 
-					.left-img {
+					.left-img-box {
 						width: 140rpx;
 						width: 140rpx;
 						height: 140rpx;
 						height: 140rpx;
-						border-radius: 14rpx
+						margin-right: 14rpx;
+						position: relative;
+
+						.left-img {
+							width: 140rpx;
+							height: 140rpx;
+							border-radius: 12rpx;
+						}
+
+						.status-box {
+							position: absolute;
+							bottom: 0;
+							left: 0;
+							width: 100%;
+							padding: 10rpx 0;
+							text-align: center;
+							background: rgba(0, 0, 0, 0.5);
+							font-size: 20rpx;
+							border-radius: 0 0 12rpx 12rpx;
+						}
 					}
 					}
 
 
 					.right-box {}
 					.right-box {}
@@ -397,14 +432,17 @@
 			position: sticky;
 			position: sticky;
 			top: 0;
 			top: 0;
 			left: 0;
 			left: 0;
+			z-index: 9999;
 
 
 			.nav-type-box {
 			.nav-type-box {
 				width: 100%;
 				width: 100%;
 				height: 120rpx;
 				height: 120rpx;
 				display: flex;
 				display: flex;
-				overflow: scroll;
+				// overflow: scroll;
+				white-space: nowrap;
 
 
 				.nav-type-list {
 				.nav-type-list {
+					display: inline-block;
 					height: 120rpx;
 					height: 120rpx;
 					width: 96rpx !important;
 					width: 96rpx !important;
 					text-align: center;
 					text-align: center;
@@ -447,11 +485,29 @@
 
 
 		}
 		}
 
 
-		.left-img {
+		.left-img-box {
 			width: 100rpx;
 			width: 100rpx;
 			height: 100rpx;
 			height: 100rpx;
-			border-radius: 12rpx;
 			margin-right: 16rpx;
 			margin-right: 16rpx;
+			position: relative;
+
+			.left-img {
+				width: 100rpx;
+				height: 100rpx;
+				border-radius: 12rpx;
+			}
+
+			.status-box {
+				position: absolute;
+				bottom: 0;
+				left: 0;
+				width: 100%;
+				padding: 4rpx 0;
+				text-align: center;
+				background: rgba(0, 0, 0, 0.5);
+				font-size: 17rpx;
+				border-radius: 0 0 12rpx 12rpx;
+			}
 		}
 		}
 
 
 		.img-x {
 		.img-x {

+ 18 - 14
pages.json

@@ -35,9 +35,9 @@
 			}
 			}
 		},
 		},
 		{
 		{
-			"path": "pages/login/index",
+			"path": "pages/order/index",
 			"style": {
 			"style": {
-				"navigationBarTitleText": "登陆"
+				"navigationBarTitleText": "订单"
 			}
 			}
 		},
 		},
 		{
 		{
@@ -47,9 +47,9 @@
 			}
 			}
 		},
 		},
 		{
 		{
-			"path": "pages/order/index",
+			"path": "pages/login/index",
 			"style": {
 			"style": {
-				"navigationBarTitleText": "订单"
+				"navigationBarTitleText": "登陆"
 			}
 			}
 		},
 		},
 		{
 		{
@@ -92,7 +92,8 @@
 			"pages": [{
 			"pages": [{
 					"path": "ticket",
 					"path": "ticket",
 					"style": {
 					"style": {
-						"navigationBarTitleText": "票务"
+						"navigationBarTitleText": "票务",
+						"disableScroll": true
 					}
 					}
 				},
 				},
 				{
 				{
@@ -104,7 +105,8 @@
 				{
 				{
 					"path": "group",
 					"path": "group",
 					"style": {
 					"style": {
-						"navigationBarTitleText": "团购"
+						"navigationBarTitleText": "团购",
+						"disableScroll": true
 					}
 					}
 				},
 				},
 				{
 				{
@@ -218,7 +220,8 @@
 			"pages": [{
 			"pages": [{
 				"path": "Internship-position",
 				"path": "Internship-position",
 				"style": {
 				"style": {
-					"navigationBarTitleText": "实习岗位"
+					"navigationBarTitleText": "实习岗位",
+					"disableScroll": true
 				}
 				}
 			}]
 			}]
 		},
 		},
@@ -396,7 +399,9 @@
 	"preloadRule": {
 	"preloadRule": {
 		"pages/index/index": {
 		"pages/index/index": {
 			"network": "all",
 			"network": "all",
-			"packages": ["pages-address"]
+			"packages": ["pages-address", "pages-buy", "pages-school", "pages-takeout", "pages-position", "pages-order",
+				"pages-my"
+			]
 		},
 		},
 		"pages/login/index": {
 		"pages/login/index": {
 			"network": "all",
 			"network": "all",
@@ -412,12 +417,11 @@
 	},
 	},
 	"condition": {
 	"condition": {
 		"current": 0,
 		"current": 0,
-		"list": [
-			{
-			"name": "列表调试",
-			"path": "pages-position/Internship-position",
-			"query": ""
-		},
+		"list": [{
+				"name": "列表调试",
+				"path": "pages-position/Internship-position",
+				"query": ""
+			},
 			{
 			{
 				"name": "店铺详情",
 				"name": "店铺详情",
 				"path": "pages-buy/ticket",
 				"path": "pages-buy/ticket",

+ 129 - 41
pages/index/index.vue

@@ -31,7 +31,8 @@
 				<uni-swiper-dot :info="bannerList" mode="dot" :dotsStyles="dotStyle" :current="current">
 				<uni-swiper-dot :info="bannerList" mode="dot" :dotsStyles="dotStyle" :current="current">
 					<swiper class="swiper" @change="change">
 					<swiper class="swiper" @change="change">
 						<swiper-item v-for="(item,i) in bannerList" :key="i">
 						<swiper-item v-for="(item,i) in bannerList" :key="i">
-							<image class="swiper-item" :src="item.image" mode="aspectFill" @click="bannerClock(item)"></image>
+							<image class="swiper-item" :src="item.image" mode="aspectFill" @click="bannerClock(item)">
+							</image>
 						</swiper-item>
 						</swiper-item>
 					</swiper>
 					</swiper>
 				</uni-swiper-dot>
 				</uni-swiper-dot>
@@ -40,14 +41,16 @@
 			<view class="box-border-box plr-24">
 			<view class="box-border-box plr-24">
 				<view class="nav-list flex-wrap-wrap box-border-box mb-22">
 				<view class="nav-list flex-wrap-wrap box-border-box mb-22">
 					<view class="nav-list-item" v-for="(item,i) in navList" :key="i" @click="toUrl(item.type)">
 					<view class="nav-list-item" v-for="(item,i) in navList" :key="i" @click="toUrl(item.type)">
-						<image :src="item.img" mode="scaleToFill"></image>
-						<view class="fs-26 fc-3 text-align-center">{{item.name}}</view>
+						<view class="" v-if="item.appletAudit == 0">
+							<image :src="item.img" mode="scaleToFill"></image>
+							<view class="fs-26 fc-3 text-align-center">{{item.name}}</view>
+						</view>
 					</view>
 					</view>
 				</view>
 				</view>
 			</view>
 			</view>
 			<!-- 通知 -->
 			<!-- 通知 -->
 			<view class="box-border-box plr-24">
 			<view class="box-border-box plr-24">
-				<view class="msg-box align-items-center box-border-box mb-32">
+				<view class="msg-box align-items-center box-border-box">
 					<image class="image-1" src="@/static/img/index/index-tz.png" mode="scaleToFill"></image>
 					<image class="image-1" src="@/static/img/index/index-tz.png" mode="scaleToFill"></image>
 					<view class="box-1 fs-20 fc-41ABF5">公告</view>
 					<view class="box-1 fs-20 fc-41ABF5">公告</view>
 					<swiper class="tz-swiper" :vertical="true" circular :autoplay="true" :interval="3000"
 					<swiper class="tz-swiper" :vertical="true" circular :autoplay="true" :interval="3000"
@@ -60,11 +63,11 @@
 				</view>
 				</view>
 			</view>
 			</view>
 			<!-- 限时秒杀 -->
 			<!-- 限时秒杀 -->
-			<view class="box-border-box plr-24" v-if="seckillGoodsList.length > 0">
+			<view class="spike-box box-border-box" v-if="seckillGoodsList.length > 0">
 				<view class="xsms-box mb-32">
 				<view class="xsms-box mb-32">
 					<image class="image-title" src="@/static/img/index/index-xsms.png" mode="scaleToFill"></image>
 					<image class="image-title" src="@/static/img/index/index-xsms.png" mode="scaleToFill"></image>
 					<view class="xsms-box-list-f box-border-box plr-12">
 					<view class="xsms-box-list-f box-border-box plr-12">
-						<view class="xsms-box-list display-flex ">
+						<scroll-view class="xsms-box-list display-flex" scroll-x="true">
 							<view class="xsms-box-list-item box-border-box p-8" v-for="(item,i) in seckillGoodsList"
 							<view class="xsms-box-list-item box-border-box p-8" v-for="(item,i) in seckillGoodsList"
 								:key="i" @click="toShop(item)">
 								:key="i" @click="toShop(item)">
 								<image class="xsms-box-list-item-img-1 mb-4" :src="item.goods_image" mode="aspectFill">
 								<image class="xsms-box-list-item-img-1 mb-4" :src="item.goods_image" mode="aspectFill">
@@ -78,20 +81,28 @@
 								<image class="xsms-box-list-item-img-2" src="@/static/img/index/index-q.png"
 								<image class="xsms-box-list-item-img-2" src="@/static/img/index/index-q.png"
 									mode="scaleToFill"></image>
 									mode="scaleToFill"></image>
 							</view>
 							</view>
-						</view>
+						</scroll-view>
 					</view>
 					</view>
 				</view>
 				</view>
 			</view>
 			</view>
 			<!-- 类型选择 -->
 			<!-- 类型选择 -->
-			<view class="type-list-box display-flex" :style="[{'background':bgckgroundType}]">
+			<view class="type-list-box display-flex bgc-F5F4F9" :style="{'top': (BarH+indexSearchHeight) + 'px'}">
 				<view class="type-item-box view-nowrap" :class="category_id==item.id?'s-type':'n-type'"
 				<view class="type-item-box view-nowrap" :class="category_id==item.id?'s-type':'n-type'"
 					v-for="(item,i) in typeList" :key="i" @click="selectType(item.id)">{{item.name}}</view>
 					v-for="(item,i) in typeList" :key="i" @click="selectType(item.id)">{{item.name}}</view>
 			</view>
 			</view>
 			<!-- 商品列表 -->
 			<!-- 商品列表 -->
-			<view class="box-border-box plr-24">
+			<view class="" v-if="goodsList.length<=0">
+				<enBlankVue></enBlankVue>
+			</view>
+			<view class="box-border-box plr-24" v-else>
 				<view class="goos-list-box box-border-box p-24 display-flex" v-for="(item,i) in goodsList" :key="i"
 				<view class="goos-list-box box-border-box p-24 display-flex" v-for="(item,i) in goodsList" :key="i"
 					@click="toShop(item)">
 					@click="toShop(item)">
-					<image class="left-img" :src="item.shop_logo" mode="aspectFill"></image>
+					<view class="left-img-box">
+						<image class="left-img" :src="item.shop_logo" mode="aspectFill"></image>
+						<view class="status-box fc-f" v-if="item.status != 1">
+							休息中
+						</view>
+					</view>
 					<view class="flex-1">
 					<view class="flex-1">
 						<view class="align-items-center mb-8">
 						<view class="align-items-center mb-8">
 							<view class="right-box-title fs-32 fw-600 text-overflow-ellipsis-one">{{item.shop_name}}
 							<view class="right-box-title fs-32 fw-600 text-overflow-ellipsis-one">{{item.shop_name}}
@@ -166,10 +177,12 @@
 
 
 </template>
 </template>
 <script>
 <script>
+	import enBlankVue from "@/components/en-utils/en-blank/en-blank.vue";
 	import tools from "@/service/tools";
 	import tools from "@/service/tools";
 	import {
 	import {
 		getNotice,
 		getNotice,
 		getBanner,
 		getBanner,
+		commonApplet
 	} from '@/api/common.js';
 	} from '@/api/common.js';
 	import {
 	import {
 		getSeckillGoods
 		getSeckillGoods
@@ -184,7 +197,13 @@
 		couponHome,
 		couponHome,
 		receiveCoupon
 		receiveCoupon
 	} from '@/api/coupon.js'
 	} from '@/api/coupon.js'
+	import {
+		shopInfo
+	} from "@/api/shop.js"
 	export default {
 	export default {
+		components: {
+			enBlankVue
+		},
 		data() {
 		data() {
 			return {
 			return {
 				BarH: 0,
 				BarH: 0,
@@ -224,14 +243,17 @@
 					{
 					{
 						name: "租凭",
 						name: "租凭",
 						img: require('@/static/img/index/index-zp.png'),
 						img: require('@/static/img/index/index-zp.png'),
+						type: 9
 					},
 					},
 					{
 					{
 						name: "二手市场",
 						name: "二手市场",
 						img: require('@/static/img/index/index-esss.png'),
 						img: require('@/static/img/index/index-esss.png'),
+						type: 10
 					},
 					},
 					{
 					{
 						name: "回收",
 						name: "回收",
 						img: require('@/static/img/index/index-hs.png'),
 						img: require('@/static/img/index/index-hs.png'),
+						type: 11
 					},
 					},
 					{
 					{
 						name: "实习岗位",
 						name: "实习岗位",
@@ -245,14 +267,13 @@
 				noticeList: [],
 				noticeList: [],
 				bannerList: [],
 				bannerList: [],
 				seckillGoodsList: [],
 				seckillGoodsList: [],
-
 				typeList: [], //分类数组
 				typeList: [], //分类数组
 				category_id: 0, //分类id
 				category_id: 0, //分类id
-
 				goodsList: [],
 				goodsList: [],
 				total: 0,
 				total: 0,
 				page: 1,
 				page: 1,
 				couponData: [],
 				couponData: [],
+				indexSearchHeight: '',
 				dotStyle: {
 				dotStyle: {
 					width: 6,
 					width: 6,
 					bottom: 6,
 					bottom: 6,
@@ -285,7 +306,6 @@
 			// 		},
 			// 		},
 			// 	})
 			// 	})
 			// }
 			// }
-
 			let school_id = uni.getStorageSync('school_id');
 			let school_id = uni.getStorageSync('school_id');
 			let operate_id = uni.getStorageSync('operate_id');
 			let operate_id = uni.getStorageSync('operate_id');
 			let school_name = uni.getStorageSync('school_name');
 			let school_name = uni.getStorageSync('school_name');
@@ -298,19 +318,24 @@
 			} else {
 			} else {
 				this.schoolData.school_name = school_name;
 				this.schoolData.school_name = school_name;
 			}
 			}
-
+			this.commonApplet()
 			this.getBanner();
 			this.getBanner();
 			this.getNotice();
 			this.getNotice();
 			this.getSeckillGoods();
 			this.getSeckillGoods();
 			this.getTakeaway();
 			this.getTakeaway();
-			this.page = 1;
-			this.goodsList = [];
-			this.getGoodsList();
-			
 			let userToken = uni.getStorageSync('token')
 			let userToken = uni.getStorageSync('token')
-			if(userToken){
+			if (userToken) {
 				this.couponHome()
 				this.couponHome()
 			}
 			}
+			uni.removeStorageSync('orderInfoType')
+		},
+		onLoad() {
+			this.page = 1;
+			this.goodsList = [];
+			this.getGoodsList();
+		},
+		mounted() {
+			this.getHeight()
 		},
 		},
 		onPageScroll(e) {
 		onPageScroll(e) {
 			if (e.scrollTop > 1) {
 			if (e.scrollTop > 1) {
@@ -345,68 +370,96 @@
 			})
 			})
 		},
 		},
 		methods: {
 		methods: {
+			commonApplet() {
+				commonApplet().then((res) => {
+					if (res.code == 1) {
+						this.navList.forEach((v, k) => {
+							v.appletAudit = 0
+							if (v.type == 8 || v.type == 9 || v.type == 10 || v.type == 11) {
+								v.appletAudit = res.data
+							}
+						})
+					}
+				})
+			},
+			getHeight() {
+				// 创建选择器对象
+				const query = uni.createSelectorQuery().in(this);
+				// 选择我们想要的元素
+				query.select('.index-search').boundingClientRect(data => {
+					// data是选中元素的大小及位置信息
+					if (data) {
+						// 元素的高度
+						this.indexSearchHeight = data.height;
+						console.log('元素的高度:', this.indexSearchHeight);
+					}
+				}).exec(); // 执行选择器查询
+			},
 			change(e) {
 			change(e) {
 				this.current = e.detail.current
 				this.current = e.detail.current
 			},
 			},
 			bannerClock(item) {
 			bannerClock(item) {
-				if(item.type == 1) {
+				if (item.type == 1) {
 					// 外卖首页
 					// 外卖首页
 					uni.navigateTo({
 					uni.navigateTo({
 						url: '/pages-takeout/takeout'
 						url: '/pages-takeout/takeout'
 					})
 					})
-				}else if(item.type == 2) {
-					if(item.to_id != 0) {
+				} else if (item.type == 2) {
+					if (item.to_id != 0) {
 						// 外卖商家
 						// 外卖商家
 						uni.navigateTo({
 						uni.navigateTo({
 							url: '/pages-takeout/shop?shop_id=' + item.to_id
 							url: '/pages-takeout/shop?shop_id=' + item.to_id
 						})
 						})
-					}else {
+					} else {
 						// 外卖首页
 						// 外卖首页
 						uni.navigateTo({
 						uni.navigateTo({
 							url: '/pages-takeout/takeout'
 							url: '/pages-takeout/takeout'
 						})
 						})
 					}
 					}
-				}else if(item.type == 3) {
+				} else if (item.type == 3) {
 					// 代取页
 					// 代取页
 					uni.navigateTo({
 					uni.navigateTo({
 						url: '/pages-takeout/replace-take'
 						url: '/pages-takeout/replace-take'
 					})
 					})
-				}else if (item.type === 4) {
+				} else if (item.type === 4) {
 					// 团购页
 					// 团购页
 					uni.navigateTo({
 					uni.navigateTo({
 						url: '/pages-buy/group'
 						url: '/pages-buy/group'
 					})
 					})
-				}else if(item.type === 5) {
+				} else if (item.type === 5) {
 					// 票务页
 					// 票务页
 					uni.navigateTo({
 					uni.navigateTo({
 						url: '/pages-buy/ticket'
 						url: '/pages-buy/ticket'
 					})
 					})
-				}else if(item.type === 6) {
+				} else if (item.type === 6) {
 					// 干洗页
 					// 干洗页
 					uni.navigateTo({
 					uni.navigateTo({
 						url: '/pages-buy/dry-clean'
 						url: '/pages-buy/dry-clean'
 					})
 					})
-				}else if(item.type === 7) {
+				} else if (item.type === 7) {
 					// 校友圈
 					// 校友圈
 					uni.navigateTo({
 					uni.navigateTo({
 						url: '/pages-school/school-circle'
 						url: '/pages-school/school-circle'
 					})
 					})
-				}else if(item.type === 8) {
+				} else if (item.type === 8) {
 					// 骑手申请页
 					// 骑手申请页
 					uni.navigateTo({
 					uni.navigateTo({
 						url: '/pages-my/rider-recruit'
 						url: '/pages-my/rider-recruit'
 					})
 					})
 				}
 				}
 			},
 			},
-			receive(item,index) {
-				receiveCoupon({grant_id: item.grant_id,coupon_id: item.coupon_id}).then((res) => {
-					if(res.code == 1) {
+			receive(item, index) {
+				receiveCoupon({
+					grant_id: item.grant_id,
+					coupon_id: item.coupon_id
+				}).then((res) => {
+					if (res.code == 1) {
 						tools.success(res.msg)
 						tools.success(res.msg)
 						this.couponData.splice(index, 1)
 						this.couponData.splice(index, 1)
-						if(this.couponData.length<=0) {
+						if (this.couponData.length <= 0) {
 							this.gbPOp()
 							this.gbPOp()
 						}
 						}
-					}else {
+					} else {
 						tools.error(res.msg)
 						tools.error(res.msg)
 					}
 					}
 				})
 				})
@@ -536,8 +589,18 @@
 				})
 				})
 			},
 			},
 			toShop(item) {
 			toShop(item) {
-				uni.navigateTo({
-					url: '/pages-takeout/shop?shop_id=' + item.shop_id
+				const operate_id = uni.getStorageSync('operate_id')
+				shopInfo({
+					operate_id: operate_id,
+					shop_id: item.shop_id
+				}).then((res) => {
+					if (res.code == 1) {
+						uni.navigateTo({
+							url: '/pages-takeout/shop?shop_id=' + item.shop_id
+						})
+					} else {
+						tools.error(res.msg)
+					}
 				})
 				})
 			},
 			},
 			toNoticeDet(item) {
 			toNoticeDet(item) {
@@ -549,6 +612,10 @@
 	}
 	}
 </script>
 </script>
 <style lang="scss" scoped>
 <style lang="scss" scoped>
+	.spike-box {
+		padding: 24rpx 24rpx 0;
+	}
+
 	.wh32 {
 	.wh32 {
 		width: 32rpx;
 		width: 32rpx;
 		height: 32rpx;
 		height: 32rpx;
@@ -738,7 +805,7 @@
 				}
 				}
 
 
 				.xsms-box-list {
 				.xsms-box-list {
-					overflow-y: scroll;
+					white-space: nowrap;
 
 
 					.xsms-box-list-item:last-child {
 					.xsms-box-list-item:last-child {
 						margin-right: 0;
 						margin-right: 0;
@@ -751,6 +818,7 @@
 						border-radius: 8rpx;
 						border-radius: 8rpx;
 						margin-right: 8rpx;
 						margin-right: 8rpx;
 						position: relative;
 						position: relative;
+						display: inline-block;
 
 
 						.xsms-box-list-item-img-1 {
 						.xsms-box-list-item-img-1 {
 							width: 164rpx;
 							width: 164rpx;
@@ -773,9 +841,10 @@
 				position: sticky;
 				position: sticky;
 				left: 0;
 				left: 0;
 				// top: calc(var(BarH)px + 93rpx);
 				// top: calc(var(BarH)px + 93rpx);
-				top: calc(86px + 93rpx);
-				padding: 0 24rpx 24rpx 24rpx;
+				// top: calc(86px + 93rpx);
+				padding: 24rpx;
 				overflow-x: scroll;
 				overflow-x: scroll;
+				z-index: 50;
 
 
 				.type-item-box {
 				.type-item-box {
 					margin-right: 16rpx;
 					margin-right: 16rpx;
@@ -828,13 +897,32 @@
 					}
 					}
 				}
 				}
 
 
-				.left-img {
+				.left-img-box {
 					width: 100rpx;
 					width: 100rpx;
 					height: 100rpx;
 					height: 100rpx;
-					border-radius: 12rpx;
 					margin-right: 16rpx;
 					margin-right: 16rpx;
+					position: relative;
+
+					.left-img {
+						width: 100rpx;
+						height: 100rpx;
+						border-radius: 12rpx;
+					}
+
+					.status-box {
+						position: absolute;
+						bottom: 0;
+						left: 0;
+						width: 100%;
+						padding: 4rpx 0;
+						text-align: center;
+						background: rgba(0, 0, 0, 0.5);
+						font-size: 17rpx;
+						border-radius: 0 0 12rpx 12rpx;
+					}
 				}
 				}
 
 
+
 				.img-x {
 				.img-x {
 					width: 24rpx;
 					width: 24rpx;
 					height: 24rpx;
 					height: 24rpx;

+ 111 - 60
pages/index/search-list.vue

@@ -2,7 +2,6 @@
 	<view class="seacrh-record-index iPhone-bottom flex-common-css box-border-box">
 	<view class="seacrh-record-index iPhone-bottom flex-common-css box-border-box">
 		<view class="seacrh-bg"></view>
 		<view class="seacrh-bg"></view>
 		<Nav title='搜索' bgckgroundBox='transparent'></Nav>
 		<Nav title='搜索' bgckgroundBox='transparent'></Nav>
-		
 		<view class="s-input">
 		<view class="s-input">
 			<view class="input-icon">
 			<view class="input-icon">
 				<uni-icons type="search" size="18" color="#999"></uni-icons>
 				<uni-icons type="search" size="18" color="#999"></uni-icons>
@@ -10,12 +9,16 @@
 			<input v-model="fromData.search" type="text" placeholder="店铺名称或者商品名称">
 			<input v-model="fromData.search" type="text" placeholder="店铺名称或者商品名称">
 			<view class="input-buttom fs-28 fc-f fw-500" @click="search()">搜索</view>
 			<view class="input-buttom fs-28 fc-f fw-500" @click="search()">搜索</view>
 		</view>
 		</view>
-		
-
-		
-		<scroll-view scroll-y="true" class="scroll-view-css seacrh-info box-border-box p-24" @scrolltolower="scrolltolower">
-			<view class="goos-list-box box-border-box p-24 display-flex" v-for="(item,i) in list" :key="i" @click="toShop(item)">
-				<image class="left-img" :src="item.shop_logo" mode="aspectFill"></image>
+		<scroll-view scroll-y="true" class="scroll-view-css seacrh-info box-border-box p-24"
+			@scrolltolower="scrolltolower">
+			<view class="goos-list-box box-border-box p-24 display-flex" v-for="(item,i) in list" :key="i"
+				@click="toShop(item)">
+				<view class="left-img-box">
+					<image class="left-img" :src="item.shop_logo" mode="aspectFill"></image>
+					<view class="status-box fc-f" v-if="item.status != 1">
+						休息中
+					</view>
+				</view>
 				<view class="flex-1">
 				<view class="flex-1">
 					<view class="align-items-center mb-8">
 					<view class="align-items-center mb-8">
 						<view class="right-box-title fs-32 fw-600 text-overflow-ellipsis-one">{{item.shop_name}}</view>
 						<view class="right-box-title fs-32 fw-600 text-overflow-ellipsis-one">{{item.shop_name}}</view>
@@ -28,7 +31,8 @@
 						<view class="fc-6 fs-24 mr-12">{{item.shop_sales}}人购买</view>
 						<view class="fc-6 fs-24 mr-12">{{item.shop_sales}}人购买</view>
 					</view>
 					</view>
 					<view class="align-items-center flex-wrap-wrap">
 					<view class="align-items-center flex-wrap-wrap">
-						<view class="quan-list display-flex mr-12 mb-12" v-for="(info1,index1) in item.coupon" :key="index1">
+						<view class="quan-list display-flex mr-12 mb-12" v-for="(info1,index1) in item.coupon"
+							:key="index1">
 							<view class="quan-list-1 fs-24 fc-f">券</view>
 							<view class="quan-list-1 fs-24 fc-f">券</view>
 							<view class="quan-list-2 fs-24 fc-FB3D03">{{info1.money}}元</view>
 							<view class="quan-list-2 fs-24 fc-FB3D03">{{info1.money}}元</view>
 						</view>
 						</view>
@@ -50,18 +54,23 @@
 </template>
 </template>
 
 
 <script>
 <script>
-	import {getSearch} from '@/api/goods.js';
+	import {
+		getSearch
+	} from '@/api/goods.js';
+	import {
+	  shopInfo
+	} from "@/api/shop.js"
+	import tools from "@/service/tools";
 	export default {
 	export default {
-		data(){
-			return{
-				fromData:{
-					search:'',
-					operate_id:'',
-					page:1,
+		data() {
+			return {
+				fromData: {
+					search: '',
+					operate_id: '',
+					page: 1,
 				},
 				},
-				list:[],
-				total:0,
-				
+				list: [],
+				total: 0,
 			}
 			}
 		},
 		},
 		onLoad(e) {
 		onLoad(e) {
@@ -71,29 +80,39 @@
 			this.list = [];
 			this.list = [];
 			this.getList()
 			this.getList()
 		},
 		},
-		methods:{
-			search(){
+		methods: {
+			search() {
 				this.fromData.page = 1;
 				this.fromData.page = 1;
 				this.list = [];
 				this.list = [];
 				this.getList();
 				this.getList();
 			},
 			},
-			getList(){
-				getSearch(this.fromData).then((res)=>{
-					if(res.code === 1){
-						this.list = [...this.list,...res.data.items];
+			getList() {
+				getSearch(this.fromData).then((res) => {
+					if (res.code === 1) {
+						this.list = [...this.list, ...res.data.items];
 						this.total = res.data.total;
 						this.total = res.data.total;
 					}
 					}
 				})
 				})
 			},
 			},
-			scrolltolower(){
-				if(this.list.length < this.total){
+			scrolltolower() {
+				if (this.list.length < this.total) {
 					this.fromData.page += 1;
 					this.fromData.page += 1;
 					this.getList();
 					this.getList();
 				}
 				}
 			},
 			},
-			toShop(item){
-				uni.navigateTo({
-					url:'/pages-takeout/shop?shop_id=' + item.shop_id
+			toShop(item) {
+				const operate_id = uni.getStorageSync('operate_id')
+				shopInfo({
+					operate_id: operate_id,
+					shop_id: item.shop_id
+				}).then((res) => {
+					if (res.code == 1) {
+						uni.navigateTo({
+							url: '/pages-takeout/shop?shop_id=' + item.shop_id
+						})
+					} else {
+						tools.error(res.msg)
+					}
 				})
 				})
 			},
 			},
 		},
 		},
@@ -101,34 +120,37 @@
 </script>
 </script>
 
 
 <style scoped lang="scss">
 <style scoped lang="scss">
-	.seacrh-record-index{
+	.seacrh-record-index {
 		position: relative;
 		position: relative;
-		
-		
-		
-		.seacrh-bg{
+
+
+
+		.seacrh-bg {
 			position: absolute;
 			position: absolute;
 			top: 0;
 			top: 0;
 			left: 0;
 			left: 0;
 			width: 100%;
 			width: 100%;
 			height: 376rpx;
 			height: 376rpx;
 			filter: blur(80rpx);
 			filter: blur(80rpx);
-			background-image: linear-gradient(to right, #C9F7FC,#F9F6E0,#F6F5F3);
+			background-image: linear-gradient(to right, #C9F7FC, #F9F6E0, #F6F5F3);
 			z-index: -1;
 			z-index: -1;
 		}
 		}
-		.s-input{
+
+		.s-input {
 			margin-top: 24rpx;
 			margin-top: 24rpx;
 			width: 100%;
 			width: 100%;
 			height: 72rpx;
 			height: 72rpx;
 			padding: 0 24rpx;
 			padding: 0 24rpx;
 			box-sizing: border-box;
 			box-sizing: border-box;
 			position: relative;
 			position: relative;
-			.input-icon{
+
+			.input-icon {
 				position: absolute;
 				position: absolute;
 				left: 48rpx;
 				left: 48rpx;
 				top: 20rpx;
 				top: 20rpx;
 			}
 			}
-			input{
+
+			input {
 				font-size: 32rpx;
 				font-size: 32rpx;
 				width: 100%;
 				width: 100%;
 				height: 72rpx;
 				height: 72rpx;
@@ -137,10 +159,11 @@
 				box-sizing: border-box;
 				box-sizing: border-box;
 				padding: 0 126rpx 0 78rpx;
 				padding: 0 126rpx 0 78rpx;
 			}
 			}
-			.input-buttom{
+
+			.input-buttom {
 				width: 120rpx;
 				width: 120rpx;
 				height: 60rpx;
 				height: 60rpx;
-				background: linear-gradient( 90deg, #57CAFF 0%, #41ABF5 100%);
+				background: linear-gradient(90deg, #57CAFF 0%, #41ABF5 100%);
 				border-radius: 200rpx;
 				border-radius: 200rpx;
 				text-align: center;
 				text-align: center;
 				line-height: 60rpx;
 				line-height: 60rpx;
@@ -149,59 +172,87 @@
 				top: 6rpx;
 				top: 6rpx;
 			}
 			}
 		}
 		}
-		.seacrh-info{
+
+		.seacrh-info {
 			margin-top: 20rpx;
 			margin-top: 20rpx;
 			// border-radius: 24rpx 24rpx 0rpx 0rpx;
 			// border-radius: 24rpx 24rpx 0rpx 0rpx;
 		}
 		}
-		
-		
-		.goos-list-box{
+
+
+		.goos-list-box {
 			width: 100%;
 			width: 100%;
 			min-height: 100rpx;
 			min-height: 100rpx;
 			background: #FFFFFF;
 			background: #FFFFFF;
-			box-shadow: 0rpx 0rpx 20rpx 0rpx rgba(51,51,51,0.1);
+			box-shadow: 0rpx 0rpx 20rpx 0rpx rgba(51, 51, 51, 0.1);
 			border-radius: 20rpx;
 			border-radius: 20rpx;
 			margin-bottom: 20rpx;
 			margin-bottom: 20rpx;
-			.goods-items-list{
+
+			.goods-items-list {
 				width: 530rpx;
 				width: 530rpx;
 				overflow-y: scroll;
 				overflow-y: scroll;
-				.goods-items-list-box{
+
+				.goods-items-list-box {
 					width: 140rpx;
 					width: 140rpx;
 					margin-right: 16rpx;
 					margin-right: 16rpx;
-					image{
+
+					image {
 						width: 140rpx;
 						width: 140rpx;
 						height: 140rpx;
 						height: 140rpx;
 						border-radius: 12rpx
 						border-radius: 12rpx
 					}
 					}
 				}
 				}
 			}
 			}
-			.left-img{
-				width: 100rpx;
-				height: 100rpx;
-				border-radius: 12rpx;
-				margin-right: 16rpx;
-			}
-			.img-x{
+
+				.left-img-box {
+					width: 100rpx;
+					height: 100rpx;
+					margin-right: 16rpx;
+					position: relative;
+
+					.left-img {
+						width: 100rpx;
+						height: 100rpx;
+						border-radius: 12rpx;
+					}
+
+					.status-box {
+						position: absolute;
+						bottom: 0;
+						left: 0;
+						width: 100%;
+						padding: 4rpx 0;
+						text-align: center;
+						background: rgba(0, 0, 0, 0.5);
+						font-size: 17rpx;
+						border-radius: 0 0 12rpx 12rpx;
+					}
+				}
+
+			.img-x {
 				width: 24rpx;
 				width: 24rpx;
 				height: 24rpx;
 				height: 24rpx;
 			}
 			}
-			.right-box-title{
+
+			.right-box-title {
 				width: 438rpx;
 				width: 438rpx;
 			}
 			}
-			.right-box-title-img{
+
+			.right-box-title-img {
 				width: 32rpx;
 				width: 32rpx;
 				height: 32rpx;
 				height: 32rpx;
 				margin-left: auto;
 				margin-left: auto;
 			}
 			}
-			.quan-list{
-				.quan-list-1{
+
+			.quan-list {
+				.quan-list-1 {
 					width: 32rpx;
 					width: 32rpx;
 					height: 34rpx;
 					height: 34rpx;
 					background: #FB3D03;
 					background: #FB3D03;
 					border-radius: 5rpx 0rpx 0rpx 5rpx;
 					border-radius: 5rpx 0rpx 0rpx 5rpx;
 					text-align: center;
 					text-align: center;
 				}
 				}
-				.quan-list-2{
+
+				.quan-list-2 {
 					box-sizing: border-box;
 					box-sizing: border-box;
 					padding: 0 2rpx;
 					padding: 0 2rpx;
 					height: 34rpx;
 					height: 34rpx;

+ 43 - 12
pages/order/index.vue

@@ -159,9 +159,12 @@
 			</view>
 			</view>
 		</scroll-view>
 		</scroll-view>
 		<uni-popup ref="popup" border-radius="10px 10px 10px 10px" @maskClick='maskClick'>
 		<uni-popup ref="popup" border-radius="10px 10px 10px 10px" @maskClick='maskClick'>
-			<view class="bgc-f b-rad-20" v-if="qrcodeData">
+			<view class="bgc-f p-16 box-border-box b-rad-20" v-if="qrcodeData">
 				<!-- <UniQrcode :text="qrcodeData"></UniQrcode> -->
 				<!-- <UniQrcode :text="qrcodeData"></UniQrcode> -->
 				<uv-qrcode class="b-rad-20" ref="qrcode" :value="qrcodeData" :options="options2"></uv-qrcode>
 				<uv-qrcode class="b-rad-20" ref="qrcode" :value="qrcodeData" :options="options2"></uv-qrcode>
+				<view class="text-align-center fs-38">
+					{{onlyCode}}
+				</view>
 			</view>
 			</view>
 		</uni-popup>
 		</uni-popup>
 	</view>
 	</view>
@@ -240,22 +243,49 @@
 				navTypeKey: 0,
 				navTypeKey: 0,
 				isAjax: false,
 				isAjax: false,
 				qrcodeData: '',
 				qrcodeData: '',
-				options2: {}
+				options2: {},
+				onlyCode: ''
 			};
 			};
 		},
 		},
 		onShow() {
 		onShow() {
-			console.log('返回刷新');
+			uni.showTabBar()
 			let orderPayType = uni.getStorageSync('orderPayType')
 			let orderPayType = uni.getStorageSync('orderPayType')
+			let orderInfoType = uni.getStorageSync('orderInfoType')
+			console.log(orderPayType, 'orderPayType');
+			console.log(orderInfoType, 'orderInfoType');
 			if (orderPayType) {
 			if (orderPayType) {
 				this.selectType(orderPayType)
 				this.selectType(orderPayType)
 				console.log('固定type');
 				console.log('固定type');
+			} else if (orderInfoType) {
+				
 			} else {
 			} else {
 				this.resetList();
 				this.resetList();
-				console.log('默认type');
 			}
 			}
+			uni.$on('takeOutData', (data) => {
+				console.log(data, '^^^^^^^^^^^^^^^^^^^^^^^^^');
+				this.list.forEach((v, k) => {
+					if (v.id == data.id) {
+						v.order_status = data.order_status
+						v.order_status_str = data.order_status_str
+					}
+				})
+				this.$forceUpdate()
+				uni.removeStorageSync('orderInfoType')
+				console.log(this.list, 'this.list');
+			})
+		},
+		onLoad() {},
+		onHide() {
+			console.log("onHide");
+			uni.removeStorageSync('orderPayType')
 		},
 		},
+		onUnload() {
+			console.log("onUnload");
+		},
+		mounted() {},
 		methods: {
 		methods: {
 			openCode(item) {
 			openCode(item) {
+				this.onlyCode = item.only_code
 				let m_id = uni.getStorageSync('m_id');
 				let m_id = uni.getStorageSync('m_id');
 				this.qrcodeData = m_id + "_" + item.order_sn
 				this.qrcodeData = m_id + "_" + item.order_sn
 				this.options2 = {
 				this.options2 = {
@@ -325,6 +355,7 @@
 						url: `/pages-order/laundry-info?orderId=` + item.id
 						url: `/pages-order/laundry-info?orderId=` + item.id
 					})
 					})
 				}
 				}
+				uni.setStorageSync('orderInfoType', this.type)
 			},
 			},
 			orderPay(item) {
 			orderPay(item) {
 				// 立即支付
 				// 立即支付
@@ -362,6 +393,7 @@
 				this.page = 1;
 				this.page = 1;
 				this.list = [];
 				this.list = [];
 				this.getList();
 				this.getList();
+				uni.removeStorageSync('orderPayType')
 			},
 			},
 			selectType(type) {
 			selectType(type) {
 				let orderPayType = uni.getStorageSync('orderPayType')
 				let orderPayType = uni.getStorageSync('orderPayType')
@@ -369,7 +401,6 @@
 					this.type = type;
 					this.type = type;
 					this.navTypeKey = 0
 					this.navTypeKey = 0
 					this.resetList();
 					this.resetList();
-					uni.removeStorageSync('orderPayType')
 				}
 				}
 			},
 			},
 			assess(item) {
 			assess(item) {
@@ -397,7 +428,7 @@
 							}).then((res) => {
 							}).then((res) => {
 								if (res.code == 1) {
 								if (res.code == 1) {
 									tools.success(res.msg)
 									tools.success(res.msg)
-									setTimeout(() =>{
+									setTimeout(() => {
 										this.page = 1;
 										this.page = 1;
 										this.list = [];
 										this.list = [];
 										this.orderList()
 										this.orderList()
@@ -430,10 +461,10 @@
 							}).then((res) => {
 							}).then((res) => {
 								if (res.code == 1) {
 								if (res.code == 1) {
 									tools.success(res.msg)
 									tools.success(res.msg)
-									setTimeout(() =>{
+									setTimeout(() => {
 										this.page = 1;
 										this.page = 1;
-									this.list = [];
-									this.expressOrderList()
+										this.list = [];
+										this.expressOrderList()
 									}, 1500)
 									}, 1500)
 									this.isAJAX = false;
 									this.isAJAX = false;
 								} else {
 								} else {
@@ -463,10 +494,10 @@
 							}).then((res) => {
 							}).then((res) => {
 								if (res.code == 1) {
 								if (res.code == 1) {
 									tools.success(res.msg)
 									tools.success(res.msg)
-									setTimeout(() =>{
+									setTimeout(() => {
 										this.page = 1;
 										this.page = 1;
-									this.list = [];
-									this.laundryOrderList()
+										this.list = [];
+										this.laundryOrderList()
 									}, 1500)
 									}, 1500)
 									this.isAJAX = false;
 									this.isAJAX = false;
 								} else {
 								} else {

+ 12 - 4
service/tools.js

@@ -73,16 +73,20 @@ tools.formatDecimal = function (num, decimal) {
  * 错误提示
  * 错误提示
  * @param msg
  * @param msg
  */
  */
-tools.error = function (msg) {
+tools.error = function (msg,time) {
 	let type = 'error'
 	let type = 'error'
+	let duration = 1500
 	if(msg.length > 7){
 	if(msg.length > 7){
 		type = 'none'
 		type = 'none'
 	}
 	}
+	if(time) {
+		duration = time
+	}
     uni.showToast({
     uni.showToast({
         'title': msg,
         'title': msg,
         'icon': type,
         'icon': type,
         'mask': true,
         'mask': true,
-        'duration': 1500
+        'duration': duration
     })
     })
 }
 }
 
 
@@ -90,16 +94,20 @@ tools.error = function (msg) {
  * 成功提示
  * 成功提示
  * @param msg
  * @param msg
  */
  */
-tools.success = function (msg) {
+tools.success = function (msg,time) {
 	let type = 'success'
 	let type = 'success'
+	let duration = 1500
 	if(msg.length > 7){
 	if(msg.length > 7){
 		type = 'none'
 		type = 'none'
 	}
 	}
+	if(time) {
+		duration = time
+	}
     uni.showToast({
     uni.showToast({
         'title': msg,
         'title': msg,
         'icon': type,
         'icon': type,
         'mask': true,
         'mask': true,
-        'duration': 1500
+        'duration': duration
     })
     })
 }
 }
 
 

BIN
static/img/index/index-xsms.png


BIN
static/img/order/lxsj.png


+ 105 - 105
yarn.lock

@@ -3,122 +3,122 @@
 
 
 
 
 "@babel/parser@^7.18.4":
 "@babel/parser@^7.18.4":
-  "integrity" "sha512-74bEXKX2h+8rrfQUfsBfuZZHzsEs6Eql4pqy/T4Nn6Y9wNPggQOqD6z6pn5Bl8ZfysKouFZT/UXEH94ummEeQw=="
-  "resolved" "https://registry.npmjs.org/@babel/parser/-/parser-7.19.0.tgz"
-  "version" "7.19.0"
+  version "7.19.0"
+  resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.19.0.tgz"
+  integrity sha512-74bEXKX2h+8rrfQUfsBfuZZHzsEs6Eql4pqy/T4Nn6Y9wNPggQOqD6z6pn5Bl8ZfysKouFZT/UXEH94ummEeQw==
 
 
 "@types/html5plus@1.0.2":
 "@types/html5plus@1.0.2":
-  "integrity" "sha512-OklP5lrmLq8/6TUOLgWc0LndUVvAiTWX5dnyoCFhIUtFW9opWsnCtG/UxPgeuC28Rv2XNbFfft/hEEI39P/4Ag=="
-  "resolved" "https://registry.npmjs.org/@types/html5plus/-/html5plus-1.0.2.tgz"
-  "version" "1.0.2"
+  version "1.0.2"
+  resolved "https://registry.npmjs.org/@types/html5plus/-/html5plus-1.0.2.tgz"
+  integrity sha512-OklP5lrmLq8/6TUOLgWc0LndUVvAiTWX5dnyoCFhIUtFW9opWsnCtG/UxPgeuC28Rv2XNbFfft/hEEI39P/4Ag==
 
 
 "@types/uni-app@1.4.4":
 "@types/uni-app@1.4.4":
-  "integrity" "sha512-ZTXnrCTblZyoLIoKbTv1Whz1nxrTcM7vg0qGXzDpXP8m9MqdjKt48N3FffQT1IsJWNkxbvJ1Eg5UHDaq+k+oBQ=="
-  "resolved" "https://registry.npmjs.org/@types/uni-app/-/uni-app-1.4.4.tgz"
-  "version" "1.4.4"
+  version "1.4.4"
+  resolved "https://registry.npmjs.org/@types/uni-app/-/uni-app-1.4.4.tgz"
+  integrity sha512-ZTXnrCTblZyoLIoKbTv1Whz1nxrTcM7vg0qGXzDpXP8m9MqdjKt48N3FffQT1IsJWNkxbvJ1Eg5UHDaq+k+oBQ==
   dependencies:
   dependencies:
-    "vue" "^2.6.8"
+    vue "^2.6.8"
 
 
 "@vue/compiler-sfc@2.7.10":
 "@vue/compiler-sfc@2.7.10":
-  "integrity" "sha512-55Shns6WPxlYsz4WX7q9ZJBL77sKE1ZAYNYStLs6GbhIOMrNtjMvzcob6gu3cGlfpCR4bT7NXgyJ3tly2+Hx8Q=="
-  "resolved" "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.10.tgz"
-  "version" "2.7.10"
+  version "2.7.10"
+  resolved "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.10.tgz"
+  integrity sha512-55Shns6WPxlYsz4WX7q9ZJBL77sKE1ZAYNYStLs6GbhIOMrNtjMvzcob6gu3cGlfpCR4bT7NXgyJ3tly2+Hx8Q==
   dependencies:
   dependencies:
     "@babel/parser" "^7.18.4"
     "@babel/parser" "^7.18.4"
-    "postcss" "^8.4.14"
-    "source-map" "^0.6.1"
-
-"crypto-js@^4.1.1":
-  "integrity" "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw=="
-  "resolved" "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz"
-  "version" "4.1.1"
-
-"csstype@^3.1.0":
-  "integrity" "sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA=="
-  "resolved" "https://registry.npmjs.org/csstype/-/csstype-3.1.0.tgz"
-  "version" "3.1.0"
-
-"js-base64@^2.6.4":
-  "integrity" "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ=="
-  "resolved" "https://registry.npmmirror.com/js-base64/-/js-base64-2.6.4.tgz"
-  "version" "2.6.4"
-
-"js-base64@3.7.2":
-  "integrity" "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ=="
-  "resolved" "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz"
-  "version" "3.7.2"
-
-"jweixin-module@^1.6.0":
-  "integrity" "sha512-dGk9cf+ipipHmtzYmKZs5B2toX+p4hLyllGLF6xuC8t+B05oYxd8fYoaRz0T30U2n3RUv8a4iwvjhA+OcYz52w=="
-  "resolved" "https://registry.npmjs.org/jweixin-module/-/jweixin-module-1.6.0.tgz"
-  "version" "1.6.0"
-
-"nanoid@^3.3.4":
-  "integrity" "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw=="
-  "resolved" "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz"
-  "version" "3.3.4"
-
-"picocolors@^1.0.0":
-  "integrity" "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
-  "resolved" "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz"
-  "version" "1.0.0"
-
-"postcss@^8.4.14":
-  "integrity" "sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ=="
-  "resolved" "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz"
-  "version" "8.4.16"
+    postcss "^8.4.14"
+    source-map "^0.6.1"
+
+crypto-js@^4.1.1:
+  version "4.1.1"
+  resolved "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz"
+  integrity sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==
+
+csstype@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.0.tgz"
+  integrity sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA==
+
+js-base64@^2.6.4:
+  version "2.6.4"
+  resolved "https://registry.npmmirror.com/js-base64/-/js-base64-2.6.4.tgz"
+  integrity sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==
+
+js-base64@3.7.2:
+  version "3.7.2"
+  resolved "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz"
+  integrity sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==
+
+jweixin-module@^1.6.0:
+  version "1.6.0"
+  resolved "https://registry.npmjs.org/jweixin-module/-/jweixin-module-1.6.0.tgz"
+  integrity sha512-dGk9cf+ipipHmtzYmKZs5B2toX+p4hLyllGLF6xuC8t+B05oYxd8fYoaRz0T30U2n3RUv8a4iwvjhA+OcYz52w==
+
+nanoid@^3.3.4:
+  version "3.3.4"
+  resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz"
+  integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==
+
+picocolors@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz"
+  integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
+
+postcss@^8.4.14:
+  version "8.4.16"
+  resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz"
+  integrity sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==
   dependencies:
   dependencies:
-    "nanoid" "^3.3.4"
-    "picocolors" "^1.0.0"
-    "source-map-js" "^1.0.2"
-
-"source-map-js@^1.0.2":
-  "integrity" "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
-  "resolved" "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz"
-  "version" "1.0.2"
-
-"source-map@^0.6.1":
-  "integrity" "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
-  "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz"
-  "version" "0.6.1"
-
-"uni-read-pages@1.0.5":
-  "integrity" "sha512-GkrrZ0LX0vn9R5k6RKEi0Ez3Q3e2vUpjXQ8Z6/K/d28KudI9ajqgt8WEjQFlG5EPm1K6uTArN8LlqmZTEixDUA=="
-  "resolved" "https://registry.npmmirror.com/uni-read-pages/-/uni-read-pages-1.0.5.tgz"
-  "version" "1.0.5"
-
-"uni-simple-router@2.0.7":
-  "integrity" "sha512-8FKv5dw7Eoonm0gkO8udprrxzin0fNUI0+AvIphFkFRH5ZmP5ZWJ2pvnWzb2NiiqQSECTSU5VSB7HhvOSwD5eA=="
-  "resolved" "https://registry.npmmirror.com/uni-simple-router/-/uni-simple-router-2.0.7.tgz"
-  "version" "2.0.7"
-
-"uniapp-qrcode@^1.0.2":
-  "integrity" "sha512-jcWwWz4yXsO7if/+78MMXj5VUdZTLu2D6L/IKb4mJkIw87oF11pO3WS/jS27SUcPCrX/BKcir5a2R1uvkaoR9g=="
-  "resolved" "https://registry.npmjs.org/uniapp-qrcode/-/uniapp-qrcode-1.0.2.tgz"
-  "version" "1.0.2"
-
-"uploading-oss@1.0.3":
-  "integrity" "sha512-aqHh5NCOBcrA4d8yCIKR7B9GrKzH88X7gL8BSvIw18pi79AgWnhDkCoyjQmDqzTvjQqYfKwyFTEgnafzMx/GbQ=="
-  "resolved" "https://registry.npmjs.org/uploading-oss/-/uploading-oss-1.0.3.tgz"
-  "version" "1.0.3"
+    nanoid "^3.3.4"
+    picocolors "^1.0.0"
+    source-map-js "^1.0.2"
+
+source-map-js@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz"
+  integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
+
+source-map@^0.6.1:
+  version "0.6.1"
+  resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz"
+  integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
+
+uni-read-pages@1.0.5:
+  version "1.0.5"
+  resolved "https://registry.npmmirror.com/uni-read-pages/-/uni-read-pages-1.0.5.tgz"
+  integrity sha512-GkrrZ0LX0vn9R5k6RKEi0Ez3Q3e2vUpjXQ8Z6/K/d28KudI9ajqgt8WEjQFlG5EPm1K6uTArN8LlqmZTEixDUA==
+
+uni-simple-router@2.0.7:
+  version "2.0.7"
+  resolved "https://registry.npmmirror.com/uni-simple-router/-/uni-simple-router-2.0.7.tgz"
+  integrity sha512-8FKv5dw7Eoonm0gkO8udprrxzin0fNUI0+AvIphFkFRH5ZmP5ZWJ2pvnWzb2NiiqQSECTSU5VSB7HhvOSwD5eA==
+
+uniapp-qrcode@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.npmjs.org/uniapp-qrcode/-/uniapp-qrcode-1.0.2.tgz"
+  integrity sha512-jcWwWz4yXsO7if/+78MMXj5VUdZTLu2D6L/IKb4mJkIw87oF11pO3WS/jS27SUcPCrX/BKcir5a2R1uvkaoR9g==
+
+uploading-oss@1.0.3:
+  version "1.0.3"
+  resolved "https://registry.npmjs.org/uploading-oss/-/uploading-oss-1.0.3.tgz"
+  integrity sha512-aqHh5NCOBcrA4d8yCIKR7B9GrKzH88X7gL8BSvIw18pi79AgWnhDkCoyjQmDqzTvjQqYfKwyFTEgnafzMx/GbQ==
   dependencies:
   dependencies:
-    "crypto-js" "^4.1.1"
-    "js-base64" "^2.6.4"
-
-"vue-waterfall-easy@2.4.4":
-  "integrity" "sha512-5OkpT2FPNC3rHBy858zk/nmJxqdPaGmj/KVbmA6dgcvtsovKMa+zuf/Z7F+S2NnObeavpIBztTWgcH3S42ZD+g=="
-  "resolved" "https://registry.npmjs.org/vue-waterfall-easy/-/vue-waterfall-easy-2.4.4.tgz"
-  "version" "2.4.4"
-
-"vue@^2.6.8":
-  "integrity" "sha512-HmFC70qarSHPXcKtW8U8fgIkF6JGvjEmDiVInTkKZP0gIlEPhlVlcJJLkdGIDiNkIeA2zJPQTWJUI4iWe+AVfg=="
-  "resolved" "https://registry.npmjs.org/vue/-/vue-2.7.10.tgz"
-  "version" "2.7.10"
+    crypto-js "^4.1.1"
+    js-base64 "^2.6.4"
+
+vue-waterfall-easy@2.4.4:
+  version "2.4.4"
+  resolved "https://registry.npmjs.org/vue-waterfall-easy/-/vue-waterfall-easy-2.4.4.tgz"
+  integrity sha512-5OkpT2FPNC3rHBy858zk/nmJxqdPaGmj/KVbmA6dgcvtsovKMa+zuf/Z7F+S2NnObeavpIBztTWgcH3S42ZD+g==
+
+vue@^2.6.8:
+  version "2.7.10"
+  resolved "https://registry.npmjs.org/vue/-/vue-2.7.10.tgz"
+  integrity sha512-HmFC70qarSHPXcKtW8U8fgIkF6JGvjEmDiVInTkKZP0gIlEPhlVlcJJLkdGIDiNkIeA2zJPQTWJUI4iWe+AVfg==
   dependencies:
   dependencies:
     "@vue/compiler-sfc" "2.7.10"
     "@vue/compiler-sfc" "2.7.10"
-    "csstype" "^3.1.0"
+    csstype "^3.1.0"
 
 
-"wecomjsdk@1.0.2":
-  "integrity" "sha512-nPbrTcA5P8IOY/gQJJ3/AtXE2zSqJIQB156RUAQ2+RvwvJmcR66p7hpZtCjbtKefvyDO0LJBdEFqfjRR72zjIw=="
-  "resolved" "https://registry.npmmirror.com/wecomjsdk/-/wecomjsdk-1.0.2.tgz"
-  "version" "1.0.2"
+wecomjsdk@1.0.2:
+  version "1.0.2"
+  resolved "https://registry.npmmirror.com/wecomjsdk/-/wecomjsdk-1.0.2.tgz"
+  integrity sha512-nPbrTcA5P8IOY/gQJJ3/AtXE2zSqJIQB156RUAQ2+RvwvJmcR66p7hpZtCjbtKefvyDO0LJBdEFqfjRR72zjIw==