hwq 1 vuosi sitten
vanhempi
commit
849364aab9
60 muutettua tiedostoa jossa 945 lisäystä ja 95 poistoa
  1. 9 0
      api/user.js
  2. 86 85
      manifest.json
  3. 18 0
      pages.json
  4. 281 0
      pages/index/baodan.vue
  5. 6 0
      pages/index/index.vue
  6. 3 4
      pages/index/integral.vue
  7. 2 2
      pages/public/register.vue
  8. 190 0
      pages/user/jiedian.vue
  9. 336 0
      pages/user/jiedianDetails.vue
  10. 2 1
      pages/user/shareQrCode.vue
  11. 11 2
      pages/user/user.vue
  12. BIN
      static/img/jiedian01.png
  13. BIN
      static/img/jiedianBg.png
  14. BIN
      unpackage/dist/build/h5/h5.rar
  15. 1 1
      unpackage/dist/build/h5/index.html
  16. BIN
      unpackage/dist/build/h5/static/img/jiedian01.png
  17. BIN
      unpackage/dist/build/h5/static/img/jiedianBg.png
  18. BIN
      unpackage/dist/build/h5/static/img/logo.png
  19. 0 0
      unpackage/dist/build/h5/static/index.63b34199.css
  20. 0 0
      unpackage/dist/build/h5/static/index.97465e7b.css
  21. 0 0
      unpackage/dist/build/h5/static/js/chunk-vendors.6d6acda3.js
  22. 0 0
      unpackage/dist/build/h5/static/js/chunk-vendors.c97f1397.js
  23. 0 0
      unpackage/dist/build/h5/static/js/index.479c6249.js
  24. 0 0
      unpackage/dist/build/h5/static/js/index.8f6bd4e3.js
  25. 0 0
      unpackage/dist/build/h5/static/js/pages-cart-cart.95ebc655.js
  26. 0 0
      unpackage/dist/build/h5/static/js/pages-index-baodan.bf5133b9.js
  27. 0 0
      unpackage/dist/build/h5/static/js/pages-index-index.167cc75a.js
  28. 0 0
      unpackage/dist/build/h5/static/js/pages-index-index.4191f949.js
  29. 0 0
      unpackage/dist/build/h5/static/js/pages-index-integral.980f16bf.js
  30. 0 0
      unpackage/dist/build/h5/static/js/pages-index-integral.bb1dc8d3.js
  31. 0 0
      unpackage/dist/build/h5/static/js/pages-order-createOrder.aa4e4242.js
  32. 0 0
      unpackage/dist/build/h5/static/js/pages-public-login.4a906bd2.js
  33. 0 0
      unpackage/dist/build/h5/static/js/pages-public-register.51576110.js
  34. 0 0
      unpackage/dist/build/h5/static/js/pages-public-register.7ea2551e.js
  35. 0 0
      unpackage/dist/build/h5/static/js/pages-redirect-redirect.692fcee5.js
  36. 0 0
      unpackage/dist/build/h5/static/js/pages-set-address.5dbab4bc.js
  37. 0 0
      unpackage/dist/build/h5/static/js/pages-set-addressManage~pages-user-xzdl.ed671bf8.js
  38. 0 0
      unpackage/dist/build/h5/static/js/pages-store-shopDetail.6260a3b4.js
  39. 0 0
      unpackage/dist/build/h5/static/js/pages-store-shopDetail.9bfc8a8f.js
  40. 0 0
      unpackage/dist/build/h5/static/js/pages-store-shopList.040239af.js
  41. 0 0
      unpackage/dist/build/h5/static/js/pages-store-shopList.c7f3f836.js
  42. 0 0
      unpackage/dist/build/h5/static/js/pages-user-award.2bb7e757.js
  43. 0 0
      unpackage/dist/build/h5/static/js/pages-user-award.f4bf1c45.js
  44. 0 0
      unpackage/dist/build/h5/static/js/pages-user-favorites.1dad9b6f.js
  45. 0 0
      unpackage/dist/build/h5/static/js/pages-user-jiedian.5b47c4d0.js
  46. 0 0
      unpackage/dist/build/h5/static/js/pages-user-jiedianDetails.a89459a3.js
  47. 0 0
      unpackage/dist/build/h5/static/js/pages-user-shareQrCode.bad71b8a.js
  48. 0 0
      unpackage/dist/build/h5/static/js/pages-user-shareQrCode.c16ec080.js
  49. 0 0
      unpackage/dist/build/h5/static/js/pages-user-team.37b0c781.js
  50. 0 0
      unpackage/dist/build/h5/static/js/pages-user-team.a914afc4.js
  51. 0 0
      unpackage/dist/build/h5/static/js/pages-user-user.7d8eb8e3.js
  52. 0 0
      unpackage/dist/build/h5/static/js/pages-user-user.89aa09c8.js
  53. 0 0
      unpackage/dist/build/h5/static/js/pages-user-withdrawal.29df68ae.js
  54. 0 0
      unpackage/dist/build/h5/static/js/pages-user-withdrawal.3c790c80.js
  55. 0 0
      unpackage/dist/build/h5/static/js/pages-user-yjzye.1eb27516.js
  56. 0 0
      unpackage/dist/build/h5/static/js/pages-user-yjzye.cc3771d7.js
  57. 0 0
      unpackage/dist/build/h5/static/js/pages-user-yjzz.7008eed6.js
  58. 0 0
      unpackage/dist/build/h5/static/js/pages-user-yjzz.cbf54876.js
  59. 0 0
      unpackage/dist/build/h5/static/js/pages-user-yue.16829425.js
  60. 0 0
      unpackage/dist/build/h5/static/js/pages-user-yue.a1f99a09.js

+ 9 - 0
api/user.js

@@ -186,4 +186,13 @@ export function getStoreDetail(data, id) {
 		method: 'get',
 		data
 	});
+}
+
+// 查看节点
+export function lookSubpoints(data) {
+	return request({
+		url: '/api/user/getLowerUser',
+		method: 'get',
+		data
+	});
 }

+ 86 - 85
manifest.json

@@ -1,86 +1,87 @@
 {
-	"name": "惠补",
-	"appid": "__UNI__D86A50E",
-	"description": "",
-	"versionName": "1.0.0",
-	"versionCode": "100",
-	"transformPx": false,
-	"app-plus": {
-		/* 5+App特有相关 */
-		"usingComponents": true,
-		"splashscreen": {
-			"alwaysShowBeforeRender": true,
-			"waiting": true,
-			"autoclose": true,
-			"delay": 0
-		},
-		"modules": {},
-		/* 模块配置 */
-		"distribute": {
-			/* 应用发布信息 */
-			"android": {
-				/* android打包配置 */
-				"permissions": [
-					"<uses-feature android:name=\"android.hardware.camera\"/>",
-					"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
-					"<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",
-					"<uses-permission android:name=\"android.permission.CAMERA\"/>",
-					"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
-					"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
-					"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
-					"<uses-permission android:name=\"android.permission.READ_CONTACTS\"/>",
-					"<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>",
-					"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
-					"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
-					"<uses-permission android:name=\"android.permission.WRITE_CONTACTS\"/>"
-				],
-				"abiFilters": ["armeabi-v7a", "arm64-v8a", "x86"]
-			},
-			"ios": {
-				"idfa": false
-			},
-			/* ios打包配置 */
-			"sdkConfigs": {
-				"maps": {},
-				"oauth": {
-					"weixin": {
-						"appid": "",
-						"appsecret": "",
-						"UniversalLinks": ""
-					}
-				}
-			}
-		}
-	},
-	/* SDK配置 */
-	"quickapp": {},
-	/* 快应用特有相关 */
-	"mp-weixin": {
-		/* 小程序特有相关 */
-		"usingComponents": true,
-		"appid": "",
-		"setting": {
-			"urlCheck": true,
-			"minified": true
-		}
-	},
-	"h5": {
-		"title": "惠补",
-		"domain": "",
-		"router": {
-			"base": "/index/",
-			"mode": "hash"
-		},
-		"devServer": {
-			"proxy": {
-				"/api": {
-					"target": "http://hb.liuniukj.com/api",
-					// "changeOrigin": true,
-					"pathRewrite": {
-						"/api": "" // rewrite path
-					}
-				}
-			}
-		}
-	}
-}
+    "name" : "惠补",
+    "appid" : "__UNI__D86A50E",
+    "description" : "",
+    "versionName" : "1.0.0",
+    "versionCode" : "100",
+    "transformPx" : false,
+    "app-plus" : {
+        /* 5+App特有相关 */
+        "usingComponents" : true,
+        "splashscreen" : {
+            "alwaysShowBeforeRender" : true,
+            "waiting" : true,
+            "autoclose" : true,
+            "delay" : 0
+        },
+        "modules" : {},
+        /* 模块配置 */
+        "distribute" : {
+            /* 应用发布信息 */
+            "android" : {
+                /* android打包配置 */
+                "permissions" : [
+                    "<uses-feature android:name=\"android.hardware.camera\"/>",
+                    "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
+                    "<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",
+                    "<uses-permission android:name=\"android.permission.CAMERA\"/>",
+                    "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
+                    "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
+                    "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
+                    "<uses-permission android:name=\"android.permission.READ_CONTACTS\"/>",
+                    "<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>",
+                    "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
+                    "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
+                    "<uses-permission android:name=\"android.permission.WRITE_CONTACTS\"/>"
+                ],
+                "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ]
+            },
+            "ios" : {
+                "idfa" : false
+            },
+            /* ios打包配置 */
+            "sdkConfigs" : {
+                "maps" : {},
+                "oauth" : {
+                    "weixin" : {
+                        "appid" : "",
+                        "appsecret" : "",
+                        "UniversalLinks" : ""
+                    }
+                }
+            }
+        }
+    },
+    /* SDK配置 */
+    "quickapp" : {},
+    /* 快应用特有相关 */
+    "mp-weixin" : {
+        /* 小程序特有相关 */
+        "usingComponents" : true,
+        "appid" : "",
+        "setting" : {
+            "urlCheck" : true,
+            "minified" : true
+        }
+    },
+    "h5" : {
+        "title" : "惠补",
+        "domain" : "",
+        "router" : {
+            "base" : "/index/",
+            "mode" : "hash"
+        },
+        "devServer" : {
+            "proxy" : {
+                "/api" : {
+                    "target" : "http://hb.liuniukj.com/api",
+                    // "changeOrigin": true,
+                    "pathRewrite" : {
+                        "/api" : "" // rewrite path
+                    }
+                }
+            },
+            "https" : false
+        }
+    }
+}

+ 18 - 0
pages.json

@@ -12,6 +12,12 @@
 				"navigationBarTitleText": "积分商城"
 			}
 		},
+		{
+			"path": "pages/index/baodan",
+			"style": {
+				"navigationBarTitleText": "会员商品"
+			}
+		},
 		{
 			"path": "pages/index/artDetail",
 			"style": {
@@ -191,6 +197,18 @@
 				"navigationBarTitleText": "我的积分"
 			}
 		},
+		{
+			"path": "pages/user/jiedian",
+			"style": {
+				"navigationBarTitleText": "我的节点"
+			}
+		},
+		{
+			"path": "pages/user/jiedianDetails",
+			"style": {
+				"navigationBarTitleText": "节点"
+			}
+		},
 		{
 			"path": "pages/user/award",
 			"style": {

+ 281 - 0
pages/index/baodan.vue

@@ -0,0 +1,281 @@
+<template>
+	<view class="center">
+		<view class="titleNview-placing"></view>
+		<view class="product-box" v-if="integralList.length != 0">
+			<view class="product-title">
+				<view class="pt-title">会员商品</view>
+				<view class="pt-bg">
+					<image src="../../static/img/title.png" mode=""></image>
+				</view>
+			</view>
+			<view class="hotgoods">
+				<view class="hotgoods-item" v-for="item in integralList" :key="item.id" @click="navToDetailPage(item)">
+					<view class="image-wrapper">
+						<!-- <image class="image-bg" src="../../static/img/libao-bg.png" mode=""></image> -->
+						<image class="image" :src="item.image" mode="scaleToFill"></image>
+					</view>
+					<view class="title clamp">{{ item.store_name }}</view>
+					<view class="hot-price">
+						<view class="price">
+							<text class="font-size-sm">¥</text>
+							{{ item.price * 1 }}
+						</view>
+						<!-- <view class="yuanPrice">月销:{{ item.sort }}</view> -->
+					</view>
+				</view>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import {
+		loadIndexs
+	} from '@/api/index.js';
+	import {
+		groomList
+	} from '@/api/product.js';
+	export default {
+		data() {
+			return {
+				productname: '',
+				integralList: [],
+				carouselList: [''],
+				page: 1,
+				limit: 10,
+				loadType: 'more'
+			};
+		},
+		onShow: function() {
+			// 判断是否强制登录
+			// if (!this.hasLogin) {
+			// 	// 登录拦截
+			// 	interceptor();
+			// }
+			this.page = 1;
+			this.limit = 10;
+			this.loadType = 'more';
+			this.integralList = [];
+			this.loadData();
+		},
+		methods: {
+			navTo(url) {
+				if (url == '') {
+					this.$api.msg('暂未开通,敬请期待');
+				} else {
+					uni.navigateTo({
+						url,
+						fail() {
+							uni.switchTab({
+								url
+							});
+						}
+					});
+				}
+			},
+			// 请求载入数据
+			async loadData() {
+				const obj = this;
+				if (obj.loadType == 'loading' || obj.loadType == 'noMore') {
+					return;
+				}
+				obj.loadType = 'loading';
+				groomList({
+					pages: obj.page,
+					limit: obj.limit
+				}, 1).then(({
+					data
+				}) => {
+					this.integralList = this.integralList.concat(data.list);
+					console.log(data.list, '123456');
+					if (data.list.length == obj.limit) {
+						obj.loadType = 'more';
+						obj.page++;
+					} else {
+						obj.loadType = 'noMore';
+					}
+				});
+			},
+			//详情页
+			navToDetailPage(item) {
+				let id = item.id;
+				uni.navigateTo({
+					url: '/pages/product/product?id=' + id + '&isjf=1'
+				});
+			}
+		}
+	};
+</script>
+
+<style lang="scss">
+	.center,
+	page {
+		height: auto;
+		min-height: 100%;
+	}
+
+	.titleNview-placing {
+		height: var(--status-bar-height);
+		box-sizing: content-box;
+	}
+
+	.top-search {
+		margin-top: 30rpx;
+		height: 80rpx;
+		padding: 0 20rpx;
+
+		.search-box {
+			position: relative;
+			z-index: 2;
+			justify-content: center;
+			width: 740rpx;
+			height: 60rpx;
+			background: #fff;
+			border-radius: 30rpx;
+
+			.search {
+				width: 26rpx;
+				height: 30rpx;
+			}
+
+			.search-font input {
+				width: 500rpx;
+				margin-left: 14rpx;
+				font-size: 28rpx;
+				font-family: PingFang SC;
+				font-weight: 500;
+				color: #aaaaaa;
+			}
+		}
+	}
+
+	.banner {
+		margin: 20rpx auto 0;
+		width: 690rpx;
+		height: 350rpx;
+
+		.banner-item {
+			width: 690rpx;
+			height: 350rpx;
+
+			image {
+				width: 100%;
+				height: 100%;
+			}
+		}
+	}
+
+	.product-box {
+		margin-top: 20rpx;
+		background: #ffffff;
+		padding: 26rpx 30rpx 20rpx;
+
+		.product-title {
+			margin: 0 auto;
+			position: relative;
+			width: 352rpx;
+			display: flex;
+			align-items: center;
+
+			.pt-title {
+				width: 352rpx;
+				text-align: center;
+				font-size: 35rpx;
+				font-family: Source Han Sans CN;
+				font-weight: 500;
+				color: #ff4c4c;
+			}
+
+			.pt-bg {
+				position: absolute;
+				top: 0;
+				left: 0;
+				right: 0;
+				width: 352rpx;
+				height: 9rpx;
+
+				image {
+					width: 100%;
+					height: 100%;
+				}
+			}
+		}
+
+		.hotgoods {
+			margin-top: 38rpx;
+			width: 100%;
+			display: flex;
+			flex-wrap: wrap;
+			padding: 0 0 30rpx;
+			border-radius: 14rpx;
+
+			.hotgoods-item {
+				width: 48%;
+				background-color: #ffffff;
+				border-radius: 12rpx;
+
+				&:nth-child(2n + 1) {
+					margin-right: 24rpx;
+				}
+
+				.image-wrapper {
+					width: 100%;
+					height: 330rpx;
+					border-radius: 3px;
+					overflow: hidden;
+					position: relative;
+
+					.image-bg {
+						position: absolute;
+						top: 0;
+						left: 0;
+						right: 0;
+						bottom: 0;
+						width: 100%;
+						height: 100%;
+						opacity: 1;
+						border-radius: 12rpx 12rpx 0 0;
+						z-index: 2;
+					}
+
+					.image {
+						width: 100%;
+						height: 100%;
+						opacity: 1;
+						border-radius: 12rpx 12rpx 0 0;
+					}
+				}
+
+				.title {
+					margin-top: 24rpx;
+					font-size: 34rpx;
+					font-family: PingFang SC;
+					font-weight: 500;
+					color: #333333;
+				}
+
+				.hot-price {
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+					padding: 14rpx 0 10rpx;
+
+					.price {
+						margin-left: 10rpx;
+						font-size: 30rpx;
+						font-family: PingFang SC;
+						font-weight: bold;
+						color: #ff1a1a;
+					}
+
+					.yuanPrice {
+						font-size: 30rpx;
+						font-family: PingFang SC;
+						font-weight: bold;
+						color: #999999;
+					}
+				}
+			}
+		}
+	}
+</style>

+ 6 - 0
pages/index/index.vue

@@ -48,6 +48,12 @@
 				</view>
 				<view class="item-title">积分商城</view>
 			</view>
+			<view class="cate-item flex" @click="navto('/pages/index/baodan')">
+				<view class="img-wrapper flex">
+					<image src="../../static/icon/in4.png" mode=""></image>
+				</view>
+				<view class="item-title">会员商品</view>
+			</view>
 		</view>
 		<!-- 分类 ed -->
 

+ 3 - 4
pages/index/integral.vue

@@ -212,7 +212,6 @@
 			display: flex;
 			flex-wrap: wrap;
 			padding: 0 0 30rpx;
-			box-shadow: 0px 0px 6rpx 0px rgba(0, 0, 0, 0.1);
 			border-radius: 14rpx;
 
 			.hotgoods-item {
@@ -254,7 +253,7 @@
 
 				.title {
 					margin-top: 24rpx;
-					font-size: 28rpx;
+					font-size: 34rpx;
 					font-family: PingFang SC;
 					font-weight: 500;
 					color: #333333;
@@ -268,14 +267,14 @@
 
 					.price {
 						margin-left: 10rpx;
-						font-size: 20rpx;
+						font-size: 30rpx;
 						font-family: PingFang SC;
 						font-weight: bold;
 						color: #ff1a1a;
 					}
 
 					.yuanPrice {
-						font-size: 20rpx;
+						font-size: 30rpx;
 						font-family: PingFang SC;
 						font-weight: bold;
 						color: #999999;

+ 2 - 2
pages/public/register.vue

@@ -61,8 +61,8 @@
 			return {
 				nickname: '', //用户昵称
 				phone: '', //用户
-				password: '', //密码
-				repassword: '',
+				password: '153624', //密码
+				repassword: '153624',
 				invitation: '', //邀请码
 				code: '123456', //验证码
 				time: '', //保存倒计时对象

+ 190 - 0
pages/user/jiedian.vue

@@ -0,0 +1,190 @@
+<template>
+	<view class="contant">
+		<view class="jiedian-box" v-for="(item, index) in jieList">
+			<view class="box-top">
+				<view class="title-top">
+					<view class="img">
+						<image src="../../static/img/jiedian01.png" mode=""></image>
+					</view>
+					<view class="title">节点</view>
+				</view>
+				<view class="xiangqing" @click="navTo(item.id)">
+					详情
+					<text>></text>
+				</view>
+				<!-- <text class="xiangqing" @click="navTo(item.id)">
+						详情>
+					</text> -->
+			</view>
+			<view class="box-bottom">
+				<view class="shouyi">
+					<view class="jiedian">节点收益</view>
+					<view class="number">{{ item.get }}</view>
+				</view>
+				<view class="shouyi">
+					<view class="jiedian">团队人数</view>
+					<view class="number">{{ item.children_num }}</view>
+				</view>
+				<view class="shouyi">
+					<view class="jiedian">参加时间</view>
+					<view class="number">{{ item.add_time | getTime }}</view>
+				</view>
+			</view>
+		</view>
+		<uni-load-more :status="loadingType"></uni-load-more>
+	</view>
+</template>
+
+<script>
+	import uniLoadMore from '@/components/uni-load-more/uni-load-more.vue';
+	import {
+		lookOneself
+	} from '../../api/user.js';
+	export default {
+		data() {
+			return {
+				jieList: [],
+				page: 1, //当前页数
+				limit: 10, //每次信息条数
+				loadingType: 'more'
+			};
+		},
+		filters: {
+			getTime(val) {
+				let str = '';
+				if (val) {
+					const date = new Date(val * 1000);
+					const year = date.getFullYear();
+					const mon = date.getMonth() + 1;
+					const day = date.getDate();
+					const hours = date.getHours();
+					const minu = date.getMinutes();
+					const sec = date.getSeconds();
+					str = year + '-' + mon + '-' + day + ' ' + hours + ':' + minu + ':' + sec;
+				}
+				return str;
+			}
+		},
+		// onLoad() {
+		// 	this.lookMyjiedian()
+		// },
+		onShow() {
+			this.lookMyjiedian();
+		},
+		onReachBottom() {
+			this.lookMyjiedian();
+		},
+		methods: {
+			lookMyjiedian() {
+				let obj = this;
+				if (obj.loadingType == 'noMore' || obj.loadingType == 'loading') {
+					return;
+				}
+				obj.loadingType = 'loading';
+				lookOneself({
+					page: obj.page,
+					limit: obj.limit
+				}).then(res => {
+					console.log(res);
+					obj.jieList = obj.jieList.concat(res.data.points);
+					if (res.data.points.length != obj.limit) {
+						obj.loadingType = 'noMore';
+					} else {
+						obj.loadingType = 'more';
+						obj.page++;
+					}
+					console.log(obj.loadingType, '2222222');
+				});
+			},
+			navTo(id) {
+				uni.navigateTo({
+					url: './jiedianDetails?id=' + id
+				});
+			}
+		}
+	};
+</script>
+
+<style lang="scss">
+	page,
+	.contant {
+		// background: #F3F3F3;
+
+		margin: 0;
+		padding: 0;
+		height: 100%;
+		width: 100%;
+	}
+
+	.jiedian-box {
+		background: #ffffff;
+		display: flex;
+		flex-direction: column;
+		padding: 30rpx;
+		justify-content: space-between;
+		margin: 20rpx 30rpx;
+		border-radius: 15rpx;
+		box-shadow: 2px 2px 0px #ebeef5;
+	}
+
+	.box-top {
+		display: flex;
+		justify-content: space-between;
+		text-align: center;
+		line-height: 1;
+
+		.title-top {
+			display: flex;
+			justify-content: center;
+			text-align: center;
+
+			.img {
+				width: 40rpx;
+				height: 40rpx;
+
+				image {
+					width: 100%;
+					height: 100%;
+				}
+			}
+
+			.title {
+				margin-left: 5rpx;
+				font-size: 32rpx;
+				font-weight: bold;
+			}
+		}
+
+		.xiangqing {
+			color: red;
+			font-size: 28rpx;
+			line-height: 40rpx;
+
+			text {
+				display: inline-block;
+				margin-left: 10rpx;
+			}
+		}
+	}
+
+	.box-bottom {
+		margin-top: 20rpx;
+		display: flex;
+		flex-direction: column;
+		justify-content: space-between;
+		text-align: center;
+	}
+
+	.shouyi {
+		margin: 6rpx 0;
+		display: flex;
+		justify-content: space-between;
+	}
+
+	.jiedian {
+		font-size: 26rpx;
+		color: #999999;
+	}
+
+	.number {}
+</style>

+ 336 - 0
pages/user/jiedianDetails.vue

@@ -0,0 +1,336 @@
+<template>
+	<view class="content">
+		<!-- <view class="bg">
+			<image src="../../static/img/jiedianBg.png" mode=""></image>
+		</view> -->
+		<!-- <view class="box">
+			<view class="box-left">
+				<view class="top">
+					{{childrenNum}}
+				</view>
+				<view class="bottom">
+					总人数
+				</view>
+			</view>
+			<view class="box-left">
+				<view class="top">
+					{{money}}
+				</view>
+				<view class="bottom">
+					收益
+				</view>
+			</view>
+		</view> -->
+		<view class="box-1">
+			<view class="tuandui-box" v-for="item in childrenList" @click="next(item.info)">
+				<view class="box-img" v-if="item.info">
+					<image :src="item.info.avatar" mode=""></image>
+				</view>
+				<view class="box-content">
+					<view class="content-top" v-if="item.info">
+						<view class="content-top-left">
+							<view class="name clamp">
+								{{item.info.nickname}}
+							</view>
+							<!-- <view class="time">
+								{{item.add_time | getTime}}加入
+							</view> -->
+						</view>
+						<!-- <view class="content-top-right">
+							收益:{{item.name == 'A'?A_achievement:item.name == 'B'?B_achievement:C_achievement}}
+						</view> -->
+					</view>
+					<view class="content-top" v-else>
+						暂无
+					</view>
+					<view class="content-bottom">
+						<view class="xianlu">
+							线路:{{item.name}}
+						</view>
+					</view>
+				</view>
+			</view>
+		</view>
+		<view class="btn" v-if="parentList.length != 0" @click="back()">
+			返回上一层
+		</view>
+	</view>
+</template>
+
+<script>
+	import {
+		mapState,
+		mapMutations
+	} from 'vuex';
+	import uniLoadMore from '@/components/uni-load-more/uni-load-more.vue';
+	import {
+		lookSubpoints,
+		lookOneself
+	} from '@/api/user.js'
+	export default {
+		components: {
+			uniLoadMore
+		},
+		data() {
+			return {
+				dtailId: '',
+				parentList: [], //父亲节点
+				childrenList: [],
+				jieList: [],
+				childrenNum: '',
+				limit: 10,
+				page: 1,
+				loadingType: 'more',
+				money: '',
+				A_achievement: '',
+				B_achievement: '',
+				C_achievement: ''
+			};
+		},
+		filters: {
+			getTime(val) {
+				let str = ''
+				if (val) {
+					const date = new Date(val * 1000);
+					const year = date.getFullYear();
+					const mon = date.getMonth() + 1;
+					const day = date.getDate();
+					const hours = date.getHours();
+					const minu = date.getMinutes();
+					const sec = date.getSeconds();
+					str = year + '-' + mon + '-' + day + ' ' + hours + ':' + minu + ':' + sec;
+				}
+				return str
+			}
+		},
+		computed: {
+			...mapState('user', ['userInfo', 'orderInfo', 'hasLogin'])
+		},
+		onLoad(option) {
+			this.detailId = option.id
+			this.A_achievement = this.userInfo.A_achievement
+			this.B_achievement = this.userInfo.B_achievement
+			this.C_achievement = this.userInfo.C_achievement
+			this.lookDetail()
+		},
+		methods: {
+			lookMyjiedian() {
+				let obj = this
+				lookOneself().then(res => {
+					console.log(res);
+					obj.jieList = res.data.points;
+					console.log(obj.jieList, '11');
+					obj.childrenNum = obj.jieList[0].children_num
+					obj.money = obj.jieList[0].get
+					console.log(obj.childrenNum, obj.money);
+				})
+			},
+			lookDetail() {
+				let obj = this
+				if (obj.loadingType == 'loading' || obj.loadingType == 'noMore') {
+
+					return
+				}
+				obj.loadingType = 'loading'
+				lookSubpoints({
+					uid: obj.detailId
+				}).then(res => {
+					let arr = Object.keys(res.data)
+					arr.forEach(e => {
+						let info = {
+							name: '',
+							info: ''
+						};
+						info.name = e;
+						if (res.data[e]) {
+							info.info = res.data[e]
+						}
+						obj.childrenList.push(info)
+					})
+					console.log(obj.childrenList);
+				})
+			},
+			next(id) {
+				console.log(id, "id");
+				if (!id) {
+					return
+				}
+				if (this.parentList.length == 11) {
+					return
+				}
+				this.parentList.push(this.detailId)
+				this.detailId = id.uid
+				this.A_achievement = id.A_achievement
+				this.B_achievement = id.B_achievement
+				this.C_achievement = id.C_achievement
+				this.loadingType = 'more'
+				this.childrenList = []
+				this.lookDetail()
+			},
+			back() {
+				this.detailId = this.parentList.pop();
+				this.loadingType = 'more'
+				this.childrenList = [],
+					this.lookDetail()
+			}
+		}
+	}
+</script>
+
+<style lang="scss">
+	page,
+	.content {
+		padding: 0;
+		margin: 0;
+		height: 100%;
+		width: 100%;
+		background: #F3F3F3;
+	}
+
+	.box-1 {
+		// margin: 0 auto;
+		background: #FFFFFF;
+		margin-top: 40rpx;
+	}
+
+	.bg {
+		position: relative;
+		width: 750rpx;
+		height: 360rpx;
+
+		image {
+			height: 100%;
+			width: 100%;
+		}
+	}
+
+	.box {
+
+		position: relative;
+		display: flex;
+		justify-content: space-around;
+		margin-top: -180rpx;
+
+		.box-left {
+			z-index: 99;
+			width: 280rpx;
+			height: 160rpx;
+			display: flex;
+			flex-direction: column;
+			text-align: center;
+			justify-content: center;
+			background-color: #FFFFFF;
+			border-radius: 10rpx;
+		}
+
+		.top {
+			font-size: 36rpx;
+			font-weight: bold;
+		}
+
+		.bottom {
+			font-size: 24rpx;
+			color: #999999;
+			margin-top: 10rpx;
+			font-weight: bold;
+
+		}
+	}
+
+	.tuandui-box {
+		margin: 0 auto;
+		width: 690rpx;
+
+		display: flex;
+
+		padding: 20rpx;
+		border-bottom: 2rpx solid #F3F3F3;
+		;
+
+		.box-img {
+			border-radius: 50%;
+			width: 80rpx;
+			height: 80rpx;
+
+			image {
+				width: 100%;
+				height: 100%;
+			}
+		}
+
+		.box-content {
+			margin-left: 15rpx;
+			width: 100%;
+			display: flex;
+			flex-direction: column;
+			justify-content: space-between;
+
+
+			.content-top {
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+
+				.content-top-left {
+					display: flex;
+					justify-content: space-between;
+					line-height: 40rpx;
+
+					.name {
+						width: 120rpx;
+						white-space: nowrap;
+						overflow: hidden;
+						text-overflow: ellipsis;
+						font-size: 30rpx;
+						font-weight: bold;
+					}
+
+					.time {
+						color: #999999;
+						margin-left: 15rpx;
+						font-size: 22rpx;
+					}
+				}
+
+				.content-top-right {
+					color: #303133;
+					font-size: 26rpx;
+				}
+			}
+
+			.content-bottom {
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+
+				.xianlu {
+					color: #999999;
+					font-size: 22rpx;
+				}
+
+				.number {
+					color: #303133;
+					font-size: 26rpx;
+				}
+			}
+		}
+	}
+
+	.btn {
+		position: fixed;
+		bottom: 30rpx;
+		left: 0;
+		right: 0;
+		margin: 0 auto;
+		width: 604rpx;
+		height: 90rpx;
+		border: 2px solid #F21F5D;
+		border-radius: 45rpx;
+		font-size: 34rpx;
+		font-family: SourceHanSansCN;
+		font-weight: 400;
+		color: #EF0E74;
+		line-height: 90rpx;
+		text-align: center;
+	}
+</style>

+ 2 - 1
pages/user/shareQrCode.vue

@@ -258,6 +258,7 @@
 	page {
 		height: 100%;
 	}
+
 	.imgw750h375 {
 		width: 100%;
 		height: 958rpx;
@@ -342,4 +343,4 @@
 	}
 
 	/* #endif */
-</style>
+</style>

+ 11 - 2
pages/user/user.vue

@@ -87,6 +87,15 @@
 			</view>
 			<image src="../../static/icon/back.png" mode="heightFix" class="right-img"></image>
 		</view>
+		<view class="user-list flex" @click="navTo('/pages/user/jiedianDetails?id='+ userInfo.uid)">
+			<view class="user-list-image">
+				<image src="../../static/icon/u1.png" mode="heightFix" class="left-img"></image>
+			</view>
+			<view class="user-list-tit">
+				我的节点
+			</view>
+			<image src="../../static/icon/back.png" mode="heightFix" class="right-img"></image>
+		</view>
 		<view class="user-list flex" @click="navTo('/pages/user/favorites')">
 			<view class="user-list-image">
 				<image src="../../static/icon/u3.png" mode="heightFix" class="left-img"></image>
@@ -96,12 +105,12 @@
 			</view>
 			<image src="../../static/icon/back.png" mode="heightFix" class="right-img"></image>
 		</view>
-		<view class="user-list flex" @click="openKf()">
+		<view class="user-list flex" @click="navTo('/pages/user/shareQrCode')">
 			<view class="user-list-image flex">
 				<image src="../../static/icon/u4.png" mode="heightFix" class="left-img"></image>
 			</view>
 			<view class="user-list-tit">
-				客服中心
+				邀请好友
 			</view>
 			<image src="../../static/icon/back.png" mode="heightFix" class="right-img"></image>
 		</view>

BIN
static/img/jiedian01.png


BIN
static/img/jiedianBg.png


BIN
unpackage/dist/build/h5/h5.rar


+ 1 - 1
unpackage/dist/build/h5/index.html

@@ -1,2 +1,2 @@
 <!DOCTYPE html><html lang=zh-CN><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><title>惠补</title><script>var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') || 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><link rel=stylesheet href=/index/static/index.63b34199.css></head><body><noscript><strong>Please enable JavaScript to continue.</strong></noscript><div id=app></div><script src=/index/static/js/chunk-vendors.c97f1397.js></script><script src=/index/static/js/index.8f6bd4e3.js></script></body></html>
+            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><link rel=stylesheet href=/index/static/index.97465e7b.css></head><body><noscript><strong>Please enable JavaScript to continue.</strong></noscript><div id=app></div><script src=/index/static/js/chunk-vendors.6d6acda3.js></script><script src=/index/static/js/index.479c6249.js></script></body></html>

BIN
unpackage/dist/build/h5/static/img/jiedian01.png


BIN
unpackage/dist/build/h5/static/img/jiedianBg.png


BIN
unpackage/dist/build/h5/static/img/logo.png


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/index.63b34199.css


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/index.97465e7b.css


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/chunk-vendors.6d6acda3.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/chunk-vendors.c97f1397.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/index.479c6249.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/index.8f6bd4e3.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-cart-cart.95ebc655.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-index-baodan.bf5133b9.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-index-index.167cc75a.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-index-index.4191f949.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-index-integral.980f16bf.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-index-integral.bb1dc8d3.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-order-createOrder.aa4e4242.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-public-login.4a906bd2.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-public-register.51576110.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-public-register.7ea2551e.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-redirect-redirect.692fcee5.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-set-address.5dbab4bc.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-set-addressManage~pages-user-xzdl.ed671bf8.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-store-shopDetail.6260a3b4.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-store-shopDetail.9bfc8a8f.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-store-shopList.040239af.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-store-shopList.c7f3f836.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-award.2bb7e757.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-award.f4bf1c45.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-favorites.1dad9b6f.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-jiedian.5b47c4d0.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-jiedianDetails.a89459a3.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-shareQrCode.bad71b8a.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-shareQrCode.c16ec080.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-team.37b0c781.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-team.a914afc4.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-user.7d8eb8e3.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-user.89aa09c8.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-withdrawal.29df68ae.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-withdrawal.3c790c80.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-yjzye.1eb27516.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-yjzye.cc3771d7.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-yjzz.7008eed6.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-yjzz.cbf54876.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-yue.16829425.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
unpackage/dist/build/h5/static/js/pages-user-yue.a1f99a09.js


Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä