lhl há 2 anos atrás
pai
commit
1a614bc7b0
100 ficheiros alterados com 3538 adições e 947 exclusões
  1. 4 0
      .hbuilderx/launch.json
  2. 4 0
      App.vue
  3. 8 0
      api/index.js
  4. 8 0
      api/user.js
  5. 1 1
      manifest.json
  6. 26 14
      pages.json
  7. 78 0
      pages/index/actionDetail.vue
  8. 79 0
      pages/index/actionList.vue
  9. 33 0
      pages/index/actionRecord.vue
  10. 205 140
      pages/index/index.vue
  11. 459 200
      pages/money/recharge.vue
  12. 3 3
      pages/product/product.vue
  13. 4 4
      pages/set/userinfo.vue
  14. 29 23
      pages/user/award.vue
  15. 200 0
      pages/user/scoreAccumulate.vue
  16. 32 22
      pages/user/team.vue
  17. 160 78
      pages/user/user.vue
  18. 299 438
      pages/user/withdrawal.vue
  19. 18 23
      pages/user/yue.vue
  20. BIN
      static/icon/btncz.png
  21. BIN
      static/icon/cz.png
  22. BIN
      static/icon/dd.png
  23. BIN
      static/icon/gift.png
  24. BIN
      static/icon/mye.png
  25. BIN
      static/icon/vip.png
  26. BIN
      static/icon/zc.png
  27. BIN
      static/img/tg-bg.png
  28. BIN
      static/img/user-top.png
  29. BIN
      static/index/in1.png
  30. BIN
      static/index/in2.png
  31. BIN
      static/index/in3.png
  32. BIN
      static/index/in4.png
  33. BIN
      static/index/in5.png
  34. BIN
      static/index/index-top.png
  35. BIN
      static/index/ryc.png
  36. BIN
      static/index/xny.png
  37. 5 1
      store/index.js
  38. 0 0
      unpackage/dist/dev/.automator/app-plus/.automator.json
  39. 0 0
      unpackage/dist/dev/app-plus/__uniappchooselocation.js
  40. BIN
      unpackage/dist/dev/app-plus/__uniapperror.png
  41. 0 0
      unpackage/dist/dev/app-plus/__uniappes6.js
  42. 0 0
      unpackage/dist/dev/app-plus/__uniappopenlocation.js
  43. 0 0
      unpackage/dist/dev/app-plus/__uniapppicker.js
  44. 6 0
      unpackage/dist/dev/app-plus/__uniappquill.js
  45. 0 0
      unpackage/dist/dev/app-plus/__uniappquillimageresize.js
  46. 0 0
      unpackage/dist/dev/app-plus/__uniappscan.js
  47. BIN
      unpackage/dist/dev/app-plus/__uniappsuccess.png
  48. 25 0
      unpackage/dist/dev/app-plus/__uniappview.html
  49. 3 0
      unpackage/dist/dev/app-plus/app-config-service.js
  50. 154 0
      unpackage/dist/dev/app-plus/app-config.js
  51. 9 0
      unpackage/dist/dev/app-plus/app-service.js
  52. 1135 0
      unpackage/dist/dev/app-plus/app-view.js
  53. 0 0
      unpackage/dist/dev/app-plus/manifest.json
  54. 551 0
      unpackage/dist/dev/app-plus/static/css/cmy.css
  55. BIN
      unpackage/dist/dev/app-plus/static/error/emptyCart.png
  56. BIN
      unpackage/dist/dev/app-plus/static/error/errorImage.jpg
  57. BIN
      unpackage/dist/dev/app-plus/static/error/missing-face.png
  58. BIN
      unpackage/dist/dev/app-plus/static/icon/add.png
  59. BIN
      unpackage/dist/dev/app-plus/static/icon/appleIcon.png
  60. BIN
      unpackage/dist/dev/app-plus/static/icon/back.png
  61. BIN
      unpackage/dist/dev/app-plus/static/icon/bdq.png
  62. BIN
      unpackage/dist/dev/app-plus/static/icon/btncz.png
  63. BIN
      unpackage/dist/dev/app-plus/static/icon/c3.png
  64. BIN
      unpackage/dist/dev/app-plus/static/icon/c5.png
  65. BIN
      unpackage/dist/dev/app-plus/static/icon/c6.png
  66. BIN
      unpackage/dist/dev/app-plus/static/icon/c7.png
  67. BIN
      unpackage/dist/dev/app-plus/static/icon/c8.png
  68. BIN
      unpackage/dist/dev/app-plus/static/icon/cz.png
  69. BIN
      unpackage/dist/dev/app-plus/static/icon/dd.png
  70. BIN
      unpackage/dist/dev/app-plus/static/icon/down.png
  71. BIN
      unpackage/dist/dev/app-plus/static/icon/fanhui.png
  72. BIN
      unpackage/dist/dev/app-plus/static/icon/fgq.png
  73. BIN
      unpackage/dist/dev/app-plus/static/icon/gift.png
  74. BIN
      unpackage/dist/dev/app-plus/static/icon/gn1.png
  75. BIN
      unpackage/dist/dev/app-plus/static/icon/i8.png
  76. BIN
      unpackage/dist/dev/app-plus/static/icon/img01.png
  77. BIN
      unpackage/dist/dev/app-plus/static/icon/img02.png
  78. BIN
      unpackage/dist/dev/app-plus/static/icon/img03.png
  79. BIN
      unpackage/dist/dev/app-plus/static/icon/img04.png
  80. BIN
      unpackage/dist/dev/app-plus/static/icon/img05.png
  81. BIN
      unpackage/dist/dev/app-plus/static/icon/img06.png
  82. BIN
      unpackage/dist/dev/app-plus/static/icon/img07.png
  83. BIN
      unpackage/dist/dev/app-plus/static/icon/img08.png
  84. BIN
      unpackage/dist/dev/app-plus/static/icon/img09.png
  85. BIN
      unpackage/dist/dev/app-plus/static/icon/img10.png
  86. BIN
      unpackage/dist/dev/app-plus/static/icon/img11.png
  87. BIN
      unpackage/dist/dev/app-plus/static/icon/img12.png
  88. BIN
      unpackage/dist/dev/app-plus/static/icon/in1.png
  89. BIN
      unpackage/dist/dev/app-plus/static/icon/in2.png
  90. BIN
      unpackage/dist/dev/app-plus/static/icon/in3.png
  91. BIN
      unpackage/dist/dev/app-plus/static/icon/in4.png
  92. BIN
      unpackage/dist/dev/app-plus/static/icon/index-gou.png
  93. BIN
      unpackage/dist/dev/app-plus/static/icon/mye.png
  94. BIN
      unpackage/dist/dev/app-plus/static/icon/o1.png
  95. BIN
      unpackage/dist/dev/app-plus/static/icon/o2.png
  96. BIN
      unpackage/dist/dev/app-plus/static/icon/o3.png
  97. BIN
      unpackage/dist/dev/app-plus/static/icon/o4.png
  98. BIN
      unpackage/dist/dev/app-plus/static/icon/reduce.png
  99. BIN
      unpackage/dist/dev/app-plus/static/icon/sc-ico.png
  100. BIN
      unpackage/dist/dev/app-plus/static/icon/search-h.png

+ 4 - 0
.hbuilderx/launch.json

@@ -2,6 +2,10 @@
   // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数
     "version": "0.0",
     "configurations": [{
+     	"app-plus" : 
+     	{
+     		"launchtype" : "remote"
+     	},
      	"default" : 
      	{
      		"launchtype" : "remote"

+ 4 - 0
App.vue

@@ -276,4 +276,8 @@ page {
 	.b-b:after {
 		bottom: 0;
 	}
+	.status_bar {
+	        height: var(--status-bar-height);
+	        width: 100%;
+	    }
 </style>

+ 8 - 0
api/index.js

@@ -34,3 +34,11 @@ export function loadIndexs(data) {
 	});
 }
 
+//获取活动列表
+export function getAtionList(data) {
+	return request({
+		url: '/api/',
+		method: 'get',
+		data
+	});
+}

+ 8 - 0
api/user.js

@@ -144,4 +144,12 @@ export function myteam(data) {
 		method:'get',
 		data
 	})
+}
+
+export function getUser(data) {
+	return request({
+		url:'/api/user',
+		method:'get',
+		data
+	})
 }

+ 1 - 1
manifest.json

@@ -74,7 +74,7 @@
         "devServer" : {
             "proxy" : {
                 "/api" : {
-                    "target" : "https://kqt.liuniu946.com/api",
+                    "target" : "http://hgd.liuniu946.com/api",
                     // "changeOrigin": true,
                     "pathRewrite" : {
                         "/api" : "" // rewrite path

+ 26 - 14
pages.json

@@ -2,15 +2,24 @@
 	"pages": [{
 			"path": "pages/index/index",
 			"style": {
-				"navigationBarTitleText": "康轻体"
+				// #ifndef MP-WEIXIN
+				"navigationStyle": "custom",
+				// #endif
+				"navigationBarTitleText": ""
 			}
 		},
 		{
-				"path": "pages/index/artDetail",
-				"style": {
-					"navigationBarTitleText": ""
-				}
-			},
+			"path": "pages/index/artDetail",
+			"style": {
+				"navigationBarTitleText": ""
+			}
+		},
+		{
+			"path": "pages/index/actionList",
+			"style": {
+				"navigationBarTitleText": "活动列表"
+			}
+		},
 		{
 			"path": "pages/public/register",
 			"style": {
@@ -155,7 +164,7 @@
 				"navigationBarTitleText": "购物车"
 			}
 		},
-		
+
 		{
 			"path": "pages/user/user",
 			"style": {
@@ -177,13 +186,10 @@
 		{
 			"path": "pages/user/award",
 			"style": {
-				"navigationBarTitleText": "",
+				// #ifndef MP-WEIXIN
 				"navigationStyle": "custom",
-				"app-plus": {
-					"titleNView": {
-						"type": "transparent"
-					}
-				}
+				// #endif
+				"navigationBarTitleText": ""
 			}
 		},
 		{
@@ -239,7 +245,7 @@
 			"style": {
 				"navigationBarTitleText": "创建订单"
 			}
-		},  {
+		}, {
 			"path": "pages/money/pay",
 			"style": {
 				"navigationBarTitleText": "支付"
@@ -332,6 +338,12 @@
 				"navigationBarTitleText": "选择代理"
 			}
 		},
+		{
+			"path": "pages/user/scoreAccumulate",
+			"style": {
+				"navigationBarTitleText": "积分明细"
+			}
+		},
 		{
 			"path": "pages/user/yue",
 			"style": {

+ 78 - 0
pages/index/actionDetail.vue

@@ -0,0 +1,78 @@
+<template>
+	<view class="content">
+		<view class="" style="height: 1rpx;"></view>
+		<empty v-if="loaded === true && list.length === 0"></empty>
+		<view class="action-wrap" v-for="item in list">
+			<image src="" mode=""></image>
+		</view>
+		<uni-load-more :status="loadingType"></uni-load-more>
+	</view>
+</template>
+
+<script>
+	import uniLoadMore from '@/components/uni-load-more/uni-load-more.vue';
+	import empty from '@/components/empty';
+	export default {
+		components: {
+			uniLoadMore,
+			empty
+		},
+		data() {
+			return {
+				page: 1,
+				limit: 10,
+				loadingType: 'more',
+				loaded: false,
+				list: []
+			}
+		},
+		onLoad(opt) {
+	
+		},
+		onShow() {
+
+		},
+		onReachBottom() {
+
+		},
+		onReady() {
+			
+		},
+		methods: {
+			getList() {
+				let that = this
+				if(that.loadingType == 'loading' || that.loadingType == 'noMore') {
+					return
+				}
+				getActionList({
+					page: that.page,
+					limit: that.limit
+				}).then(res => {
+					let list = res.data.list
+					that.list = that.list.concat(list)
+					that.page++
+					if(list.length == that.limit) {
+						that.loadingType = 'more'
+					}else {
+						that.loadingType = 'noMore'
+					}
+					that.loaded = true
+				})
+			}
+		}
+	}
+</script>
+
+<style lang="scss">
+	.action-wrap {
+		width: 704rpx;
+		height: 330rpx;
+		margin:20rpx auto;
+		image {
+			
+			width: 704rpx;
+			height: 330rpx;
+			border-radius: 20rpx;
+		}
+	}
+</style>

+ 79 - 0
pages/index/actionList.vue

@@ -0,0 +1,79 @@
+<template>
+	<view class="content">
+		<view class="" style="height: 1rpx;"></view>
+		<empty v-if="loaded === true && list.length === 0"></empty>
+		<view class="action-wrap" v-for="item in list" >
+			<image src="" mode=""></image>
+		</view>
+		<uni-load-more :status="loadingType"></uni-load-more>
+	</view>
+</template>
+
+<script>
+	import uniLoadMore from '@/components/uni-load-more/uni-load-more.vue';
+	import empty from '@/components/empty';
+	import {getActionList} from '@/api/index.js'
+	export default {
+		components: {
+			uniLoadMore,
+			empty
+		},
+		data() {
+			return {
+				page: 1,
+				limit: 10,
+				loadingType: 'more',
+				loaded: false,
+				list: []
+			}
+		},
+		onLoad(opt) {
+	
+		},
+		onShow() {
+			// this.getList()
+		},
+		onReachBottom() {
+
+		},
+		onReady() {
+			
+		},
+		methods: {
+			getList() {
+				let that = this
+				if(that.loadingType == 'loading' || that.loadingType == 'noMore') {
+					return
+				}
+				getActionList({
+					page: that.page,
+					limit: that.limit
+				}).then(res => {
+					let list = res.data.list
+					that.list = that.list.concat(list)
+					that.page++
+					if(list.length == that.limit) {
+						that.loadingType = 'more'
+					}else {
+						that.loadingType = 'noMore'
+					}
+					that.loaded = true
+				})
+			}
+		}
+	}
+</script>
+
+<style lang="scss">
+	.action-wrap {
+		width: 704rpx;
+		height: 330rpx;
+		margin:20rpx auto;
+		image {
+			
+			width: 704rpx;
+			height: 330rpx;
+			border-radius: 20rpx;
+		}
+	}
+</style>

+ 33 - 0
pages/index/actionRecord.vue

@@ -0,0 +1,33 @@
+<template>
+	<view class="content">
+		
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				
+			}
+		},
+		onLoad(opt) {
+	
+		},
+		onShow() {
+
+		},
+		onReachBottom() {
+
+		},
+		onReady() {
+			
+		},
+		methods: {
+		}
+	}
+</script>
+
+<style lang="scss">
+
+</style>

+ 205 - 140
pages/index/index.vue

@@ -1,67 +1,67 @@
 <template>
 	<view class="container">
+		<!-- <image src="" mode=""></image> -->
 		<!-- 顶部logo and 搜索 start-->
-		<view class="status_bar"></view>
-		<view class="top-search flex">
-			<view class="search-box flex" @click="clickSearch()">
-				<image class="search" src="../../static/icon/search-h.png" mode=""></image>
-				<view class="search-font">输入关键词搜索</view>
-			</view>
-		</view>
-		<!-- 顶部logo and 搜索 end-->
-		<view class="jg" style="background-color: #fff;"></view>
-		<!-- 轮播图 start -->
-		<swiper class="top-swiper" autoplay="true" duration="400" interval="5000" @change="swiperChange">
-			<swiper-item v-for="(item, index) in carouselList" :key="index" class="carousel-item"
-				@click="bannerNavToUrl(item)">
-				<image :src="item.pic" />
-			</swiper-item>
-		</swiper>
-		<!-- 轮播图 end -->
-		<view class="swiper-btm flex">
-			<view class="btm-item flex">
-				<image src="../../static/icon/index-gou.png" mode=""></image>
-				<view class="">自用购物返利</view>
-			</view>
-			<view class="btm-item flex">
-				<image src="../../static/icon/index-gou.png" mode=""></image>
-				<view class="">分享好友赚钱</view>
-			</view>
-			<view class="btm-item flex">
-				<image src="../../static/icon/index-gou.png" mode=""></image>
-				<view class="">超值正品优惠</view>
+		<view class="index-top-wrap">
+			<image src="../../static/index/index-top.png" mode="widthFix" class="index-top"></image>
+			<view class="status_bar fud"></view>
+			<view class="top-search flex fud">
+				<view class="search-box flex" @click="clickSearch()">
+					<image class="search" src="../../static/icon/search-h.png" mode=""></image>
+					<view class="search-font">输入关键词搜索</view>
+				</view>
 			</view>
+			<!-- 顶部logo and 搜索 end-->
+			<!-- <view class="jg fud" style="background-color: #fff;"></view> -->
+			<!-- 轮播图 start -->
+			<swiper class="top-swiper fud" autoplay="true" duration="400" interval="5000" @change="swiperChange">
+				<swiper-item v-for="(item, index) in carouselList" :key="index" class="carousel-item"
+					@click="bannerNavToUrl(item)">
+					<image :src="item.pic" />
+				</swiper-item>
+			</swiper>
+			<!-- 轮播图 end -->
 		</view>
 		<!-- 分类 start -->
 		<view class="cate-section flex">
 			<view class="cate-item flex" @click="navto('/pages/category/category')">
 				<view class="img-wrapper flex">
-					<image src="../../static/icon/in1.png" mode=""></image>
+					<image src="../../static/index/in1.png" mode=""></image>
 				</view>
 				<view class="item-title">全部商品</view>
 			</view>
 			<view class="cate-item flex" @click="navto('/pages/index/artDetail?id=1')">
 				<view class="img-wrapper flex">
-					<image src="../../static/icon/in2.png" mode=""></image>
+					<image src="../../static/index/in2.png" mode=""></image>
 				</view>
 				<view class="item-title">公司介绍</view>
 			</view>
 			<view class="cate-item flex" @click="openKf">
 				<view class="img-wrapper flex">
-					<image src="../../static/icon/in3.png" mode=""></image>
+					<image src="../../static/index/in3.png" mode=""></image>
 				</view>
 				<view class="item-title">联系客服</view>
 			</view>
 			<view class="cate-item flex" @click="navto('/pages/user/shareQrCode',1)">
 				<view class="img-wrapper flex">
-					<image src="../../static/icon/in4.png" mode=""></image>
+					<image src="../../static/index/in4.png" mode=""></image>
 				</view>
 				<view class="item-title">邀请好友</view>
 			</view>
+			<view class="cate-item flex" @click="navto('/pages/user/shareQrCode',1)">
+				<view class="img-wrapper flex">
+					<image src="../../static/index/in5.png" mode=""></image>
+				</view>
+				<view class="item-title">活动专区</view>
+			</view>
 		</view>
 		<!-- 分类 ed -->
 		<view class="jg">
 
+		</view>
+		<view class="hdlist" @click="navTo('/pages/index/actionList')">
+			<image src="../../static/index/ryc.png" mode="widthFix"></image>
+			<image src="../../static/index/xny.png" mode="widthFix"></image>
 		</view>
 		<!-- 商品列表 start -->
 		<view class="product-box">
@@ -70,7 +70,7 @@
 			
 				</view>
 				<view class="tit">
-					猜您喜欢
+					热销推荐
 				</view>
 				<view class="hx">
 			
@@ -78,32 +78,25 @@
 			</view>
 		</view>
 		<view class="good-list">
-			<view class="good flex" v-for="item in goodList" @click="navto('/pages/product/product?id=' + item.id)">
-				<view class="good-img">
-					<image :src="item.image" mode=""></image>
-				</view>
-				<view class="good-info flex">
-					<view class="good-name clamp2">
+			<view class="good" v-for="item in goodList" @click="navTo('/pages/product/product?id=' + item.id)">
+				<image :src="item.image" mode="" class="good-image"></image>
+				<view class="good-name ">
+					<view class="clamp">
 						{{item.store_name}}
 					</view>
-					<view class="good-price">
-						<view class="old-price" v-if="item.ot_price*1 > item.price*1">
-							<text class="old-left">¥{{item.ot_price}}</text>
-							<image src="../../static/icon/down.png" mode="widthFix"></image>
-							<text class="old-right">直降{{item.ot_price*1 - item.price*1}}元</text>
-						</view>
-						<view class="new-price flex">
-							<view class="" >
-								¥{{item.price}}
-							</view>
-							<view class="good-tip">
-								立即购买
-							</view>
-						</view>
+				</view>
+				<view class="good-key">
+					鸿运开来 为成功喝彩
+				</view>
+				<view class="good-price">
+					<view class="price">
+						¥{{item.price}}
+					</view>
+					<view class="xl">
+						销量:{{item.sales}}
 					</view>
 				</view>
 			</view>
-			<uni-load-more :status="loadingType"></uni-load-more>
 		</view>
 		<!-- 商品列表 ed-->
 		<uni-popup ref="popupkf" type="center">
@@ -426,7 +419,8 @@
 	.top-search {
 		height: 80rpx;
 		padding: 0 20rpx;
-		background-color: #fff;
+		margin-bottom: 20rpx;
+		// background-color: #fff;
 
 		.top-logo {
 			width: 50rpx;
@@ -464,13 +458,16 @@
 
 	// 顶部轮播图
 	.top-swiper {
-		width: 750rpx;
-		height: 360rpx;
+		width: 690rpx;
+		height: 365rpx;
 
 		// margin: 20rpx 0 0;
+		border-radius: 20rpx;
+		margin: auto;
 		image {
-			width: 750rpx;
-			height: 360rpx;
+			width: 690rpx;
+			height: 365rpx;
+			border-radius: 20rpx;
 		}
 	}
 
@@ -497,7 +494,7 @@
 
 	.jg {
 		height: 20rpx;
-		background: #F8F8F8;
+		background: #fff;
 	}
 
 	// 分类
@@ -505,7 +502,7 @@
 		justify-content: space-around;
 		background-color: #fff;
 		padding: 0rpx 0 30rpx;
-
+		margin-top: 20rpx;
 		.cate-item {
 			flex-grow: 0;
 			width: 20%;
@@ -534,7 +531,7 @@
 				margin-top: 15rpx;
 				font-size: 26rpx;
 				font-weight: 500;
-				color: #666666;
+				color: #6B4216;
 			}
 		}
 	}
@@ -681,7 +678,7 @@
 				margin: 0 70rpx;
 				font-size: 30rpx;
 				font-weight: 500;
-				color: #363636;
+				color: #4A2723;
 			}
 		}
 		.img {
@@ -765,97 +762,165 @@
 		}
 	}
 	.good-list {
-		width: 750rpx;
-		background:#fff;
-		padding: 30rpx 0;
-	
+		display: flex;
+		justify-content: space-between;
+		flex-wrap: wrap;
+		padding: 20rpx 28rpx;
 		.good {
-			width: 690rpx;
-			height: 276rpx;
+			width: 336rpx;
+			height: 482rpx;
 			background: #FFFFFF;
-			box-shadow: 0px 0px 20rpx 0px rgba(50, 50, 52, 0.06);
-			border-radius: 10rpx;
-			margin: auto;
-			padding: 20rpx 15rpx;
+			box-shadow: 0px 0px 6rpx 0px rgba(0, 0, 0, 0.1);
+			border-radius: 14rpx;
 			margin-bottom: 20rpx;
-			&:last-of-type {
-				margin-bottom: 0rpx;
+			position: relative;
+			.good-image {
+				width: 336rpx;
+				height: 336rpx;
+				background-color: #eee;
+				border-radius: 14rpx 14rpx 0 0;
 			}
 	
-			.good-img {
-				flex-shrink: 0;
-				width: 236rpx;
-				height: 236rpx;
-				border-radius: 10rpx;
-				margin-right: 22rpx;
-	
-				image {
-					width: 236rpx;
-					height: 236rpx;
-					border-radius: 10rpx;
-				}
+			.good-name {
+				font-size: 28rpx;
+				font-weight: bold;
+				color: #333333;
+				padding: 0 20rpx;
 			}
-	
-			.good-info {
-				flex-grow: 1;
-				height: 100%;
-				flex-direction: column;
+			.good-key {
+				font-size: 22rpx;
+				font-weight: 500;
+				color: #999999;
+				padding-left: 20rpx
+			}
+			.good-price {
+				display: flex;
+				width: 336rpx;
 				justify-content: space-between;
-				align-items: flex-start;
-	
-				.good-name {
-					font-size: 32rpx;
+				font-size: 28rpx;
+				font-weight: bold;
+				color: #FF1A1A;
+				position: absolute;
+				bottom: 20rpx;
+				padding: 0 20rpx;
+				.xl{
+					font-size: 20rpx;
 					font-weight: bold;
-					padding-top: 10rpx;
-					color: #333333;
+					color: #999999;
 				}
+			}
+		}
+	}
+	// .good-list {
+	// 	width: 750rpx;
+	// 	background:#fff;
+	// 	padding: 30rpx 0;
 	
-				.good-price {
-					width: 100%;
+	// 	.good {
+	// 		width: 690rpx;
+	// 		height: 276rpx;
+	// 		background: #FFFFFF;
+	// 		box-shadow: 0px 0px 20rpx 0px rgba(50, 50, 52, 0.06);
+	// 		border-radius: 10rpx;
+	// 		margin: auto;
+	// 		padding: 20rpx 15rpx;
+	// 		margin-bottom: 20rpx;
+	// 		&:last-of-type {
+	// 			margin-bottom: 0rpx;
+	// 		}
 	
-					image {
-						width: 14rpx;
-						margin: 0 6rpx 0 10rpx;
-					}
+	// 		.good-img {
+	// 			flex-shrink: 0;
+	// 			width: 236rpx;
+	// 			height: 236rpx;
+	// 			border-radius: 10rpx;
+	// 			margin-right: 22rpx;
 	
-					.old-price {
-						.old-left {
-							font-size: 26rpx;
-							font-weight: 500;
-							text-decoration: line-through;
-							color: #999999;
-						}
+	// 			image {
+	// 				width: 236rpx;
+	// 				height: 236rpx;
+	// 				border-radius: 10rpx;
+	// 			}
+	// 		}
 	
-						.old-right {
-							font-size: 24rpx;
-							font-weight: bold;
-							color: #B59467;
-						}
-					}
+	// 		.good-info {
+	// 			flex-grow: 1;
+	// 			height: 100%;
+	// 			flex-direction: column;
+	// 			justify-content: space-between;
+	// 			align-items: flex-start;
 	
-					.new-price {
-						width: 100%;
-						font-size: 36rpx;
-						font-weight: bold;
-						color: #FF4C4C;
-						justify-content: space-between;
+	// 			.good-name {
+	// 				font-size: 32rpx;
+	// 				font-weight: bold;
+	// 				padding-top: 10rpx;
+	// 				color: #333333;
+	// 			}
 	
-						.good-tip {
-							width: 137rpx;
-							height: 52rpx;
-							background: #ff4a48;
-							border-radius: 26rpx;
-							position: relative;
-							font-size: 26rpx;
-							font-weight: 500;
-							color: #FFFFFF;
-							line-height: 52rpx;
-							text-align: center;
-						}
-					}
-				}
-			}
-		}
+	// 			.good-price {
+	// 				width: 100%;
+	
+	// 				image {
+	// 					width: 14rpx;
+	// 					margin: 0 6rpx 0 10rpx;
+	// 				}
+	
+	// 				.old-price {
+	// 					.old-left {
+	// 						font-size: 26rpx;
+	// 						font-weight: 500;
+	// 						text-decoration: line-through;
+	// 						color: #999999;
+	// 					}
+	
+	// 					.old-right {
+	// 						font-size: 24rpx;
+	// 						font-weight: bold;
+	// 						color: #B59467;
+	// 					}
+	// 				}
+	
+	// 				.new-price {
+	// 					width: 100%;
+	// 					font-size: 36rpx;
+	// 					font-weight: bold;
+	// 					color: #FF4C4C;
+	// 					justify-content: space-between;
+	
+	// 					.good-tip {
+	// 						width: 137rpx;
+	// 						height: 52rpx;
+	// 						background: #ff4a48;
+	// 						border-radius: 26rpx;
+	// 						position: relative;
+	// 						font-size: 26rpx;
+	// 						font-weight: 500;
+	// 						color: #FFFFFF;
+	// 						line-height: 52rpx;
+	// 						text-align: center;
+	// 					}
+	// 				}
+	// 			}
+	// 		}
+	// 	}
 	
+	// }
+	.index-top-wrap {
+		position: relative;
+		.index-top {
+			width: 750rpx;
+			position: absolute;
+		}
+		.fud {
+			position: relative;
+		}
+	}
+	.hdlist {
+		width: 100%;
+		image {
+			display: block;
+			width: 705rpx;
+			margin: 25rpx auto;
+		}
 	}
 </style>

+ 459 - 200
pages/money/recharge.vue

@@ -1,26 +1,51 @@
 <template>
 	<view class="content">
-		<view class="row-box">
+		<view class="now">
+			<view>当前余额:</view>
+			<view class="now-money">¥{{new_money}}</view>
+		</view>
+		<view class="main-jg"></view>
+		<view class="add-wrapper">
+			<view class="add-box">
+				<view class="add-log">¥</view>
+				<input type="text" v-model="money" placeholder="请输入充值金额" placeholder-class="place"
+					@keyup="clearNoNum()" />
+			</view>
+			<view class="jg" style="height: 1px; background-color: #E6E6E6;"></view>
+			<view class="add-tags">
+				<view class="tag" v-for="(item, index) in addTags" :key="item" @click="tagClick(index)"
+					:class="{ action: currentIndex === index && money == addTags[index] }">
+					<text>{{ item }}</text>
+					元
+				</view>
+			</view>
+		</view>
+		<view class="main-jg"></view>
+		<!-- <view class="btn-wrapper">
+			<view class="icon iconfont iconweixin1"><view>微信充值</view></view>
+			<view class="btn" @click="btnClick" :class="{'actiont': isSect}"><image src="../../static/icon/btncz.png" mode="" :class="{'action':!isSect}"></image></view>
+		</view> -->
+		<!-- <view class="row-box">
 			<view class="title">充值金额</view>
 			<view class="row">
 				<text class="tit">¥</text>
 				<input class="input" type="number" v-model="money" placeholder="请输入充值金额" placeholder-class="placeholder" />
 			</view>
-		</view>
-
+		</view> -->
 		<view class="list">
 			<radio-group @change="tabRadio">
-				<!-- #ifdef APP-PLUS -->
 				<label>
 					<view class="box">
 						<view class="icon iconfont iconzhifubao"></view>
 						<view class="title-box">
 							<view class="title"><text>支付宝充值</text></view>
 						</view>
-						<view class="right"><radio value="alipay" color="#5dbc7c" :checked="type == 'alipay'" /></view>
+						<view class="right">
+							<radio value="alipay" color="#5dbc7c" :checked="type == 'alipay'" />
+						</view>
 					</view>
 				</label>
-				<label>
+				<!-- <label>
 					<view class="box">
 						<view class="icon iconfont iconweixin1"></view>
 						<view class="title-box">
@@ -29,236 +54,470 @@
 						</view>
 						<view class="right"><radio value="weixin" color=" #5dbc7c" :checked="type == 'weixin'" /></view>
 					</view>
-				</label>
-				<!-- #endif -->
+				</label> -->
 			</radio-group>
 		</view>
-		<button class="add-btn up" :class="{ 'active-bg': payLoding }" @click="!payLoding ? confirm() : ''">确认充值</button>
+		<button class="add-btn up" :class="{ 'active-bg': payLoding }"
+			@click="!payLoding ? confirm() : ''">立即充值</button>
+
 	</view>
 </template>
 
 <script>
-import { getMoneyStyle } from '@/utils/rocessor.js';
-// #ifdef H5
-import { rechargeWechat } from '@/api/wallet.js';
-// #endif
-// #ifdef MP
-import { rechargeRoutine } from '@/api/wallet.js';
-// #endif
-import { mapState } from 'vuex';
-export default {
-	filters: {
+	import {
 		getMoneyStyle
-	},
-	data() {
-		return {
-			type: 'weixin',
-			money: '', //充值金额
-			payLoding: false //是否加载中
-		};
-	},
-	onLoad(options) {},
-	computed: {
-		// #ifdef H5
-		...mapState(['weichatObj'])
-		// #endif
-	},
-	methods: {
-		// 跳转
-		navTo(url) {
-			uni.navigateTo({
-				url: url
-			});
+	} from '@/utils/rocessor.js';
+	// #ifdef H5
+	import {
+		rechargeWechat,
+		userBalance
+	} from '@/api/wallet.js';
+	// #endif
+	// #ifdef MP
+	import {
+		rechargeRoutine,
+		userBalance
+	} from '@/api/wallet.js';
+	// #endif
+	import {
+		mapState
+	} from 'vuex';
+	import {
+		orderData,
+		getUserInfo
+	} from '@/api/user.js';
+	export default {
+		filters: {
+			getMoneyStyle
+		},
+		data() {
+			return {
+				type: 'alipay',
+				money: '', //充值金额
+				payLoding: false, //是否加载中
+				addTags: [300, 200, 150, 100, 50],
+				currentIndex: 0,
+				addMoney: 0,
+				isSect: false, //是否选择微信充值
+				new_money: 0,
+			};
 		},
-		// 切换选中对象
-		tabRadio(e) {
-			this.type = e;
+		onLoad(options) {
+			this.userBalance()
 		},
-		// 提交
-		confirm() {
-			let obj = this;
-			obj.payLoding = true;
+		computed: {
 			// #ifdef H5
-			rechargeWechat({ price: this.money, from: this.type })
-				.then(e => {
-					let da = e.data.data;
-					obj.weichatObj.chooseWXPay({
-						timestamp: da.timestamp,
-						nonceStr: da.nonceStr,
-						package: da.package,
-						signType: da.signType,
-						paySign: da.paySign,
-						success: function(res) {
-							uni.showToast({
-								title: '充值成功',
-								duration: 2000,
-								position: 'top'
-							});
-						}
-					});
-					obj.payLoding = false;
-				})
-				.catch(e => {
-					obj.payLoding = false;
-					console.log(e);
-				});
+			...mapState(['weichatObj'])
 			// #endif
-			// #ifdef MP
-			rechargeRoutine({ price: this.money})
-				.then(e => {
-					let da = e.data;
+		},
+		methods: {
+			// 跳转
+			navTo(url) {
+				uni.navigateTo({
+					url: url
+				});
+			},
+			// 切换选中对象
+			tabRadio(e) {
+				console.log(e)
+				this.type = e;
+			},
+			// 提交
+			confirm() {
+				if (this.money == 0) {
+					return this.$api.msg('请输入充值金额');
+				}
+
+				let obj = this;
+				obj.payLoding = true;
+				// #ifdef H5
+				rechargeWechat({
+						price: obj.money,
+						from: obj.type
+					})
+					.then(e => {
+						let da = e.data.data;
+						obj.weichatObj.chooseWXPay({
+							timestamp: da.timestamp,
+							nonceStr: da.nonceStr,
+							package: da.package,
+							signType: da.signType,
+							paySign: da.paySign,
+							success: function(res) {
+								uni.showToast({
+									title: '充值成功',
+									duration: 2000,
+									position: 'top'
+								});
+							}
+						});
+						obj.payLoding = false;
+					})
+					.catch(e => {
+						obj.payLoding = false;
+						console.log(e);
+					});
+				// #endif
+				// #ifdef MP
+				rechargeRoutine({
+						price: this.money
+					})
+					.then(e => {
+						let da = e.data;
 						wx.requestPayment({
-								timeStamp: da.timestamp,
-								nonceStr: da.nonceStr,
-								package: da.package,
-								signType: da.signType,
-								paySign: da.paySign,
-								success: function(res) {
-									uni.redirectTo({
-										url: '/pages/money/paySuccess'
-									});
-								},
-								
-							})
-					
-					obj.payLoding = false;
+							timeStamp: da.timestamp,
+							nonceStr: da.nonceStr,
+							package: da.package,
+							signType: da.signType,
+							paySign: da.paySign,
+							success: function(res) {
+								uni.redirectTo({
+									url: '/pages/money/paySuccess?isshow=false'
+								});
+							}
+						});
+
+						obj.payLoding = false;
+					})
+					.catch(e => {
+						obj.payLoding = false;
+						console.log(e);
+					});
+				// #endif
+
+			},
+			//获取订单列表
+			loadData(source) {
+				console.log(source);
+				//这里是将订单挂载到tab列表下
+				let index = this.tabCurrentIndex;
+				let navItem = this.navList[index];
+				let state = navItem.state;
+				if (source === 'tabChange' && navItem.loaded === true) {
+					//tab切换只有第一次需要加载数据
+					return;
+				}
+				if (navItem.loadingType === 'loading') {
+					//防止重复加载
+					return;
+				}
+				navItem.loadingType = 'loading';
+				setTimeout(() => {
+					let orderList = [];
+					orderList.forEach(item => {
+						navItem.orderList.push(item);
+					});
+					//loaded新字段用于表示数据加载完毕,如果为空可以显示空白页
+					this.$set(navItem, 'loaded', true);
+					//判断是否还有数据, 有改为 more, 没有改为noMore
+					navItem.loadingType = 'more';
+				}, 600);
+			},
+			tagClick(index) {
+				this.currentIndex = index;
+				this.money = this.addTags[index];
+			},
+			clearNoNum() {
+				this.money = this.money.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3');
+				switch (this.money) {
+					case '300':
+						this.currentIndex = 0;
+						break;
+					case '200':
+						this.currentIndex = 1;
+						break;
+					case '150':
+						this.currentIndex = 2;
+						break;
+					case '100':
+						this.currentIndex = 3;
+						break;
+					case '50':
+						this.currentIndex = 4;
+						break;
+				}
+			},
+			btnClick() {
+				this.isSect = !this.isSect
+			},
+			userBalance() {
+				userBalance().then(res => {
+					this.new_money = res.data.now_money
+					console.log(res)
 				})
-				.catch(e => {
-					obj.payLoding = false;
-					console.log(e);
-				});
-			// #endif
-		},
-		//获取订单列表
-		loadData(source) {
-			console.log(source);
-			//这里是将订单挂载到tab列表下
-			let index = this.tabCurrentIndex;
-			let navItem = this.navList[index];
-			let state = navItem.state;
-			if (source === 'tabChange' && navItem.loaded === true) {
-				//tab切换只有第一次需要加载数据
-				return;
 			}
-			if (navItem.loadingType === 'loading') {
-				//防止重复加载
-				return;
-			}
-			navItem.loadingType = 'loading';
-			setTimeout(() => {
-				let orderList = [];
-				orderList.forEach(item => {
-					navItem.orderList.push(item);
-				});
-				//loaded新字段用于表示数据加载完毕,如果为空可以显示空白页
-				this.$set(navItem, 'loaded', true);
-				//判断是否还有数据, 有改为 more, 没有改为noMore
-				navItem.loadingType = 'more';
-			}, 600);
 		}
-	}
-};
+	};
 </script>
 
 <style lang="scss">
-page {
-	height: 100%;
-}
-
-.add-btn {
-	&.modified {
-		color: $base-color;
-	}
-	&.up {
-		background-color: $base-color;
-		color: #fff;
+	page {
+		height: 100%;
+		background-color: #fff;
 	}
-	display: flex;
-	align-items: center;
-	justify-content: center;
-	width: 690rpx;
-	height: 80rpx;
-	margin: 0 auto;
-	margin-top: 30rpx;
-	font-size: $font-lg;
-	border-radius: 10rpx;
-	// box-shadow: 1px 2px 5px rgba(219, 63, 96, 0.4);
-}
-.row-box {
-	margin-top: 30rpx;
-	padding: 20rpx 30rpx;
-	background: #fff;
-	.title {
-		font-size: $font-base + 2rpx;
-		color: $font-color-dark;
-	}
-	.row {
+
+	.add-btn {
+
+		&.modified {
+			color: $base-color;
+		}
+
+		&.up {
+
+			background: linear-gradient(-90deg, #FAC545, #FFE000);
+			color: #6B4216;
+		}
+
 		display: flex;
 		align-items: center;
-		position: relative;
-		height: 80rpx;
-		.tit {
-			flex-shrink: 0;
-			width: 40rpx;
-			font-size: 30rpx;
+		justify-content: center;
+		width: 604rpx;
+		height: 90rpx;
+		margin: 0 auto;
+		margin-top: 30rpx;
+		font-size: $font-lg;
+		border-radius: 10rpx;
+
+	}
+
+	.row-box {
+		margin-top: 30rpx;
+		padding: 20rpx 30rpx;
+		background: #fff;
+
+		.title {
+			font-size: $font-base + 2rpx;
 			color: $font-color-dark;
 		}
-		.input {
-			flex: 1;
-			font-size: 30rpx;
-			color: $font-color-dark;
+
+		.row {
+			display: flex;
+			align-items: center;
+			position: relative;
+			height: 80rpx;
+
+			.tit {
+				flex-shrink: 0;
+				width: 40rpx;
+				font-size: 30rpx;
+				color: $font-color-dark;
+			}
+
+			.input {
+				flex: 1;
+				font-size: 30rpx;
+				color: $font-color-dark;
+			}
+
+			.iconlocation {
+				font-size: 36rpx;
+				color: $font-color-light;
+			}
+
+			.buttom {
+				color: $font-color;
+				font-size: $font-base;
+			}
 		}
-		.iconlocation {
-			font-size: 36rpx;
-			color: $font-color-light;
+	}
+
+	.list {
+		padding-left: 30rpx;
+		margin-top: 30rpx;
+		background-color: #ffffff;
+
+		.box {
+			display: flex;
+			align-items: center;
+			width: 100%;
+			height: 120rpx;
+			border-bottom: 1px solid $border-color-light;
+
+			.icon {
+				font-size: 48rpx;
+				padding-right: 20rpx;
+			}
+
+			.iconweixin1 {
+				color: #18bf16;
+			}
+
+			.iconzhifubao {
+				color: #08aaec;
+			}
+
+			.title-box {
+				flex-grow: 1;
+				text-align: left;
+
+				.title {
+					font-size: $font-base + 2rpx;
+					color: $font-color-base;
+				}
+
+				.node {
+					font-size: $font-sm;
+					color: $font-color-light;
+				}
+			}
+		}
+	}
+
+	/deep/ .uni-radio-input {
+		width: 45rpx;
+		height: 45rpx;
+	}
+
+	.active-bg {
+		background-color: $color-gray !important;
+	}
+
+	.now {
+		width: 100%;
+		height: 86rpx;
+		padding: 0 26rpx 0 47rpx;
+		display: flex;
+		justify-content: space-between;
+		line-height: 86rpx;
+		background-color: #fff;
+		// margin-bottom: 21rpx;
+
+		view {
+			font-size: 28rpx;
+			font-weight: 500;
+			color: #333333;
 		}
 
-		.buttom {
-			color: $font-color;
-			font-size: $font-base;
+		.now-money {
+			font-size: 32rpx;
+			font-weight: bold;
+			color: #FF4C4C;
 		}
 	}
-}
-.list {
-	padding-left: 30rpx;
-	margin-top: 30rpx;
-	background-color: #ffffff;
-	.box {
+
+	.add-wrapper {
+		width: 750rpx;
+		height: 338rpx;
+		padding-left: 30rpx;
+		background: #ffffff;
 		display: flex;
+		flex-direction: column;
 		align-items: center;
-		width: 100%;
-		height: 120rpx;
-		border-bottom: 1px solid $border-color-light;
-		.icon {
-			font-size: 48rpx;
-			padding-right: 20rpx;
+
+		// margin-bottom: 22rpx;
+		.add-box {
+			width: 100%;
+			height: 103rpx;
+			display: flex;
+			flex-direction: row;
+			justify-content: space-between;
+			padding: 0 39rpx 0 10rpx;
+			align-items: center;
+
+			.add-log {
+				font-size: 37rpx;
+				font-weight: bold;
+			}
+
+			input {
+				width: 218rpx;
+				height: 30rpx;
+				font-size: 32rpx;
+				font-weight: 500;
+				color: #000;
+				line-height: 40px;
+				text-align: right;
+
+				.place {
+					color: #bfbfbf;
+				}
+			}
+		}
+
+		.jg {
+			width: 100%;
+		}
+
+		.add-tags {
+			height: 234rpx;
+			padding-top: 47rpx;
+			padding-bottom: 17rpx;
+			display: flex;
+			flex-direction: row;
+			flex-wrap: wrap;
+
+			// justify-content: space-between;
+			.tag {
+				width: 210rpx;
+				height: 70rpx;
+				background-color: #f0f0f0;
+				border-radius: 4rpx;
+				margin: 0 30rpx 30rpx 0;
+				text-align: center;
+				line-height: 70rpx;
+				font-size: 22rpx;
+
+				text {
+					font-size: 32rpx;
+					font-weight: 500;
+				}
+			}
+
+			.action {
+				color: #6B4216;
+				background: linear-gradient(-90deg, #FAC545, #FFE000);
+			}
 		}
+	}
+
+	.btn-wrapper {
+		padding: 49rpx 32rpx 0 40rpx;
+		height: 183rpx;
+		display: flex;
+		justify-content: space-between;
+		background-color: #fff;
+
 		.iconweixin1 {
 			color: #18bf16;
+			font-size: 48rpx;
+			display: flex;
+
+			view {
+				// display: inline-block;
+				height: 48rpx;
+				text-align: 48rpx;
+				padding-left: 20rpx;
+				// padding-top: 10rpx;
+				color: #000000;
+				font-size: 30rpx;
+			}
 		}
-		.iconzhifubao {
-			color: #08aaec;
-		}
-		.title-box {
-			flex-grow: 1;
-			text-align: left;
-			.title {
-				font-size: $font-base + 2rpx;
-				color: $font-color-base;
+
+		.btn {
+			width: 36rpx;
+			height: 36rpx;
+			border: 4rpx #333 solid;
+			border-radius: 8rpx 8rpx;
+
+			image {
+				// display: none;
+				width: 100%;
+				height: 100%;
 			}
-			.node {
-				font-size: $font-sm;
-				color: $font-color-light;
+
+			.action {
+				display: none;
 			}
 		}
+
+		.actiont {
+			border: none;
+		}
+	}
+
+	.main-jg {
+		width: 100%;
+		height: 21rpx;
+		background-color: #f8f6f6;
 	}
-}
-/deep/ .uni-radio-input {
-	width: 45rpx;
-	height: 45rpx;
-}
-
-.active-bg {
-	background-color: $color-gray !important;
-}
 </style>

+ 3 - 3
pages/product/product.vue

@@ -68,12 +68,12 @@
 		<!-- 底部操作菜单 -->
 		<view class="page-bottom" v-if="goodsType == 0">
 			<view class="action-btn-group">
-				<view class="shoucang flex" @click="toFavorite(goodsObjact)">
+				<!-- <view class="shoucang flex" @click="toFavorite(goodsObjact)">
 					<image src="../../static/icon/sc-ico.png" mode=""></image>
 					<view class="">
 						收藏
 					</view>
-				</view>
+				</view> -->
 				<view class="buy-now">
 					<button type="primary" class=" action-btn no-border buy-now-btn" @click.stop="toggleSpec(2)" v-if="is_bk == 0 && is_xf ==0">加入购物车</button>
 					<button type="primary" class=" action-btn no-border  add-cart-btn" @click.stop="toggleSpec(1)">立即购买</button>
@@ -1137,7 +1137,7 @@ page {
 		}
 		.buy-now {
 			flex-grow: 1;
-			width: 650rpx;
+			width: 750rpx;
 			display: flex;
 		}
 		.action-btn {

+ 4 - 4
pages/set/userinfo.vue

@@ -17,7 +17,7 @@
 			<input class="input" type="text"  disabled="true" v-model="userInfo.phone" placeholder-class="placeholder" />
 		</view> -->
 		<view class="add-btn" @click="confirm">提交</view>
-		<view class="add-btn" @click="cancel" style="margin-top: 20rpx;">退出</view>
+		<view class="add-btn out" @click="cancel" style="margin-top: 20rpx;">退出</view>
 		<uni-popup ref="popup" type="center">
 			<view class="psw-wrapper">
 				<view class="psw-title">请输入自己的账户</view>
@@ -180,7 +180,7 @@ export default {
 		margin: 158rpx auto 30rpx;
 		width: 560rpx;
 		height: 80rpx;
-		background: #DC262B;
+		background: #feca00;
 		border-radius: 40px;
 		color: #FFFFFF;
 	}
@@ -191,10 +191,10 @@ export default {
 		margin: 0 auto 30rpx;
 		width: 560rpx;
 		height: 80rpx;
-		border: 1px solid  #DC262B;
+		border: 1px solid  #feca00;
 		background: #FFFFFF;
 		border-radius: 40px;
-		color:  #DC262B;
+		color:  #feca00;
 	}
 	.psw-wrapper {
 		width: 548rpx;

+ 29 - 23
pages/user/award.vue

@@ -19,12 +19,12 @@
 		<view class="info-box flex">
 			<view class="info-item">
 				<view class="info-font">累计收入</view>
-				<view class="info-num">{{recharge || '0'}}</view>
+				<view class="info-num">{{userInfo.brokerage || '0'}}</view>
 			</view>
 			<view class="shu"></view>
 			<view class="info-item">
 				<view class="info-font">累计支出</view>
-				<view class="info-num">{{orderStatusSum || '0'}}</view>
+				<view class="info-num">{{userInfo.extractTotalPrice || '0'}}</view>
 			</view>
 		</view>
 		<view class="navbar">
@@ -41,10 +41,10 @@
 						<view class="order-item flex" v-for="(item, index) in tabItem.orderList" :key="index">
 							<view class="title-box">
 								<view class="title">
-									<text>{{ item.mark }}</text>
+									<text>{{ item.title }}</text>
 								</view>
 								<view class="time">
-									<text>{{ item.create_time }}</text>
+									<text>{{ item.add_time }}</text>
 								</view>
 							</view>
 							<view class="money">
@@ -64,12 +64,12 @@
 		mapState,
 		mapMutations
 	} from 'vuex';
-import { getCommissionInfo } from '@/api/user.js';
+import { getCommissionInfo,getUser } from '@/api/user.js';
 import { getMoneyStyle } from '@/utils/rocessor.js';
 import { mapGetters } from 'vuex';
 import uniLoadMore from '@/components/uni-load-more/uni-load-more.vue';
 import empty from '@/components/empty';
-import {extractBank} from '@/api/wallet.js'
+import { spreadCommission, userBalance,extractBank } from '@/api/wallet.js';
 export default {
 	filters: {
 		getMoneyStyle
@@ -78,12 +78,8 @@ export default {
 		empty,
 		uniLoadMore
 	},
-	computed: {
-		...mapState('user',['userInfo'])
-	},
 	onReady(res) {
 		var _this = this;
-		console.log(_this.userInfo)
 		uni.getSystemInfo({
 			success: resu => {
 				const query = uni.createSelectorQuery();
@@ -98,6 +94,7 @@ export default {
 	},
 	data() {
 		return {
+			userInfo: {},
 			yj: '',
 			height: '',
 			// 头部图高度
@@ -115,7 +112,7 @@ export default {
 				// 	limit: 10 //每次信息条数
 				// },
 				{
-					state: 0,
+					state: 4,
 					text: '支出',
 					loadingType: 'more',
 					orderList: [],
@@ -123,7 +120,7 @@ export default {
 					limit: 10 //每次信息条数
 				},
 				{
-					state: 1,
+					state: 3,
 					text: '收入',
 					loadingType: 'more',
 					orderList: [],
@@ -137,9 +134,15 @@ export default {
 	onLoad(options) {},
 	onShow() {
 		this.extractBank()
+		this.getUserInfo()
 		this.loadData();
 	},
 	methods: {
+		getUserInfo() {
+			getUser({}).then(({ data }) => {
+				this.userInfo = data
+			});
+		},
 		extractBank() {
 			extractBank().then(res => {
 				console.log(res)
@@ -175,20 +178,23 @@ export default {
 			// 修改当前对象状态为加载中
 			navItem.loadingType = 'loading';
 
-			getCommissionInfo({
+			spreadCommission({
 				page: navItem.page,
 				limit: navItem.limit,
-				pm: state
-			})
+				
+			},state)
 				.then(({ data }) => {
-					obj.recharge = data.sr
-					obj.orderStatusSum = data.zc
-					navItem.orderList = navItem.orderList.concat(data.list)
-					navItem.page++
-					if(navItem.limit == data.list.length) {
-							navItem.loadingType = 'more';
-					}else {
-						navItem.loadingType = 'noMore'
+					if(data.length > 0) {
+						navItem.orderList = navItem.orderList.concat(data[0].list);
+						console.log(navItem.orderList);
+						navItem.page++;
+					}
+					//判断是否还有数据, 有改为more, 没有改为noMore
+					if (navItem.limit == data.length) {
+						navItem.loadingType = 'more';
+						return;
+					} else {
+						navItem.loadingType = 'noMore';
 					}
 					uni.hideLoading();
 					this.$set(navItem, 'loaded', true);

+ 200 - 0
pages/user/scoreAccumulate.vue

@@ -0,0 +1,200 @@
+<template>
+	<view class="content">
+		<!-- <view class="navbar">
+			<view v-for="(item, index) in navList" :key="index" class="nav-item" :class="{ current: tabCurrentIndex === index }" @click="tabClick(index)">{{ item.text }}</view>
+		</view> -->
+		<swiper :current="tabCurrentIndex" class="swiper-box" duration="300" @change="changeTab">
+			<swiper-item class="tab-content" v-for="(tabItem, tabIndex) in navList" :key="tabIndex">
+				<scroll-view class="list-scroll-content" scroll-y @scrolltolower="loadData">
+					<!-- 空白页 -->
+					<empty v-if="tabItem.loaded === true && tabItem.orderList.length === 0"></empty>
+
+					<!-- 订单列表 -->
+					<view v-for="(item, index) in tabItem.orderList" :key="index" class="order-item flex">
+						<view class="title-box">
+							<view class="title">
+								<text>{{ item.mark }}</text>
+							</view>
+							<view class="time">
+								<text>{{ item.add_time }}</text>
+							</view>
+						</view>
+						<view class="money">
+							<text>{{ (item.pm == 0 ? '-' : '+') + item.number }}</text>
+						</view>
+					</view>
+					<uni-load-more :status="tabItem.loadingType"></uni-load-more>
+				</scroll-view>
+			</swiper-item>
+		</swiper>
+	</view>
+</template>
+
+<script>
+	
+import { integrallist } from '@/api/functionalUnit.js';
+import uniLoadMore from '@/components/uni-load-more/uni-load-more.vue';
+import empty from '@/components/empty';
+export default {
+	components: {
+		empty,
+		uniLoadMore
+	},
+	onReady() {
+		
+	},
+	data() {
+		return {
+			tabCurrentIndex: 0,
+			navList: [
+				{
+					state: 0,
+					text: '全部',
+					loadingType: 'more',
+					orderList: [],
+					page: 1, //当前页数
+					limit: 10 //每次信息条数
+				},
+			],
+		};
+	},
+	onShow() {
+		// 载入积分数据
+		this.loadData();
+	},
+	methods: {
+		// 页面跳转
+		navto(e) {
+			uni.navigateTo({
+				url: e
+			});
+		},
+		//获取收入支出信息
+		async loadData(source) {
+			//这里是将订单挂载到tab列表下
+			let index = this.tabCurrentIndex;
+			let navItem = this.navList[index];
+			let state = navItem.state;
+			if (source === 'tabChange' && navItem.loaded === true) {
+				//tab切换只有第一次需要加载数据
+				return;
+			}
+			if (navItem.loadingType === 'loading') {
+				//防止重复加载
+				return;
+			}
+			// 修改当前对象状态为加载中
+			navItem.loadingType = 'loading';
+
+			integrallist(
+				{
+					page: navItem.page,
+					limit: navItem.limit
+				},
+				state
+			)
+				.then(({ data }) => {
+					if (data.length > 0) {
+						navItem.orderList = navItem.orderList.concat(data);
+						navItem.page++;
+					}
+					if (navItem.limit == data.length) {
+						//判断是否还有数据, 有改为 more, 没有改为noMore
+						navItem.loadingType = 'more';
+						return;
+					} else {
+						//判断是否还有数据, 有改为 more, 没有改为noMore
+						navItem.loadingType = 'noMore';
+					}
+					uni.hideLoading();
+					this.$set(navItem, 'loaded', true);
+				})
+				.catch(e => {
+					console.log(e);
+				});
+		},
+
+		//swiper 切换
+		changeTab(e) {
+			this.tabCurrentIndex = e.target.current;
+			this.loadData('tabChange');
+		},
+		//顶部tab点击
+		tabClick(index) {
+			this.tabCurrentIndex = index;
+		}
+	}
+};
+</script>
+
+<style lang="scss">
+page {
+	background: #ffffff;
+	height: 100%;
+}
+.navbar {
+	display: flex;
+	height: 40px;
+	padding: 0 5px;
+	background: #fff;
+	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.06);
+	position: relative;
+	z-index: 10;
+	.nav-item {
+		flex: 1;
+		display: flex;
+		justify-content: center;
+		align-items: center;
+		height: 100%;
+		font-size: 15px;
+		color: $font-color-dark;
+		position: relative;
+		&.current {
+			color: $base-color;
+			&:after {
+				content: '';
+				position: absolute;
+				left: 50%;
+				bottom: 0;
+				transform: translateX(-50%);
+				width: 44px;
+				height: 0;
+				border-bottom: 2px solid $base-color;
+			}
+		}
+	}
+}
+// 列表
+
+.swiper-box {
+	height: calc(100% - 44px);
+	padding-top: 10rpx;
+	.order-item {
+		padding: 20rpx 30rpx;
+		line-height: 1.5;
+		.title-box {
+			.title {
+				font-size: $font-lg;
+				color: $font-color-base;
+			}
+			.time {
+				font-size: $font-base;
+				color: $font-color-light;
+			}
+		}
+		.money {
+			color: #fd5b23;
+			font-size: $font-lg;
+		}
+	}
+}
+.list-scroll-content {
+	height: 100%;
+}
+.content {
+	height: 100%;
+	.empty-content {
+		background-color: #ffffff;
+	}
+}
+</style>

+ 32 - 22
pages/user/team.vue

@@ -17,12 +17,12 @@
 				<view class="money">{{ userInfo.spread_count|| '0' }}</view>
 				<view>我的推广人数</view>
 			</view>
-			<view class="money-box flex" style="padding: 20rpx 40rpx;">
+			<!-- <view class="money-box flex" style="padding: 20rpx 40rpx;">
 				<view>团队人数:{{teamcount}}</view>
 				<view>直推人数:{{ztcount}}</view>
-			</view>
+			</view> -->
 		</view>
-		<view class="time-in">
+		<!-- <view class="time-in">
 			<picker mode="date" @change="bindStartDateChange">
 				<input type="text" v-model="start_time" class="showtime" placeholder="请输入开始时间" disabled>
 			</picker>
@@ -32,7 +32,7 @@
 			<view class="search" @click="loadData('reload')">
 				搜索
 			</view>
-		</view>
+		</view> -->
 		<!-- <view class="flex buttom-box">
 			<view class="buttom"  @click="tabClick(0)">
 				<view class="money">{{all || 0}}</view>
@@ -44,7 +44,7 @@
 			</view>
 		</view> -->
 		<swiper :current="tabCurrentIndex" :style="{ height: maxheight }" class="swiper-box" duration="300"
-			@change="changeTab">
+			@change="changeTab" disable-touch>
 			<swiper-item class="tab-content" v-for="(tabItem, tabIndex) in navList" :key="tabIndex">
 				<scroll-view class="list-scroll-content" :style="{ height: maxheight }" scroll-y>
 					<empty v-if="tabItem.loaded === true && tabItem.orderList.length === 0"></empty>
@@ -114,7 +114,8 @@
 						loadingType: 'more',
 						orderList: [],
 						page: 1, //当前页数
-						limit: 10 //每次信息条数
+						limit: 10 ,//每次信息条数
+						loaded: false
 					},
 					{
 						state: 1,
@@ -122,7 +123,8 @@
 						loadingType: 'more',
 						orderList: [],
 						page: 1, //当前页数
-						limit: 10 //每次信息条数
+						limit: 10 ,//每次信息条数
+						loaded: false
 					}
 				],
 				all: '',
@@ -184,22 +186,30 @@
 				// }
 				// 修改当前对象状态为加载中
 				navItem.loadingType = 'loading';
-				myteam({
-					start_time: obj.start_time,
-					end_time: obj.end_time
+				myspread({
+					page: navItem.page,
+					limit: navItem.limit,
+					grade: navItem.state
 					})
 					.then(({
 						data
 					}) => {
-						console.log(data);
-						this.teamcount = data.team_count
-						this.ztcount = data.zt_count
-						this.order = data.order
-						this.zt_order = data.zt_order
-						this.jt_order = data.jt_order
-						this.totalLevel = data.totalLevel
-						navItem.orderList = data.list;
-						navItem.loadingType = 'noMore'
+						navItem.orderList = navItem.orderList.concat(data.list)
+						if(data.list.lenght == navItem.limit) {
+							navItem.loadingType = 'more'
+						}else {
+							navItem.loadingType = 'noMore'
+						}
+						navItem.loaded = true
+						// console.log(data);
+						// this.teamcount = data.team_count
+						// this.ztcount = data.zt_count
+						// this.order = data.order
+						// this.zt_order = data.zt_order
+						// this.jt_order = data.jt_order
+						// this.totalLevel = data.totalLevel
+						// navItem.orderList = data.list;
+						// navItem.loadingType = 'noMore'
 					})
 					.catch(e => {
 						console.log(e);
@@ -268,7 +278,7 @@
 				font-size: 36rpx;
 				font-family: PingFang SC;
 				font-weight: bold;
-				color: #fffeff;
+				color: #6B4216;
 				height: 80rpx;
 				font-size: 36rpx;
 				font-weight: 700;
@@ -299,14 +309,14 @@
 		position: relative;
 		z-index: 2;
 		padding-top: 90rpx;
-		color: #ffffff;
+		color: #6B4216;
 		text-align: center;
 
 		.money {
 			font-size: 72rpx;
 			font-family: PingFang SC;
 			font-weight: bold;
-			color: #ffffff;
+			color: #6B4216;
 		}
 
 		.text {

+ 160 - 78
pages/user/user.vue

@@ -2,61 +2,77 @@
 	<view class="container">
 		<view class="vheigh"></view>
 		<view class="top-image">
-			<image src="../../static/icon/user-top.png" mode=""></image>
+			<image src="../../static/img/user-top.png" mode=""></image>
 		</view>
 		<view class="" style="height: 150rpx;"></view>
 		<view class="user-box">
 			<view class="user-info flex">
 				<image class="avatar" :src="userInfo.avatar" mode="" v-if="userInfo.avatar"
-					@click="navTo('/pages/set/userinfo')"></image>
+					></image>
 				<image class="avatar" src="../../static/error/missing-face.png" mode="" v-else></image>
 				<view class="user-name-id">
 					<view class="user-name clamp2">{{userInfo.nickname  || '游客'}}</view>
 					<view class="user-uid">{{userInfo.phone || ''}}</view>
-					<view class="user-shop flex" v-if="userInfo.uid">
-						<view class="user-shop-item" v-if="userInfo.level > 0" style="width: 150rpx;">
-							<image class="user-shop-icon" src="../../static/img/level.png" mode=""
-								style="width: 150rpx;"></image>
-							<view class="user-shopname" style="padding-left: 30rpx;">
-								{{userInfo.level == 1?'代理商':(userInfo.level == 2?'分公司':userInfo.level == 3?'总代理':'')}}
-							</view>
-						</view>
+				</view>
+			</view>
+			<view class="flex yexq">
+				<view class="flex yexq-item huer">
+					<image src="../../static/icon/mye.png" mode="widthFix" style="width: 32rpx;"></image>
+					<view class="" @click="navTo('/pages/user/yue')">
+						钱包余额:¥{{ userInfo.now_money || '0.00' }}
+					</view>
+				</view>
+				<view class="yexq-item flex qianger" @click="navTo('/pages/money/recharge')">
+					<image src="../../static/icon/cz.png" mode="widthFix" style="width: 32rpx;"></image>
+					<view class="">
+						 充值钱包
 					</view>
-					<!-- <view class="user-uid">UID:{{ userInfo.uid || ''}}</view> -->
-					<!-- <view class="user-shop" v-if="userInfo.user_rule != 'user'">
-						<view class="user-shopname">{{ userInfo.identity == 2 ? '店长' : userInfo.identity == 1 ? '店员' : '粉丝' }}</view>
-					</view> -->
 				</view>
 			</view>
-			<view class="user-money flex">
-				<view class="user-money-item" @click="navTo('/pages/user/award')">
-					<view class="user-money-num">{{ userInfo.brokerage_price*1 || 0 }}</view>
-					<view class="user-money-font">我的佣金</view>
+			<view class="u-set" v-if="userInfo && userInfo.level > 0">
+				<image src="../../static/icon/vip.png" mode="widthFix" class=""  ></image>
+				<view class="u-set-tit">
+					{{userInfo.level == 4 ?'创业合伙人': (userInfo.level == 3 ?'城市合伙人':(userInfo.level == 2 ?'团购经纪人':'vip'))}}
 				</view>
-				<view class="user-xian"></view>
-				<view class="user-money-item" @click="navTo('/pages/user/yue')">
-					<view class="user-money-num">{{ userInfo.now_money*1 || 0 }}</view>
-					<view class="user-money-font">我的钱包</view>
+			</view>
+			
+			
+		</view>
+		<view class="main-box">
+			<view class="title flex" @click="navTo('/pages/order/order?state=0')">
+				<view class="title-left">
+					<image src="../../static/icon/zc.png" mode="widthFix"></image> <view class="title-font">我的资产</view>
 				</view>
-				<view class="user-xian"></view>
-				<!-- <view class="user-money-item" @click="navTo('/pages/user/jf')">
-					<view class="user-money-num">{{ userInfo.integral*1 || 0 }}</view>
-					<view class="user-money-font">我的积分</view>
-				</view> -->
-				<view class="user-money-item" @click="navTo('/pages/user/team')">
-					<view class="user-money-num">{{ userInfo.spread_count || 0 }}</view>
-					<view class="user-money-font">我的推广</view>
+			</view>
+			<view class="main flex">
+				<view class="oitem" @click="navTo('/pages/user/award')">
+					<view class="oitem-val">
+						{{ userInfo.brokerage_price || '0.00' }}
+					</view>
+					<view class="oitem-font">我的佣金</view>
+				</view>
+				<view class="oitem" @click="navTo('/pages/user/scoreAccumulate')">
+					<view class="oitem-val">
+						{{ userInfo.integral || '0.00' }}
+					</view>
+					<view class="oitem-font">我的积分</view>
+				</view>
+				<view class="oitem" @click="navTo('/pages/order/order?state=2')">
+					<view class="oitem-val">
+						{{0}}
+					</view>
+					<view class="oitem-font">优惠券</view>
 				</view>
 			</view>
-			<image src="../../static/icon/u-set.png" mode="" class="u-set" @click="navTo('/pages/set/userinfo')">
-			</image>
 		</view>
 		<view class="main-box">
 			<view class="title flex" @click="navTo('/pages/order/order?state=0')">
 				<view class="title-left">
-					<view class="title-font">我的订单</view>
+					<image src="../../static/icon/dd.png" mode="widthFix"></image> <view class="title-font">我的订单</view>
+				</view>
+				<view class="title-right-wrap">
+					全部<image class="title-right" src="../../static/icon/back.png" mode=""></image>
 				</view>
-				<image class="title-right" src="../../static/icon/back.png" mode=""></image>
 			</view>
 			<view class="main flex">
 				<view class="oitem" @click="navTo('/pages/order/order?state=0')">
@@ -77,41 +93,44 @@
 				</view>
 			</view>
 		</view>
-		<view class="user-list flex" @click="navTo('/pages/user/favorites')">
-			<image src="../../static/icon/u-sc.png" mode="" class="left-img"></image>
-			<view class="">
-				我的收藏
+		<view class="user-list-wrap">
+			<view class="user-list flex" @click="navTo('/pages/user/team')" style="border-radius: 20rpx 20rpx 0 0;">
+				<image src="../../static/icon/gn1.png" mode="" class="left-img"></image>
+				<view class="">
+					我的推广
+				</view>
+				<image src="../../static/icon/back.png" mode="" class="right-img"></image>
 			</view>
-			<image src="../../static/icon/back.png" mode="" class="right-img"></image>
-		</view>
-		<view class="user-list flex" @click="navTo('/pages/user/shareQrCode')">
-			<image src="../../static/icon/u1.png" mode="" class="left-img"></image>
-			<view class="">
-				推广海报
+			<view class="user-list flex" @click="navTo('/pages/user/shareQrCode')">
+				<image src="../../static/icon/gift.png" mode="" class="left-img"></image>
+				<view class="">
+					推广海报
+				</view>
+				<image src="../../static/icon/back.png" mode="" class="right-img"></image>
 			</view>
-			<image src="../../static/icon/back.png" mode="" class="right-img"></image>
-		</view>
-		<!-- <view class="user-list flex" @click="navTo('/pages/user/team')">
-			<image src="../../static/icon/gn1.png" mode="" class="left-img"></image>
-			<view class="">
-				我的推广
+			<view class="user-list flex" @click="navTo('/pages/set/address')">
+				<image src="../../static/icon/u2.png" mode="" class="left-img"></image>
+				<view class="">
+					收货地址
+				</view>
+				<image src="../../static/icon/back.png" mode="" class="right-img"></image>
 			</view>
-			<image src="../../static/icon/back.png" mode="" class="right-img"></image>
-		</view> -->
-		<view class="user-list flex" @click="navTo('/pages/set/address')">
-			<image src="../../static/icon/u2.png" mode="" class="left-img"></image>
-			<view class="">
-				收货地址
+			<view class="user-list flex" @click="openKf()" style="border-radius:0 0 20rpx 20rpx;">
+				<image src="../../static/icon/u3.png" mode="" class="left-img"></image>
+				<view class="">
+					客服
+				</view>
+				<image src="../../static/icon/back.png" mode="" class="right-img"></image>
 			</view>
-			<image src="../../static/icon/back.png" mode="" class="right-img"></image>
-		</view>
-		<view class="user-list flex" @click="openKf()">
-			<image src="../../static/icon/u3.png" mode="" class="left-img"></image>
-			<view class="">
-				客服
+			<view class="user-list flex" @click="navTo('/pages/set/userinfo')">
+				<image src="../../static/icon/u4.png" mode="" class="left-img"></image>
+				<view class="">
+					设置
+				</view>
+				<image src="../../static/icon/back.png" mode="" class="right-img"></image>
 			</view>
-			<image src="../../static/icon/back.png" mode="" class="right-img"></image>
 		</view>
+		
 
 		<view class="" style="height: 20rpx;">
 
@@ -146,7 +165,8 @@
 	import {
 		orderData,
 		getUserInfo,
-		check
+		check,
+		getUser
 	} from '@/api/user.js';
 	import {
 		saveUrl,
@@ -305,11 +325,17 @@
 					}) => {
 						console.log(data.nickname)
 						this.setUserInfo(data);
+						this.getUser()
 					})
 					.catch(e => {
 						console.log(e);
 					});
 			},
+			getUser() {
+				getUser({}).then(res => {
+					console.log(res,'getUser+++')
+				})
+			},
 			/**
 			 * 统一跳转接口,拦截未登录路由
 			 * navigator标签现在默认没有转场动画,所以用view
@@ -397,7 +423,7 @@
 		top: 0;
 		left: 0;
 		right: 0;
-		height: 230rpx;
+		height: 300rpx;
 
 		image {
 			width: 100%;
@@ -514,9 +540,25 @@
 		.u-set {
 			position: absolute;
 			top: 85rpx;
-			right: 40rpx;
-			width: 44rpx;
-			height: 44rpx;
+			right: 0rpx;
+			width: 178rpx;
+			height: 60rpx;
+			image {
+				width: 178rpx;
+				position: relative;
+			}
+			.u-set-tit {
+				position: absolute;
+				width: 120rpx;
+				height: 60rpx;
+				text-align: center;
+				top: 0;
+				right: 0;
+				font-size: 22rpx;
+				padding-right: 10rpx;
+				line-height: 60rpx;
+				
+			}
 		}
 
 		.user-info {
@@ -653,12 +695,14 @@
 			justify-content: space-between;
 			align-items: center;
 			padding: 24rpx;
-			border-bottom: 1px solid #eeeeee;
+			// border-bottom: 1px solid #eeeeee;
 
 			.title-left {
 				display: flex;
 				align-items: center;
-
+				image {
+					width: 35rpx;
+				}
 				.title-icon {
 					width: 32rpx;
 					height: 32rpx;
@@ -672,11 +716,17 @@
 					color: #333333;
 				}
 			}
-
-			.title-right {
-				width: 14rpx;
-				height: 24rpx;
+			.title-right-wrap {
+				font-size: 26rpx;
+				font-weight: 400;
+				color: #666666;
+				.title-right {
+					margin-left: 10rpx;
+					width: 14rpx;
+					height: 24rpx;
+				}
 			}
+			
 		}
 
 		.main {
@@ -721,7 +771,11 @@
 					height: 40rpx;
 					width: 42rpx;
 				}
-
+				.oitem-val {
+					font-size: 36rpx;
+					font-weight: bold;
+					color: #333333;
+				}
 				.oitem-font {
 					margin-top: 20rpx;
 					font-size: 24rpx;
@@ -883,9 +937,9 @@
 		width: 691rpx;
 		height: 104rpx;
 		background: #FFFFFF;
-		box-shadow: 0px 0px 20rpx 0px rgba(50, 50, 52, 0.06);
-		border-radius: 28rpx;
-		margin: 20rpx auto;
+		// box-shadow: 0px 0px 20rpx 0px rgba(50, 50, 52, 0.06);
+		// border-radius: 28rpx;
+		margin:auto;
 		padding: 0 25rpx;
 
 		.left-img {
@@ -906,4 +960,32 @@
 			height: 23rpx;
 		}
 	}
+	.user-list-wrap {
+		margin:20rpx auto;
+		width: 710rpx;
+		background: #FFFFFF;
+		box-shadow: 0px 4rpx 13rpx 0px rgba(229,229,229,0.46);
+		border-radius: 20rpx;
+	}
+	.yexq {
+		margin-top: 20rpx;
+		width: 100%;
+		font-size: 28rpx;
+		font-weight: bold;
+		color: #333333;
+		justify-content: space-between;
+		padding: 0 33rpx;
+		image {
+			margin-right: 10rpx;
+		}
+		.yexq-item {
+			width: 50%;
+		}
+		.huer {
+			justify-content: flex-start;
+		}
+		.qianger {
+			justify-content: flex-end;
+		}
+	}
 </style>

+ 299 - 438
pages/user/withdrawal.vue

@@ -4,512 +4,373 @@
 		<view class="content-money">
 			<view class="flex " style="width: 750rpx;justify-content: space-around;margin-left: 0;">
 				<view class="buttom">
-					<view class="icon">{{ money | getMoneyStyle }}</view>
-					<text class="text">可提现金</text>
+					<view class="icon">{{ userInfo.brokerage_price | getMoneyStyle }}</view>
+					<text class="text">可提现金</text>
 				</view>
 			</view>
 		</view>
-
+		
 		<view class="row-box">
 			<view class="title">提现金额</view>
 			<view class="row">
 				<text class="tit">¥</text>
-				<input class="input" type="number" v-model="withdrawal" :placeholder="'最低提现金额' + minPrice + '元'"
-					placeholder-class="placeholder" />
-				<view class="buttom" @click="withdrawal = money">全部提现</view>
+				<input class="input" type="number" v-model="withdrawal" :placeholder="'最低提现金额' + minPrice + '元'" placeholder-class="placeholder" />
+				<view class="buttom" @click="withdrawal = userInfo.brokerage_price">全部提现</view>
 			</view>
 		</view>
-		<view class="list">
+		<view class="list" >
 			<radio-group @change="tabRadio">
-				<label>
+				<!-- <label>
 					<view class="box">
 						<view class="icon iconfont iconweixin1"></view>
 						<view class="title-box">
-							<view class="title">
-								<text >提现至微信</text>
-							</view>
-						</view>
-						<view class="right">
-							<radio value="weixin" color="#a9d664" :checked="type == 'weixin'" />
+							<view class="title"><text>提现至微信</text></view>
 						</view>
+						<view class="right"><radio value="weixin" color="#01a6a8" :checked="type == 'weixin'" /></view>
 					</view>
-				</label>
-				<template v-if="isSh == 1">
-					<label>
-						<view class="box">
-							<view class="icon iconfont iconzhifubao"></view>
-							<view class="title-box">
-								<view class="title">
-									<text >提现至支付宝</text>
-								</view>
+				</label> -->
+				<label>
+					<view class="box">
+						<view class="icon iconfont iconzhifubao"></view>
+						<view class="title-box">
+							<view class="title">
+								<text v-if="aliData.fullname">提现至支付宝</text>
+								<text v-else>请创建支付宝账号</text>
 							</view>
-							<view class="right">
-								<radio value="alipay" color="#a9d664" :checked="type == 'alipay'" />
+							<view class="node">
+								<text v-if="aliData.fullname">真实姓名({{ aliData.fullname }})</text>
 							</view>
 						</view>
-					</label>
-					<label>
-						<view class="box">
-							<view class="icon iconfont">
-								<image class="icon-img" src="/static/icon/i8.png" mode="aspectFit"></image>
-							</view>
-							<view class="title-box">
-								<view class="title">
-									<text >提现银行账号</text>
-								</view>
+						<view class="right"><radio value="alipay" color="#01a6a8" :checked="type == 'alipay'" /></view>
+					</view>
+				</label>
+				<label >
+					<view class="box">
+						<view class="icon iconfont"><image class="icon-img" src="/static/icon/i8.png" mode="aspectFit"></image></view>
+						<view class="title-box">
+							<view class="title">
+								<text v-if="bankData.bankno">{{ bankData.bank + ' ' + bankData.bankno }}</text>
+								<text v-else>请输入银行账号</text>
 							</view>
-							<view class="right">
-								<radio value="bank" color="#a9d664" :checked="type == 'bank'" />
+							<view class="node">
+								<text v-if="bankData.fullname">真实姓名({{ bankData.fullname }})</text>
 							</view>
 						</view>
-					</label>
-				</template>
-				
+						<view class="right"><radio value="bank" color="#01a6a8"  :checked="type == 'bank'" /></view>
+					</view>
+				</label>
 			</radio-group>
 		</view>
-		<!-- <view class="row b-b" v-if="type == 'weixin'">
-			<text class="tit">微信账号</text>
-			<input class="input" type="text" v-model="weixin_no" placeholder="请输入微信账号"
-				placeholder-class="placeholder" />
-		</view> -->
-		<template v-if="isSh == 1">
-			<view class="row b-b" v-if="type == 'alipay'">
-				<text class="tit">姓名</text>
-				<input class="input" type="text" v-model="ali_people" placeholder="请输入支付宝姓名"
-					placeholder-class="placeholder" />
-			</view>
-			<view class="row b-b" v-if="type == 'alipay'">
-				<text class="tit">支付宝账号</text>
-				<input class="input" type="text" v-model="alipay_code" placeholder="请输入支付宝账号"
-					placeholder-class="placeholder" />
-			</view>
-			<view class="row b-b" v-if="type == 'bank'">
-				<text class="tit">姓名</text>
-				<input class="input" type="text" v-model="bank_people" placeholder="请输入银行卡姓名"
-					placeholder-class="placeholder" />
-			</view>
-			<view class="row b-b" v-if="type == 'bank'">
+		<view class="row b-b" v-if="type == 'alipay'">
+			<text class="tit">支付宝账号</text>
+			<input class="input" type="text" v-model="alipay_code" placeholder="请输入支付宝账号" placeholder-class="placeholder" />
+		</view>
+		<view class="row b-b" v-if="type == 'alipay'">
+			<text class="tit">支付宝姓名</text>
+			<input class="input" type="text" v-model="alipay_name" placeholder="请输入支付宝姓名" placeholder-class="placeholder" />
+		</view>
+		<template v-if="type == 'bank'">
+			<view class="row b-b" >
 				<text class="tit">银行卡号</text>
-				<input class="input" type="text" v-model="bank_code" placeholder="请输入银行卡号"
-					placeholder-class="placeholder" />
+				<input class="input" type="text" v-model="bank_code" placeholder="请输入银行卡号" placeholder-class="placeholder" />
 			</view>
-			
-			<view class="row b-b" v-if="type == 'bank'">
-				<text class="tit">手机号</text>
-				<input class="input" type="text" v-model="phone" placeholder="请输入银行卡姓名"
-					placeholder-class="placeholder" />
+			<view class="row b-b" >
+				<text class="tit">姓名</text>
+				<input class="input" type="text" v-model="bank_people" placeholder="请输入银行卡姓名" placeholder-class="placeholder" />
 			</view>
-			<view class="row b-b" v-if="type == 'bank'">
+			<view class="row b-b" >
 				<text class="tit">所属银行</text>
-				<input class="input" type="text" v-model="bank_name" placeholder="请输入所属银行"
-					placeholder-class="placeholder" />
+				<input class="input" type="text" v-model="bank_name" placeholder="请输入所属银行" placeholder-class="placeholder" />
 			</view>
 		</template>
 		
-		<!-- <view class="row b-b" v-if="type == 'bank'">
-			<text class="tit">所属支行</text>
-			<input class="input" type="text" v-model="bank_belonging" placeholder="请输入所属支行"
-				placeholder-class="placeholder" />
-		</view> -->
 		<button class="add-btn up" @click="confirm">提交申请</button>
-		
+		<!-- <button class="add-btn modified" v-if="!weichatBsrowser" @click="navTo('/pages/money/account')">账号管理</button> -->
 	</view>
 </template>
 
 <script>
-	import {
+import { getMoneyStyle } from '@/utils/rocessor.js';
+import { extractCash, extractBank, aliInfo, bankInfo ,examine} from '@/api/wallet.js';
+import { orderData, getUserInfo } from '@/api/user.js';
+import { mapState, mapMutations } from 'vuex';
+import uniNoticeBar from '@/components/uni-notice-bar/uni-notice-bar.vue';
+export default {
+	filters: {
 		getMoneyStyle
-	} from '@/utils/rocessor.js';
-	import {
-		extractCash,
-		extractBank,
-		aliInfo,
-		bankInfo,
-		setBank,
-		getBank,
-		examine
-	} from '@/api/wallet.js';
-	import {
-		orderData,
-		getUserInfo
-	} from '@/api/user.js';
-	import {
-		mapState,
-		mapMutations
-	} from 'vuex';
-	import uniNoticeBar from '@/components/uni-notice-bar/uni-notice-bar.vue';
-	export default {
-		filters: {
-			getMoneyStyle
+	},
+	components: {
+		uniNoticeBar
+	},
+	computed: {
+		...mapState('user', ['userInfo', 'orderInfo', 'hasLogin'])
+	},
+	data() {
+		return {
+			type: 'bank', //提现方式
+			money: '0.00', //可提现金额
+			freeze: '0.0', //冻结金额
+			withdrawal: '', //提现金额
+			minPrice: '', //最少提现金额
+			aliData: {},
+			sxf:0,
+			bank:0,
+			bankData: {},
+			alipay_code: '',
+			alipay_name: '',
+			bank_code: '',
+			bank_people: '',
+			bank_name: '',
+			// #ifdef H5
+			weichatBsrowser: false,
+			// #endif
+			sh: 1,
+		};
+	},
+	onLoad(options) {
+		this.bank_people = uni.getStorageSync('bank_people')
+		this.bank_name = uni.getStorageSync('bank_name')
+		this.bank_code = uni.getStorageSync('bank_code')
+		// #ifdef H5
+		this.weichatBsrowser = uni.getStorageSync('weichatBrowser');
+		// #endif
+		this.loadData()
+		//加载提现信息
+		// // 加载提款账号信息
+		// this.loadAli();
+		// this.loadBank();
+	},
+	methods: {
+		...mapMutations('user', ['setUserInfo', 'setOrderInfo']),
+		// 加载余额信息
+		async loadData() {
+			extractBank({}).then(({ data }) => {
+				this.minPrice = data.minPrice;
+			});
+			// examine({}).then(res => {
+			// 	console.log(res)
+			// 	this.sh = res.msg
+			// })
 		},
-		components: {
-			uniNoticeBar
+		// 跳转
+		navTo(url) {
+			uni.navigateTo({
+				url: url
+			});
 		},
-		computed: {
-			...mapState('user', ['userInfo', 'orderInfo', 'hasLogin'])
+		// 切换选中对象
+		tabRadio(e) {
+			this.type = e.detail.value;
+			console.log(this.type);
 		},
-		data() {
-			return {
-				ali_people: '',
-				loading: false,
-				phone: '',
-				weixin_no: '',
-				type: 'weixin', //提现方式
-				money: '0.00', //可提现金额
-				freeze: '0.0', //冻结金额
-				withdrawal: '', //提现金额
-				minPrice: '', //最少提现金额
-				aliData: {},
-				bankData: {},
-				weixin: {},
-				alipay_code: '',
-				alipay_name: '',
-				bank_code: '',
-				bank_people: '',
-				bank_name: '',
-				bank_belonging: '',
-				jftype: 0,
-				isSh: 2
+		// 提交
+		confirm() {
+			let obj = this
+			let data = {
+				extract_type: this.type, //bank -银行卡 alipay-支付宝 weixin-微信
+				money: this.withdrawal, //金额
+				money_type: 0 //0佣金1余额
 			};
-		},
-		onLoad(options) {
-			this.examine()
-			//加载提现信息
-			this.loadData();
-			// // 加载提款账号信息
-			// this.loadAli();
-			// this.loadBank();
-			this.getBank()
-			
-		},
-		methods: {
-			...mapMutations('user', ['setUserInfo', 'setOrderInfo']),
-			// 加载余额信息
-			getBank() {
-				let obj = this
-				getBank().then(res => {
-					if(res.data.zfb.name) {
-						obj.ali_people = res.data.zfb.name
-						obj.alipay_code = res.data.zfb.payment
-					}
-					if(res.data.bank.name) {
-						obj.bank_people = res.data.bank.name
-						obj.bank_code = res.data.bank.payment
-						obj.phone = res.data.bank.phone
-						obj.bank_name = res.data.bank.bank
-					}
-				})
-			},
-			async loadData() {
-				
-				extractBank({}).then(({
-					data
-				}) => {
-					console.log(data, 'data+++++++++')
-					this.minPrice = data.minPrice;
-					this.money = data.brokerage_price
-				});
-				
-			},
-			examine() {
-				examine().then(res => {
-					this.isSh = res.msg
-				})
-			},
-			// 跳转
-			navTo(url) {
-				uni.navigateTo({
-					url: url
-				});
-			},
-			// 切换选中对象
-			tabRadio(e) {
-				this.type = e.detail.value;
-			},
-			// 提交
-			confirm() {
-				let obj = this
-				if(obj.loading) {
-					return
-				}
-				let data = {
-					extract_type: this.type, //bank -银行卡 alipay-支付宝 weixin-微信
-					money: this.withdrawal, //金额
-					type: 0 //0佣金1余额
-				};
-				if (this.withdrawal < this.minPrice) {
-					uni.showToast({
-						title: '提现金额不可少于' + this.minPrice,
-						duration: 2000,
-						mask: false,
-						icon: 'none'
-					});
-					return;
-				}
-				if(obj.type == 'alipay') {
-					if(obj.ali_people == '') {
-						return obj.$api.msg('请输入姓名')
-					}
-					if(obj.alipay_code == '') {
-						return obj.$api.msg('请输入支付宝账号')
-					}
-					data.name = obj.ali_people
-					data.alipay_code = obj.alipay_code
-				}
-				// if (this.type == 'alipay') {
-				// 	console.log('alipay');
-				// 	data.name = this.aliData.name;
-				// 	data.alipay_code = this.aliData.payment;
-				// }
-				if (obj.type == 'bank') {
-					if(obj.bank_people == '') {
-						return obj.$api.msg('请输入姓名')
-					}
-					if(obj.phone == '') {
-						return obj.$api.msg('请输入手机号码')
-					}
-					if(obj.bank_name == '') {
-						return obj.$api.msg('请输入所属银行')
-					}
-					if(obj.bank_code == '') {
-						return obj.$api.msg('请输入银行卡号')
-					}
-					data.name = obj.bank_people;
-					data.phone = obj.phone
-					data.bankname = obj.bank_name;
-					data.cardnum = obj.bank_code;
-				}
-				// if (this.type == 'bank') {
-				// 	console.log('bank');
-				// 	data.name = this.bankData.name;
-				// 	data.bankname = this.bankData.bank;
-				// 	data.cardnum = this.bankData.payment;
-				// 	// data.bank_belonging = this.bankData.bank_name
-				// }
-				// if(this.type == 'weixin') {
-				// 	console.log('weixin');
-				// 	data.weixin = this.weixin_no
-					
-				// }
-				obj.loading = true
-				extractCash(data)
-					.then(e => {
-						obj.loadData()
-						obj.withdrawal = ''
-						obj.loading = false
-						uni.showToast({
-							title: '提交成功',
-							duration: 2000,
-							position: 'top'
-						});
-						setBank({
-							type: obj.type == 'alipay' ? 2:3,//2-alipay 3-bank
-							name: obj.type == 'alipay' ? obj.ali_people:obj.bank_people,//
-							phone: obj.phone,
-							payment: obj.type == 'alipay' ?obj.alipay_code:obj.bank_code,
-							bank: obj.bank_name,
-							// bank_name: obj.bank_name
-						}).then(res => {
-							
-						})
-						
-					})
-					.catch(e => {
-						obj.loading = false
-					});
-			}
-		}
-	};
-</script>
-
-<style lang="scss">
-	page {
-		height: 100%;
-	}
-
-	.content-money {
-		padding: 30rpx 0;
-		background: #ffffff;
-	}
-
-	.flex {
-		background-color: #ffffff;
-		text-align: center;
-		margin: 0 30rpx;
-		border-radius: $border-radius-sm;
-
-		.buttom {
-			font-size: $font-lg;
-			width: 50%;
-		}
-
-		.interval {
-			width: 2px;
-			height: 60rpx;
-			background-color: #eeeeee;
-		}
-
-		.icon {
-			background-size: 100%;
-			font-size: 42rpx;
-			color: $font-color-dark;
-			font-weight: bold;
-			background-repeat: no-repeat;
-			background-position: center;
-		}
-
-		.text {
-			color: $font-color-light;
-		}
-	}
 
-	.row-box {
-		margin-top: 30rpx;
-		padding: 20rpx 30rpx;
-		background: #fff;
-
-		.title {
-			font-size: $font-base + 2rpx;
-			color: $font-color-dark;
-		}
-
-		.row {
-			display: flex;
-			align-items: center;
-			position: relative;
-			height: 80rpx;
-
-			.tit {
-				flex-shrink: 0;
-				width: 40rpx;
-				font-size: 30rpx;
-				color: $font-color-dark;
+			if (this.withdrawal < this.minPrice) {
+				uni.showToast({
+					title: '提现金额不可少于' + this.minPrice,
+					duration: 2000,
+					mask: false,
+					icon: 'none'
+				});
+				return;
 			}
-
-			.input {
-				flex: 1;
-				font-size: 30rpx;
-				color: $font-color-dark;
+			if (this.type == 'alipay') {
+				console.log('alipay');
+				data.name = this.alipay_name;
+				data.alipay_code = this.alipay_code;
 			}
-
-			.iconlocation {
-				font-size: 36rpx;
-				color: $font-color-light;
+			if (this.type == 'bank') {
+				// console.log(bank,'bank');
+				data.name = this.bank_people;
+				data.bankname = this.bank_name;
+				data.cardnum = this.bank_code;
 			}
 
-			.buttom {
-				color: $font-color-spec;
-				font-size: $font-base;
-			}
+			extractCash(data)
+				.then(e => {
+					if(obj.type == 'bank') {
+						uni.setStorageSync('bank_people', obj.bank_people)
+						uni.setStorageSync('bank_name',obj.bank_name)
+						uni.setStorageSync('bank_code',obj.bank_code)
+					}
+					getUserInfo({})
+						.then(({ data }) => {
+							this.setUserInfo(data);
+						})
+						.catch(e => {
+							console.log(e);
+						});
+					 uni.showToast({
+					 	title: '申请成功!',
+						duration: 2000,
+					 	position: 'top'
+					 });
+				})
+				.catch(e => {
+					console.log();
+				});
 		}
 	}
+};
+</script>
 
-	.add-btn {
-		&.modified {
-			// color: #ffffff;
-			border:1px solid #ff4072;
-			// background-color: #fff;
-			color: #ff4072;
-		}
-
-		&.up {
-			background: linear-gradient(90deg, #a9d664, #a9d664);
-			color: #fff;
-		}
-
-		display: flex;
-		align-items: center;
-		justify-content: center;
-		width: 690rpx;
-		height: 80rpx;
-		margin: 0 auto;
-		margin-top: 30rpx;
+<style lang="scss">
+page {
+	height: 100%;
+}
+.content-money {
+	padding: 30rpx 0;
+	background: #ffffff;
+}
+.flex {
+	background-color: #ffffff;
+	text-align: center;
+	margin: 0 30rpx;
+	border-radius: $border-radius-sm;
+	.buttom {
 		font-size: $font-lg;
-		border-radius: 10rpx;
-		// box-shadow: 1px 2px 5px rgba(219, 63, 96, 0.4);
+		width: 50%;
 	}
-
-	.list {
-		padding-left: 30rpx;
-		margin-top: 30rpx;
-		background-color: #ffffff;
-
-		.box {
-			display: flex;
-			align-items: center;
-			width: 100%;
-			height: 120rpx;
-			border-bottom: 1px solid $border-color-light;
-
-			.icon {
-				font-size: 48rpx;
-				padding-right: 20rpx;
-
-				.icon-img {
-					height: 50rpx;
-					width: 50rpx;
-				}
-			}
-
-			.iconweixin1 {
-				color: #18bf16;
-			}
-
-			.iconzhifubao {
-				color: #08aaec;
-			}
-
-			.title-box {
-				flex-grow: 1;
-				text-align: left;
-
-				.title {
-					font-size: $font-base + 2rpx;
-					color: $font-color-base;
-				}
-
-				.node {
-					font-size: $font-sm;
-					color: $font-color-light;
-				}
-			}
-		}
+	.interval {
+		width: 2px;
+		height: 60rpx;
+		background-color: #eeeeee;
 	}
-
-	/deep/ .uni-radio-input {
-		width: 45rpx;
-		height: 45rpx;
+	.icon {
+		background-size: 100%;
+		font-size: 42rpx;
+		color: $font-color-dark;
+		font-weight: bold;
+		background-repeat: no-repeat;
+		background-position: center;
+	}
+	.text {
+		color: $font-color-light;
+	}
+}
+
+.row-box {
+	margin-top: 30rpx;
+	padding: 20rpx 30rpx;
+	background: #fff;
+	.title {
+		font-size: $font-base + 2rpx;
+		color: $font-color-dark;
 	}
-
 	.row {
 		display: flex;
 		align-items: center;
 		position: relative;
-		padding: 0 30upx;
-		height: 110upx;
-		background: #fff;
-
+		height: 80rpx;
 		.tit {
 			flex-shrink: 0;
-			width: 250upx;
-			font-size: 30upx;
+			width: 40rpx;
+			font-size: 30rpx;
 			color: $font-color-dark;
 		}
-
 		.input {
 			flex: 1;
-			font-size: 30upx;
+			font-size: 30rpx;
 			color: $font-color-dark;
 		}
-
 		.iconlocation {
-			font-size: 36upx;
+			font-size: 36rpx;
 			color: $font-color-light;
 		}
+
+		.buttom {
+			color: #fff;
+			font-size: $font-base;
+		}
+	}
+}
+.add-btn {
+	background: linear-gradient(-90deg, #FAC545, #FFE000);
+	border-radius: 10px;
+	width: 690rpx;
+	height: 80rpx;
+	margin: 0 auto;
+	margin-top: 30rpx;
+	font-size: $font-lg;
+	border-radius: 10rpx;
+	color: #6B4216;
 	}
 
-	.tip {
-		padding: 20rpx;
-		color: #fd3b39;
+.list {
+	padding-left: 30rpx;
+	margin-top: 30rpx;
+	background-color: #ffffff;
+	.box {
+		display: flex;
+		align-items: center;
+		width: 100%;
+		height: 120rpx;
+		border-bottom: 1px solid $border-color-light;
+		.icon {
+			font-size: 48rpx;
+			padding-right: 20rpx;
+			.icon-img {
+				height: 50rpx;
+				width: 50rpx;
+			}
+		}
+		.iconweixin1 {
+			color: #18bf16;
+		}
+		.iconzhifubao {
+			color: #08aaec;
+		}
+		.title-box {
+			flex-grow: 1;
+			text-align: left;
+			.title {
+				font-size: $font-base + 2rpx;
+				color: $font-color-base;
+			}
+			.node {
+				font-size: $font-sm;
+				color: $font-color-light;
+			}
+		}
+	}
+}
+/deep/ .uni-radio-input {
+	width: 45rpx;
+	height: 45rpx;
+}
+.row {
+	display: flex;
+	align-items: center;
+	position: relative;
+	padding: 0 30upx;
+	height: 110upx;
+	background: #fff;
+
+	.tit {
+		flex-shrink: 0;
+		width: 250upx;
+		font-size: 30upx;
+		color: $font-color-dark;
+	}
+	.input {
+		flex: 1;
+		font-size: 30upx;
+		color: $font-color-dark;
+	}
+	.iconlocation {
+		font-size: 36upx;
+		color: $font-color-light;
 	}
+}
+.tip {
+	padding: 20rpx;
+	color: #FD3B39;
+}
 </style>

+ 18 - 23
pages/user/yue.vue

@@ -26,13 +26,13 @@
 			</view> -->
 			<view class="shu"></view>
 			<view class="info-item">
-				<view class="info-font">累计收入</view>
-				<view class="info-num">{{ sr }}</view>
+				<view class="info-font">累计充值</view>
+				<view class="info-num">{{ userInfo.recharge || '0' }}</view>
 			</view>
 			<view class="shu"></view>
 			<view class="info-item">
 				<view class="info-font">累计支出</view>
-				<view class="info-num">{{ zc }}</view>
+				<view class="info-num">{{ userInfo.orderStatusSum || '0'}}</view>
 			</view>
 		</view>
 		<view class="navbar">
@@ -48,7 +48,7 @@
 					<view class="order-item flex" v-for="(item, index) in tabItem.orderList" :key="index">
 						<view class="title-box">
 							<view class="title">
-								<text>{{ item.mark }}</text>
+								<text>{{ item.title }}</text>
 							</view>
 							<view class="time">
 								<text>{{ item.add_time }}</text>
@@ -71,14 +71,11 @@ import { mapState, mapMutations } from 'vuex';
 import { getMoneyStyle } from '@/utils/rocessor.js';
 import uniLoadMore from '@/components/uni-load-more/uni-load-more.vue';
 import empty from '@/components/empty';
-import { getUserInfo } from '@/api/user.js';
+import { getUser } from '@/api/user.js';
 export default {
 	filters: {
 		getMoneyStyle
 	},
-	computed: {
-		...mapState('user', ['userInfo'])
-	},
 	components: {
 		empty,
 		uniLoadMore
@@ -99,6 +96,7 @@ export default {
 	},
 	data() {
 		return {
+			userInfo: {},
 			// 头部图高度
 			maxheight: '',
 			tabCurrentIndex: 0,
@@ -106,7 +104,7 @@ export default {
 			zc: '',
 			navList: [
 				{
-					state: 1,
+					state: 2,
 					text: '收入',
 					loadingType: 'more',
 					orderList: [],
@@ -114,7 +112,7 @@ export default {
 					limit: 10 //每次信息条数
 				},
 				{
-					state: 0,
+					state: 1,
 					text: '支出',
 					loadingType: 'more',
 					orderList: [],
@@ -142,8 +140,8 @@ export default {
 			});
 		},
 		getUserInfo() {
-			getUserInfo({}).then(({ data }) => {
-				this.setUserInfo(data);
+			getUser({}).then(({ data }) => {
+				this.userInfo = data
 			});
 		},
 		async loadData(source) {
@@ -163,27 +161,24 @@ export default {
 			//修改当前对象状态为加载中
 			navItem.loadingType = 'loading';
 
-			yue(
+			spreadCommission(
 				{
 					page: navItem.page,
 					limit: navItem.limit,
-					pm: navItem.state
-				}
+				},state
 			)
 				.then(({ data }) => {
-					console.log(data, '123456');
-					obj.sr = data.sr;
-					obj.zc = data.zc;
-					if (data.list.length > 0) {
-						navItem.orderList = navItem.orderList.concat(data.list);
+					if (data.length > 0) {
+						navItem.orderList = navItem.orderList.concat(data[0].list);
 						console.log(navItem.orderList);
 						navItem.page++;
 					}
-					//判断是否还有数据, 有改为more, 没有改为noMore
-					if (navItem.limit == data.list.length) {
+					if (navItem.limit == data.length) {
+						//判断是否还有数据, 有改为 more, 没有改为noMore
 						navItem.loadingType = 'more';
 						return;
 					} else {
+						//判断是否还有数据, 有改为 more, 没有改为noMore
 						navItem.loadingType = 'noMore';
 					}
 					uni.hideLoading();
@@ -333,7 +328,7 @@ page {
 				transform: translateX(-50%);
 				width: 44px;
 				height: 0;
-				border-bottom: 2px solid rgba(154, 94, 25, 1);
+				border-bottom: 2px solid #FF4C4C;
 			}
 		}
 	}

BIN
static/icon/btncz.png


BIN
static/icon/cz.png


BIN
static/icon/dd.png


BIN
static/icon/gift.png


BIN
static/icon/mye.png


BIN
static/icon/vip.png


BIN
static/icon/zc.png


BIN
static/img/tg-bg.png


BIN
static/img/user-top.png


BIN
static/index/in1.png


BIN
static/index/in2.png


BIN
static/index/in3.png


BIN
static/index/in4.png


BIN
static/index/in5.png


BIN
static/index/index-top.png


BIN
static/index/ryc.png


BIN
static/index/xny.png


+ 5 - 1
store/index.js

@@ -6,7 +6,7 @@ Vue.use(Vuex)
 const store = new Vuex.Store({
 	state: {
 		// baseURL:"http://yrh.liuniu946.com",//'http://eb.shuibo.net',//请求地址配置 
-		baseURL:'https://kqt.liuniu946.com',//请求地址配置 
+		baseURL:'http://hgd.liuniu946.com/',//请求地址配置 
 		urlFile:'/index',//项目部署所在文件夹
 		userInfo: {}, //登录信息
 		loginInterceptor:false,//是否打开强制登录
@@ -14,6 +14,7 @@ const store = new Vuex.Store({
 		weichatInfo:{},//保存微信注册信息
 		weichatObj:'',//微信对象
 		// #endif
+		app: {}
 	},
 	mutations: {
 		//保存微信信息
@@ -23,6 +24,9 @@ const store = new Vuex.Store({
 		//保存微信对象
 		setWeiChatObj(state, provider) {
 			state.weichatObj = provider;
+		},
+		changeState(state,provider) {
+			state.app = provider;
 		}
 	},
 	modules:{

+ 0 - 0
unpackage/dist/dev/.automator/app-plus/.automator.json


Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 0
unpackage/dist/dev/app-plus/__uniappchooselocation.js


BIN
unpackage/dist/dev/app-plus/__uniapperror.png


Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 0
unpackage/dist/dev/app-plus/__uniappes6.js


Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 0
unpackage/dist/dev/app-plus/__uniappopenlocation.js


Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 0
unpackage/dist/dev/app-plus/__uniapppicker.js


Diff do ficheiro suprimidas por serem muito extensas
+ 6 - 0
unpackage/dist/dev/app-plus/__uniappquill.js


Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 0
unpackage/dist/dev/app-plus/__uniappquillimageresize.js


Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 0
unpackage/dist/dev/app-plus/__uniappscan.js


BIN
unpackage/dist/dev/app-plus/__uniappsuccess.png


+ 25 - 0
unpackage/dist/dev/app-plus/__uniappview.html

@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<html lang="zh-CN">
+
+  <head>
+    <meta charset="UTF-8" />
+    <script>
+      var __UniViewStartTime__ = Date.now();
+      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>
+    <title>View</title>
+    <link rel="stylesheet" href="view.css" />
+  </head>
+
+  <body>
+    <div id="app"></div>
+    <script src="__uniappes6.js"></script>
+    <script src="view.umd.min.js"></script>
+    <script src="app-view.js"></script>
+  </body>
+
+</html>

Diff do ficheiro suprimidas por serem muito extensas
+ 3 - 0
unpackage/dist/dev/app-plus/app-config-service.js


+ 154 - 0
unpackage/dist/dev/app-plus/app-config.js

@@ -0,0 +1,154 @@
+/******/ (function(modules) { // webpackBootstrap
+/******/ 	// install a JSONP callback for chunk loading
+/******/ 	function webpackJsonpCallback(data) {
+/******/ 		var chunkIds = data[0];
+/******/ 		var moreModules = data[1];
+/******/ 		var executeModules = data[2];
+/******/
+/******/ 		// add "moreModules" to the modules object,
+/******/ 		// then flag all "chunkIds" as loaded and fire callback
+/******/ 		var moduleId, chunkId, i = 0, resolves = [];
+/******/ 		for(;i < chunkIds.length; i++) {
+/******/ 			chunkId = chunkIds[i];
+/******/ 			if(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {
+/******/ 				resolves.push(installedChunks[chunkId][0]);
+/******/ 			}
+/******/ 			installedChunks[chunkId] = 0;
+/******/ 		}
+/******/ 		for(moduleId in moreModules) {
+/******/ 			if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
+/******/ 				modules[moduleId] = moreModules[moduleId];
+/******/ 			}
+/******/ 		}
+/******/ 		if(parentJsonpFunction) parentJsonpFunction(data);
+/******/
+/******/ 		while(resolves.length) {
+/******/ 			resolves.shift()();
+/******/ 		}
+/******/
+/******/ 		// add entry modules from loaded chunk to deferred list
+/******/ 		deferredModules.push.apply(deferredModules, executeModules || []);
+/******/
+/******/ 		// run deferred modules when all chunks ready
+/******/ 		return checkDeferredModules();
+/******/ 	};
+/******/ 	function checkDeferredModules() {
+/******/ 		var result;
+/******/ 		for(var i = 0; i < deferredModules.length; i++) {
+/******/ 			var deferredModule = deferredModules[i];
+/******/ 			var fulfilled = true;
+/******/ 			for(var j = 1; j < deferredModule.length; j++) {
+/******/ 				var depId = deferredModule[j];
+/******/ 				if(installedChunks[depId] !== 0) fulfilled = false;
+/******/ 			}
+/******/ 			if(fulfilled) {
+/******/ 				deferredModules.splice(i--, 1);
+/******/ 				result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
+/******/ 			}
+/******/ 		}
+/******/
+/******/ 		return result;
+/******/ 	}
+/******/
+/******/ 	// The module cache
+/******/ 	var installedModules = {};
+/******/
+/******/ 	// object to store loaded and loading chunks
+/******/ 	// undefined = chunk not loaded, null = chunk preloaded/prefetched
+/******/ 	// Promise = chunk loading, 0 = chunk loaded
+/******/ 	var installedChunks = {
+/******/ 		"app-config": 0
+/******/ 	};
+/******/
+/******/ 	var deferredModules = [];
+/******/
+/******/ 	// The require function
+/******/ 	function __webpack_require__(moduleId) {
+/******/
+/******/ 		// Check if module is in cache
+/******/ 		if(installedModules[moduleId]) {
+/******/ 			return installedModules[moduleId].exports;
+/******/ 		}
+/******/ 		// Create a new module (and put it into the cache)
+/******/ 		var module = installedModules[moduleId] = {
+/******/ 			i: moduleId,
+/******/ 			l: false,
+/******/ 			exports: {}
+/******/ 		};
+/******/
+/******/ 		// Execute the module function
+/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+/******/
+/******/ 		// Flag the module as loaded
+/******/ 		module.l = true;
+/******/
+/******/ 		// Return the exports of the module
+/******/ 		return module.exports;
+/******/ 	}
+/******/
+/******/
+/******/ 	// expose the modules object (__webpack_modules__)
+/******/ 	__webpack_require__.m = modules;
+/******/
+/******/ 	// expose the module cache
+/******/ 	__webpack_require__.c = installedModules;
+/******/
+/******/ 	// define getter function for harmony exports
+/******/ 	__webpack_require__.d = function(exports, name, getter) {
+/******/ 		if(!__webpack_require__.o(exports, name)) {
+/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
+/******/ 		}
+/******/ 	};
+/******/
+/******/ 	// define __esModule on exports
+/******/ 	__webpack_require__.r = function(exports) {
+/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
+/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+/******/ 		}
+/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
+/******/ 	};
+/******/
+/******/ 	// create a fake namespace object
+/******/ 	// mode & 1: value is a module id, require it
+/******/ 	// mode & 2: merge all properties of value into the ns
+/******/ 	// mode & 4: return value when already ns object
+/******/ 	// mode & 8|1: behave like require
+/******/ 	__webpack_require__.t = function(value, mode) {
+/******/ 		if(mode & 1) value = __webpack_require__(value);
+/******/ 		if(mode & 8) return value;
+/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
+/******/ 		var ns = Object.create(null);
+/******/ 		__webpack_require__.r(ns);
+/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
+/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
+/******/ 		return ns;
+/******/ 	};
+/******/
+/******/ 	// getDefaultExport function for compatibility with non-harmony modules
+/******/ 	__webpack_require__.n = function(module) {
+/******/ 		var getter = module && module.__esModule ?
+/******/ 			function getDefault() { return module['default']; } :
+/******/ 			function getModuleExports() { return module; };
+/******/ 		__webpack_require__.d(getter, 'a', getter);
+/******/ 		return getter;
+/******/ 	};
+/******/
+/******/ 	// Object.prototype.hasOwnProperty.call
+/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
+/******/
+/******/ 	// __webpack_public_path__
+/******/ 	__webpack_require__.p = "/";
+/******/
+/******/ 	var jsonpArray = this["webpackJsonp"] = this["webpackJsonp"] || [];
+/******/ 	var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
+/******/ 	jsonpArray.push = webpackJsonpCallback;
+/******/ 	jsonpArray = jsonpArray.slice();
+/******/ 	for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);
+/******/ 	var parentJsonpFunction = oldJsonpFunction;
+/******/
+/******/
+/******/ 	// run deferred modules from other chunks
+/******/ 	checkDeferredModules();
+/******/ })
+/************************************************************************/
+/******/ ([]);

Diff do ficheiro suprimidas por serem muito extensas
+ 9 - 0
unpackage/dist/dev/app-plus/app-service.js


Diff do ficheiro suprimidas por serem muito extensas
+ 1135 - 0
unpackage/dist/dev/app-plus/app-view.js


Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 0
unpackage/dist/dev/app-plus/manifest.json


+ 551 - 0
unpackage/dist/dev/app-plus/static/css/cmy.css

@@ -0,0 +1,551 @@
+/*初始化类*/
+@font-face {
+	font-family: 'iconfont';
+	/* project id 1482221 */
+	src: url('https://at.alicdn.com/t/font_1482221_x9emymthrxs.eot');
+	src: url('https://at.alicdn.com/t/font_1482221_x9emymthrxs.eot?#iefix') format('embedded-opentype'),
+		url('https://at.alicdn.com/t/font_1482221_x9emymthrxs.woff2') format('woff2'),
+		url('https://at.alicdn.com/t/font_1482221_x9emymthrxs.woff') format('woff'),
+		url('https://at.alicdn.com/t/font_1482221_x9emymthrxs.ttf') format('truetype'),
+		url('https://at.alicdn.com/t/font_1482221_x9emymthrxs.svg#iconfont') format('svg');
+}
+
+.acea-row {
+	display: -webkit-box;
+	display: -moz-box;
+	display: -webkit-flex;
+	display: -ms-flexbox;
+	display: flex;
+	-webkit-box-lines: multiple;
+	-moz-box-lines: multiple;
+	-o-box-lines: multiple;
+	-webkit-flex-wrap: wrap;
+	-ms-flex-wrap: wrap;
+	flex-wrap: wrap
+}
+
+.acea-row.row-middle {
+	-webkit-box-align: center;
+	-moz-box-align: center;
+	-o-box-align: center;
+	-ms-flex-align: center;
+	-webkit-align-items: center;
+	align-items: center
+}
+
+.bg-color-red {
+	background-color: #e93323 !important;
+}
+
+.acea-row.row-right {
+	-webkit-box-pack: end;
+	-moz-box-pack: end;
+	-o-box-pack: end;
+	-ms-flex-pack: end;
+	-webkit-justify-content: flex-end;
+	justify-content: flex-end
+}
+
+.acea-row.row-between-wrapper {
+	-webkit-box-align: center;
+	-moz-box-align: center;
+	-o-box-align: center;
+	-ms-flex-align: center;
+	-webkit-align-items: center;
+	align-items: center;
+	-webkit-box-pack: justify;
+	-moz-box-pack: justify;
+	-o-box-pack: justify;
+	-ms-flex-pack: justify;
+	-webkit-justify-content: space-between;
+	justify-content: space-between
+}
+
+.acea-row.row-column-around {
+	-webkit-flex-direction: column;
+	-ms-flex-direction: column;
+	flex-direction: column;
+	justify-content: space-around;
+	-webkit-justify-content: space-around
+}
+
+.acea-row.row-center-wrapper {
+	-webkit-box-align: center;
+	-moz-box-align: center;
+	-o-box-align: center;
+	-ms-flex-align: center;
+	-webkit-align-items: center;
+	align-items: center;
+	-webkit-box-pack: center;
+	-moz-box-pack: center;
+	-o-box-pack: center;
+	-ms-flex-pack: center;
+	-webkit-justify-content: center;
+	justify-content: center
+}
+
+.iconfont {
+	font-family: "iconfont" !important;
+	font-size: 34rpx;
+	font-style: normal;
+	-webkit-font-smoothing: antialiased;
+	-webkit-text-stroke-width: 0rpx;
+	-moz-osx-font-smoothing: grayscale;
+}
+
+.iconedit:before {
+	content: "\e649";
+}
+
+.iconfavorfill:before {
+	content: "\e64b";
+}
+
+.iconfavor:before {
+	content: "\e64c";
+}
+
+.iconlocation:before {
+	content: "\e651";
+}
+
+.iconroundcheckfill:before {
+	content: "\e656";
+}
+
+.iconroundcheck:before {
+	content: "\e657";
+}
+
+.iconunfold:before {
+	content: "\e661";
+}
+
+.iconlikefill:before {
+	content: "\e668";
+}
+
+.iconlike:before {
+	content: "\e669";
+}
+
+.iconshop:before {
+	content: "\e676";
+}
+
+.iconcart:before {
+	content: "\e6af";
+}
+
+.icondelete:before {
+	content: "\e6b4";
+}
+
+.iconhome:before {
+	content: "\e6b8";
+}
+
+.iconcartfill:before {
+	content: "\e6b9";
+}
+
+.iconhomefill:before {
+	content: "\e6bb";
+}
+
+.iconlock:before {
+	content: "\e6c0";
+}
+
+.iconfriendadd:before {
+	content: "\e6ca";
+}
+
+.iconfold:before {
+	content: "\e6de";
+}
+
+.iconapps:before {
+	content: "\e729";
+}
+
+.iconadd:before {
+	content: "\e767";
+}
+
+.iconmove:before {
+	content: "\e768";
+}
+
+.icontriangledownfill:before {
+	content: "\e79b";
+}
+
+.icontriangleupfill:before {
+	content: "\e79c";
+}
+
+.iconshaixuan:before {
+	content: "\e74a";
+}
+
+.iconyanzhengma:before {
+	content: "\e684";
+}
+
+.iconjifen:before {
+	content: "\e60f";
+}
+
+.iconwuliuxinxi:before {
+	content: "\e62b";
+}
+
+.iconmessage:before {
+	content: "\e78a";
+}
+
+.iconsetting:before {
+	content: "\e78e";
+}
+
+.iconaddition:before {
+	content: "\e6e0";
+}
+
+.iconclose:before {
+	content: "\e6e9";
+}
+
+.iconenter:after {
+	content: "\e6f8";
+}
+
+.iconprompt:before {
+	content: "\e71b";
+}
+
+.iconreturn:before {
+	content: "\e720";
+}
+
+.iconsearch:before {
+	content: "\e741";
+}
+
+.iconpengyouquan:before {
+	content: "\e62c";
+}
+
+.iconweixin:before {
+	content: "\e60e";
+}
+
+.iconzhifubao:before {
+	content: "\e673";
+}
+
+.iconyue:before {
+	content: "\e618";
+}
+
+.iconweixin1:before {
+	content: "\e622";
+}
+
+.iconlock1:before {
+	content: "\e64d";
+}
+
+.iconuser:before {
+	content: "\e64e";
+}
+
+.iconchenggongtixianshouyi:before {
+	content: "\e64f";
+}
+
+.iconviptuiguangdingdan:before {
+	content: "\e650";
+}
+
+.icondaifukuan:before {
+	content: "\e652";
+}
+
+.icondaijiesuanshouyi:before {
+	content: "\e653";
+}
+
+.icondaidakuanshouyi:before {
+	content: "\e654";
+}
+
+.icondaifahuo:before {
+	content: "\e655";
+}
+
+.icondaishouhuoshouyi:before {
+	content: "\e658";
+}
+
+.icondaishouhuo:before {
+	content: "\e659";
+}
+
+.iconwuxiaoshouyi:before {
+	content: "\e65a";
+}
+
+.icontixianmingxi:before {
+	content: "\e65b";
+}
+
+.iconshouyi:before {
+	content: "\e65c";
+}
+
+.iconkouchutixianshouxufei:before {
+	content: "\e65d";
+}
+
+.iconyishenqingshouyi:before {
+	content: "\e65e";
+}
+
+.icontuihuanhuo:before {
+	content: "\e65f";
+}
+
+
+/*水平线*/
+.hr {
+	width: 100%;
+	position: relative;
+	border-bottom: 1px solid #dddddd;
+	/* height: 0.5rpx; */
+}
+
+/* 一行显示 */
+.clamp {
+	overflow: hidden;
+	text-overflow: ellipsis;
+	white-space: nowrap;
+	display: block;
+}
+
+/* 二行显示 */
+.clamp2 {
+	overflow: hidden;
+	text-overflow: ellipsis;
+	display: -webkit-box;
+	-webkit-line-clamp: 2;
+	-webkit-box-orient: vertical;
+}
+
+/* 二行显示 */
+.ellipsis {
+	overflow: hidden;
+	text-overflow: ellipsis;
+	display: -webkit-box;
+	-webkit-box-orient: vertical;
+	-webkit-line-clamp: 2;
+}
+
+.common-hover {
+	background: #f5f5f5;
+}
+
+/* 角标 */
+.corner {
+	background-color: #e51c23;
+	position: absolute;
+	right: -18rpx;
+	top: -18rpx;
+	color: #FFFFFF;
+	text-align: center;
+	border-radius: 999px;
+	font-size: 24rpx !important;
+	min-width: 35rpx;
+	min-height: 35rpx;
+	display: flex;
+	align-items: center;
+	justify-content: center;
+	line-height: 1;
+}
+
+.flex_item {
+	display: flex;
+	align-items: center;
+	/* justify-content: space-between; */
+}
+
+/* 左右顶格加上下居中 */
+.flex-between-center {
+	display: flex;
+	justify-content: space-between;
+	align-items: center;
+}
+
+/* flex布局-整体居中 */
+.flex-center {
+	display: flex;
+	align-items: center;
+	justify-content: center;
+}
+
+.flex-start {
+	display: flex;
+	align-items: center;
+	justify-content: flex-start;
+}
+
+/*文字对齐*/
+.text-left {
+	text-align: left !important;
+}
+
+.text-center {
+	text-align: center !important;
+}
+
+.text-justify {
+	text-align: justify !important;
+}
+
+.text-right {
+	text-align: right !important;
+}
+
+.text-default {
+	color: #212121 !important;
+}
+
+.text-white {
+	color: #ffffff !important;
+}
+
+.text-primary {
+	color: #00bcd4 !important;
+}
+
+.text-success {
+	color: #009688 !important;
+}
+
+.text-info {
+	color: #03a9f4 !important;
+}
+
+.text-warning {
+	color: #ffc107 !important;
+}
+
+.text-danger {
+	color: #e51c23 !important;
+}
+
+.text-pink {
+	color: #e91e63 !important;
+}
+
+.text-purple {
+	color: #673ab7 !important;
+}
+
+.text-indigo {
+	color: #3f51b5 !important;
+}
+
+.text-gray {
+	color: #999999 !important;
+}
+
+.bg-default {
+	background-color: #f5f5f5 !important;
+}
+
+.bg-primary {
+	background-color: #00bcd4 !important;
+}
+
+.bg-success {
+	background-color: #009688 !important;
+}
+
+.bg-info {
+	background-color: #03a9f4 !important;
+}
+
+.bg-warning {
+	background-color: #FFB238 !important;
+}
+
+.bg-danger {
+	background-color: #DC4D46 !important;
+}
+
+.bg-pink {
+	background-color: #e91e63 !important;
+}
+
+.bg-purple {
+	background-color: #673ab7 !important;
+}
+
+.bg-indigo {
+	background-color: #3f51b5 !important;
+}
+
+.bg-white {
+	background-color: white !important;
+}
+
+.bg-gray {
+	background-color: #e3e3e3 !important;
+}
+
+/* 边框 */
+.border-radius-15 {
+	border-radius: 15rpx;
+}
+
+.border-radius-10 {
+	border-radius: 10rpx;
+}
+
+.border-radius-all {
+	border-radius: 1000rpx;
+}
+
+/* 底部边线 */
+.borde-b {
+	border-bottom: 1px solid #dddddd;
+}
+
+/* 弹性盒子 */
+.flex {
+	display: flex;
+	align-items: center;
+	justify-content: space-between;
+}
+
+.items-left {
+	justify-content: flex-start;
+}
+
+.items-right {
+	justify-content: flex-end;
+}
+
+.flex-shrink-false {
+	flex-shrink: 0;
+}
+
+.flex-grow-true {
+	flex-grow: 1;
+}
+
+.position-relative {
+	position: relative;
+}

BIN
unpackage/dist/dev/app-plus/static/error/emptyCart.png


BIN
unpackage/dist/dev/app-plus/static/error/errorImage.jpg


BIN
unpackage/dist/dev/app-plus/static/error/missing-face.png


BIN
unpackage/dist/dev/app-plus/static/icon/add.png


BIN
unpackage/dist/dev/app-plus/static/icon/appleIcon.png


BIN
unpackage/dist/dev/app-plus/static/icon/back.png


BIN
unpackage/dist/dev/app-plus/static/icon/bdq.png


BIN
unpackage/dist/dev/app-plus/static/icon/btncz.png


BIN
unpackage/dist/dev/app-plus/static/icon/c3.png


BIN
unpackage/dist/dev/app-plus/static/icon/c5.png


BIN
unpackage/dist/dev/app-plus/static/icon/c6.png


BIN
unpackage/dist/dev/app-plus/static/icon/c7.png


BIN
unpackage/dist/dev/app-plus/static/icon/c8.png


BIN
unpackage/dist/dev/app-plus/static/icon/cz.png


BIN
unpackage/dist/dev/app-plus/static/icon/dd.png


BIN
unpackage/dist/dev/app-plus/static/icon/down.png


BIN
unpackage/dist/dev/app-plus/static/icon/fanhui.png


BIN
unpackage/dist/dev/app-plus/static/icon/fgq.png


BIN
unpackage/dist/dev/app-plus/static/icon/gift.png


BIN
unpackage/dist/dev/app-plus/static/icon/gn1.png


BIN
unpackage/dist/dev/app-plus/static/icon/i8.png


BIN
unpackage/dist/dev/app-plus/static/icon/img01.png


BIN
unpackage/dist/dev/app-plus/static/icon/img02.png


BIN
unpackage/dist/dev/app-plus/static/icon/img03.png


BIN
unpackage/dist/dev/app-plus/static/icon/img04.png


BIN
unpackage/dist/dev/app-plus/static/icon/img05.png


BIN
unpackage/dist/dev/app-plus/static/icon/img06.png


BIN
unpackage/dist/dev/app-plus/static/icon/img07.png


BIN
unpackage/dist/dev/app-plus/static/icon/img08.png


BIN
unpackage/dist/dev/app-plus/static/icon/img09.png


BIN
unpackage/dist/dev/app-plus/static/icon/img10.png


BIN
unpackage/dist/dev/app-plus/static/icon/img11.png


BIN
unpackage/dist/dev/app-plus/static/icon/img12.png


BIN
unpackage/dist/dev/app-plus/static/icon/in1.png


BIN
unpackage/dist/dev/app-plus/static/icon/in2.png


BIN
unpackage/dist/dev/app-plus/static/icon/in3.png


BIN
unpackage/dist/dev/app-plus/static/icon/in4.png


BIN
unpackage/dist/dev/app-plus/static/icon/index-gou.png


BIN
unpackage/dist/dev/app-plus/static/icon/mye.png


BIN
unpackage/dist/dev/app-plus/static/icon/o1.png


BIN
unpackage/dist/dev/app-plus/static/icon/o2.png


BIN
unpackage/dist/dev/app-plus/static/icon/o3.png


BIN
unpackage/dist/dev/app-plus/static/icon/o4.png


BIN
unpackage/dist/dev/app-plus/static/icon/reduce.png


BIN
unpackage/dist/dev/app-plus/static/icon/sc-ico.png


BIN
unpackage/dist/dev/app-plus/static/icon/search-h.png


Alguns ficheiros não foram mostrados porque muitos ficheiros mudaram neste diff