You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
580 lines
13 KiB
580 lines
13 KiB
<template>
|
|
<view class="conten">
|
|
<view class="conten-top">
|
|
<view class="conten-top-title">
|
|
<text>{{money/100}}</text>
|
|
</view>
|
|
<view class="conten-top-text">
|
|
<text>可提现金额</text>
|
|
</view>
|
|
</view>
|
|
<view class="detail" @click="goDetail">
|
|
<text>提现明细</text>
|
|
<view class="detailedRight">
|
|
<image src="http://rs.eonfox.cc/clzy/static/Arrow_right02.png" class="detailedRightImg"></image>
|
|
</view>
|
|
</view>
|
|
<view class="withdrawDeposit" v-show="!display">
|
|
<view class="withdrawDeposit-title">
|
|
<text>请输入提现金额</text>
|
|
</view>
|
|
<text class="abposin">¥</text>
|
|
<view class="withdrawDeposit-box">
|
|
<input type="digit" v-model="moneyTx" placeholder="此处金额在100~10000间且每日提现不能超过三次"/>
|
|
</view>
|
|
<view class="withdrawDeposit-text">
|
|
<text>请选择提现账户</text>
|
|
</view>
|
|
|
|
</view>
|
|
<view class="BopBox" v-show="display">
|
|
<view class="informationBox">
|
|
<view class="infor-title">
|
|
<text>支付宝账号:</text>
|
|
</view>
|
|
<view class="infor-input">
|
|
<input type="text" value="" @input="inpID" :placeholder="ID" />
|
|
</view>
|
|
</view>
|
|
<view class="informationBox">
|
|
<view class="infor-title">
|
|
<text>真实姓名:</text>
|
|
</view>
|
|
<view class="infor-input">
|
|
<input type="text" value="" @input="inpName" :placeholder="name"/>
|
|
</view>
|
|
</view>
|
|
<view class="affirmBut">
|
|
<button type="primary" @click="next()">确认</button>
|
|
</view>
|
|
</view>
|
|
<!-- <view class="payw">
|
|
<image src="http://rs.eonfox.cc/clzy/static/ali_pay.png" mode=""></image>
|
|
<text class="txt" @click="payAli">支付宝</text>
|
|
<text style="float: right; padding-right:40upx;color: #598fc7;" @click="addpayAli">添加支付宝账号信息</text>
|
|
</view>
|
|
<view class="pay" @click="payWx">
|
|
<image src="http://rs.eonfox.cc/clzy/static/wechat.png" mode=""></image>
|
|
<text class="txt">微信</text>
|
|
</view> -->
|
|
<view style="float:left;" v-show="!display">
|
|
<view class="payw">
|
|
<image src="http://rs.eonfox.cc/clzy/static/ali_pay.png" mode=""></image>
|
|
<text class="txt" @click="popBox">支付宝</text> <!-- @click="payAli" -->
|
|
<label class="radio"><radio value="r1" :checked="choice" @click="xz('z')"/></label>
|
|
</view>
|
|
<view class="pay">
|
|
<image src="http://rs.eonfox.cc/clzy/static/wechat.png" mode="" ></image>
|
|
<text class="txt">微信</text>
|
|
<label class="radio"><radio value="r2" :checked="!choice" @click="xz('w')" /></label>
|
|
</view>
|
|
</view>
|
|
<button class="confirm-btn" @click="WithdrawBut" v-show="!display">
|
|
提现
|
|
</button>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import mallplusCopyright from '@/components/mall-copyright/mallplusCopyright.vue';
|
|
import Api from '@/common/api';
|
|
import uniIcon from "@/components/uni-icon/uni-icon.vue"
|
|
import fns from '@/components/eonfox/fns.js';
|
|
import eonfox from '@/components/eonfox/eonfox.js';
|
|
var ef = new eonfox();
|
|
export default {
|
|
data() {
|
|
return {
|
|
money:'0.00',
|
|
moneyTx:'',
|
|
Sofar:'',
|
|
code:'',
|
|
openid:'',
|
|
ID:'', //支付宝账号
|
|
name:'', //支付宝真实姓名
|
|
choice:true,
|
|
display:false,
|
|
isAuth:false
|
|
};
|
|
},
|
|
onShow() {
|
|
uni.setNavigationBarColor({
|
|
frontColor: '#ffffff',
|
|
backgroundColor: '#ff5252',
|
|
animation: {
|
|
duration: 400,
|
|
timingFunc: 'easeIn'
|
|
}
|
|
})
|
|
this.moneyQuery();
|
|
var that=this;
|
|
|
|
},
|
|
methods:{
|
|
goDetail(){
|
|
uni.navigateTo({
|
|
url: '../../pagesA/transactionDetail/transactionDetail?method=user_money_earning'
|
|
})
|
|
},
|
|
payAli(){
|
|
var _this=this
|
|
var money=_this.moneyTx*100
|
|
ef.submit({
|
|
request:{s:['APPLICATIONORDERSELFUSERMONEYEARNINGWITHDRAW',[{
|
|
money_fen:money,
|
|
withdraw_method:"alipay",
|
|
// // #ifdef MP-WEIXIN
|
|
// weixin_login_code:_this.code,
|
|
// weixin_trade_type:"JSAPI",
|
|
// // #endif
|
|
// // #ifdef APP-PLUS
|
|
// weixin_login_openid:"用户OpenID,当weixin_login_code参数不存在时需要",
|
|
// weixin_trade_type:"APP"
|
|
// // #endif
|
|
alipay_account:_this.ID,//支付宝账号
|
|
alipay_realname:_this.name,//真实姓名
|
|
}]]},
|
|
callback(data){
|
|
console.log(data);
|
|
var re=fns.checkError(data,'s',function(errno,error){
|
|
uni.showToast({
|
|
title:error,
|
|
icon:'none'
|
|
})
|
|
})
|
|
if(data.data.s.errno==0){
|
|
uni.showToast({
|
|
title:'提现成功',
|
|
|
|
});
|
|
setTimeout(function(){
|
|
uni.navigateBack({
|
|
url:'../../pages/me/me'
|
|
})
|
|
},2000);
|
|
}
|
|
|
|
},error(err){
|
|
fns.err('调用提现错误',err,1)
|
|
}
|
|
})
|
|
this.moneyQuery();
|
|
},
|
|
addpayAli(){
|
|
uni.navigateTo({
|
|
url: '../../pagesA/addpayAli/addpayAli'
|
|
})
|
|
},
|
|
payWx(){
|
|
var _this=this
|
|
var money=_this.moneyTx*100
|
|
console.log('提现金额',money);
|
|
console.log('我的账户',_this.money);
|
|
console.log(money<=0,money>_this.money);
|
|
if(money<=0||money>_this.money||!/^\d+(\.\d+)?$/.test(money)){
|
|
uni.showToast({
|
|
title:'提现金额错误',
|
|
icon:'none'
|
|
})
|
|
}else{
|
|
// #ifdef MP-WEIXIN
|
|
|
|
_this.wxMp()
|
|
// #endif
|
|
// #ifdef APP-PLUS
|
|
_this.wxApp()
|
|
// #endif
|
|
}
|
|
},
|
|
wxMp(){
|
|
var _this=this
|
|
wx.login({
|
|
//微信小程序登录获取code
|
|
success(res) {
|
|
_this.code = res.code;
|
|
if (res.code) {
|
|
//获取到code生成订单
|
|
// 发起网络请求
|
|
console.log('发起网络请求');
|
|
_this.tiXian()
|
|
} else {
|
|
_this.isDisable = false;
|
|
console.log('登录失败!' + res.errMsg)
|
|
uni.showToast({
|
|
title: '登录失败!' + res.errMsg,
|
|
icon: 'none'
|
|
})
|
|
}
|
|
}
|
|
})
|
|
},
|
|
wxApp(){
|
|
var _this=this
|
|
uni.login({
|
|
provider: 'weixin',
|
|
success: function (loginRes) {
|
|
console.log('loginres:',typeof loginRes);
|
|
if (loginRes.errMsg=='login:ok') {
|
|
// 获取用户信息
|
|
uni.getUserInfo({
|
|
provider: 'weixin',
|
|
success: function (infoRes) {
|
|
console.log('info',JSON.stringify(infoRes.userInfo));
|
|
var openid=infoRes.userInfo.openId
|
|
_this.tiXian(openid)
|
|
},
|
|
fail(err){
|
|
fns.err('err',err,1)
|
|
}
|
|
});
|
|
|
|
}else{
|
|
fns.err('err','err',1)
|
|
}
|
|
},
|
|
fail(err) {
|
|
fns.err('err','login',1)
|
|
}
|
|
});
|
|
},
|
|
tiXian(openid){
|
|
var _this=this
|
|
var money=_this.moneyTx*100
|
|
ef.submit({
|
|
request:{s:['APPLICATIONORDERSELFUSERMONEYEARNINGWITHDRAW',[{
|
|
money_fen:money,
|
|
comment:"赠送收益提现",
|
|
withdraw_method:"weixinpay",
|
|
// #ifdef MP-WEIXIN
|
|
weixin_login_code:_this.code,
|
|
weixin_trade_type:"JSAPI",
|
|
// #endif
|
|
// #ifdef APP-PLUS
|
|
weixin_login_openid:openid,
|
|
weixin_trade_type:"APP"
|
|
// #endif
|
|
}]]},
|
|
callback(data){
|
|
var re=fns.checkError(data,'s',function(errno,error){
|
|
fns.err('err',error)
|
|
})
|
|
if (data.data.s && data.data.s.data ){
|
|
uni.showToast({
|
|
title:'提现成功',
|
|
success() {
|
|
setTimeout(function(){
|
|
uni.redirectTo({
|
|
url:'../../pagesB/profit/profit'
|
|
})
|
|
},2000)
|
|
}
|
|
})
|
|
}
|
|
console.log('tixian',data);
|
|
},error(err){
|
|
fns.err('调用提现错误',err,1)
|
|
}
|
|
})
|
|
|
|
},
|
|
async moneyQuery(){
|
|
var _this=this
|
|
|
|
let params = { };
|
|
let data1 = await Api.apiCall('get', Api.member.currentMember, params);
|
|
_this.money = data1.blance;
|
|
|
|
|
|
},
|
|
xz(fun){
|
|
var that=this;
|
|
if(fun=='z'){
|
|
that.choice=true;
|
|
}else{
|
|
that.choice=false;
|
|
}
|
|
|
|
},
|
|
popBox(){
|
|
var that=this;
|
|
that.display=!that.display;
|
|
},
|
|
inpID:function(event){
|
|
var that=this;
|
|
that.ID = event.detail.value;
|
|
},
|
|
inpName:function(event){
|
|
var that=this;
|
|
that.name = event.detail.value;
|
|
},
|
|
next(){
|
|
var that=this;
|
|
that.display=!that.display;
|
|
ef.submit({
|
|
request: {
|
|
u:['USERSELFCONFIGALIPAY',[{account:that.ID,realname:that.name}]]
|
|
},
|
|
callback: function(data){
|
|
console.log("用户支付宝信息",data);
|
|
var ulist=fns.checkError(data,'u',function(errno,error){
|
|
uni.showToast({
|
|
title:error,
|
|
icon:'none'
|
|
})
|
|
})
|
|
if(ulist.u){
|
|
uni.showToast({
|
|
title:'保存成功',
|
|
icon:'none',
|
|
success() {
|
|
that.isAuth=true
|
|
}
|
|
})
|
|
}
|
|
|
|
},
|
|
error: function(err){
|
|
console.log("出错啦", err);
|
|
},
|
|
});
|
|
},
|
|
WithdrawBut(){
|
|
console.log('点击提现按钮')
|
|
var that=this;
|
|
// true支付宝
|
|
// if(that.choice==true){
|
|
// that.payAli();
|
|
// }
|
|
// // false微信
|
|
if(that.moneyTx<100){
|
|
fns.err('提现金额必须大于等于100元');
|
|
return
|
|
}
|
|
//
|
|
if(that.choice){
|
|
console.log('提现支付宝',that.isAuth);
|
|
|
|
// if(!that.isAuth){
|
|
// uni.showToast({
|
|
// title:'请设置支付宝信息',
|
|
// icon:'none',
|
|
// success() {
|
|
// that.display=!that.display;
|
|
// }
|
|
// });
|
|
// return;
|
|
//
|
|
// }
|
|
if(that.ID==""){
|
|
that.display=!that.display;
|
|
}
|
|
else{
|
|
uni.showModal({
|
|
title:'提示',
|
|
content:'你是否要提现'+that.moneyTx+'元到'+that.ID+'账号',
|
|
success: function (res) {
|
|
if (res.confirm) {
|
|
that.payAli();
|
|
} else if (res.cancel) {
|
|
that.display=!that.display;
|
|
}
|
|
}
|
|
})
|
|
}
|
|
|
|
|
|
}else{
|
|
console.log('提现微信');
|
|
that.payWx();
|
|
}
|
|
}
|
|
//-----
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style>
|
|
.conten{
|
|
width: 100%;
|
|
height: 100%;
|
|
|
|
}
|
|
.conten-top{
|
|
width: 100%;
|
|
height: 250upx;
|
|
background-color: #FF5252;
|
|
padding-top: 80upx;
|
|
color: #ffff;
|
|
}
|
|
.conten-top-text{
|
|
width: 100%;
|
|
height: 50upx;
|
|
text-align: center;
|
|
font-size:32upx;
|
|
margin-top: 30upx;
|
|
}
|
|
.conten-top-text text{
|
|
font-size:32upx;
|
|
color:#FFFFFF;
|
|
}
|
|
.conten-top-title{
|
|
width: 100%;
|
|
height: 50upx;
|
|
text-align: center;
|
|
|
|
}
|
|
.conten-top-title text{
|
|
font-size:56upx;
|
|
color:#FFFFFF;
|
|
}
|
|
.detail{
|
|
float: left;
|
|
width: 100%;
|
|
height: 100upx;
|
|
border-bottom:1px solid #dedbdb;
|
|
line-height: 100upx;
|
|
padding-left: 20upx;
|
|
font-size: 32upx;
|
|
}
|
|
.withdrawDeposit{
|
|
width: 100%;
|
|
height: 300upx;
|
|
font-size: 28upx;
|
|
float: left;
|
|
}
|
|
.withdrawDeposit-title{
|
|
width:90%;
|
|
color: #666666;
|
|
margin-left: 10%;
|
|
line-height: 100upx;
|
|
height: 100upx;
|
|
}
|
|
.withdrawDeposit-box{
|
|
width: 90%;
|
|
height: 70upx;
|
|
background-color: #E8E8E8;
|
|
margin-left: 10%;
|
|
margin-top:10upx;
|
|
line-height: 70upx;
|
|
}
|
|
.withdrawDeposit-text{
|
|
width: 100%;
|
|
height: 70upx;
|
|
text-align: center;
|
|
line-height: 70upx;
|
|
margin-top: 30upx;
|
|
}
|
|
.payw{
|
|
float: left;
|
|
width: 100%;
|
|
height: 100upx;
|
|
border: 1px #DEDBDB solid;
|
|
line-height: 100upx;
|
|
font-size: 28upx;
|
|
padding-left: 30upx;
|
|
}
|
|
.pay{
|
|
float: left;
|
|
width: 100%;
|
|
height: 100upx;
|
|
border-bottom: 1px #DEDBDB solid;
|
|
line-height: 100upx;
|
|
font-size: 28upx;
|
|
padding-left: 30upx;
|
|
margin-bottom: 80upx;
|
|
}
|
|
.abposin{
|
|
position:absolute;
|
|
width: 40upx;
|
|
height: 40upx;
|
|
margin-left: 15upx;
|
|
font-size: 48upx;
|
|
margin-top: 8upx;
|
|
}
|
|
image{
|
|
width: 48upx;
|
|
height: 48upx;
|
|
margin: 20upx 20upx;
|
|
float: left;
|
|
}
|
|
.txt{
|
|
width: 510upx;
|
|
height: 100upx;
|
|
line-height: 100upx;
|
|
float: left;
|
|
}
|
|
.radio{
|
|
float: right;
|
|
padding-right:50upx;
|
|
}
|
|
.confirm-btn{
|
|
width :95%;
|
|
height :55px;
|
|
color: #fff;
|
|
margin-left: 2.5%;
|
|
background-color: #F8A0A0;
|
|
border-radius :4px;
|
|
}
|
|
|
|
/* 弹出框样式 */
|
|
.BopBox{
|
|
width:100%;
|
|
height: 400upx;
|
|
position: absolute;
|
|
background-color: #FFFFFF;
|
|
}
|
|
|
|
.BopBox-title {
|
|
width: 100%;
|
|
height: 60upx;
|
|
font-size: 32upx;
|
|
text-align: center;
|
|
}
|
|
.informationBox{
|
|
width:100%;
|
|
padding: 5upx;
|
|
height: 80upx;
|
|
line-height: 80upx;
|
|
border-bottom: #eee 1px solid;
|
|
font-size:28upx;
|
|
}
|
|
.infor-title{
|
|
float: left;
|
|
width: 25%;
|
|
height: 80upx;
|
|
text-align: right;
|
|
}
|
|
.infor-input{
|
|
padding-left: 10upx;
|
|
width: 70%;
|
|
height: 50upx;
|
|
float: left;
|
|
}
|
|
.infor-input input{
|
|
width: 100%;
|
|
float: left;
|
|
height: 80upx;
|
|
line-height: 80upx;
|
|
}
|
|
.affirmBut{
|
|
width: 95%;
|
|
height: 60upx;
|
|
margin-top: 80upx;
|
|
margin-left: 2.5%;
|
|
}
|
|
.detailedRight{
|
|
width :44px;
|
|
position:relative;
|
|
right :10px;
|
|
top: 5px;
|
|
float: right;
|
|
text-align :right;
|
|
}
|
|
|
|
.detailedRightImg{
|
|
width: 20px;
|
|
height :20px;
|
|
}
|
|
|
|
|
|
</style>
|
|
|