Browse Source

check list

lhl 1 year ago
parent
commit
42fa5e59b4

+ 35 - 0
api/user.js

@@ -209,4 +209,39 @@ export function realName(data) {
 		method: 'post',
 		data
 	})
+}
+
+//
+export function getAli(data) {
+	return request({
+		url: '/api/ali/info',
+		method: 'get',
+		data
+	})
+}
+
+
+export function getWx(data) {
+	return request({
+		url: '/api/wx/info',
+		method: 'get',
+		data
+	})
+}
+
+
+export function setAli(data) {
+	return request({
+		url: '/api/ali/edit',
+		method: 'post',
+		data
+	})
+}
+
+export function setWx(data) {
+	return request({
+		url: '/api/wx/edit',
+		method: 'post',
+		data
+	})
 }

+ 10 - 1
api/zero.js

@@ -121,4 +121,13 @@ export function auth(data) {
 		method: 'post',
 		data
 	});
-}
+}
+
+//getCardInfo
+export function getCardInfo(data) {
+	return request({
+		url: '/api/transaction/info',
+		method: 'get',
+		data
+	});
+}

+ 4 - 3
manifest.json

@@ -2,8 +2,8 @@
     "name" : "精联惠选",
     "appid" : "__UNI__991D0D9",
     "description" : "精联惠选",
-    "versionName" : "1.1.1",
-    "versionCode" : 111,
+    "versionName" : "1.1.4",
+    "versionCode" : 114,
     "transformPx" : false,
     "app-plus" : {
         /* 5+App特有相关 */
@@ -32,7 +32,8 @@
                     "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
                     "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>"
                 ],
-                "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ]
+                "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ],
+                "targetSdkVersion" : 30
             },
             "ios" : {
                 "idfa" : false,

+ 14 - 8
pages.json

@@ -100,10 +100,16 @@
 				"navigationBarTitleText": "共富值"
 			}
 		},
+		{
+			"path": "pages/zero/pay",
+			"style": {
+				"navigationBarTitleText": "上传凭证"
+			}
+		},
 		{
 			"path": "pages/zero/order",
 			"style": {
-				"navigationBarTitleText": ""
+				"navigationBarTitleText": "交易市场"
 			}
 		},
 		{
@@ -326,7 +332,7 @@
 		{
 			"path": "pages/user/sqdl",
 			"style": {
-				"navigationBarTitleText": "添加银行卡"
+				"navigationBarTitleText": "收款信息"
 			}
 		},
 		{
@@ -506,12 +512,12 @@
 				"selectedIconPath": "static/tabBar/xc-action.png",
 				"text": "我的薪酬"
 			},
-			// {
-			// 	"pagePath": "pages/index/zero",
-			// 	"iconPath": "static/tabBar/ll.png",
-			// 	"selectedIconPath": "static/tabBar/ll-action.png",
-			// 	"text": "零创业"
-			// },
+			{
+				"pagePath": "pages/zero/order",
+				"iconPath": "static/tabBar/ll.png",
+				"selectedIconPath": "static/tabBar/ll-action.png",
+				"text": "交易市场"
+			},
 			{
 				"pagePath": "pages/user/user",
 				"iconPath": "static/tabBar/user.png",

+ 2 - 1
pages/index/zero.vue

@@ -82,7 +82,7 @@
 					<view class="order-wrap " v-for="orderItem in item.list" v-if="item.status == 2">
 						<view class="flex m-info">
 							<image src="../../static/icon/gs-av.png" mode="" class="card-img"></image>
-							<text style=" display: inline-block;line-height: 55rpx;">{{orderItem.phone}}</text>
+							<text style=" display: inline-block;line-height: 55rpx;">{{orderItem.user.nickname}}</text>
 						</view>
 						<view class="price">
 							¥{{orderItem.total_price}}
@@ -225,6 +225,7 @@
 						duration:2000
 					});
 					this.buying = false
+					this.getGsList('re')
 				}).catch( err => {
 					this.buying = false
 				})

+ 247 - 64
pages/user/sqdl.vue

@@ -1,56 +1,123 @@
 <template>
 	<view class="content">
+		<view class="flex nav-list">
+			<view class="item" v-for="(item,index) in navList" :class="{'action': current == index}"
+				@click="changeNavT(index)">
+				{{item.tit}}
+			</view>
+		</view>
 		<view class="" style="height: 20rpx;">
 
 		</view>
 		<view class="tab">
-			<view class="bd-wrap flex">
-				<view class="bg-name">
-					真实姓名:
+			<template v-if="current == 0">
+				<view class="bd-wrap flex">
+					<view class="bg-name">
+						真实姓名:
+					</view>
+					<view class="bg-val">
+						<input type="text" value="" placeholder="请输入真实姓名" class="val-ipt" v-model="bankInfo.fullname"
+							ref="name" />
+					</view>
 				</view>
-				<view class="bg-val">
-					<input type="text" value="" placeholder="请输入真实姓名" class="val-ipt" v-model="bankInfo.fullname" ref="name" />
+				<view class="bd-wrap flex">
+					<view class="bg-name">
+						手机号:
+					</view>
+					<view class="bg-val">
+						<input type="text" value="" placeholder="请输入手机号" class="val-ipt" v-model="bankInfo.phone"
+							ref="phone" />
+					</view>
 				</view>
-			</view>
-			<view class="bd-wrap flex">
-				<view class="bg-name">
-					手机号:
+				<view class="bd-wrap flex">
+					<view class="bg-name">
+						银行卡号:
+					</view>
+					<view class="bg-val">
+						<input type="text" value="" placeholder="请输入银行卡号" class="val-ipt" v-model="bankInfo.bankno"
+							ref="address" />
+					</view>
 				</view>
-				<view class="bg-val">
-					<input type="text" value="" placeholder="请输入手机号" class="val-ipt" v-model="bankInfo.phone" ref="phone" />
+				<view class="bd-wrap flex">
+					<view class="bg-name">
+						开户行:
+					</view>
+					<view class="bg-val">
+						<input type="text" value="" placeholder="请输入开户行" class="val-ipt" v-model="bankInfo.bank"
+							ref="storenamae" />
+					</view>
 				</view>
-			</view>
-			<view class="bd-wrap flex">
-				<view class="bg-name">
-					银行卡号:
+				<view class="bd-wrap flex">
+					<view class="bg-name">
+						所属支行:
+					</view>
+					<view class="bg-val">
+						<input type="text" value="" placeholder="请输入所属支行" class="val-ipt" v-model="bankInfo.subbranch"
+							ref="storenamae" />
+					</view>
 				</view>
-				<view class="bg-val">
-					<input type="text" value="" placeholder="请输入银行卡号" class="val-ipt" v-model="bankInfo.bankno"
-						ref="address" />
+			</template>
+			<template v-if="current == 1">
+				<view class="bd-wrap flex">
+					<view class="bg-name">
+						真实姓名:
+					</view>
+					<view class="bg-val">
+						<input type="text" value="" placeholder="请输入真实姓名" class="val-ipt" v-model="aliInfo.fullname"
+							ref="name" />
+					</view>
 				</view>
-			</view>
-			<view class="bd-wrap flex">
-				<view class="bg-name">
-					开户行:
+				<view class="bd-wrap flex">
+					<view class="bg-name">
+						支付宝账号:
+					</view>
+					<view class="bg-val">
+						<input type="text" value="" placeholder="请输入支付宝账号" class="val-ipt" v-model="aliInfo.alino"
+							ref="name" />
+					</view>
 				</view>
-				<view class="bg-val">
-					<input type="text" value="" placeholder="请输入开户行" class="val-ipt" v-model="bankInfo.bank"
-						ref="storenamae" />
+				<view class="bd-wrap flex">
+					<view class="bg-name">
+						收款码:
+					</view>
+					<view class="bg-val">
+						<image v-if="!aliInfo.qr" src="../../static/img/add.png" mode="" @click="upimg(1)"></image>
+						<image v-else :src="aliInfo.qr" mode="" @click="upimg(1)"></image>
+					</view>
 				</view>
-			</view>
-			<view class="bd-wrap flex" >
-				<view class="bg-name">
-					所属支行:
+			</template>
+			<template v-if="current == 2">
+				<view class="bd-wrap flex">
+					<view class="bg-name">
+						真实姓名:
+					</view>
+					<view class="bg-val">
+						<input type="text" value="" placeholder="请输入真实姓名" class="val-ipt" v-model="wxInfo.fullname"
+							ref="name" />
+					</view>
 				</view>
-				<view class="bg-val">
-					<input type="text" value="" placeholder="请输入所属支行" class="val-ipt" v-model="bankInfo.subbranch"
-						ref="storenamae" />
+				<view class="bd-wrap flex">
+					<view class="bg-name">
+						微信账号:
+					</view>
+					<view class="bg-val">
+						<input type="text" value="" placeholder="请输入微信账号" class="val-ipt" v-model="wxInfo.wxno"
+							ref="name" />
+					</view>
 				</view>
-			</view>
-
+				<view class="bd-wrap flex">
+					<view class="bg-name">
+						收款码:
+					</view>
+					<view class="bg-val">
+						<image v-if="!wxInfo.qr" src="../../static/img/add.png" mode="" @click="upimg(2)"></image>
+						<image v-else :src="wxInfo.qr" mode="" @click="upimg(2)"></image>
+					</view>
+				</view>
+			</template>
 		</view>
 		<view class="btm-btn" @click="bank">
-			确认
+			{{current == 0? '保存银行卡信息': (current == 1? '保存支付宝信息': '保存微信信息')}}
 		</view>
 	</view>
 </template>
@@ -62,18 +129,49 @@
 	import {
 		getLevelList,
 		bank,
-		bankInfo
+		bankInfo,
+		setWx,
+		setAli,
+		getAli,
+		getWx
 	} from '@/api/user.js'
 	import {
 		mapState,
 		mapMutations
 	} from 'vuex';
+	import { upload } from '@/api/order.js';
 	export default {
 		components: {
 			pickerAddress
 		},
 		data() {
 			return {
+				current: 0,
+				navList: [{
+						tit: '银行卡',
+						info: {},
+					}, {
+						tit: '支付宝',
+						info: {}
+					},
+					{
+						tit: '微信',
+						info: {}
+					}
+				],
+				type: 1,
+				aliInfo: {
+					fultname: '',
+					alino: '',
+					qr: '',
+					id: 0
+				},
+				wxInfo: {
+					fultname: '',
+					wxno: '',
+					qr: '',
+					id: 0
+				},
 				bankInfo: {
 					fullname: '',
 					phone: '',
@@ -85,6 +183,12 @@
 			};
 		},
 		onLoad(opt) {
+			
+		},
+		watch: {
+			current(n, o) {
+
+			}
 		},
 		onShow() {
 			this.getbankInfo()
@@ -96,14 +200,42 @@
 			...mapState('user', ['userInfo'])
 		},
 		methods: {
+			upimg(type) {
+				let that = this
+				upload({
+					file: ''
+				})
+					.then(e => {
+						console.log(e,'e')
+						if(type == 1) {
+							that.aliInfo.qr = e[0].url
+						}else {
+							that.wxInfo.qr = e[0].url
+						}
+					})
+					.catch(e => {});
+			},
+			changeNavT(index) {
+				if (index == this.current) {
+					return
+				}
+				this.current = index
+			},
 			getbankInfo() {
 				bankInfo().then(res => {
 					console.log(res);
-					if(res.data && res.data.id) {
+					if (res.data && res.data.id) {
 						this.bankInfo = res.data
-						uni.setNavigationBarTitle({
-							title:'修改银行卡信息'
-						})
+					}
+				})
+				getAli().then(res => {
+					if (res.data && res.data.id) {
+						this.aliInfo = res.data
+					}
+				})
+				getWx().then(res => {
+					if (res.data && res.data.id) {
+						this.wxInfo = res.data
 					}
 				})
 			},
@@ -119,39 +251,68 @@
 			},
 			bank() {
 				let that = this
+				let setInfo,qdata;
 				if (that.loading) {
 					return
 				}
-				if (that.bankInfo.fullname == '') {
-					return that.$api.msg('请输入您的姓名')
-				}
-				if (that.bankInfo.phone == '') {
-					return that.$api.msg('请输入手机号')
-				}
-				if (that.bankInfo.bankno == '') {
-					return that.$api.msg('请输入银行卡号')
-				}
-				if (that.bankInfo.bank == '') {
-					return that.$api.msg('请输入银行')
-				}
-				if (that.bankInfo.subbranch == '') {
-					return that.$api.msg('请输入所属支行')
+				if (that.current == 0) {
+					// 校验银行卡
+					setInfo = bank
+					if (that.bankInfo.fullname == '') {
+						return that.$api.msg('请输入您的姓名')
+					}
+					if (that.bankInfo.phone == '') {
+						return that.$api.msg('请输入手机号')
+					}
+					if (that.bankInfo.bankno == '') {
+						return that.$api.msg('请输入银行卡号')
+					}
+					if (that.bankInfo.bank == '') {
+						return that.$api.msg('请输入银行')
+					}
+					if (that.bankInfo.subbranch == '') {
+						return that.$api.msg('请输入所属支行')
+					}
+					qdata = that.bankInfo
+				} else if (that.current == 1) {
+					//校验支付宝
+					setInfo = setAli
+					if (that.aliInfo.fullname == '') {
+						return that.$api.msg('请输入您的姓名')
+					}
+					if (that.aliInfo.wxno == '') {
+						return that.$api.msg('请输入支付宝账号')
+					}
+					if (that.aliInfo.qr == '') {
+						return that.$api.msg('请上传支付宝收款码')
+					}
+					
+					qdata = that.aliInfo
+
+				} else if (that.current == 2) {
+					//校验微信
+					setInfo = setWx
+					if (that.wxInfo.fullname == '') {
+						return that.$api.msg('请输入您的姓名')
+					}
+					if (that.wxInfo.wxno == '') {
+						return that.$api.msg('请输入微信账号')
+					}
+					if (that.wxInfo.qr == '') {
+						return that.$api.msg('请上传微信收款码')
+					}
+					qdata = that.wxInfo
 				}
+
 				that.loading = true
-				bank(that.bankInfo).then(res => {
+
+
+				setInfo(qdata).then(res => {
 					console.log(res);
 					uni.showToast({
 						title: '提交成功',
 						duration: 2000
 					});
-					setTimeout(() => {
-						// uni.switchTab({
-						// 	url: '/pages/user/user'
-						// })
-						uni.navigateBack()
-						that.loading = false
-					}, 1500)
-
 				}).catch(err => {
 					console.log('err');
 					that.loading = false
@@ -207,6 +368,11 @@
 				padding-left: 10rpx;
 
 			}
+
+			image {
+				width: 150rpx;
+				height: 150rpx;
+			}
 		}
 	}
 
@@ -217,10 +383,27 @@
 		color: #FFFFFF;
 		text-align: center;
 		line-height: 82rpx;
-		
+
 		width: 560rpx;
 		height: 80rpx;
 		background: #FA2740;
 		border-radius: 40rpx;
 	}
+
+	.nav-list {
+		justify-content: space-around;
+		background-color: #fff;
+		font-weight: 500;
+		color: #333333;
+
+		.item {
+			padding: 28rpx 20rpx 16rpx;
+
+		}
+
+		.action {
+			color: #EC5A54;
+			border-bottom: 2px solid red;
+		}
+	}
 </style>

+ 1 - 1
pages/user/user.vue

@@ -73,7 +73,7 @@
 		<view class="user-list flex" @click="navTo('/pages/user/sqdl')">
 			<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>

+ 3 - 3
pages/zero/gfz.vue

@@ -5,7 +5,7 @@
 			<view class="top-top flex">
 				<view class="item ">
 					<view class="val">
-						{{pUser.holding_value}}
+						{{pUser.holding_value || 0}}
 					</view>
 					<view class="name">
 						联盟共富值
@@ -13,7 +13,7 @@
 				</view>
 				<view class="item">
 					<view class="val">
-						{{pUser.trem_holding_value}}
+						{{pUser.trem_holding_value ||0}}
 					</view>
 					<view class="">
 						总共富值
@@ -25,7 +25,7 @@
 					当前等级:{{ pUser.zero_level ? pUser.zero_level.name:'暂无' }}
 				</view>
 				<view class="">
-					<!-- 总共富值:{{}} -->
+					个人共富值:{{pUser.holding || 0}}
 				</view>
 			</view>
 		</view>

+ 1 - 1
pages/zero/gs.vue

@@ -29,7 +29,7 @@
 			服务费:<text>{{(total_price * amount * pUser.fee_ratio / 100).toFixed(2) || 0}} 阅读积分</text>
 		</view>
 		<view class="fwf" v-else>
-			服务费:<text>{{( amount * 0.05).toFixed(2) || 0}} 余额宝</text>
+			服务费:<text>{{( amount * 0.05).toFixed(4) || 0}} 余额宝</text>
 		</view>
 		<view class="btn" @click="createGs">
 			确认

+ 47 - 24
pages/zero/jfhz.vue

@@ -1,10 +1,16 @@
 <template>
 	<view class="content">
+		<view class="tip" v-if="type == 3">
+			阅读积分兑换余额宝手续费为{{pUser.fee_ratio}}%
+		</view>
+		<view class="tip" v-if="type == 0">
+			通证兑换阅读积分比例为{{pUser.points_transaction}}:1
+		</view>
 		<view class="item flex">
 			<view class="tit">
 				可兑换{{type == 1 ? '商城积分': (type== 3?'阅读积分':(type == 2? '余额宝': '通证积分'))}}
 			</view>
-			<input type="text" placeholder="" v-model="allNum" disabled/>
+			<input type="text" placeholder="" v-model="allNum" disabled />
 		</view>
 		<view class="item flex">
 			<view class="tit">
@@ -23,26 +29,30 @@
 
 <script>
 	// tradeMoney
-	import { tradeMoney,passUser } from '@/api/zero.js'
+	import {
+		tradeMoney,
+		passUser
+	} from '@/api/zero.js'
 	export default {
 		data() {
 			return {
-				type: 0,// 0 通证-》阅读 1 商城-》复投
+				type: 0, // 0 通证-》阅读 1 商城-》复投
 				num: '',
 				allNum: 0,
+				pUser: {}
 			}
 		},
 		onLoad(opt) {
 			this.type = opt.type
-			if(this.type == 1) {
+			if (this.type == 1) {
 				uni.setNavigationBarTitle({
 					title: '兑换复投积分'
 				})
-			}else if(this.type == 3) {
+			} else if (this.type == 3) {
 				uni.setNavigationBarTitle({
 					title: '兑换余额宝'
 				})
-			}else if(this.type == 2) {
+			} else if (this.type == 2) {
 				uni.setNavigationBarTitle({
 					title: '兑换阅读积分'
 				})
@@ -50,26 +60,27 @@
 			this.passUser()
 		},
 		onShow() {
-			
+
 		},
 		onReachBottom() {
-			
+
 		},
 		onReady() {
-			
+
 		},
 		methods: {
 			passUser() {
 				passUser().then(res => {
 					this.loading = false
-					if(this.type == 1) {
-						this.allNum = res.data.integral*1
-					}else if( this.type == 3) {
-						this.allNum = res.data.points*1
-					}else if(this.type == 2){
-						this.allNum = res.data.freeze_points*1
-					}else {
-						this.allNum = res.data.pass ? res.data.pass:0
+					this.pUser = res.data
+					if (this.type == 1) {
+						this.allNum = res.data.integral * 1
+					} else if (this.type == 3) {
+						this.allNum = res.data.points * 1
+					} else if (this.type == 2) {
+						this.allNum = res.data.freeze_points * 1
+					} else {
+						this.allNum = res.data.pass ? res.data.pass : 0
 					}
 				})
 			},
@@ -79,10 +90,10 @@
 			tradeMoney() {
 				// 
 				let that = this
-				if(!that.num) {
+				if (!that.num) {
 					return that.$api.msg('请输入兑换数量')
 				}
-				if(that.num > that.allNum) {
+				if (that.num > that.allNum) {
 					return that.$api.msg('兑换数量超出可兑换数量')
 				}
 				that.loading = true
@@ -91,13 +102,13 @@
 					type: that.type
 				}).then(res => {
 					uni.showToast({
-						title:'兑换成功',
-						duration:2000
+						title: '兑换成功',
+						duration: 2000
 					});
 					this.num = ''
 					this.passUser()
-					
-				}).catch( err => {
+
+				}).catch(err => {
 					that.loading = false
 				})
 			}
@@ -110,16 +121,19 @@
 		height: 100%;
 		background-color: #fff;
 	}
+
 	.item {
 		width: 710rpx;
 		margin: auto;
 		background-color: #fff;
 		height: 110rpx;
 		border-bottom: 1px solid #E6E6E6;
+
 		.tit {
 			line-height: 110rpx;
 			font-size: 32rpx;
 		}
+
 		input {
 			text-align: right;
 			font-size: 36rpx;
@@ -127,6 +141,7 @@
 			color: #333333;
 		}
 	}
+
 	.all {
 		padding: 20rpx;
 		text-align: right;
@@ -134,16 +149,24 @@
 		font-weight: 500;
 		color: #FF4C4C;
 	}
+
 	.btn {
 		width: 670rpx;
 		line-height: 88rpx;
 		background: #FF4C4C;
 		border-radius: 10rpx;
-		
+
 		font-size: 32rpx;
 		font-weight: bold;
 		color: #FFFFFF;
 		text-align: center;
 		margin: 60rpx auto;
 	}
+
+	.tip {
+		padding: 5rpx;
+		padding-left: 20rpx;
+		background-color: #f2c3d1;
+		color: #f21f5d;
+	}
 </style>

+ 29 - 11
pages/zero/order.vue

@@ -18,7 +18,7 @@
 					<view class="order-wrap " v-for="orderItem in navItem.list">
 						<view class="flex m-info">
 							<image src="../../static/icon/gs-av.png" mode="" class="card-img"></image>
-							<text style=" display: inline-block;line-height: 55rpx;">1323456788911</text>
+							<text style=" display: inline-block;line-height: 55rpx;">{{orderItem.user.phone || orderItem.user.nickname}}</text>
 						</view>
 						<view class="price">
 							¥{{orderItem.total_price}}
@@ -29,18 +29,20 @@
 						<view class="num">
 							{{ getTime(orderItem.add_time)}}
 						</view>
+						<view class="status" :style="{color: showColor(orderItem.status)}">
+							{{orderItem.status == 0 ? '挂售中': (orderItem.status == 1? '待支付': (orderItem.status == 2? '待审核': orderItem.status == 3 ? '已完成': (orderItem.status == 4? '已取消': '未通过')))}}
+						</view>
 						<view class="flex btn-list">
 							<view class="order-btn" v-if="orderItem.status == 0 && navCurrent == 1" @click="qxOrder(orderItem)">
 								取消交易
 							</view>
 							<view class="order-btn" v-if="orderItem.status == 1 && navCurrent == 0" @click="upPz(orderItem)">
 								上传凭证
-								<!-- v-if="orderItem.status == 1 && navCurrent == 0" -->
 							</view>
 							<view class="order-btn" v-if="orderItem.status == 2 && navCurrent == 0" @click="upPz(orderItem)">
 								修改凭证
 							</view>
-							<view class="order-btn" v-if="orderItem.status == 2" @click="lookimg(orderItem)">
+							<view class="order-btn" v-if="orderItem.status == 2 || orderItem.status == 3" @click="lookimg(orderItem)">
 								查看凭证
 							</view>
 							<view class="order-btn" v-if="orderItem.status == 2 && navCurrent == 1" @click="auth(orderItem,-1)">
@@ -195,7 +197,7 @@
 			
 		},
 		onShow() {
-			this.getList()
+			this.getList('reload')
 		},
 		onReachBottom() {
 
@@ -214,6 +216,13 @@
 			});
 		},
 		methods: {
+			showColor(status) {
+				if(status == -1 || status == 4) {
+					return '#aaa'
+				}else {
+					return '#FF5570'
+				}
+			},
 			auth(item,type) {
 				let that =this
 				uni.showModal({
@@ -259,11 +268,14 @@
 				})
 			},
 			upPz(item) {
-				if(item.up_files) {
-					this.pz = item.up_files
-				}
-				this.orderId = item.id
-				this.$refs.popup.open()
+				// if(item.up_files) {
+				// 	this.pz = item.up_files
+				// }
+				// this.orderId = item.id
+				// this.$refs.popup.open()
+				uni.navigateTo({
+					url: '/pages/zero/pay?id=' + item.id
+				})
 			},
 			//上传凭证
 			goUp() {
@@ -342,7 +354,7 @@
 				}
 				console.log('切换');
 				this.current = index
-				this.getList('tab')
+				this.getList('reload')
 
 			},
 			getList(type) {
@@ -441,7 +453,7 @@
 		border-radius: 20rpx;
 		margin: 0 auto 20rpx;
 		padding: 33rpx 40rpx;
-
+		position: relative;
 		.m-info {
 			justify-content: flex-start;
 
@@ -471,6 +483,12 @@
 			font-weight: 500;
 			color: #888785;
 		}
+		.status {
+			position: absolute;
+			right: 10rpx;
+			top: 10rpx;
+			font-size: 26rpx;
+		}
 		.btn-list {
 			border-top: 1px solid #eee;
 			margin-top: 20rpx;

+ 445 - 0
pages/zero/pay.vue

@@ -0,0 +1,445 @@
+<template>
+	<view class="center">
+		<view class="" style="height: 20rpx;">
+
+		</view>
+		<view class="main">
+			<view class="main-tip">请向以下账号自行转账(任选一种方式)</view>
+			<view class="main-title flex">
+				
+				<view class="mt-item" @click="change('1')" :class="{ current: tabCurrentIndex === 1 }" v-if="info.bank && info.bank.fullname">
+					<view class="mt-font" :class="{ current: tabCurrentIndex === 1 }">银行卡</view>
+				</view>
+				<view class="mt-item" @click="change('0')" :class="{ current: tabCurrentIndex === 0 }" v-if="info.ali && info.ali.fullname">
+					<view class="mt-font" :class="{ current: tabCurrentIndex === 0 }">支付宝</view>
+				</view>
+				<view class="mt-item" @click="change('2')" :class="{ current: tabCurrentIndex === 2 }" v-if="info.wx && info.wx.fullname">
+					<view class="mt-font" :class="{ current: tabCurrentIndex === 2 }">微信</view>
+				</view>
+			</view>
+			<template v-if="tabCurrentIndex == 0 && info.ali && info.ali.fullname">
+				
+				<view class="tc-item flex">
+					<view class="tcitem-name">姓名</view>
+					<view class="ali-name">{{info.ali.fullname}}</view>
+				</view>
+				<view class="tc-item flex">
+					<view class="tcitem-name">支付宝账号</view>
+					<view class="ali-name">{{info.ali.alino}}</view>
+				</view>
+				<view class="tc-item flex">
+					<view class="tcitem-name">微信收款码</view>
+					<image :src="info.ali.qr" mode="" @click="lookImg(info.ali.qr)"></image>
+				</view>
+			</template>
+			<template v-if="tabCurrentIndex == 1 && info.bank && info.bank.fullname">
+				<view class="tc-item flex">
+					<view class="tcitem-name">姓名</view>
+					<view class="ali-name">{{info.bank.fullname}}</view>
+				</view>
+				<view class="tc-item flex">
+					<view class="tcitem-name">开户行</view>
+					<view class="ali-name">{{info.bank.bank}}</view>
+				</view>
+				<view class="tc-item flex">
+					<view class="tcitem-name">所属支行</view>
+					<view class="ali-name">{{info.bank.subbranch}}</view>
+				</view>
+				<view class="tc-item flex">
+					<view class="tcitem-name">银行卡号</view>
+					<view class="ali-name">{{info.bank.bankno}}</view>
+				</view>
+			</template>
+			
+			<template v-if="tabCurrentIndex ==2 && info.wx && info.wx.fullname">
+				<view class="tc-item flex">
+					<view class="tcitem-name">姓名</view>
+					<view class="ali-name">{{info.wx.fullname}}</view>
+				</view>
+				<view class="tc-item flex">
+					<view class="tcitem-name">微信账号</view>
+					<view class="ali-name">{{info.wx.wxno}}</view>
+				</view>
+				<view class="tc-item flex">
+					<view class="tcitem-name">微信收款码</view>
+					<image :src="info.wx.qr" mode="" @click="lookImg(info.wx.qr)"></image>
+				</view>
+			</template>
+		</view>
+		<view class="upload">
+			<view class="upload-title">上传支付截图</view>
+			<view class="upload-main">
+				<image v-if="!pz" class="upload-image" src="../../static/img/add.png" mode="" @click="upimg"></image>
+				<image v-else :src="pz" mode="" class="upload-image" @click="upimg"></image>
+				<view class="upload-font">点击上传支付截图</view>
+			</view>
+		</view>
+		<view class="bottom flex">
+			<view class="btn" @click="goUp()">立即上传</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import { upload } from '@/api/order.js';
+	import {
+		getCardInfo,
+		upEvaluation
+	} from '@/api/zero.js'
+	export default {
+		data() {
+			return {
+				tabCurrentIndex: 1,
+				info: {},
+				pz: '',
+				pzing: false,
+			};
+		},
+		onLoad(opt) {
+			if (opt.id) {
+				this.id = opt.id
+				this.getInfo()
+			}
+		},
+		methods: {
+			lookImg(img) {
+				let arr = img.split(',')
+				uni.previewImage({
+					current: 0,
+					loop: false,
+					urls: arr,
+					indicator: 'default'
+				});
+			},
+			//上传凭证
+			goUp() {
+				if(this.pzing) {
+					return
+				}
+				if(!this.pz) {
+					return this.$api.msg('请上传支付截图')
+				}
+				this.pzing = true
+				upEvaluation({
+					id: this.id,
+					up_files: this.pz
+				}).then(res => {
+					uni.showToast({
+						title:'上传成功',
+						duration:2000
+					});
+					this.pzing = false
+					setTimeout(()=> {
+						uni.navigateBack()
+					},1500)
+				}).catch(err => {
+					this.pzing = false
+				})
+			},
+			upimg() {
+				upload({
+					file: ''
+				})
+					.then(e => {
+						console.log(e,'e')
+					this.pz = e[0].url
+					console.log(this.pz)
+					})
+					.catch(e => {});
+			},
+			getInfo() {
+				getCardInfo({
+					id: this.id
+				}).then(res => {
+					// console.log(info)
+					this.info = res.data.result
+				})
+			},
+			open() {
+				this.$refs.popup.open();
+			},
+			close() {
+				this.$refs.popup.close();
+			},
+			nav(url) {
+				uni.navigateTo({
+					url
+				});
+			},
+			//swiper 切换
+			changeTab(e) {
+				this.tabCurrentIndex = e.target.current;
+			},
+			toBack() {
+				uni.navigateBack({});
+			},
+			change(num) {
+				this.tabCurrentIndex = num * 1;
+			}
+		}
+	};
+</script>
+
+<style lang="less">
+	.center {
+		background: #f8f6f6;
+		min-height: 100%;
+		height: auto;
+	}
+
+	.top {
+		margin-top: 10rpx;
+		background-color: #ffffff;
+		padding: 56rpx 0;
+		display: flex;
+		flex-direction: column;
+		justify-content: center;
+		align-items: center;
+
+		.top-main {
+			display: flex;
+			justify-content: center;
+			align-items: center;
+			line-height: 1;
+
+			.num {
+				font-size: 28rpx;
+				font-weight: bold;
+				color: #fd3b39;
+
+				text {
+					font-size: 50rpx;
+				}
+			}
+
+			.top-image {
+				margin-left: 10rpx;
+				width: 26rpx;
+				height: 28rpx;
+			}
+		}
+
+		.downtime {
+			margin-top: 20rpx;
+		}
+	}
+
+	.product {
+		margin-top: 20rpx;
+		padding: 35rpx 35rpx 40rpx 35rpx;
+		background-color: #ffffff;
+		justify-content: flex-start;
+		align-items: flex-start;
+
+		.product-image {
+			width: 210rpx;
+			height: 210rpx;
+			border-radius: 10rpx;
+		}
+
+		.product-info {
+			margin-left: 26rpx;
+			padding-top: 10rpx;
+			line-height: 1;
+
+			.title {
+				line-height: 1;
+				font-size: 30rpx;
+				font-weight: bold;
+				color: #333333;
+
+				text {
+					color: #999999;
+				}
+			}
+
+			.buyId {
+				margin-top: 30rpx;
+			}
+
+			.buyName {
+				margin-top: 24rpx;
+			}
+
+			.buyPhone {
+				margin-top: 24rpx;
+			}
+		}
+	}
+
+	.main {
+		padding: 30rpx 0 40rpx;
+		background: #ffffff;
+
+		.main-tip {
+			padding: 0 30rpx;
+			font-size: 30rpx;
+			font-weight: 500;
+			color: #999999;
+		}
+
+		.main-title {
+			padding: 0 30rpx;
+			margin-top: 34rpx;
+			padding-bottom: 50rpx;
+			.current {
+				background: #fd3b39 !important;
+				color: #ffffff !important;
+			}
+
+			.mt-item {
+				width: 160rpx;
+				height: 60rpx;
+				background: #f8f8f8;
+				border-radius: 10rpx;
+				display: flex;
+				justify-content: center;
+				align-items: center;
+
+				.mt-image {
+					width: 32rpx;
+					height: 32rpx;
+				}
+
+				.mt-image1 {
+					width: 38rpx;
+					height: 32rpx;
+				}
+
+				.mt-image2 {
+					width: 36rpx;
+					height: 32rpx;
+				}
+
+				.mt-font {
+					margin-left: 10rpx;
+					font-size: 30rpx;
+					font-weight: bold;
+					color: #333333;
+				}
+			}
+		}
+
+		.swiper-box {
+			width: 100%;
+			padding: 14rpx 30rpx 0;
+
+			
+		}
+	}
+
+	.upload {
+		margin-top: 20rpx;
+		padding: 34rpx 30rpx 40rpx 30rpx;
+		background: #ffffff;
+
+		.upload-title {
+			font-size: 30rpx;
+			font-weight: bold;
+			color: #333333;
+		}
+
+		.upload-main {
+			padding-top: 32rpx;
+			display: flex;
+			justify-content: center;
+			align-items: center;
+			flex-direction: column;
+
+			.upload-image {
+				width: 160rpx;
+				height: 160rpx;
+				border-radius: 10rpx;
+			}
+
+			.upload-font {
+				margin-top: 24rpx;
+				font-size: 30rpx;
+				font-weight: bold;
+				color: #333333;
+			}
+		}
+	}
+
+	.bottom {
+		position: fixed;
+		bottom: 0;
+		background: #ffffff;
+		width: 750rpx;
+		height: 146rpx;
+		justify-content: center;
+
+		.bottom-item {
+			margin-left: 30rpx;
+			display: flex;
+			flex-direction: column;
+			align-items: center;
+
+			.bi-image {
+				width: 38rpx;
+				height: 34rpx;
+			}
+
+			.bottom-font {
+				margin-top: 14rpx;
+				font-size: 24rpx;
+				font-weight: bold;
+				color: #333333;
+			}
+
+			.bottom-num {
+				line-height: 1;
+				font-size: 24rpx;
+				font-weight: bold;
+				color: #333333;
+			}
+		}
+
+		.shu {
+			margin-left: 20rpx;
+			width: 2px;
+			height: 74rpx;
+			background: #c0bfc0;
+		}
+
+		.btn {
+			margin-left: 40rpx;
+			width: 430rpx;
+			height: 80rpx;
+			background: #fd3b39;
+			border-radius: 20rpx;
+			text-align: center;
+			font-size: 34rpx;
+			font-weight: bold;
+			color: #ffffff;
+			line-height: 80rpx;
+		}
+	}
+	
+	.tc-item {
+			padding: 10rpx 0 10rpx 20rpx;
+			justify-content: flex-start;
+			image {
+				width: 200rpx;
+				height: 200rpx;
+			}
+		.tcitem-name {
+			width: 200rpx;
+			font-size: 30rpx;
+			font-weight: 500;
+			color: #999999;
+		}
+	
+		.ali-name {
+			width: 380rpx;
+			font-size: 30rpx;
+			font-weight: 500;
+			color: #333333;
+		}
+	
+		.tcitem-image {
+			width: 26rpx;
+			height: 28rpx;
+		}
+	}
+</style>

+ 16 - 16
pages/zero/task.vue

@@ -44,12 +44,12 @@
 						余额:{{pUser[key.val]*1 || '0'}}
 					</view>
 				</view>
-				<!-- <view class="btn" v-if="key.hz" @click="navto('/pages/zero/jfhz?type=3')">
+				<view class="btn" v-if="key.hz" @click="navto('/pages/zero/jfhz?type=3')">
 					兑换余额宝
-				</view> -->
-				<view class="btn" v-if="key.gs" @click="navto('/pages/zero/gs')">
-					挂售
 				</view>
+				<!-- <view class="btn" v-if="key.gs" @click="navto('/pages/zero/gs')">
+					挂售
+				</view> -->
 				<view class="btn" v-if="key.dy" @click="navto('/pages/zero/jfhz?type=0')">
 					兑换阅读积分
 				</view>
@@ -120,18 +120,18 @@
 						img: '../../static/icon/task3.png',
 						bgc: '#f7ecfc'
 					},
-					// {
-					// 	name: '余额宝',
-					// 	val: 'freeze_points',
-					// 	type: 11,
-					// 	hz: false,
-					// 	dy: false,
-					// 	agent: false,
-					// 	ye: true,
-					// 	ygs: true,
-					// 	img: '../../static/icon/task3.png',
-					// 	bgc: '#f7ecfc'
-					// },
+					{
+						name: '余额宝',
+						val: 'freeze_points',
+						type: 11,
+						hz: false,
+						dy: false,
+						agent: false,
+						ye: true,
+						ygs: true,
+						img: '../../static/icon/yeb.png',
+						bgc: '#fcf5eb'
+					},
 				]
 			}
 		},

BIN
static/icon/yeb.png


BIN
static/img/ali.png


BIN
static/img/aliD.png


BIN
static/img/bank.png


BIN
static/img/bankD.png