瀏覽代碼

wesmiler 抢表商城

APPLE 3 年之前
父節點
當前提交
53be68b849
共有 61 個文件被更改,包括 1522 次插入1861 次删除
  1. 97 0
      addons/h5/App.vue
  2. 0 23
      addons/h5/changelog.md
  3. 1 1
      addons/h5/components/navbar.vue
  4. 26 19
      addons/h5/components/tabbar.vue
  5. 10 10
      addons/h5/config/request.js
  6. 3 2
      addons/h5/main.js
  7. 5 9
      addons/h5/manifest.json
  8. 86 3
      addons/h5/package-lock.json
  9. 6 7
      addons/h5/package.json
  10. 211 33
      addons/h5/pages.json
  11. 0 164
      addons/h5/pages/account/index.vue
  12. 3 3
      addons/h5/pages/account/withdraw.vue
  13. 0 179
      addons/h5/pages/account/withdraw_log.vue
  14. 0 273
      addons/h5/pages/center/index.vue
  15. 0 305
      addons/h5/pages/center/password.vue
  16. 0 82
      addons/h5/pages/center/setting.vue
  17. 274 372
      addons/h5/pages/index/index.vue
  18. 0 144
      addons/h5/pages/index/map.vue
  19. 42 1
      addons/h5/pages/login/login.vue
  20. 340 21
      addons/h5/pages/order/detail.vue
  21. 416 175
      addons/h5/pages/order/index.vue
  22. 二進制
      addons/h5/static/mp3/order.mp3
  23. 2 2
      addons/h5/unpackage/dist/build/h5/index.html
  24. 0 14
      addons/h5/unpackage/dist/build/h5/static/js/chunk-vendors.2987923a.js
  25. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/index.ff203378.js
  26. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-account-index.2d4f6f96.js
  27. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-account-index~pages-account-withdraw_log~pages-index-index~pages-order-index.299ba9c5.js
  28. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-account-index~pages-account-withdraw~pages-account-withdraw_log~pages-center-index~pages-cente~c4dfcdea.1113fe27.js
  29. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-account-index~pages-account-withdraw~pages-account-withdraw_log~pages-center-password~pages-ce~58448fc3.0d4df983.js
  30. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-account-withdraw.0503b151.js
  31. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-account-withdraw_log.0add3bb1.js
  32. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-account-withdraw~pages-center-password~pages-login-forget~pages-login-login.47176614.js
  33. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-center-index.84e49b7a.js
  34. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-center-index~pages-center-setting.84212dd4.js
  35. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-center-index~pages-index-index~pages-index-map~pages-order-index.285a74bc.js
  36. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-center-password.87b816c8.js
  37. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-center-setting.fc80afc8.js
  38. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-index-index.9a80c7ab.js
  39. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-index-map.49dde5ff.js
  40. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-login-forget.e9267f91.js
  41. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-login-login.161f7499.js
  42. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-order-detail.54230cf3.js
  43. 0 1
      addons/h5/unpackage/dist/build/h5/static/js/pages-order-index.f10e2228.js
  44. 二進制
      addons/h5/unpackage/dist/build/h5/static/mp3/order.mp3
  45. 二進制
      addons/h5/unpackage/res/icons/1024x1024.png
  46. 二進制
      addons/h5/unpackage/res/icons/120x120.png
  47. 二進制
      addons/h5/unpackage/res/icons/144x144.png
  48. 二進制
      addons/h5/unpackage/res/icons/152x152.png
  49. 二進制
      addons/h5/unpackage/res/icons/167x167.png
  50. 二進制
      addons/h5/unpackage/res/icons/180x180.png
  51. 二進制
      addons/h5/unpackage/res/icons/192x192.png
  52. 二進制
      addons/h5/unpackage/res/icons/20x20.png
  53. 二進制
      addons/h5/unpackage/res/icons/29x29.png
  54. 二進制
      addons/h5/unpackage/res/icons/40x40.png
  55. 二進制
      addons/h5/unpackage/res/icons/58x58.png
  56. 二進制
      addons/h5/unpackage/res/icons/60x60.png
  57. 二進制
      addons/h5/unpackage/res/icons/72x72.png
  58. 二進制
      addons/h5/unpackage/res/icons/76x76.png
  59. 二進制
      addons/h5/unpackage/res/icons/80x80.png
  60. 二進制
      addons/h5/unpackage/res/icons/87x87.png
  61. 二進制
      addons/h5/unpackage/res/icons/96x96.png

+ 97 - 0
addons/h5/App.vue

@@ -63,4 +63,101 @@
 		font-size: 32rpx;
 		padding: 12rpx 0;
 	}
+
+	.u-notice-bar {
+		padding: 8rpx 20rpx !important;
+	}
+
+	.u-notice__left-icon .u-icon__img {
+		width: 116rpx !important;
+		height: 48rpx !important;
+	}
+
+	uni-toast {
+		z-index: 10092;
+	}
+
+	.form-action {
+
+		.u-checkbox {
+			display: inline-block;
+
+			.u-checkbox__icon-wrap--square {
+				display: inline-block;
+				vertical-align: middle;
+			}
+		}
+	}
+
+	.trade .u-switch__bg {
+		background-color: #fff !important;
+		width: 30rpx !important;
+		height: 30rpx !important;
+		vertical-align: middle;
+	}
+
+	.uni-picker-container {
+		z-index: 10098;
+	}
+
+	.u-loadmore__content__text {
+		font-size: 26rpx !important;
+		line-height: 26rpx !important;
+		color: #b4b4b4 !important;
+		margin-bottom: 10rpx;
+	}
+
+	.u-picker__view {
+		min-height: 320rpx;
+	}
+
+	uni-modal {
+		z-index: 10093 !important;
+	}
+
+	.u-popup.scroll .u-transition {
+		overflow-y: scroll;
+	}
+
+	.modal-content {
+		width: 100%;
+	}
+
+	.u-notice__swiper {
+		height: 30rpx !important;
+	}
+
+	.list-item {
+		.u-image {
+			width: 100% !important;
+
+			.u-image__image {
+				width: 100% !important;
+			}
+		}
+	}
+
+	.thumb {
+		.u-album__row {
+			width: 100%;
+			height: 100%;
+
+			.u-album__row__wrapper {
+				width: 100%;
+				height: 100%;
+
+				uni-image {
+					width: 100% !important;
+					height: 100% !important;
+				}
+			}
+		}
+
+	}
+
+	body {
+		padding: 0;
+		margin: 0;
+		font-size: 30rpx;
+	}
 </style>

+ 0 - 23
addons/h5/changelog.md

@@ -1,23 +0,0 @@
-## 3.1.7(2022-06-30)
-- 新增 支持 ios 安全区
-## 3.1.6(2022-02-08)
-- 移除无效的H5平台百度统计
-## 3.1.5(2021-11-26)
-- 新增 小程序平台支持VUE3 (HBuilderX 3.3+)
-- 修复 某些情况下无法滚动的问题
-## 3.1.4(2021-07-30)
-- 适配 VUE3 (需要 HBuilderX 3.2.0+)
-## 3.1.3(2021-07-28)
-- 适配 VUE3 (需要 HBuilderX 3.2.0+)
-## 3.0.0(2021-02-19)
-- 修复 某些操作导致上拉加载无效的问题
-## 2.9.5(2020-10-23)
-- 修复 app 平台 ios 顶部页签高度显示不正确的问题
-## 2.9.2(2020-09-27)
-- 修复app平台运行时出错的bug
-## 2.9.1(2020-09-27)
-- 修复加载更多文字过大问题
-## 2.9.0(2020-09-25)
-- 适配大屏
-## 2.4.2(2019-11-18)
-- 重构代码,支持编译到所有平台

+ 1 - 1
addons/h5/components/navbar.vue

@@ -69,6 +69,6 @@
 	}
 
 	.actives {
-		color: #bb955e;
+		color: #bc1a0f;
 	}
 </style>

+ 26 - 19
addons/h5/components/tabbar.vue

@@ -1,17 +1,13 @@
 <template>
-
-	<u-tabbar :value="curIndex" @change="changeMethods" :fixed="true" :activeColor="'#e46008'" :placeholder="false"
-		:safeAreaInsetBottom="true">
-		<u-tabbar-item v-for="(item,k) in list" :key="k" :text="item.text">
-			<image class="u-page__item__slot-icon" slot="active-icon" :src="item.selectedIconPath"></image>
+	<u-tabbar :value="curIndex" @change="changeMethods" :fixed="true" :activeColor="colors[themeId-1]"
+		:placeholder="false" :safeAreaInsetBottom="true">
+		<u-tabbar-item v-for="(item,k) in list" :key="k" :text="item.text"
+			:title="'/static/icons/tabbar/'+themeId+item.selectedIconPath">
+			<image class="u-page__item__slot-icon" slot="active-icon"
+				:src="'/static/icons/tabbar/'+themeId+item.selectedIconPath"></image>
 			<image class="u-page__item__slot-icon" slot="inactive-icon" :src="item.iconPath"></image>
 		</u-tabbar-item>
 	</u-tabbar>
-	<!-- <view v-for="(item,k) in list" :key="k" class="items" @click="changeMethods(item.pagePath,k)">
-			<u-image class="icon" width="56rpx" height="56rpx"
-				:src="item.id == index ? item.selectedIconPath :item.iconPath" style="margin: auto;"></u-image>
-			<view :class="{'actives':item.id== index}">{{item.text}}</view>
-		</view> -->
 
 </template>
 
@@ -22,6 +18,10 @@
 	export default {
 		name: "tabbar",
 		props: {
+			themeId: {
+				type: Number,
+				default: 1,
+			},
 			index: {
 				type: Number,
 				default: 1,
@@ -30,22 +30,29 @@
 		data() {
 			return {
 				curIndex: this.index - 1,
+				colors: ['#B1120A', '#1DCE0D', '#0ACE71', '#2C77FF'],
 				list: [{
 						pagePath: "/pages/index/index",
-						iconPath: "/static/icons/order-home.png",
-						selectedIconPath: "/static/icons/order-home-active.png",
-						text: '订单广场',
+						iconPath: "/static/icons/tabbar/home.png",
+						selectedIconPath: "/home_active.png",
+						text: '首页',
 					},
 					{
 						pagePath: "/pages/order/index",
-						iconPath: "/static/icons/order.png",
-						selectedIconPath: "/static/icons/order-active.png",
-						text: '我的订单',
+						iconPath: "/static/icons/tabbar/order.png",
+						selectedIconPath: "/order_active.png",
+						text: '订单',
+					},
+					{
+						pagePath: "/pages/market/index",
+						iconPath: "/static/icons/tabbar/market.png",
+						selectedIconPath: "/market_active.png",
+						text: '分销中心',
 					},
 					{
-						pagePath: "/pages/center/index",
-						iconPath: "/static/icons/my.png",
-						selectedIconPath: "/static/icons/my-active.png",
+						pagePath: "/pages/member/index",
+						iconPath: "/static/icons/tabbar/my.png",
+						selectedIconPath: "/my_active.png",
 						text: '我的',
 					}
 				],

+ 10 - 10
addons/h5/config/request.js

@@ -1,7 +1,7 @@
-// const baseUrl = 'http://127.0.3.10'
+// const baseUrl = 'http://127.0.3.80'
+// const baseUrl = 'http://xxx.com'
+const baseUrl = 'http://new.gongxif.xyz'
 
-const baseUrl = 'https://rrjie.gxnwsoft.com'
-const mapKey = '2CEBZ-RTUWI-GW2GK-5HASQ-MRMR5-I6BEF'
 /* 
  *	请求不带token
  */
@@ -33,11 +33,10 @@ const send = (url = '', date = {}, type = 'GET', header = {}) => {
  */
 const api = (url = '', date = {}, type = 'post', header = {}) => {
 
-	let token = uni.getStorageSync('rrc.token')
+	let token = uni.getStorageSync('qb.token')
 	if (token) {
-		header.Authorization = token
+		header.Authorization = 'Bearer ' + token
 	}
-
 	return new Promise((resolve, reject) => {
 		uni.request({
 			method: type,
@@ -52,9 +51,11 @@ const api = (url = '', date = {}, type = 'post', header = {}) => {
 			let [error, res] = response;
 			resolve(res.data);
 		}).catch(error => {
-			let [err, res] = error;
 			console.log(error)
-			reject(err)
+			reject(error);
+			//console.log(error)
+			//let [err, res] = error;
+			//reject(err)
 		})
 	});
 }
@@ -62,6 +63,5 @@ const api = (url = '', date = {}, type = 'post', header = {}) => {
 export default {
 	send,
 	api,
-	baseUrl,
-	mapKey
+	baseUrl
 }

+ 3 - 2
addons/h5/main.js

@@ -12,7 +12,7 @@ Vue.prototype.gotoPage = gotoPage
 
 // 封装登录检查
 Vue.prototype.checkLogin = function() {
-	var token = uni.getStorageSync('rrc.token');
+	var token = uni.getStorageSync('qp.token');
 	if (token == '') {
 		return false;
 	}
@@ -24,7 +24,8 @@ import uView from 'uview-ui'
 Vue.use(uView);
 // 如此配置即可
 uni.$u.config.unit = 'rpx'
-
+import VueClipboard from 'vue-clipboard2' //引入插件
+Vue.use(VueClipboard) //安装插件
 
 App.mpType = 'app'
 const app = new Vue({

+ 5 - 9
addons/h5/manifest.json

@@ -1,8 +1,8 @@
 {
-    "name" : "人人接",
+    "name" : "海源新三农",
     "appid" : "__UNI__C023161",
-    "description" : "人人接",
-    "versionName" : "3.1.25",
+    "description" : "海源新三农",
+    "versionName" : "1.2.10",
     "versionCode" : 1,
     "transformPx" : false,
     "uniStatistics" : {
@@ -121,16 +121,12 @@
             }
         },
         "sdkConfigs" : {
-            "maps" : {
-                "qqmap" : {
-                    "key" : "2CEBZ-RTUWI-GW2GK-5HASQ-MRMR5-I6BEF"
-                }
-            }
+            "maps" : {}
         },
         "devServer" : {
             "https" : false
         },
-        "title" : "人人接"
+        "title" : "海源新三农"
     },
     "vueVersion" : "2"
 }

+ 86 - 3
addons/h5/package-lock.json

@@ -1,14 +1,15 @@
 {
-	"name": "人人车司机端",
+	"name": "抢拍商城",
 	"version": "3.1.7",
 	"lockfileVersion": 2,
 	"requires": true,
 	"packages": {
 		"": {
-			"name": "人人车司机端",
+			"name": "抢拍商城",
 			"version": "3.1.7",
 			"dependencies": {
-				"uview-ui": "^2.0.31"
+				"uview-ui": "^2.0.31",
+				"vue-clipboard2": "^0.3.3"
 			},
 			"devDependencies": {
 				"sass": "^1.54.5",
@@ -477,6 +478,16 @@
 				"node": ">=6.0"
 			}
 		},
+		"node_modules/clipboard": {
+			"version": "2.0.11",
+			"resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.11.tgz",
+			"integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==",
+			"dependencies": {
+				"good-listener": "^1.2.2",
+				"select": "^1.1.2",
+				"tiny-emitter": "^2.0.0"
+			}
+		},
 		"node_modules/commander": {
 			"version": "2.20.3",
 			"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
@@ -484,6 +495,11 @@
 			"dev": true,
 			"peer": true
 		},
+		"node_modules/delegate": {
+			"version": "3.2.0",
+			"resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz",
+			"integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw=="
+		},
 		"node_modules/electron-to-chromium": {
 			"version": "1.4.271",
 			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.271.tgz",
@@ -645,6 +661,14 @@
 			"dev": true,
 			"peer": true
 		},
+		"node_modules/good-listener": {
+			"version": "1.2.2",
+			"resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz",
+			"integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==",
+			"dependencies": {
+				"delegate": "^3.1.2"
+			}
+		},
 		"node_modules/graceful-fs": {
 			"version": "4.2.10",
 			"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
@@ -990,6 +1014,11 @@
 				"url": "https://opencollective.com/webpack"
 			}
 		},
+		"node_modules/select": {
+			"version": "1.1.2",
+			"resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz",
+			"integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA=="
+		},
 		"node_modules/semver": {
 			"version": "7.3.7",
 			"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
@@ -1125,6 +1154,11 @@
 				}
 			}
 		},
+		"node_modules/tiny-emitter": {
+			"version": "2.1.0",
+			"resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
+			"integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q=="
+		},
 		"node_modules/to-regex-range": {
 			"version": "5.0.1",
 			"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
@@ -1181,6 +1215,14 @@
 				"HBuilderX": "^3.1.0"
 			}
 		},
+		"node_modules/vue-clipboard2": {
+			"version": "0.3.3",
+			"resolved": "https://registry.npmjs.org/vue-clipboard2/-/vue-clipboard2-0.3.3.tgz",
+			"integrity": "sha512-aNWXIL2DKgJyY/1OOeITwAQz1fHaCIGvUFHf9h8UcoQBG5a74MkdhS/xqoYe7DNZdQmZRL+TAdIbtUs9OyVjbw==",
+			"dependencies": {
+				"clipboard": "^2.0.0"
+			}
+		},
 		"node_modules/watchpack": {
 			"version": "2.4.0",
 			"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
@@ -1648,6 +1690,16 @@
 			"dev": true,
 			"peer": true
 		},
+		"clipboard": {
+			"version": "2.0.11",
+			"resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.11.tgz",
+			"integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==",
+			"requires": {
+				"good-listener": "^1.2.2",
+				"select": "^1.1.2",
+				"tiny-emitter": "^2.0.0"
+			}
+		},
 		"commander": {
 			"version": "2.20.3",
 			"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
@@ -1655,6 +1707,11 @@
 			"dev": true,
 			"peer": true
 		},
+		"delegate": {
+			"version": "3.2.0",
+			"resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz",
+			"integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw=="
+		},
 		"electron-to-chromium": {
 			"version": "1.4.271",
 			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.271.tgz",
@@ -1781,6 +1838,14 @@
 			"dev": true,
 			"peer": true
 		},
+		"good-listener": {
+			"version": "1.2.2",
+			"resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz",
+			"integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==",
+			"requires": {
+				"delegate": "^3.1.2"
+			}
+		},
 		"graceful-fs": {
 			"version": "4.2.10",
 			"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
@@ -2018,6 +2083,11 @@
 				"ajv-keywords": "^3.5.2"
 			}
 		},
+		"select": {
+			"version": "1.1.2",
+			"resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz",
+			"integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA=="
+		},
 		"semver": {
 			"version": "7.3.7",
 			"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
@@ -2105,6 +2175,11 @@
 				"terser": "^5.14.1"
 			}
 		},
+		"tiny-emitter": {
+			"version": "2.1.0",
+			"resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
+			"integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q=="
+		},
 		"to-regex-range": {
 			"version": "5.0.1",
 			"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
@@ -2139,6 +2214,14 @@
 			"resolved": "https://registry.npmjs.org/uview-ui/-/uview-ui-2.0.34.tgz",
 			"integrity": "sha512-usJHnPCtk45yLTWTXTpLX9Vuqhzjth/+4t/m+S3J5bZuahv49mVQ126rtSnuAWWVkOUtKCX4CU83gFHZj8nP5g=="
 		},
+		"vue-clipboard2": {
+			"version": "0.3.3",
+			"resolved": "https://registry.npmjs.org/vue-clipboard2/-/vue-clipboard2-0.3.3.tgz",
+			"integrity": "sha512-aNWXIL2DKgJyY/1OOeITwAQz1fHaCIGvUFHf9h8UcoQBG5a74MkdhS/xqoYe7DNZdQmZRL+TAdIbtUs9OyVjbw==",
+			"requires": {
+				"clipboard": "^2.0.0"
+			}
+		},
 		"watchpack": {
 			"version": "2.4.0",
 			"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",

+ 6 - 7
addons/h5/package.json

@@ -1,14 +1,13 @@
 {
-	"id": "uni-app-driver",
-	"name": "人人接",
-	"displayName": "人人接",
-	"version": "3.1.7",
-	"description": "人人接1.0",
+	"id": "uni-app-shop",
+	"name": "海源新三农",
+	"displayName": "海源新三农",
+	"version": "3.1.2",
+	"description": "海源新三农1.0",
 	"keywords": [],
 	"dcloudext": {
 		"category": [
-			"人人接",
-			"人人接"
+			"海源新三农"
 		]
 	},
 	"dependencies": {

+ 211 - 33
addons/h5/pages.json

@@ -2,15 +2,15 @@
 	"pages": [{
 			"path": "pages/index/index",
 			"style": {
-				"navigationBarTitleText": "人人接",
-				"enablePullDownRefresh": true,
+				"navigationBarTitleText": "海源新三农",
+				"enablePullDownRefresh": false,
 				"navigationStyle": "custom" // 隐藏系统导航栏
 			}
 		},
 		{
-			"path": "pages/center/index",
+			"path": "pages/member/index",
 			"style": {
-				"navigationBarTitleText": "我的",
+				"navigationBarTitleText": "个人中心",
 				"enablePullDownRefresh": false,
 				"navigationStyle": "custom", // 隐藏系统导航栏
 				"app-plus": {
@@ -23,12 +23,7 @@
 			"style": {
 				"navigationBarTitleText": "登录",
 				"enablePullDownRefresh": false,
-				"navigationStyle": "custom", // 隐藏系统导航栏
-				"app-plus": {
-					"background": "#e46008"
-				}
-
-
+				"navigationStyle": "custom" // 隐藏系统导航栏
 
 			}
 		},
@@ -41,7 +36,7 @@
 			}
 
 		}, {
-			"path": "pages/center/setting",
+			"path": "pages/member/setting",
 			"style": {
 				"navigationBarTitleText": "设置",
 				"enablePullDownRefresh": false
@@ -55,9 +50,16 @@
 			}
 
 		}, {
-			"path": "pages/account/index",
+			"path": "pages/order/pay",
 			"style": {
-				"navigationBarTitleText": "资金明细",
+				"navigationBarTitleText": "订单支付",
+				"enablePullDownRefresh": true
+			}
+
+		}, {
+			"path": "pages/order/detail",
+			"style": {
+				"navigationBarTitleText": "订单详情",
 				"enablePullDownRefresh": true
 			}
 
@@ -69,46 +71,222 @@
 			}
 
 		}, {
-			"path": "pages/account/withdraw_log",
+			"path": "pages/member/password",
+			"style": {
+				"navigationBarTitleText": "修改密码",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/market/index",
 			"style": {
-				"navigationBarTitleText": "提现明细",
+				"navigationBarTitleText": "分销中心",
 				"enablePullDownRefresh": true
 			}
 
 		}, {
-			"path": "pages/center/password",
+			"path": "pages/market/shop/index",
 			"style": {
-				"navigationBarTitleText": "修改密码",
+				"navigationBarTitleText": "店长后台",
+				"enablePullDownRefresh": true
+			}
+
+		}, {
+			"path": "pages/register/index",
+			"style": {
+				"navigationBarTitleText": "注册",
+				"enablePullDownRefresh": false,
+				"navigationStyle": "custom" // 隐藏系统导航栏
+			}
+
+		}, {
+			"path": "pages/shop/index",
+			"style": {
+				"navigationBarTitleText": "海源商城",
+				"enablePullDownRefresh": true
+			}
+
+		}, {
+			"path": "pages/shop/welfare",
+			"style": {
+				"navigationBarTitleText": "福利商城",
+				"enablePullDownRefresh": true
+			}
+
+		}, {
+			"path": "pages/notice/detail",
+			"style": {
+				"navigationBarTitleText": "公告详情",
 				"enablePullDownRefresh": false
 			}
 
 		}, {
-			"path": "pages/order/detail",
+			"path": "pages/market/shop/goods_wait",
+			"style": {
+				"navigationBarTitleText": "待售商品",
+				"enablePullDownRefresh": true
+			}
+
+		}, {
+			"path": "pages/market/shop/goods_check",
+			"style": {
+				"navigationBarTitleText": "上架审核",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/market/shop/goods",
+			"style": {
+				"navigationBarTitleText": "商品列表",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/market/shop/orders",
+			"style": {
+				"navigationBarTitleText": "订单列表",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/market/shop/goods_switch",
+			"style": {
+				"navigationBarTitleText": "转商品",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/address/index",
+			"style": {
+				"navigationBarTitleText": "收货地址",
+				"enablePullDownRefresh": true
+			}
+
+		}, {
+			"path": "pages/member/share",
+			"style": {
+				"navigationBarTitleText": "邀请好友",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/member/bank",
+			"style": {
+				"navigationBarTitleText": "收款账号",
+				"enablePullDownRefresh": true
+			}
+
+		}, {
+			"path": "pages/index/about",
 			"style": {
-				"navigationBarTitleText": "接单详情",
+				"navigationBarTitleText": "关于我们",
 				"enablePullDownRefresh": false
 			}
 
+		}, {
+			"path": "pages/market/orders",
+			"style": {
+				"navigationBarTitleText": "推广订单",
+				"enablePullDownRefresh": true
+			}
+
+		}, {
+			"path": "pages/market/bonus",
+			"style": {
+				"navigationBarTitleText": "佣金明细",
+				"enablePullDownRefresh": true
+			}
+
+		}, {
+			"path": "pages/account/score",
+			"style": {
+				"navigationBarTitleText": "积分明细",
+				"enablePullDownRefresh": true
+			}
+
+		}, {
+			"path": "pages/index/agree",
+			"style": {
+				"navigationBarTitleText": "注册协议",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/shop/goods_detail",
+			"style": {
+				"navigationBarTitleText": "商品详情",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/member/safe_password",
+			"style": {
+				"navigationBarTitleText": "支付密码",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/order/score/index",
+			"style": {
+				"navigationBarTitleText": "提货单",
+				"enablePullDownRefresh": true
+			}
+		}, {
+			"path": "pages/order/score/pay",
+			"style": {
+				"navigationBarTitleText": "积分兑换",
+				"enablePullDownRefresh": true
+			}
+		}, {
+			"path": "pages/market/shop/members",
+			"style": {
+				"navigationBarTitleText": "会员管理",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/member/goods",
+			"style": {
+				"navigationBarTitleText": "我的商品",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/member/info",
+			"style": {
+				"navigationBarTitleText": "用户信息",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/market/shop/profit",
+			"style": {
+				"navigationBarTitleText": "收益统计",
+				"enablePullDownRefresh": true
+			}
+
+		}, {
+			"path": "pages/market/team",
+			"style": {
+				"navigationBarTitleText": "团队业绩",
+				"enablePullDownRefresh": true
+			}
+
 		}
-	    ,{
-            "path" : "pages/index/map",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "地图导航",
-                "enablePullDownRefresh": false
-            }
-            
-        }
-    ],
+	],
 	"globalStyle": {
 		"navigationBarTextStyle": "white",
-		"navigationBarTitleText": "人人接",
-		"navigationBarBackgroundColor": "#e46008",
+		"navigationBarTitleText": "抢拍商城",
+		"navigationBarBackgroundColor": "#d81b10",
 		"backgroundColor": "#FFFFFF"
 	},
 	"tabBar": {
-		"color": "#bb955e",
-		"selectedColor": "#bb955e",
+		"color": "#B1120A",
+		// "selectedColor": "#d6982e",
+		// "selectedColor": "#9684fa",
+		// "selectedColor": "#53d1d5",
+		"selectedColor": "#B1120A",
+
 		"borderStyle": "black",
 		"backgroundColor": "#ffffff"
 	}

+ 0 - 164
addons/h5/pages/account/index.vue

@@ -1,164 +0,0 @@
-<template>
-	<view class="main">
-		<view class="list-box" v-if="dataList.length<=0">
-			<view class="no-data">
-				<u-empty mode="data" icon="../../static/icons/data.png" text="暂无数据">
-				</u-empty>
-			</view>
-		</view>
-		<view class="list-box" v-else>
-			<view class="list-item" v-for="(v,k) in dataList" :key="k">
-				<view class="text"><text class="title">
-						{{v.memo}}</text><text :class="'amount tag-'+v.tag">{{v.tag==10?'+':'-'}}{{v.money}}元</text>
-				</view>
-				<view class="text"><text class="time">{{v.created_at.text}}</text> </view>
-			</view>
-		</view>
-
-		<u-loadmore v-if="dataList.length>0" :fontSize="24" :status="loadStatus">
-		</u-loadmore>
-	</view>
-</template>
-
-<script>
-	export default {
-		data() {
-			return {
-				loadMore: false,
-				loadStatus: 'loadmore',
-				loaded: false,
-				params: {
-					page: 1,
-					pageSize: 20,
-					total: 0,
-				},
-				dataList: [],
-
-			}
-		},
-		created() {
-			this.getData()
-		},
-		onPullDownRefresh() {
-			this.dataList = [];
-			this.loaded = false;
-			this.loadMore = false;
-			this.params.page = 1;
-			this.getData();
-		},
-		onReachBottom() {
-			if (!this.loaded) {
-				this.params.page++;
-				this.loadMore = true
-				this.getData();
-			}
-		},
-		methods: {
-			getData() {
-				let _this = this
-				this.loadStatus = 'loading';
-				this.$request.api('/api/v1/taxiuser/accountLog', _this.params, 'POST').then(res => {
-					_this.loadStatus = 'loadmore'
-					if (res.code == 10000) {
-						console.log(res.data)
-						if (_this.loadMore == true && res.data.length > 0) {
-							let len = res.data.length
-							for (let i = 0; i <= len; i++) {
-								if (typeof(res.data[i]) != 'undefined') {
-									_this.dataList.push(res.data[i])
-								}
-							}
-							_this.loadMore = false
-
-						} else if (res.data.length > 0) {
-							_this.dataList = res.data ? res.data : [];
-						}
-
-						if (this.params.page != 1 && res.data.length <= 0) {
-							_this.loaded = true
-							_this.loadStatus = 'nomore'
-						}
-						if (this.params.page == 1 && res.data.length <= 0) {
-							_this.loaded = true
-							_this.loadStatus = 'nodata'
-						}
-
-						if (this.params.page == 1) {
-							uni.stopPullDownRefresh()
-						}
-
-					} else {
-						this.$u.toast(res.msg);
-					}
-				}).catch(error => {
-					console.log(error)
-					_this.loadMore = false
-					_this.loadStatus = 'loadmore'
-				})
-
-			}
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	.no-data {
-		margin-top: 30%;
-	}
-
-	.list-box {
-		padding-top: 30rpx;
-	}
-
-	.list-item {
-		padding-bottom: 20rpx;
-		margin: 0 30rpx;
-		border-bottom: 2rpx solid #f1f1f1;
-
-		.text {
-
-			display: block;
-			display: flex;
-			margin-bottom: 10rpx;
-
-			.type {
-				margin-right: 10rpx;
-			}
-
-			.title {
-				width: calc(100% - 160rpx);
-				display: inline-block;
-			}
-
-			.amount {
-				color: #e46008;
-				float: right;
-				width: 160rpx;
-				text-align: right;
-			}
-
-			.time {
-				color: #999;
-			}
-
-			.tag-10 {
-				color: #e46008;
-			}
-
-			.tag-20 {
-				color: #00a1d1;
-			}
-		}
-	}
-
-	.u-loadmore {
-		height: 60rpx !important;
-		padding: 19rpx;
-
-		.u-loadmore__content__text,
-		.u-line-1 {
-			height: 32rpx;
-			line-height: 60rpx !important;
-		}
-	}
-</style>

+ 3 - 3
addons/h5/pages/account/withdraw.vue

@@ -105,7 +105,7 @@
 				fileList1: [],
 				fileList2: [],
 				uploadConfig: {
-					url: this.$request.baseUrl + '/api/v1/taxiuser/upload',
+					url: this.$request.baseUrl + '/api/v1/upload/upload',
 					header: {
 						Authorization: uni.getStorageSync('rrc.token'),
 					}
@@ -240,7 +240,7 @@
 			},
 			getInfo() {
 				let _this = this
-				this.$request.api('/api/v1/taxiuser/userInfo', {}, 'POST').then(res => {
+				this.$request.api('/api/v1/member/info', {}, 'POST').then(res => {
 					// 打印调用成功回调
 					if (res.code == 10000) {
 						_this.userInfo = res.data
@@ -309,7 +309,7 @@
 								uni.showLoading({
 									title: '提交中...',
 								})
-								_this.$request.api('/api/v1/taxiuser/withdraw', _this.formData, 'POST')
+								_this.$request.api('/api/v1/account/withdraw', _this.formData, 'POST')
 									.then(res => {
 										// 打印调用成功回调
 										uni.hideLoading()

+ 0 - 179
addons/h5/pages/account/withdraw_log.vue

@@ -1,179 +0,0 @@
-<template>
-	<view class="main">
-		<view class="list-box" v-if="dataList.length<=0">
-			<view class="no-data">
-				<u-empty mode="data" icon="../../static/icons/data.png" text="暂无数据">
-				</u-empty>
-			</view>
-		</view>
-		<view class="list-box" v-else>
-			<view class="list-item" v-for="(v,k) in dataList" :key="k">
-				<view class="text"><text class="title"><text
-							class="type">[{{['','银行卡','微信','支付宝','微信余额'][v.pay_type]}}]</text>
-						{{v.status==10?'提现成功':(v.status==30?'提现驳回':'提现审核中')}}</text><text
-						:class="'amount status-'+v.status">{{v.amount}}元</text>
-				</view>
-				<view class="text"><text class="order-no">{{v.order_no}}</text> <text
-						class="time">{{v.created_at.text}}</text> </view>
-			</view>
-		</view>
-
-		<u-loadmore v-if="dataList.length>0" :fontSize="24" :status="loadStatus">
-		</u-loadmore>
-	</view>
-</template>
-
-<script>
-	export default {
-		data() {
-			return {
-				loadMore: false,
-				loadStatus: 'loadmore',
-				loaded: false,
-				params: {
-					page: 1,
-					pageSize: 20,
-					total: 0,
-				},
-				dataList: [],
-
-			}
-		},
-		created() {
-			this.getData()
-		},
-		onPullDownRefresh() {
-			this.dataList = [];
-			this.loaded = false;
-			this.loadMore = false;
-			this.params.page = 1;
-			this.getData();
-		},
-		onReachBottom() {
-			if (!this.loaded) {
-				this.params.page++;
-				this.loadMore = true
-				this.getData();
-			}
-		},
-		methods: {
-			getData() {
-				let _this = this
-				this.loadStatus = 'loading';
-				this.$request.api('/api/v1/taxiuser/withdrawLog', _this.params, 'POST').then(res => {
-					_this.loadStatus = 'loadmore'
-					if (res.code == 10000) {
-						console.log(res.data)
-						if (_this.loadMore == true && res.data.length > 0) {
-							let len = res.data.length
-							for (let i = 0; i <= len; i++) {
-								if (typeof(res.data[i]) != 'undefined') {
-									_this.dataList.push(res.data[i])
-								}
-							}
-							_this.loadMore = false
-
-						} else if (res.data.length > 0) {
-							_this.dataList = res.data ? res.data : [];
-						}
-
-						if (this.params.page != 1 && res.data.length <= 0) {
-							_this.loaded = true
-							_this.loadStatus = 'nomore'
-						}
-						if (this.params.page == 1 && res.data.length <= 0) {
-							_this.loaded = true
-							_this.loadStatus = 'nodata'
-						}
-
-						if (this.params.page == 1) {
-							uni.stopPullDownRefresh()
-						}
-
-					} else {
-						this.$u.toast(res.msg);
-					}
-				}).catch(error => {
-					console.log(error)
-					_this.loadMore = false
-					_this.loadStatus = 'loadmore'
-				})
-
-			}
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	.no-data {
-		margin-top: 30%;
-	}
-
-	.list-box {
-		padding-top: 30rpx;
-	}
-
-	.list-item {
-		padding-bottom: 20rpx;
-		margin: 0 30rpx;
-		border-bottom: 2rpx solid #f1f1f1;
-
-		.text {
-
-			display: block;
-			display: flex;
-			margin-bottom: 10rpx;
-
-			.type {
-				margin-right: 10rpx;
-			}
-
-			.title {
-				width: calc(100% - 140rpx);
-				display: inline-block;
-			}
-
-			.amount {
-				color: #e46008;
-				float: right;
-				width: 140rpx;
-				text-align: right;
-			}
-
-			.order-no {
-				width: calc(100% - 180rpx);
-				color: #999;
-			}
-
-			.time {
-				text-align: right;
-				width: 180rpx;
-				float: right;
-				color: #999;
-			}
-
-			.status-10 {
-				color: green;
-			}
-
-			.status-20 {
-				color: #00a1d1;
-			}
-
-			.status-30 {
-				color: #e46008;
-			}
-		}
-	}
-
-	.u-loadmore {
-		height: 60rpx !important;
-		padding: 19rpx;
-
-		.u-loadmore__content__text,
-		.u-line-1 {
-			height: 32rpx;
-			line-height: 60rpx !important;
-		}
-	}
-</style>

+ 0 - 273
addons/h5/pages/center/index.vue

@@ -1,273 +0,0 @@
-<template>
-	<view class="app">
-		<view class="main" v-if="userInfo.id">
-			<view class="header">
-				<view class="header-info">
-					<view class="user-info">
-						<u-avatar class="avatar" :size="80" :src="userInfo.user.avatar_url"></u-avatar>
-						<view class="info">
-							<view class="text nickname">
-								{{userInfo.uname}}{{userInfo.level_name? '('+userInfo.level_name+')':''}}
-							</view>
-							<view class="text mobile" v-text="userInfo.mobile"></view>
-						</view>
-					</view>
-					<u-icon class="setting" color="#fff" size="46" name="setting"
-						@click="gotoPage('/pages/center/setting')"></u-icon>
-				</view>
-				<view class="account">
-					<u-grid :border="false">
-						<u-grid-item>
-							<view class="grid-text">¥{{userInfo.counts.day_income}}</view>
-							<view type="default" class="btn">今日收入</view>
-						</u-grid-item>
-						<u-grid-item>
-							<view class="grid-text">¥{{userInfo.counts.total_income}}</view>
-							<view type="default" class="btn">总收入</view>
-						</u-grid-item>
-						<u-grid-item>
-							<navigator url="/pages/account/withdraw">
-								<view class="grid-text money">¥{{userInfo.counts.withdraw_income}}</view>
-								<view type="default" class="btn">可提现金额</view>
-							</navigator>
-						</u-grid-item>
-						<u-grid-item>
-							<view class="grid-text">¥{{userInfo.user.taxi_property}}</view>
-							<view type="default" class="btn">通证资产</view>
-						</u-grid-item>
-						<u-grid-item>
-							<view class="grid-text">{{userInfo.counts.day_order}}</view>
-							<view type="default" class="btn">今日接单</view>
-						</u-grid-item>
-						<!-- <u-grid-item>
-							<view class="grid-text" @click="gotoPage('/pages/order/index')">
-								{{userInfo.counts.wait_order}}
-							</view>
-							<view type="default" class="btn">待服务单</view>
-						</u-grid-item> -->
-						<u-grid-item @click="gotoPage('/pages/order/index')">
-							<view class="grid-text">{{userInfo.counts.total_order}}</view>
-							<view type="default" class="btn">累计接单</view>
-						</u-grid-item>
-					</u-grid>
-
-
-				</view>
-			</view>
-			<view class="menus">
-				<view class="menu-list">
-					<u-cell-group :border="false" col="4">
-						<u-cell title="我的订单" value="" @click="gotoPage('/pages/order/index')">
-							<u-icon slot="icon" color="#e46008" size="36" name="order"></u-icon>
-							<u-icon slot="right-icon" size="32" name="arrow-right"></u-icon>
-						</u-cell>
-						<u-cell title="资金明细" value="" @click="gotoPage('/pages/account/index')">
-							<u-icon slot="icon" color="#e46008" size="36" name="rmb-circle"></u-icon>
-							<u-icon slot="right-icon" size="32" name="arrow-right"></u-icon>
-						</u-cell>
-						<u-cell title="提现记录" value="" @click="gotoPage('/pages/account/withdraw_log')">
-							<u-icon slot="icon" color="#e46008" size="36" name="file-text"></u-icon>
-							<u-icon slot="right-icon" size="32" name="arrow-right"></u-icon>
-						</u-cell>
-						<u-cell title="退出登录" value="" @click="logout()">
-							<u-icon slot="icon" color="#e46008" size="36" name="lock-open"></u-icon>
-							<u-icon slot="right-icon" size="32" name="arrow-right"></u-icon>
-						</u-cell>
-
-					</u-cell-group>
-				</view>
-
-			</view>
-
-		</view>
-		<tabbar :index="3"></tabbar>
-	</view>
-</template>
-
-<script>
-	import tabbar from '../../components/tabbar.vue'
-	export default {
-		components: {
-			tabbar
-		},
-		data() {
-			return {
-				userInfo: {}
-			}
-		},
-		created() {
-			this.getInfo()
-		},
-		methods: {
-			// 用户信息
-			getInfo() {
-				let _this = this
-				this.$request.api('/api/v1/taxiuser/userInfo', {
-					type: 2
-				}, 'POST').then(res => {
-					// 打印调用成功回调
-					if (res.code == 10000) {
-						_this.userInfo = res.data
-					} else if (res.errcode == 30001) {
-						_this.$u.toast(res.errmsg);
-						setTimeout(function() {
-							uni.navigateTo({
-								url: '/pages/login/login'
-							})
-						}, 1200)
-					} else {
-						_this.$u.toast(typeof(res.errmsg) != 'undefined' ? res.errmsg : res.message);
-					}
-				}).catch(error => {
-					console.log(error)
-					_this.$u.toast(error.errmsg);
-					setTimeout(function() {
-						uni.navigateTo({
-							url: '/pages/login/login'
-						})
-					}, 1200)
-				})
-
-			},
-			// 退出登录
-			logout() {
-				uni.removeStorageSync('rrc.token')
-				uni.navigateTo({
-					url: '/pages/login/login'
-				})
-			}
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	page {
-		height: 100%;
-		width: 100%;
-		background: #f1f1f1;
-	}
-
-	.app {
-		height: 100%;
-		background: #f1f1f1;
-	}
-
-	.header {
-		position: relative;
-		z-index: 2;
-
-		.header-info {
-			width: 100%;
-			height: 480rpx;
-			position: relative;
-			z-index: -1;
-			// top: 0;
-			overflow: hidden;
-
-			&::after {
-				content: '';
-				width: 140%;
-				height: 100%;
-				position: absolute;
-				left: -20%;
-				top: 0;
-				z-index: -1;
-				border-radius: 0 0 50% 50%;
-				background: #e46008;
-			}
-
-			.user-info {
-				position: relative;
-				display: flex;
-				margin: 0 38rpx;
-				margin-top: 15%;
-
-
-				.avatar {
-					vertical-align: middle;
-					margin: 4rpx 19rpx;
-
-
-				}
-
-				.info {
-					vertical-align: middle;
-
-					.text {
-						font-size: 32rpx;
-						color: #fff;
-					}
-				}
-
-			}
-
-			.setting {
-				position: absolute;
-				right: 38rpx;
-				top: 38rpx;
-			}
-
-
-		}
-
-		.account {
-			// width: 85%;
-			// width: 100%;
-			// top: 240rpx;
-			// position: absolute;
-			// min-height: 240rpx;
-			// margin: 19rpx 0rpx;
-			// background-color: #fff;
-			// border: 2rpx solid #ebe7e2;
-			// // border-radius: 10rpx;
-			// box-shadow: 2rpx 2rpx 8rpx #e0ddd9;
-			// padding: 10rpx 0;
-
-			width: 100%;
-			top: 7rem;
-			position: absolute;
-			min-height: 7rem;
-			margin: 1rem 0px;
-			background-color: #fff;
-			border: 1px solid #ebe7e2;
-			box-shadow: 1px 1px 4px #e0ddd9;
-			padding: 0.5rem 0;
-
-			.u-grid-item {
-				margin-top: 38rpx;
-				text-align: center;
-
-				.grid-text {
-					margin-bottom: 10rpx;
-					font-size: 32rpx;
-					font-weight: bold;
-					color: #333;
-				}
-
-				.money {
-					color: #e46008;
-				}
-
-				.btn {
-					font-size: 30rpx;
-					line-height: 1.5;
-					color: #999;
-					background-color: transparent;
-					padding: 0 10rpx;
-					border: none;
-				}
-			}
-
-		}
-	}
-
-	.menus {
-		padding: 4rem 0rpx;
-
-		.menu-list {
-			margin-bottom: 19rpx;
-			background-color: #fff;
-
-		}
-	}
-</style>

+ 0 - 305
addons/h5/pages/center/password.vue

@@ -1,305 +0,0 @@
-<template>
-	<view class="app">
-		<u--form labelPosition="left" :label-style="labelStyle" :errorType="'toast'" :model="formData" :rules="rules"
-			ref="form" label-width="180">
-			<u-form-item label="手机号" prop="mobile" clearable leftIcon="account">
-				<u--input v-model="formData.mobile" border="none" placeholder="手机号" readonly maxlength="11"></u--input>
-			</u-form-item>
-			<u-form-item label="新密码" prop="password" clearable leftIcon="lock">
-				<u--input v-model="formData.password" password border="none" placeholder="新登录密码" clearable
-					maxlength="20"></u--input>
-			</u-form-item>
-			<u-form-item label="确认密码" prop="confirm_password" clearable leftIcon="lock">
-				<u--input v-model="formData.confirm_password" password border="none" placeholder="确认登录密码" clearable
-					maxlength="20">
-				</u--input>
-			</u-form-item>
-			<u-form-item class="code-box" label="验证码" prop="code" clearable leftIcon="photo">
-				<u--input v-model="formData.code" border="none" placeholder="验证码" clearable maxlength="20">
-				</u--input>
-				<u-code :seconds="seconds" @end="end" @start="start" ref="uCode" @change="codeChange"></u-code>
-				<text slot="right" class="code-btn" @tap="getCode">{{tips}}</text>
-			</u-form-item>
-
-			<view class="form-submit">
-				<u-button class="submit" size="large" shape="circle" :loading="loading" loadingText="提交中..."
-					@click="submit">确定修改
-				</u-button>
-			</view>
-		</u--form>
-	</view>
-</template>
-
-<script>
-	export default {
-		data() {
-			return {
-				loading: false,
-				seconds: 60,
-				tips: '获取验证码',
-				labelStyle: {
-					color: '#666',
-				},
-				formData: {
-					mobile: '',
-					password: '',
-					confirm_password: '',
-					code: '',
-				},
-				userInfo: {},
-				rules: {
-					mobile: [{
-						required: true,
-						message: '手机号不为空',
-						// blur和change事件触发检验
-						trigger: ['blur', 'change'],
-					}, {
-						pattern: /^[1-9][3-9][0-9]{9}$/g,
-						// 正则检验前先将值转为字符串
-						transform(value) {
-							return String(value);
-						},
-						message: '手机号格式错误'
-					}],
-					password: [{
-						required: true,
-						message: '新登录密码不为空',
-						// blur和change事件触发检验
-						trigger: ['blur', 'change'],
-					}, {
-						pattern: /^[0-9a-zA-Z\W_]{6,20}$/g,
-						// 正则检验前先将值转为字符串
-						transform(value) {
-							return String(value);
-						},
-						message: '新登录密码为6-20字母或数字或常用符号'
-					}],
-					confirm_password: [{
-						required: true,
-						message: '确认密码不为空',
-						// blur和change事件触发检验
-						trigger: ['blur', 'change'],
-
-					}, {
-						pattern: /^[0-9a-zA-Z\W_]{6,20}$/g,
-						message: '确认密码为6-20字母或数字或常用符号'
-					}],
-					code: [{
-						required: true,
-						message: '验证码不为空',
-						// blur和change事件触发检验
-						trigger: ['blur', 'change'],
-
-					}, {
-						pattern: /^[0-9]{6,8}$/g,
-						message: '验证码格式不正确'
-					}],
-				}
-			}
-		},
-		created() {
-			this.getInfo()
-		},
-		methods: {
-			codeChange(tips) {
-				this.tips = tips;
-			},
-			getCode() {
-				let _this = this
-				if (this.$refs.uCode.canGetCode) {
-					// 模拟向后端请求验证码
-
-					var pattern = /^[1-9][3-9][0-9]{9}$/g;
-					if (!_this.formData.mobile) {
-						uni.$u.toast('请输入手机号码');
-						return false;
-					}
-					if (!pattern.test(_this.formData.mobile)) {
-						uni.$u.toast('手机号码格式不正确');
-						return false;
-					}
-					uni.showLoading({
-						title: '发送中...'
-					})
-					this.$request.api('/api/v1/taxiuser/sms', {
-						mobile: this.formData.mobile
-					}, 'POST').then(res => {
-						uni.hideLoading()
-						// 打印调用成功回调
-						if (res.code == 0) {
-							uni.$u.toast('验证码已发送');
-						} else {
-							this.$u.toast(res.message);
-						}
-					}).catch(error => {
-						uni.hideLoading()
-						this.$u.toast(error);
-					})
-				} else {
-					uni.$u.toast('请稍后再试');
-				}
-			},
-			start() {
-
-			},
-			end() {
-
-			},
-			getInfo() {
-				let _this = this
-				this.$request.api('/api/v1/taxiuser/userInfo', {}, 'POST').then(res => {
-					// 打印调用成功回调
-					if (res.code == 10000) {
-						_this.userInfo = res.data
-						_this.formData.mobile = res.data.mobile
-					} else {
-						_this.$u.toast(res.message);
-					}
-				}).catch(error => {
-					console.log(error)
-					_this.$u.toast(error.errmsg);
-					setTimeout(function() {
-						uni.navigateTo({
-							url: '/pages/login/login'
-						})
-					}, 1200)
-				})
-
-			},
-			submit() {
-				let _this = this
-				this.$refs.form.validate().then(res => {
-					if (_this.formData.confirm_password != _this.formData.password) {
-						this.$u.toast('确认密码不正确');
-						return false;
-					}
-					this.$request.api('/api/v1/taxiuser/modify', this.formData, 'POST').then(res => {
-						// 打印调用成功回调
-						if (res.code == 10000) {
-							this.$u.toast('修改成功');
-							setTimeout(function() {
-								_this.gotoPage('/pages/login/login');
-							}, 1200)
-						} else {
-							this.$u.toast(res.message);
-						}
-					})
-
-				}).catch(errors => {
-					console.log(errors)
-				})
-
-			}
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	page {
-		height: 100%;
-	}
-
-	.app {
-		height: 100%;
-		background-color: #f1f1f1;
-	}
-
-	.u-form {
-		// height: 100%;
-		padding: 98rpx 38rpx;
-
-		.form-header {
-			color: #333;
-			font-size: 50rpx;
-			font-weight: bold;
-			margin-bottom: 120rpx;
-			text-align: center;
-		}
-
-		.u-form-item {
-			background-color: #FFFFFF;
-			padding: 10rpx 50rpx;
-			border-radius: 50rpx;
-			border-width: 0;
-			margin-bottom: 40rpx;
-
-		}
-
-		.u-border-bottom::after {
-			border-width: 0;
-		}
-
-		.u-form-item--left__content__label {
-			color: #060518;
-		}
-
-		.send-code {
-			background: linear-gradient(90deg, #F0D8A6 0%, #EBC181 100%);
-			color: #060518;
-			border-radius: 30rpx;
-			padding: 10rpx 30rpx;
-		}
-
-		.form-btn {
-			background: linear-gradient(90deg, #F0D8A6 0%, #EBC181 100%);
-			text-align: center;
-			padding: 25rpx 30rpx;
-			border-radius: 50rpx;
-		}
-
-		.forget {
-			color: #979797;
-
-			.forget-text {
-				float: left;
-			}
-
-			.reg-text {
-				float: right;
-			}
-
-			height: 60rpx;
-		}
-
-		.form-action {
-			height: 36rpx;
-			line-height: 36rpx;
-			padding: 19rpx 38rpx;
-			text-align: center;
-
-			.text {
-				color: #fff;
-				padding: 0 8rpx;
-			}
-
-			.link {
-				font-size: 28rpx !important;
-
-				display: inline-block;
-			}
-		}
-
-		.form-submit {
-			// width: 80%;
-			margin: 100rpx auto 19rpx;
-
-
-			.submit {
-				font-size: 36rpx;
-				color: #fff;
-				background-color: #e46008;
-			}
-		}
-
-
-		.code-box {
-			position: relative;
-		}
-
-		.code-btn {
-			color: #e46008;
-			// width: ;
-		}
-
-	}
-</style>

+ 0 - 82
addons/h5/pages/center/setting.vue

@@ -1,82 +0,0 @@
-<template>
-	<view class="main">
-		<view class="menus">
-			<view class="menu-list">
-				<u-cell-group :border="false" col="4">
-					<u-cell title="修改密码" value="" @click="gotoPage('/pages/center/password')">
-						<u-icon slot="icon" color="#e46008" size="36" name="lock"></u-icon>
-						<u-icon slot="right-icon" size="32" name="arrow-right"></u-icon>
-					</u-cell>
-					<u-cell title="接单设置" value="">
-						<u-icon slot="icon" color="#e46008" size="36" name="setting"></u-icon>
-						<u-switch slot="right-icon" :activeValue="1" :inactiveValue="2" activeColor="#e46008"
-							inactiveColor="#999" size="40" v-model="userInfo.order_status" @change="setOrderStatus">
-						</u-switch>
-					</u-cell>
-				</u-cell-group>
-			</view>
-		</view>
-	</view>
-</template>
-
-<script>
-	export default {
-		data() {
-			return {
-				userInfo: {
-					order_status: 2,
-				}
-			}
-		},
-		created() {
-			this.getInfo()
-		},
-		methods: {
-			// 用户信息
-			getInfo() {
-				let _this = this
-				this.$request.api('/api/v1/taxiuser/userInfo', {
-					type: 1
-				}, 'POST').then(res => {
-					// 打印调用成功回调
-					if (res.code == 10000) {
-						_this.userInfo = res.data
-					} else {
-						_this.$u.toast(res.message);
-					}
-				}).catch(error => {
-					console.log(error)
-					_this.$u.toast(error.errmsg);
-					setTimeout(function() {
-						uni.navigateTo({
-							url: '/pages/login/login'
-						})
-					}, 1200)
-				})
-
-			},
-			// 设置状态
-			setOrderStatus() {
-				let _this = this
-				console.log(_this.userInfo.order_status)
-				this.$request.api('/api/v1/taxiuser/setOrderStatus', {
-					status: _this.userInfo.order_status
-				}, 'POST').then(res => {
-					// 打印调用成功回调
-					if (res.code == 10000) {
-						_this.$u.toast(res.message);
-					} else {
-						_this.$u.toast(res.message);
-					}
-				}).catch(error => {
-					console.log(error)
-					_this.$u.toast(error.message);
-				})
-			}
-		}
-	}
-</script>
-
-<style>
-
-</style>

+ 274 - 372
addons/h5/pages/index/index.vue

@@ -1,484 +1,386 @@
 <template>
-	<view class="app">
-		<view class="main">
+	<view :class="'app theme'+shopInfo.theme_id">
+		<u-loading-page loading-mode="semicircle" loadingText="加载中..." :loading="loading" bg-color="#d81b10">
+		</u-loading-page>
+		<view class="main" v-if="!loading">
 			<u-toast ref="uToast"></u-toast>
+			<view class="header">
+				<view class="shop">
+					<view class="shop-name" v-text="shopInfo.name"></view>
+				</view>
+				<view class="banner">
+					<u-swiper :list="banners" @click="bannerTo" keyName="cover" radius="24" height="320"></u-swiper>
+				</view>
+			</view>
 			<view class="notices">
-				<u-notice-bar :fontSize="30" :text="params.total? '您有'+params.total+'个最新的派单,请及时查看并接单': '暂无新订单'"
-					mode="closable">
+				<u-notice-bar :fontSize="30" :speed="3000" :icon="'../../static/icons/notice-'+shopInfo.theme_id+'.png'"
+					:direction="'column'" :text="noticeList" @click="noticeTo" bgColor="#fff">
 				</u-notice-bar>
+				<image class="icon-right" :src="'../../static/icons/arrow-right-'+shopInfo.theme_id+'.png'"></image>
 			</view>
-			<view class="list-box" v-if="userInfo.order_status == 2">
-				<u-empty :textSize="30" mode="order" text="您未开启接单,暂无订单推送" icon="../../static/icons/empty.png">
-				</u-empty>
-			</view>
-			<view class="list-box" v-else-if="dataList.length<=0">
-				<u-empty :textSize="30" mode="order" text="暂无派单" icon="../../static/icons/empty.png">
-				</u-empty>
-			</view>
-			<view class="list-box" v-else>
-				<view class="list-item" v-for="(v,k) in dataList" :key="k">
-					<view class="text-item">
-						<text class="cate"><text
-								class="text">{{['人人快车','电动摩的','节能电动车','电动专车'][v.category_id]}}</text><text
-								class="text">乘客{{v.count+'人'}}</text></text>
-						<text class="status">
-							<text class="text status3">距离您 {{v.distance}}km</text>
-						</text>
-					</view>
-					<view class="text-item">
-						<u-icon class="icon" size="32" name="order" color="#e46008"></u-icon>
-						<text class="text">{{v.order_no}}</text>
-					</view>
-					<view class="text-item">
-						<u-icon class="icon" size="32" name="clock" color="#e46008"></u-icon>
-						<text class="text">{{v.created_at.text}}</text>
-						<text class="price">¥{{v.settle_price}}</text>
-					</view>
-					<view class="text-item">
-						<u-icon class="icon" size="32" name="map" color="#00a1d1"></u-icon>
-						<text class="text" @click="mapTo(v,1)">{{v.depart}}</text>
+			<view class="nav">
+				<!-- <view class="nav-item" @click="gotoPage('/pages/shop/index')">
+					<image class="bg" src="../../static/images/nav1.jpeg"></image>
+					<view>
+						<view class="name">{{}}</view>
+						<view class="text"></view>
 					</view>
-					<view class="text-item">
-						<u-icon class="icon" size="32" name="map-fill" color="#e46008"></u-icon>
-						<text class="text" @click="mapTo(v,2)">{{v.arrive}}</text>
+				</view>
+				<view class="nav-item" @click="gotoPage('/pages/shop/welfare')">
+					<image class="bg" src="../../static/images/nav2.jpeg"></image>
+					<view>
+
 					</view>
-					<view class="text-item">
-						<button class="btn confirm" @click="confirm(v.id,k)">立即接单</button>
+				</view> -->
+				<view class="nav-item" v-for="(v,k) in menus" :key="k" @click="gotoPage(v.url)">
+					<image class="bg" :src="v.cover"></image>
+					<view class="info">
+						<view class="text name">{{v.title}}</view>
+						<view class="text desc">{{v.description}}</view>
 					</view>
 				</view>
 			</view>
-			<u-loadmore v-if="dataList.length>0 && userInfo.order_status == 1" :fontSize="24" :status="loadMore" />
+
+			<view class="ad" v-if="adData.id">
+				<image class="ad-item" :src="adData.cover" @click="gotoPage(adData.url)"></image>
+			</view>
 		</view>
-		<tabbar :index="1"></tabbar>
+		<tabbar v-if="!loading" :index="1" :themeId="shopInfo.theme_id"></tabbar>
 	</view>
 </template>
 
 <script>
 	import tabbar from '../../components/tabbar.vue'
-	var QQMapWX = require('../../common/qqmap-wx-jssdk.min.js');
-	var qqmapsdk;
 	export default {
 		components: {
 			tabbar
 		},
 		data() {
 			return {
-				loadMore: 'loadmore',
+				loading: false,
 				textStyle: {
 					fontSize: 16,
 				},
-				loading: false,
-				loaded: false,
-				showLoading: true,
-				params: {
-					page: 1,
-					pageSize: 15,
-					total: 0,
-					lat: '',
-					lng: '',
+				shopInfo: {
+					theme_id: 1,
 				},
-				orderNotice: '您有3个最新的派单,请及时查看并接单',
+				adData: {},
+				noticeList: ['暂无公告'],
+				banners: [], // 轮播
+				menus: [], // 导航菜单
 				userInfo: {
 					id: 0
 				},
-				dataList: [],
-				waitOrder: {
-					id: 0
-				},
-				music: null,
-				token: '',
-				timer: {
-					wait: null,
-					list: null
-				}
 			}
 		},
 		onLoad() {
 			let _this = this
-			var token = uni.getStorageSync('rrc.token')
-			var reload = uni.getStorageSync('rrc.reload')
-			this.token = typeof(token) != 'undefined' ? token : '';
+			_this.getData()
 			_this.getInfo()
 
-		},
-		onPullDownRefresh() {
-			this.dataList = [];
-			this.loaded = false;
-			this.loadMore = false;
-			this.params.page = 1;
-			this.getData();
-		},
-		onReachBottom() {
-			if (!this.loaded) {
-				this.params.page++;
-				this.loadMore = true
-				this.getData();
-			}
-		},
-		onUnload() {
-			// 销毁
-			clearInterval(this.timer.list);
+
+
 		},
 		methods: {
-			mapTo(data, type) {
-				if (type == 1) {
-					// #ifdef H5
-					console.log('H5地图')
-					location.href = 'https://apis.map.qq.com/uri/v1/routeplan?type=drive&to=' + data.depart_address +
-						'&tocoord=' +
-						data.depart_lat + ',' + data.depart_lng + '&policy=1&referer=' + this.$request.mapKey;
-					// #endif
-					// APP: 打成app包的时候
-					// #ifdef APP-PLUS
-					console.log('APP地图')
-					location.href = 'qqmap://map/routeplan?type=drive&to=' + data.depart_address + '&tocoord=' + data
-						.depart_lat +
-						',' + data.depart_lng + '&referer=' + this.$request.mapKey;
-					// #endif
-				} else {
-					// #ifdef H5
-					console.log('H5地图')
-					location.href = 'https://apis.map.qq.com/uri/v1/routeplan?type=drive&to=' + data.arrive_address +
-						'&tocoord=' +
-						data.lat + ',' + data.lng + '&policy=1&referer=' + this.$request.mapKey;
-					// #endif
-					// APP: 打成app包的时候
-					// #ifdef APP-PLUS
-					console.log('APP地图')
-					location.href = 'qqmap://map/routeplan?type=drive&to=' + data.arrive_address + '&tocoord=' + data.lat +
-						',' + data.lng + '&referer=' + this.$request.mapKey;
-					// #endif
+			// 公告详情
+			noticeTo(index) {
+				var id = this.notices[index].id;
+				if (id) {
+					this.gotoPage('/pages/notice/detail?id=' + id);
 				}
 			},
-			initMap() {
-				let _this = this
-				_this.$refs.uToast.show({
-					type: 'loading',
-					title: '获取定位中...',
-					message: '获取定位中...',
-					duration: 999999,
-					mask: true
-				})
-				let time = (new Date()).getTime();
-				let location = uni.getStorageSync('rrc.location')
-				location = typeof(location) != 'undefined' && location ? JSON.parse(location) : {};
-
-				if (!location || !location.latitude || !location.longitude || location.time < time) {
-					uni.getLocation({
-						type: 'wgs84', //腾讯地图使用gcj02获取位置坐标
-						altitude: true,
-						geocode: true,
-						highAccuracyExpireTime: 100,
-						success: function(res) {
-							console.log('当前位置的经度:' + res.longitude);
-							console.log('当前位置的纬度:' + res.latitude);
-
-							res.expired = (new Date()).getTime() + 10000
-
-							uni.setStorageSync('rrc.location', JSON.stringify(res))
-
-							_this.params.lat = res.latitude
-							_this.params.lng = res.longitude
-							_this.initData();
-						},
-						fail: function(err) {
-							console.log(err)
-							_this.$refs.uToast.hide();
-							uni.getSystemInfo({
-								success(res) {
-									// 安卓
-									if (res.platform == 'android') {
-										try {
-											var context = plus.android.importClass(
-												'android.content.Context');
-											var locationManager = plus.android.importClass(
-												'android.location.LocationManager');
-											var main = plus.android.runtimeMainActivity();
-											var mainSvr = main.getSystemService(context
-												.LOCATION_SERVICE);
-											if (!mainSvr.isProviderEnabled(locationManager
-													.GPS_PROVIDER)) {
-												uni.showModal({
-													title: '提示',
-													content: '请打开定位服务功能,并授权',
-													showCancel: false,
-													success(result) {
-														if (result.confirm == true) {
-															if (!mainSvr.isProviderEnabled(
-																	locationManager
-																	.GPS_PROVIDER
-																)) {
-																var Intent = plus.android
-																	.importClass(
-																		'android.content.Intent'
-																	);
-																var Settings = plus.android
-																	.importClass(
-																		'android.provider.Settings'
-																	);
-																var newIntent = new Intent(
-																	Settings
-																	.ACTION_LOCATION_SOURCE_SETTINGS
-																);
-																main.startActivity(newIntent);
-															}
-														}
-													}
-												})
-											}
-										} catch (error) {
-											console.log
-											_this.$u.toast('打开定位失败');
-										}
-
-									}
-
-								},
-								fail() {
-									_this.$u.toast('打开定位失败');
-								}
-							})
-							console.log(err)
-
-						}
-					});
-				} else {
-					_this.params.lat = location.latitude
-					_this.params.lng = location.longitude
-					_this.initData();
+			// 轮播跳转
+			bannerTo(index) {
+				var url = this.banners[index].url;
+				if (url) {
+					this.gotoPage(url);
 				}
 			},
-			initData() {
-				let _this = this;
-				_this.getData()
-
-				// 定时更新我的订单
-				var time1 = parseInt(Math.random() * 5000) + 5000;
-				clearInterval(_this.timer.list);
-				_this.timer.list =
-					setInterval(function() {
-						time1 = parseInt(Math.random() * 5000) + 5000;
-						_this.getData();
-					}, time1)
-			},
 			getInfo() {
 				let _this = this
-				this.$request.api('/api/v1/taxiuser/userInfo', {
-					type: 2
+				this.$request.api('/api/v1/member/info', {
+					type: 3
 				}, 'POST').then(res => {
 					// 打印调用成功回调
-					if (res.code == 10000) {
+					setTimeout(function() {
+						_this.loading = false;
+					}, 800)
+					if (res.success == true) {
 						_this.userInfo = res.data
+						if (typeof(_this.userInfo.shop_info) != 'undefined' && _this.userInfo.shop_info) {
+							_this.shopInfo = _this.userInfo.shop_info
+						}
 
-						if (_this.userInfo.order_status != 2) {
-							_this.initMap()
-						} else {
+						if (typeof(_this.userInfo.bank_info.id) == 'undefined' || _this.userInfo.bank_info.id <=
+							0) {
 							uni.showModal({
-								title: '提示',
-								content: '您未开启接单功能,请先开启再接单',
-								showCancel: false,
-								success(result) {
-									if (result.confirm == true) {
-										uni.navigateTo({
-											url: '/pages/center/setting'
-										})
+								title: '账号提示',
+								content: '请先绑定收款信息再使用',
+								cancelText: '先不绑定',
+								confirmText: '立即绑定',
+								confirmColor: '#ff0000',
+								success: function(res) {
+									if (res.confirm) {
+										_this.gotoPage('/pages/member/bank');
 									}
 								}
 							})
 						}
-
-					} else if (res.errcode == 30001) {
+					} else if (res.code == 403) {
 						console.log(res)
-						_this.$u.toast(res.errmsg);
+						_this.$u.toast(res.msg);
 						setTimeout(function() {
 							uni.navigateTo({
 								url: '/pages/login/login'
 							})
 						}, 1200)
 					} else {
-						_this.$u.toast(res.errmsg);
+						_this.$u.toast(res.msg);
 					}
 				}).catch(error => {
 					console.log(error)
-					_this.$u.toast(error.errmsg);
+					_this.$u.toast(error.msg);
 				})
 
 			},
-			// 获取列表
-			// 列表
+			// 获取主页数据
 			getData() {
 				let _this = this
-				this.loadStatus = 'loading';
-				this.$request.api('/api/v1/taxiuser/order', _this.params, 'POST').then(res => {
-					_this.loadStatus = 'loadmore'
-					_this.$refs.uToast.hide();
-					if (res.code == 10000) {
-						console.log(res.data.list)
-						_this.params.total = res.data.total
+				this.$request.api('/api/v1/index/data', {}, 'POST').then(res => {
+					// 打印调用成功回调
+					if (res.success == true) {
+						var banners = [];
+						var notices = [];
+						_this.banners = typeof(res.data.banners) != 'undefined' ? res.data.banners : [];
+						_this.notices = typeof(res.data.notices) != 'undefined' ? res.data.notices : [];
+						_this.menus = typeof(res.data.menus) != 'undefined' ? res.data.menus : [];
+						_this.adData = typeof(res.data.ad) != 'undefined' ? res.data.ad : {};
+						if (_this.notices.length > 0) {
+							for (var i in _this.notices) {
+								notices.push(_this.notices[i].title)
+							}
+							_this.noticeList = notices
+							console.log(_this.noticeList)
+						}
+					} else if (res.code == 403) {
+						console.log(res)
+						_this.$u.toast(res.msg);
+						setTimeout(function() {
+							uni.navigateTo({
+								url: '/pages/login/login'
+							})
+						}, 1200)
+					} else {
+						_this.$u.toast(res.msg);
+					}
+				}).catch(error => {
+					console.log(error)
+					_this.$u.toast(error.msg);
+				})
 
-						// 有新订单
-						var hasNewOrder = typeof(res.data.hasNewOrder) != 'undefined' ? res.data.hasNewOrder :
-							false;
-						if (hasNewOrder && !_this.music && res.data.list.length > 0) {
-							_this.music = uni.createInnerAudioContext(); //创建播放器对象
+			},
+		}
+	}
+</script>
+<style>
+	page {
+		height: 100%;
+	}
+</style>
+<style lang="scss" scoped>
+	.app {
+		height: 100%;
+		background: url('../../static/images/bg.png') repeat #f9f9f9;
+		background-size: contain;
+	}
 
-							_this.music.src = "../../static/mp3/order.mp3";
+	.app.theme1 {
+		background: url('../../static/images/bg1-1.png') repeat #f9f9f9;
+		background-size: 100% 100%;
+		// background-size: cover;
+	}
 
-							_this.music.play(); //执行播放
+	.app.theme2 {
+		background: url('../../static/images/bg2.png') repeat #f9f9f9;
+		// background-size: cover;
+		background-size: contain;
+	}
 
-							_this.music.onEnded(() => {
+	.app.theme3 {
+		background: url('../../static/images/bg3.png') repeat #f9f9f9;
+		// background-size: cover;
+		background-size: contain;
+	}
 
-								//播放结束
+	.app.theme4 {
+		background: url('../../static/images/bg4.png') repeat #f9f9f9;
+		// background-size: cover;
+		background-size: contain;
+	}
 
-								_this.music = null;
+	.header {
+		//background: url('../../static/images/bg1.png') repeat #f9f9f9;
+		background-size: contain;
+	}
 
-							});
-						}
+	.shop .shop-name {
+		color: #fff;
+		text-align: center;
+		padding: 38rpx 0 28rpx;
+		font-size: 38rpx;
+		font-weight: bold;
+	}
 
-						if (_this.loadMore == true && res.data.list.length > 0) {
-							let len = res.data.list.length
+	.banner {
+		width: calc(100% - 56rpx);
+		margin: 0 auto;
+	}
 
-							for (let i = 0; i <= len; i++) {
-								if (typeof(res.data.list[i]) != 'undefined') {
-									_this.dataList.push(res.data.list[i])
-								}
-							}
-							_this.loadMore = false
+	.notices {
+		position: relative;
+		width: calc(100% - 56rpx);
+		background-color: #fff;
+		margin: 30rpx auto;
+		border-radius: 76rpx;
+	}
 
-						} else if (res.data.list.length > 0) {
-							_this.dataList = res.data.list ? res.data.list : [];
-						}
+	.u-notice-bar {
+		border-radius: 76rpx;
+	}
 
-						if (this.params.page != 1 && res.data.list.length <= 0) {
-							_this.loaded = true
-							_this.loadStatus = 'nomore'
-						}
-						if (this.params.page == 1 && res.data.list.length <= 0) {
-							_this.loaded = true
-							_this.loadStatus = 'nodata'
-							this.dataList = [];
-						}
 
-						uni.stopPullDownRefresh()
+	.u-notice__content__text {
+		font-size: 28rpx !important;
+	}
 
-					}
-				}).catch(error => {
-					_this.loadMore = false;
-					_this.loadStatus = 'loadmore';
-				})
+	.nav {
+		display: flex;
+	}
 
-			},
-			// 接单
-			confirm(id, index) {
-				let _this = this
+	.nav .nav-item {
+		position: relative;
+		width: calc((100% - 84rpx)/2);
+		margin-left: 28rpx;
+		min-height: 172rpx;
 
-				uni.showLoading({
-					title: '提交中...',
-				})
+	}
 
-				_this.$request.api('/api/v1/taxiuser/receive', {
-						id: id
-					}, 'POST')
-					.then(res => {
-						// 打印调用成功回调
-						uni.hideLoading()
-						if (parseInt(res.code) == 10000) {
-							_this.$u.toast(res.message);
-							setTimeout(function() {
-								uni.navigateTo({
-									url: '/pages/order/index'
-								})
-							}, 800)
-						} else {
-							_this.$u.toast(res.message);
-						}
-					})
+	.nav .nav-item .bg {
+		width: 100%;
+		height: 100%;
+		display: inline-block;
+		position: relative;
+		z-index: 1;
+		border-radius: 24rpx;
+	}
 
+	.nav .nav-item .info {
+		position: absolute;
+		z-index: 2;
+		height: 100%;
+		width: 100%;
+		top: 0;
+		color: #fff;
+	}
 
-			}
-		}
+	.nav .nav-item .info .text {
+		margin: 0 10%;
 	}
-</script>
 
-<style lang="scss" scoped>
-	.app {
-		height: 100%;
+	.nav .nav-item .info .name {
+		font-size: 18px;
+		font-weight: bold;
+		margin: 10% 10% 4%;
 	}
 
-	.u-notice__content__text {
-		font-size: 28rpx !important;
+	.ad {
+		margin: 28rpx 28rpx;
 	}
 
-	.u-empty {
-		margin-top: 35% !important;
+	.ad .ad-item {
+		width: 100%;
+		height: 400rpx;
+		border-radius: 24rpx;
 	}
 
-	.list-box {
-		padding-top: 30rpx;
+	.icon-right {
+		display: inline-block;
+		width: 38rpx;
+		height: 38rpx;
+		vertical-align: middle;
+		position: absolute;
+		top: 15rpx;
+		right: 18rpx;
 	}
 
-	.list-item {
-		padding-bottom: 20rpx;
-		margin: 0 30rpx;
-		border-bottom: 8rpx solid #f1f1f1;
+	@media screen and (max-width: 768px) {
+		.shop .shop-name {
+			padding: 19rpx 0;
+		}
 
-		.text-item {
-			padding: 10rpx 0;
+		.notices {
+			margin: 18rpx auto;
+		}
 
-			.cate {
-				font-weight: bold;
+		.nav .nav-item {
+			min-height: 118rpx;
+		}
 
-				.text {
-					margin-right: 10rpx;
-				}
-			}
+		.ad .ad-item {
+			height: 320rpx;
+			padding-bottom: 130rpx;
+		}
+	}
 
-			.icon {
-				margin-right: 10rpx;
-				display: inline-block;
-			}
+	@media screen and (max-height: 900px) {
+		.shop .shop-name {
+			padding: 52rpx 0;
+		}
 
-			.status {
-				float: right;
-			}
+		.notices {
+			margin: 38rpx auto;
+		}
 
-			.status3 {
-				color: #e46008;
-			}
+		.nav .nav-item {
+			min-height: 178rpx;
+		}
 
-			.status4 {
-				color: green;
-			}
+		.ad .ad-item {
+			height: 460rpx;
+			padding-bottom: 0;
+		}
+	}
 
-			.status5 {
-				color: #999;
-			}
+	@media screen and (max-height: 800px) {
+		.shop .shop-name {
+			padding: 38rpx 0;
+		}
 
-			.confirm {
-				background-color: #e46008;
-				color: #fff;
-			}
+		.notices {
+			margin: 30rpx auto;
+		}
 
-			.price {
-				margin-left: 5px;
-				color: #e46008;
-				padding: 2px 8px;
-				float: right;
-				font-size: 16px;
-				font-weight: bold;
-			}
+		.nav .nav-item {
+			min-height: 172rpx;
 		}
-	}
 
+		.ad .ad-item {
+			height: 400rpx;
+			padding-bottom: 0;
+		}
+	}
 
-	.u-loadmore {
-		height: 60rpx !important;
-		padding: 19rpx;
+	@media screen and (max-height: 700px) {
+		.ad .ad-item {
+			height: 360rpx;
+			padding-bottom: 0;
+		}
+	}
 
-		.u-loadmore__content__text,
-		.u-line-1 {
-			height: 32rpx;
-			line-height: 60rpx !important;
+	@media screen and (max-height: 600px) {
+		.ad .ad-item {
+			height: 380rpx;
+			padding-bottom: 0;
 		}
 	}
 </style>

+ 0 - 144
addons/h5/pages/index/map.vue

@@ -1,144 +0,0 @@
-<template>
-	<view class="main">
-		<!-- <iframe
-			:src="'https://apis.map.qq.com/uri/v1/marker?marker=coord:'+location.latitude+','+location.longitude+';title:'++';addr:'+info.title+'&referer='"
-			frameborder="0"></iframe> -->
-		<map v-if="location.latitude" class="qq-map" id="map" :markers="markers" :subkey="mapKey"
-			:longitude="location.longitude" :latitude="location.latitude" scale="14" :polyline="polyline"
-			layer-style="style1"></map>
-
-		<tabbar :index="type"></tabbar>
-	</view>
-</template>
-
-<script>
-	import tabbar from '../../components/tabbar.vue'
-	var QQMapWX = require('../../common/qqmap-wx-jssdk.min.js');
-	var qqmapsdk;
-	export default {
-		components: {
-			tabbar
-		},
-		data() {
-			return {
-				mapKey: '',
-				markers: [],
-				location: {
-					longitude: '',
-					latitude: ''
-				},
-				info: {
-					title: ''
-				},
-				polyline: [],
-				type: '1',
-			}
-		},
-		onLoad(options) {
-			var _this = this
-			console.log(options)
-			var latitude = typeof(options.latitude) != 'undefined' ? options.latitude : '';
-			var longitude = typeof(options.longitude) != 'undefined' ? options.longitude : '';
-			var location = typeof(options.location) != 'undefined' ? options.location : '';
-			_this.type = typeof(options.type) != 'undefined' ? parseInt(options.type) : 1;
-			_this.info.title = typeof(options.title) != 'undefined' ? options.title : '商家位置';
-			_this.mapKey = _this.$request.mapKey
-			//获取当前的地理位置、速度
-			if (!location || !latitude || !longitude) {
-				_this.$u.toast('参数错误');
-				setTimeout(function() {
-					uni.navigateBack({
-						delta: '-1'
-					})
-				}, 800);
-				return false;
-			}
-
-			// 获取定位
-			uni.getLocation({
-				type: 'wgs84', //腾讯地图使用gcj02获取位置坐标
-				altitude: true,
-				geocode: true,
-				highAccuracyExpireTime: 100,
-				success: function(res) {
-					console.log('当前位置的经度:' + res.longitude);
-					console.log('当前位置的纬度:' + res.latitude);
-
-					res.expired = (new Date()).getTime() + 10000
-					_this.location = res
-					uni.setStorageSync('rrc.location', JSON.stringify(res))
-					uni.openLocation({
-						type: 'gcj02',
-						latitude: parseFloat(latitude),
-						longitude: parseFloat(longitude),
-						name: _this.info.title,
-						address: location,
-						scale: 28
-					})
-				},
-				fail: function(err) {
-					uni.getSystemInfo({
-						success(res) {
-							// 安卓
-							var plusObj = typeof(plus) != 'undefined' ? plus : ''
-							if (res.platform == 'android' && plusObj) {
-								var context = plus.android.importClass(
-									'android.content.Context');
-
-								var locationManager = plus.android.importClass(
-									'android.location.LocationManager');
-								var main = plus.android.runtimeMainActivity();
-								var mainSvr = main.getSystemService(context.LOCATION_SERVICE);
-								if (!mainSvr.isProviderEnabled(locationManager.GPS_PROVIDER)) {
-									uni.showModal({
-										title: '提示',
-										content: '请打开定位服务功能,并授权',
-										showCancel: false,
-										success(result) {
-											if (result.confirm == true) {
-												if (!mainSvr.isProviderEnabled(
-														locationManager.GPS_PROVIDER
-													)) {
-													var Intent = plus.android
-														.importClass(
-															'android.content.Intent');
-													var Settings = plus.android
-														.importClass(
-															'android.provider.Settings'
-														);
-													var newIntent = new Intent(Settings
-														.ACTION_LOCATION_SOURCE_SETTINGS
-													);
-													main.startActivity(newIntent);
-												}
-											}
-										}
-									})
-								}
-							} else {
-								_this.$u.toast('打开定位失败');
-							}
-
-						},
-						fail() {
-							_this.$u.toast('打开定位失败');
-						}
-					})
-					console.log(err)
-
-				}
-			});
-		},
-		methods: {
-
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	.map,
-	.qq-map {
-		width: 100%;
-		height: 100%;
-	}
-</style>

+ 42 - 1
addons/h5/pages/login/login.vue

@@ -26,6 +26,10 @@
 				<u-button class="submit" size="large" shape="circle" :loading="loading" loadingText="登录中..."
 					@click="submit">登录
 				</u-button>
+				<view class="download">
+					<u-link :href="config.app_download_url" fontSize="24" text="APP下载" color="#fff" mpTips="地址复制成功">
+					</u-link>
+				</view>
 			</view>
 		</u--form>
 	</view>
@@ -44,6 +48,9 @@
 					password: '',
 					agree: false,
 				},
+				config: {
+					app_download_url: ''
+				},
 				rules: {
 					mobile: [{
 						required: true,
@@ -87,15 +94,34 @@
 			}
 		},
 		onLoad() {
-			// uni.removeStorageSync('rrc.token');
+			var data = localStorage.getItem('hy.login');
+			data = data && typeof(data) != 'undefined' ? JSON.parse(data) : {};
+			if (data) {
+				this.formData = data;
+				this.formData.password = ''
+			}
+			uni.removeStorageSync('qb.token');
+			this.getConfig()
 		},
 		methods: {
+			// 配置
+			getConfig() {
+				var _this = this
+				this.$request.api('/api/v1/index/config', {}, 'POST').then(res => {
+					_this.config = res.data;
+				})
+			},
+			// 登录
 			submit() {
 				let _this = this
 				_this.$refs.form.validate().then(res => {
 					uni.showLoading({
 						title: '登录中...'
 					})
+					localStorage.setItem('hy.login', JSON.stringify({
+						mobile: this.formData.mobile,
+						shop_code: this.formData.shop_code
+					}))
 					this.$request.api('/api/v1/login', this.formData, 'POST').then(res => {
 						uni.hideLoading()
 						// 打印调用成功回调
@@ -213,4 +239,19 @@
 
 
 	}
+
+	.download {
+		padding: 28rpx 0;
+		text-align: center;
+
+		.u-link {
+			line-height: 36rpx !important;
+			text-align: center;
+			display: inline-block !important;
+		}
+
+		.u-link:hover {
+			color: #B1120A !important;
+		}
+	}
 </style>

+ 340 - 21
addons/h5/pages/order/detail.vue

@@ -1,22 +1,341 @@
-<template>
-	<view>
-		
-	</view>
-</template>
-
-<script>
-	export default {
-		data() {
-			return {
-				
-			}
-		},
-		methods: {
-			
-		}
-	}
-</script>
-
-<style>
-
+<template>
+	<view class="app">
+		<view class="main" v-if="info.id">
+			<view class="title">商品信息 <text class="border"></text></view>
+			<view class="goods">
+				<image class="thumb" :src="info.thumb"></image>
+				<view class="info">
+					<view class="name">{{info.goods_name}} <text class="price">¥{{info.price}}</text></view>
+					<view class="code">商品编号:{{info.code}} <text class="num">x1</text></view>
+				</view>
+			</view>
+			<view class="line"></view>
+			<view class="title">交易信息 <text class="border"></text></view>
+			<view class="block sell-info">
+				<view class="text code">订单编号:<text class="text1">{{info.order_sn}}</text></view>
+				<view class="text mobile">卖家手机号:<text class="text1">{{info.sell_mobile}}</text></view>
+				<view class="text mobile">买家手机号:<text class="text1">{{info.buy_mobile}}</text></view>
+				<view class="text time">交易时间:<text class="text1">{{info.create_time_text}}</text></view>
+			</view>
+
+			<view class="line"></view>
+			<view class="trade">
+				<view class="text total">交易价格:<text class="text1 price">¥{{info.price}}</text></view>
+				<view class="text total"><text class="text1 price1">¥{{info.real_price}}</text></view>
+				<view class="text bank">
+					收款人姓名:<text class="text1 copy" v-clipboard:copy="bankInfo.realname" v-clipboard:success="onCopy"
+						v-clipboard:error="copyError">{{bankInfo.realname}}</text>
+				</view>
+				<view class="text bank">
+					收款人卡号:<text class="text1 copy" v-clipboard:copy="bankInfo.bank_num" v-clipboard:success="onCopy"
+						v-clipboard:error="copyError">{{bankInfo.bank_num}}</text>
+				</view>
+				<view class="text bank">
+					收款人开户行:<text class="text1 copy" v-clipboard:copy="bankInfo.bank_name" v-clipboard:success="onCopy"
+						v-clipboard:error="copyError">{{bankInfo.bank_name}}</text>
+				</view>
+			</view>
+			<view class="line"></view>
+			<view class="title">打款凭证 <text class="border"></text></view>
+			<view class="payment">
+				<u-avatar class="avatar" shape="square" :size="120" :src="formData.pay_img_url"
+					default-url="../../static/images/icon-payment.png"></u-avatar>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import VueClipboard from 'vue-clipboard2' //引入插件
+	export default {
+		data() {
+			return {
+				info: {},
+				bankInfo: {},
+				formData: {
+					pay_img: '',
+					pay_img_url: '../../static/images/icon-payment.png'
+				},
+				userInfo: {},
+				fileList: [],
+				uploadConfig: {
+					url: this.$request.baseUrl + '/api/v1/uploadImage',
+					header: {
+						Authorization: "Bearer " + uni.getStorageSync('qb.token')
+					}
+				},
+			}
+		},
+		onLoad(options) {
+			let id = typeof(options.id) != 'undefined' ? options.id : 0;
+			if (id <= 0) {
+				this.$u.toast('参数错误')
+				return false;
+			}
+
+			this.getData(id)
+			this.getInfo()
+		},
+		methods: {
+			onCopy(e) {
+				this.$u.toast('复制成功');
+			},
+			copyError(e) {
+				this.$u.toast('复制失败');
+			},
+			// 用户信息
+			getInfo() {
+				let _this = this
+				this.$request.api('/api/v1/member/info', {
+					type: 3
+				}, 'POST').then(res => {
+					// 打印调用成功回调
+					if (res.success == true) {
+						_this.userInfo = res.data
+					} else if (res.code == 403) {
+						console.log(res)
+						_this.$u.toast(res.msg);
+						setTimeout(function() {
+							uni.navigateTo({
+								url: '/pages/login/login'
+							})
+						}, 1200)
+					} else {
+						_this.$u.toast(res.msg);
+					}
+				}).catch(error => {
+					console.log(error)
+				})
+
+			},
+			// 交易信息
+			getData(id) {
+				let _this = this
+				this.$request.api('/api/v1/trade/info', {
+					id: id
+				}, 'POST').then(res => {
+					// 打印调用成功回调
+					if (res.success == true) {
+						_this.info = res.data
+						_this.formData.pay_img_url = _this.info.pay_img
+						_this.bankInfo = typeof(res.data.bank_info) != 'undefined' ? res.data.bank_info : {}
+					} else {
+						_this.$u.toast(res.msg);
+					}
+				}).catch(error => {
+					console.log(error)
+				})
+			},
+			async afterRead(event) {
+				// 当设置 multiple 为 true 时, file 为数组格式,否则为对象格式
+				let lists = [].concat(event.file)
+				console.log(lists)
+				const result = await this.uploadFilePromise(lists[0].url)
+			},
+			uploadFilePromise(url) {
+				let _this = this
+				return new Promise((resolve, reject) => {
+					let a = uni.uploadFile({
+						url: this.$request.baseUrl + '/api/v1/uploadImage', // 仅为示例,非真实的接口地址
+						filePath: url,
+						header: _this.uploadConfig.header,
+						name: 'file',
+						formData: {},
+						success: (res) => {
+							console.log(res)
+							let resuult = JSON.parse(res.data)
+							if (resuult.success == true) {
+								_this.formData.pay_img = resuult.data.path
+								_this.formData.pay_img_url = resuult.data.url
+								resolve(resuult.data)
+							} else {
+								_this.$u.toast(resuult.msg);
+							}
+
+						}
+					});
+				})
+			},
+			pay() {
+				let _this = this
+				if (_this.formData.pay_img == '') {
+					_this.$u.toast('请上传打款凭证');
+					return false;
+				}
+				uni.showModal({
+					title: '操作提示',
+					content: '确定提交付款信息?',
+					success: function(e) {
+						if (e.confirm) {
+							_this.$request.api('/api/v1/trade/pay', {
+								id: _this.info.id,
+								pay_img: _this.formData.pay_img
+							}, 'POST').then(res => {
+								// 打印调用成功回调
+								if (res.success == true) {
+									_this.$u.toast(res.msg);
+								} else {
+									_this.$u.toast(res.msg);
+								}
+							}).catch(error => {
+								console.log(error)
+							})
+						}
+					}
+				})
+
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	page {
+		height: 100%;
+	}
+
+	.app {
+		height: 100%;
+	}
+
+	.main {
+		height: 100%;
+		padding-bottom: 88rpx;
+		// background-color: #f9f9f9;
+	}
+
+	.title {
+		background-color: #fff;
+		padding: 18rpx 18rpx;
+		font-size: 32rpx;
+		font-weight: bold;
+
+		.border {
+			margin: 0 4rpx;
+			border-bottom: 2rpx solid #efe8e8;
+			display: block;
+			padding: 4rpx 0;
+		}
+	}
+
+	.goods {
+		padding: 18rpx;
+		background-color: #fff;
+
+		.thumb {
+			width: 180rpx;
+			height: 160rpx;
+			vertical-align: middle;
+			margin-right: 18rpx;
+			display: inline-block;
+		}
+
+		.info {
+			width: calc(100% - 216rpx);
+			vertical-align: top;
+			display: inline-block;
+
+			.name {
+				font-size: 32rpx;
+				font-weight: bold;
+				vertical-align: top;
+				margin-bottom: 10rpx;
+
+				.price {
+					float: right;
+					color: #ff0000;
+					// font-weight: normal;
+				}
+
+
+
+			}
+
+			.code {
+				color: #666;
+
+				.num {
+					float: right;
+				}
+			}
+		}
+
+
+	}
+
+	.sell-info {
+		color: #666;
+		background-color: #fff;
+		padding: 10rpx 18rpx;
+
+		.text {
+			margin-bottom: 18rpx;
+
+			.text1 {
+				float: right;
+			}
+
+
+		}
+	}
+
+	.trade {
+		color: #666;
+		background-color: #fff;
+		padding: 10rpx 18rpx;
+
+		.text {
+			margin-bottom: 18rpx;
+			overflow: hidden;
+
+			.text1 {
+				float: right;
+			}
+
+			.price {
+				color: #ff0000;
+				font-size: 32rpx;
+			}
+
+			.price1 {
+				font-size: 26rpx;
+			}
+
+			.copy {
+				color: #719abd;
+			}
+		}
+
+
+	}
+
+	.payment {
+		background-color: #fff;
+		padding: 0rpx 18rpx;
+	}
+
+	.submit {
+		position: fixed;
+		bottom: 0;
+		width: 100%;
+		background-color: rgb(216, 27, 16);
+		color: #fff;
+		font-size: 36rpx;
+		font-weight: bold;
+		text-align: center;
+		height: 88rpx;
+		line-height: 88rpx;
+	}
+
+	.submit.pay {
+		background-color: #a8a1a1;
+		opacity: 0.8;
+	}
+
+	.line {
+		// background-color: #b4b4b4;
+		height: 12rpx;
+		width: 100%;
+		display: block;
+	}
 </style>

+ 416 - 175
addons/h5/pages/order/index.vue

@@ -1,6 +1,32 @@
 <template>
 	<view class="app">
+
+		<u-toast ref="uToast"></u-toast>
 		<view class="main">
+			<view class="u-tabs">
+				<scroll-view scroll-x="true" class="tab-scroll">
+					<view class="tab-box">
+						<view :class="'tab '+(params.status==k?'active':'')" @click="switchType(k)"
+							:style="'width: calc((100% - 30rpx)/'+tabs.length+');'" v-for="(v,k) in tabs"
+							:key="'tab'+k">
+							{{v.name}}
+						</view>
+					</view>
+				</scroll-view>
+			</view>
+			<view class="counts" v-if="params.status==0 || params.status==4">
+				<view class="text"><text class="label">今日流水:</text> <text class="num">¥{{counts.total}}</text></view>
+				<view class="text"><text class="label">总上架费:</text> <text class="num">¥{{counts.fee}}</text></view>
+				<view class="text"><text class="label">今日收益:</text> <text class="num">¥{{counts.profit}}</text></view>
+				<view class="text" v-if="params.status==4"><text class="label">总数量: </text><text
+						class="num">{{params.total}}单</text></view>
+			</view>
+			<view class="counts" v-else-if="params.status==1">
+				<view class="text">总数量: <text class="num">{{params.total}}单</text></view>
+			</view>
+			<view v-else class="block">
+
+			</view>
 			<view class="list-box" v-if="dataList.length<=0">
 				<view class="no-data">
 					<u-empty mode="data" icon="../../static/icons/data.png" text="暂无订单">
@@ -9,41 +35,50 @@
 			</view>
 			<view class="list-box" v-else>
 				<view class="list-item" v-for="(v,k) in dataList" :key="k">
-					<view class="text-item">
-						<text class="cate"><text
-								class="text">{{['人人快车','电动摩的','节能电动车','电动专车'][v.category_id]}}</text><text
-								class="text">{{v.count+'人'}}</text>
-							<text class="text">行程{{v.km+'km'}}</text></text>
-						<text class="status">
-							<text class="text status4" v-if="v.status==4">已完成</text>
-							<text class="text status5" v-else-if="v.status==5">已取消</text>
-							<text class="text status3" v-else>进行中</text>
-							<u-icon class="icon " size="32" name="arrow-right"></u-icon>
-						</text>
-					</view>
-					<view class="text-item">
-						<u-icon class="icon" size="32" name="order" color="#e46008"></u-icon>
-						<text class="text">{{v.order_no}}</text>
-					</view>
-					<view class="text-item">
-						<u-icon class="icon" size="32" name="phone" color="#e46008"></u-icon>
-						<text class="text" @click="callPhone(v.mobile)">{{v.mobile}} </text>
-						<text class="price">¥{{v.settle_price}}</text>
-					</view>
-					<view class="text-item">
-						<u-icon class="icon" size="32" name="clock" color="#e46008"></u-icon>
-						<text class="text">{{v.created_at.text}} </text>
+					<view class="title">
+						<text class="order-sn">单号:{{v.order_sn}}</text>
+						<text v-if="v.is_out" class="status success">已售出</text>
+						<text v-else-if="v.status==4"
+							:class="'status '+(['','danger','danger','danger','success'][v.is_sell])">{{(['待上架','待店长审核',(v.is_split==1?'已拆分':'已上架')][v.is_sell])}}</text>
+
+						<text v-else-if="params.status == 2"
+							:class="'status '+(['','danger','danger','danger','success'][v.status])">{{(['','待收款','待确认','待上架','已出售'][v.status])}}</text>
+						<text v-else
+							:class="'status '+(['','danger','danger','danger','success'][v.status])">{{(['','待付款','待确认','待上架','已出售'][v.status])}}</text>
 					</view>
-					<view class="text-item">
-						<u-icon class="icon" size="32" name="map" color="#00a1d1"></u-icon>
-						<text class="text" @click="mapTo(v,1)">{{v.depart}}</text>
+					<view class="info">
+						<image class="thumb" :src="v.thumb"></image>
+						<view class="goods">
+							<view class="title">{{v.goods_name}} 【编号:{{v.code}}】</view>
+							<view class="text"><text class="sell">卖家</text><text
+									class="text1">{{v.sell_nickname}}({{v.sell_mobile}})</text></view>
+							<view class="text"><text class="buy">买家</text><text
+									class="text1">{{v.nickname}}({{v.buy_mobile}})</text></view>
+						</view>
 					</view>
-					<view class="text-item">
-						<u-icon class="icon" size="32" name="map-fill" color="#e46008"></u-icon>
-						<text class="text" @click="mapTo(v,2)">{{v.arrive}}</text>
+					<view class="info-ext">
+						<view class="time"><text>买入时间:{{v.create_time}}</text> <text class="fee"
+								v-if="!v.confirm_time">上架费:<text class="text">¥{{v.fee}}</text></text></view>
+						<view class="time" v-if="v.confirm_time"><text class="time-text">确认时间:{{v.confirm_time}}</text>
+							<text class="fee">上架费:<text class="text">¥{{v.fee}}</text></text>
+						</view>
+						<view class="price">商品价格:<text class="price-text">¥{{v.new_price}}</text> <text
+								class="price1">原价:¥{{v.new_real_price}}</text></view>
 					</view>
-					<view class="text-item" v-if="v.status==3">
-						<button class="btn confirm" @click="confirm(v.id,k)">确认送达</button>
+					<view class="actions" v-if="params.status>0">
+						<view class="btn primary" v-if="v.status==1 && v.user_id==userInfo.id"
+							@click="gotoPage('/pages/order/pay?id='+v.id)">支付
+						</view>
+						<view class="btn danger" v-if="v.status==2 && v.sell_uid==userInfo.id" @click="confirm(v.id,k)">
+							确认收款</view>
+						<view class="btn danger" v-if="v.status==3 && v.user_id == userInfo.id" @click="doSell(v,k)">
+							上架</view>
+						<view class="btn primary" v-if="v.status<3&&v.status>1 && v.user_id==userInfo.id"
+							@click="gotoPage('/pages/order/appeal?id='+v.id)">申诉
+						</view>
+						<view class="btn info" v-if="v.status>=1&&v.status<=4"
+							@click="gotoPage('/pages/order/detail?id='+v.id)">详情
+						</view>
 					</view>
 				</view>
 			</view>
@@ -70,170 +105,178 @@
 					page: 1,
 					pageSize: 20,
 					total: 0,
+					type: 1,
+					status: 0,
 				},
 				userInfo: {
 					id: 0
 				},
 				dataList: [],
-				waitOrder: {
-					id: 0
+				current: 0,
+				tabs: [{
+					name: '全部',
+				}, {
+					name: '待付款'
+				}, {
+					name: '售出'
+				}, {
+					name: '待上架'
+				}, {
+					name: '商品'
+				}, {
+					name: '异常订单'
+				}],
+				counts: {
+					total: 0,
+					service_fee: 0,
+					bonus: 0,
+					fee: 0,
 				},
-				timer: {
-					wait: null,
-					list: null
-				}
+				timerId: null,
 			}
 		},
-		created() {
+		onLoad(options) {
 			let _this = this
+			this.current = typeof(options.type) != 'undefined' ? options.type : 0;
+			this.params.status = this.current;
+
 			_this.getInfo()
-			_this.getWaitOrder()
-			_this.getData()
-
-			// 定时获取待服务订单
-			var time = parseInt(Math.random() * 3000) + 3000;
-			clearInterval(_this.timer.wait);
-			_this.timer.wait =
-				setInterval(function() {
-					time = parseInt(Math.random() * 3000) + 3000;
-					_this.getWaitOrder();
-				}, time)
-
-			// 定时更新我的订单
-			var time1 = parseInt(Math.random() * 5000) + 5000;
-			clearInterval(_this.timer.list);
-			_this.timer.list =
-				setInterval(function() {
-					time1 = parseInt(Math.random() * 5000) + 5000;
-					_this.getData();
-				}, time1)
+
+
+
 		},
 		onPullDownRefresh() {
 			this.dataList = [];
 			this.loaded = false;
 			this.loadMore = false;
 			this.params.page = 1;
-			this.getData();
+			this.getData(1);
+			this.getInfo()
 		},
 		onReachBottom() {
 			if (!this.loaded) {
 				this.params.page++;
 				this.loadMore = true
-				this.getData();
+				this.getData(0);
 			}
 		},
-		onUnload() {
-			// 销毁
-			clearInterval(this.timer.wait);
-			clearInterval(this.timer.list);
-		},
 		methods: {
-			mapTo(data, type) {
-				if (type == 1) {
-					// #ifdef H5
-					console.log('H5地图')
-					location.href = 'https://apis.map.qq.com/uri/v1/routeplan?type=drive&to=' + data.depart_address +
-						'&tocoord=' +
-						data.depart_lat + ',' + data.depart_lng + '&policy=1&referer=' + this.$request.mapKey;
-					// #endif
-					// APP: 打成app包的时候
-					// #ifdef APP-PLUS
-					console.log('APP地图')
-					location.href = 'qqmap://map/routeplan?type=drive&to=' + data.depart_address + '&tocoord=' + data
-						.depart_lat +
-						',' + data.depart_lng + '&referer=' + this.$request.mapKey;
-					// #endif
+			// 定时更新列表
+			timeLock() {
+				var _this = this;
+				var time1 = parseInt(Math.random() * 5000) + 15000;
+				clearInterval(_this.timerId);
+				console.log('刷新订单:' + time1)
+				_this.timerId = setInterval(function() {
+					time1 = parseInt(Math.random() * 5000) + 15000;
+					console.log('刷新订单:' + time1)
+					if (_this.loadStatus != 'loading') {
+						_this.params.page = 1;
+						_this.params.total = 0;
+						_this.dataList = [];
+						_this.counts = {
+							total: 0,
+							service_fee: 0,
+							bonus: 0,
+							fee: 0,
+						};
+						_this.loaded = false;
+						_this.loadMore = false;
+						_this.getData(1);
+					}
+				}, time1)
+			},
+			switchType(e) {
+				this.params.status = e
+				if (e > 4) {
+					this.params.is_appeal = 1
 				} else {
-					// #ifdef H5
-					console.log('H5地图')
-					location.href = 'https://apis.map.qq.com/uri/v1/routeplan?type=drive&to=' + data.arrive_address +
-						'&tocoord=' +
-						data.lat + ',' + data.lng + '&policy=1&referer=' + this.$request.mapKey;
-					// #endif
-					// APP: 打成app包的时候
-					// #ifdef APP-PLUS
-					console.log('APP地图')
-					location.href = 'qqmap://map/routeplan?type=drive&to=' + data.arrive_address + '&tocoord=' + data.lat +
-						',' + data.lng + '&referer=' + this.$request.mapKey;
-					// #endif
+					this.params.is_appeal = 0
 				}
-			},
-			callPhone(mobile) {
-				uni.makePhoneCall({
-					phoneNumber: mobile.toString(), //电话号码
-					success: function(e) {
-						console.log(e);
-					},
-					fail: function(e) {
-						console.log(e);
-
-					}
-				})
+				this.params.page = 1;
+				this.params.total = 0;
+				this.dataList = [];
+				this.loaded = false;
+				this.loadMore = false;
+				this.getData(1)
+				console.log(e)
+				console.log(this.params)
 			},
 			// 用户信息
 			getInfo() {
 				let _this = this
-				this.$request.api('/api/v1/taxiuser/userInfo', {
+				this.$request.api('/api/v1/member/info', {
 					type: 1
 				}, 'POST').then(res => {
 					// 打印调用成功回调
-					if (res.code == 10000) {
+					if (res.success == true) {
 						_this.userInfo = res.data
-					} else if (res.errcode == 30001) {
-						_this.$u.toast(res.errmsg);
+
+						_this.getData(1)
+					} else if (res.code == 403) {
+						console.log(res)
+						_this.$u.toast(res.msg);
 						setTimeout(function() {
 							uni.navigateTo({
 								url: '/pages/login/login'
 							})
 						}, 1200)
 					} else {
-						_this.$u.toast(res.errmsg);
+						_this.$u.toast(res.msg);
 					}
 				}).catch(error => {
 					console.log(error)
-					_this.$u.toast(error.errmsg);
 				})
 
 			},
-			// 待服务订单
-			getWaitOrder() {
-				let _this = this
-				this.$request.api('/api/v1/taxiuser/waitOrder', 'POST').then(res => {
-					if (res.code == 10000) {
-						_this.waitOrder = res.data.data
-					}
-				});
-			},
 			// 列表
-			getData() {
+			getData(type) {
 				let _this = this
 				this.loadStatus = 'loading';
-				this.$request.api('/api/v1/taxiuser/myOrder', _this.params, 'POST').then(res => {
+				this.$request.api('/api/v1/trade/index', _this.params, 'POST').then(res => {
 					_this.loadStatus = 'loadmore'
-					if (res.code == 10000) {
-						console.log(res.data)
-						if (_this.loadMore == true && res.data.length > 0) {
-							let len = res.data.length
+					if (res.success == true) {
+						console.log(res.data.list)
+						_this.counts = res.data.counts ? res.data.counts : {
+							total: 0,
+							bonus: 0,
+							service_fee: 0,
+							fee: 0
+						};
+						if (type == 1) {
+							_this.dataList = [];
+						}
+						_this.params.total = res.data.total
+						if (_this.loadMore == true && res.data.list.length > 0) {
+							let len = res.data.list.length
 							for (let i = 0; i <= len; i++) {
-								if (typeof(res.data[i]) != 'undefined') {
-									_this.dataList.push(res.data[i])
+								if (typeof(res.data.list[i]) != 'undefined') {
+									_this.dataList.push(res.data.list[i])
 								}
 							}
 							_this.loadMore = false
 
-						} else if (res.data.length > 0) {
-							_this.dataList = res.data ? res.data : [];
+						} else if (res.data.list.length > 0) {
+							_this.dataList = res.data.list ? res.data.list : [];
 						}
 
-						if (this.params.page != 1 && res.data.length <= 0) {
+						if (this.params.page != 1 && res.data.list.length <= 0) {
 							_this.loaded = true
 							_this.loadStatus = 'nomore'
 						}
-						if (this.params.page == 1 && res.data.length <= 0) {
+						if (this.params.page == 1 && res.data.list.length <= 0) {
 							_this.loaded = true
 							_this.loadStatus = 'nodata'
 						}
 
+						var shopInfo = typeof(_this.userInfo.shop_info) != 'undefined' ? _this.userInfo.shop_info :
+						{};
+						console.log(shopInfo)
+						if (type == 1 && shopInfo && shopInfo.snap_time_lock > 0 && shopInfo.snap_time_lock <=
+							shopInfo.end_time_lock) {
+							_this.timeLock();
+						}
+
 						if (this.params.page == 1) {
 							uni.stopPullDownRefresh()
 						}
@@ -246,31 +289,64 @@
 				})
 
 			},
-			// 确认完成
+			// 确认收款
 			confirm(id, index) {
 				let _this = this
 				uni.showModal({
 					cancelText: '取消',
 					confirmText: '确定',
 					title: '操作提示',
-					content: '确定客户已送达?',
+					content: '确定已收款?',
 					success: function(ret) {
 						if (ret.confirm == true) {
 							uni.showLoading({
 								title: '提交中...',
 							})
 
-							_this.$request.api('/api/v1/taxiuser/delivered', {
+							_this.$request.api('/api/v1/trade/confirm', {
 									id: id
 								}, 'POST')
 								.then(res => {
 									// 打印调用成功回调
 									uni.hideLoading()
-									if (res.code == 10000) {
-										_this.$u.toast(res.message);
+									if (res.success == true) {
+										_this.$u.toast(res.msg);
+										_this.dataList[index].status = 3;
+									} else {
+										_this.$u.toast(res.msg);
+									}
+								})
+						}
+					}
+				})
+			},
+
+			// 上架
+			doSell(row, index) {
+				let _this = this
+				uni.showModal({
+					cancelText: '取消',
+					confirmText: '确定',
+					title: '操作提示',
+					content: '确定已支付上架费¥' + (row.fee) + '并申请上架待售?',
+					success: function(ret) {
+						if (ret.confirm == true) {
+							uni.showLoading({
+								title: '提交中...',
+							})
+
+							_this.$request.api('/api/v1/trade/sell', {
+									id: row.id
+								}, 'POST')
+								.then(res => {
+									// 打印调用成功回调
+									uni.hideLoading()
+									if (res.success == true) {
+										_this.$u.toast(res.msg);
 										_this.dataList[index].status = 4;
+										_this.current = 4
 									} else {
-										_this.$u.toast(res.message);
+										_this.$u.toast(res.msg);
 									}
 								})
 						}
@@ -282,76 +358,241 @@
 </script>
 
 <style lang="scss" scoped>
+	page {
+		// height: 100%;
+	}
+
+	.app {
+		height: 100%;
+	}
+
 	.no-data {
-		margin-top: 30%;
+		padding-top: 30%;
 	}
 
-	.list-box {
-		padding-top: 30rpx;
+	.main {
+		height: 100%;
+		min-height: 1400rpx;
+		background-color: #f9f9f9;
+		padding-bottom: 98rpx;
+		// padding-top: 98rpx;
 	}
 
-	.list-item {
-		padding-bottom: 20rpx;
-		margin: 0 30rpx;
-		border-bottom: 8rpx solid #f1f1f1;
+	.u-tabs {
+		background-color: #fff;
+		position: fixed;
+		z-index: 98;
+		width: 100%;
+		// display: flex;
 
-		.text-item {
-			padding: 10rpx 0;
+		// display: flex;
+		// flex-direction: row;
 
-			.cate {
-				font-weight: bold;
+		.tab-scroll {
+			width: 100%;
 
-				.text {
-					margin-right: 10rpx;
+			.tab-box {
+				display: flex;
+				flex-direction: row;
+				position: relative;
+
+				.tab {
+					display: inline-block;
+					// flex-direction: row;
+					// align-items: center;
+					// justify-content: center;
+					text-align: center;
+					height: 76rpx;
+					// min-width: 140rpx;
+					line-height: 76rpx;
+					color: #333;
+					border-bottom: 4rpx solid #fff;
+				}
+
+				.tab.active {
+					border-bottom: 4rpx solid #ff0000;
+				}
+
+				.tab:last-child {
+					width: 70px !important;
 				}
 			}
+		}
 
-			.icon {
-				margin-right: 10rpx;
+
+	}
+
+	.counts {
+		display: flex;
+		padding: 98rpx 0rpx 0rpx;
+		// background-color: #fff;
+
+		.text {
+			display: inline-block;
+			margin-left: 18rpx;
+			font-size: 32rpx;
+
+			.label {
+				min-width: 138rpx;
+				display: inline-block;
+			}
+
+			.num {
+				color: #ff0000;
+				min-width: 90rpx;
 				display: inline-block;
 			}
+		}
+	}
+
+	.block {
+		padding-top: 68rpx;
+	}
+
+	.list-box {
+		padding-top: 30rpx;
+	}
+
+	.list-item {
+		padding: 18rpx;
+		margin: 0 18rpx;
+		margin-bottom: 18rpx;
+		background-color: #fff;
+		border-radius: 4rpx;
+		// border-bottom: 8rpx solid #fff;
+
+		.title {
+			color: #333;
+			margin-bottom: 10rpx;
 
 			.status {
 				float: right;
+				color: #ff0000;
 			}
+		}
+
+		.info {
+			padding: 10rpx;
+			color: #666;
+			margin-bottom: 10rpx;
 
-			.status3 {
-				color: #e46008;
+			.thumb {
+				width: 180rpx;
+				height: 160rpx;
+				display: inline-block;
+				vertical-align: middle;
+				margin-right: 18rpx;
+				border-radius: 4rpx;
 			}
 
-			.status4 {
-				color: green;
+			.goods {
+				width: calc(100% - 218rpx);
+				display: inline-block;
+				vertical-align: middle;
+
+				.title {
+					font-size: 32rpx;
+					font-weight: bold;
+					margin-bottom: 10rpx;
+				}
+
+				.text {
+					margin-bottom: 10rpx;
+					color: #333;
+
+					.sell,
+					.buy {
+						background-color: rgb(255, 30, 18);
+						color: #fff;
+						padding: 2rpx 4rpx;
+						border-radius: 4rpx;
+						font-size: 26rpx;
+						margin-right: 8rpx;
+					}
+
+					.buy {
+
+						background-color: #00d315;
+					}
+
+					.text1 {
+						width: calc(100% - 30rpx);
+						// display: inline-block;
+						white-space: nowrap;
+						overflow: hidden;
+						text-overflow: ellipsis;
+					}
+				}
+
+
 			}
 
-			.status5 {
-				color: #999;
+		}
+
+		.info-ext {
+			.time {
+				color: #666;
+				margin-bottom: 10rpx;
+
+				.fee {
+					float: right;
+
+					.text {
+						font-weight: bold;
+						color: #ff0000;
+					}
+				}
 			}
 
-			.confirm {
-				background-color: #e46008;
-				color: #fff;
+
+			.price {
+				color: #666;
+
+				.price-text {
+					font-size: 32rpx;
+					font-weight: bold;
+					color: #ff0000;
+				}
+
+				.price1 {
+					float: right;
+					color: #b4b4b4;
+					opacity: 0.6;
+				}
 			}
+		}
+
+		.actions {
+			margin-top: 18rpx;
+			text-align: right;
 
-			.arrow {
-				margin-left: 5px;
-				background-color: #e46008;
+			.btn {
+				display: inline-block;
+				padding: 4rpx 12rpx;
+				margin-right: 10rpx;
+				background-color: #666;
 				color: #fff;
-				padding: 2px 8px;
-				border-radius: 4px;
-				font-size: 12px;
+				border-radius: 4rpx;
 			}
 
-			.price {
-				margin-left: 5px;
-				color: #e46008;
-				padding: 2px 8px;
-				float: right;
-				font-size: 16px;
-				font-weight: bold;
+			.btn.danger {
+				background-color: #ff0000;
+			}
+
+			.btn.primary {
+				background-color: #00d315;
+			}
+
+			.btn.info {
+				background-color: #74b9cc;
 			}
 		}
+
 	}
 
+	.list-item:last-child {
+		margin-bottom: 0;
+	}
 
 	.u-loadmore {
 		height: 60rpx !important;

二進制
addons/h5/static/mp3/order.mp3


+ 2 - 2
addons/h5/unpackage/dist/build/h5/index.html

@@ -2,7 +2,7 @@
 		    CSS.supports('top: constant(a)'))
 		  document.write(
 		    '<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' +
-		    (coverSupport ? ', viewport-fit=cover' : '') + '" />')</script><title>抢拍商城</title><script>var UA = window.navigator.userAgent.toLowerCase();
+		    (coverSupport ? ', viewport-fit=cover' : '') + '" />')</script><title>海源新三农</title><script>var UA = window.navigator.userAgent.toLowerCase();
 			var isAndroid = UA.indexOf('android') > 0;
 			var isIOS = /iphone|ipad|ipod|ios/.test(UA);
 			if (!(isAndroid || isIOS)) {
@@ -14,4 +14,4 @@
 				hm.src = "https://hm.baidu.com/hm.js?fe3b7a223fc08c795f0f4b6350703e6f";
 				var s = document.getElementsByTagName("script")[0];
 				s.parentNode.insertBefore(hm, s);
-			})();</script><script src=./static/js/chunk-vendors.b9ad6f61.js></script><script src=./static/js/index.591e4f65.js></script></body></html>
+			})();</script><script src=./static/js/chunk-vendors.e3c746e1.js></script><script src=./static/js/index.5ee7d7e7.js></script></body></html>

File diff suppressed because it is too large
+ 0 - 14
addons/h5/unpackage/dist/build/h5/static/js/chunk-vendors.2987923a.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/index.ff203378.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-account-index.2d4f6f96.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-account-index~pages-account-withdraw_log~pages-index-index~pages-order-index.299ba9c5.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-account-index~pages-account-withdraw~pages-account-withdraw_log~pages-center-index~pages-cente~c4dfcdea.1113fe27.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-account-index~pages-account-withdraw~pages-account-withdraw_log~pages-center-password~pages-ce~58448fc3.0d4df983.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-account-withdraw.0503b151.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-account-withdraw_log.0add3bb1.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-account-withdraw~pages-center-password~pages-login-forget~pages-login-login.47176614.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-center-index.84e49b7a.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-center-index~pages-center-setting.84212dd4.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-center-index~pages-index-index~pages-index-map~pages-order-index.285a74bc.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-center-password.87b816c8.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-center-setting.fc80afc8.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-index-index.9a80c7ab.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-index-map.49dde5ff.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-login-forget.e9267f91.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-login-login.161f7499.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-order-detail.54230cf3.js


File diff suppressed because it is too large
+ 0 - 1
addons/h5/unpackage/dist/build/h5/static/js/pages-order-index.f10e2228.js


二進制
addons/h5/unpackage/dist/build/h5/static/mp3/order.mp3


二進制
addons/h5/unpackage/res/icons/1024x1024.png


二進制
addons/h5/unpackage/res/icons/120x120.png


二進制
addons/h5/unpackage/res/icons/144x144.png


二進制
addons/h5/unpackage/res/icons/152x152.png


二進制
addons/h5/unpackage/res/icons/167x167.png


二進制
addons/h5/unpackage/res/icons/180x180.png


二進制
addons/h5/unpackage/res/icons/192x192.png


二進制
addons/h5/unpackage/res/icons/20x20.png


二進制
addons/h5/unpackage/res/icons/29x29.png


二進制
addons/h5/unpackage/res/icons/40x40.png


二進制
addons/h5/unpackage/res/icons/58x58.png


二進制
addons/h5/unpackage/res/icons/60x60.png


二進制
addons/h5/unpackage/res/icons/72x72.png


二進制
addons/h5/unpackage/res/icons/76x76.png


二進制
addons/h5/unpackage/res/icons/80x80.png


二進制
addons/h5/unpackage/res/icons/87x87.png


二進制
addons/h5/unpackage/res/icons/96x96.png