You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
payment/public/account.html

272 lines
12 KiB
HTML

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<!-- import CSS -->
<link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/element-ui/2.15.14/theme-chalk/index.min.css">
<title>我的账户</title>
</head>
<body>
<div id="app">
<el-container>
<el-main>
<el-tabs v-model="activeName">
<el-tab-pane label="账户信息" name="user">
<el-row>
<el-col :span="24">
<el-descriptions title="用户信息">
<el-descriptions-item label="用户名">{{username}} <el-button type="primary" @click="logout" size="mini" round>退出登录</el-button></el-descriptions-item>
</el-descriptions>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-descriptions title="开户信息">
<el-descriptions-item label="用户名" v-if="userInfo != null && userInfo.realname_flag==='Y'">{{userInfo.real_name}}</el-descriptions-item>
<el-descriptions-item label="用户名" v-else><el-button type="primary" @click="openAccount" size="mini" round>开户</el-button></el-descriptions-item>
<el-descriptions-item label="身份证号" v-if="userInfo != null && userInfo.realname_flag==='Y'">{{userInfo.certificate_no}}</el-descriptions-item>
<el-descriptions-item label="身份证号" v-else>--</el-descriptions-item>
<el-descriptions-item label="支付密码" v-if="userInfo != null && userInfo.set_pwd_flag==='Y'">********** <el-button type="primary" @click="resetPayPassword" size="mini" round>修改</el-button></el-descriptions-item>
<el-descriptions-item label="支付密码" v-else><el-button type="primary" @click="setPayPassword" size="mini" round>设置</el-button></el-descriptions-item>
</el-descriptions>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-descriptions title="绑卡信息">
<el-descriptions-item label="开户行" v-if="bankCard != null && userInfo.bind_card_flag==='Y'">{{bankCard.bank_name}} <el-button type="primary" @click="unbindCard" size="mini" round>解绑</el-button></el-descriptions-item>
<el-descriptions-item label="开户行" v-else><el-button type="primary" @click="bindCard" size="mini" round>绑卡</el-button></el-descriptions-item>
<el-descriptions-item label="开户姓名" v-if="bankCard != null && userInfo.bind_card_flag==='Y'">{{bankCard.card_user_name}}</el-descriptions-item>
<el-descriptions-item label="开户姓名" v-else>--</el-descriptions-item>
</el-descriptions>
</el-col>
</el-row>
</el-tab-pane>
<el-tab-pane label="充值" name="recharge">
<div>
<el-form ref="payForm" :model="payForm" label-width="80px">
<el-form-item label="金额">
<el-input v-model="payForm.amount"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="transferPay">充值</el-button>
</el-form-item>
</el-form>
</div>
<div>
<h2>充值流程</h2>
<p>1. 输入金额,点击充值按钮</p>
<p>2. 按提示转转</p>
</div>
</el-tab-pane>
</el-tabs>
</el-main>
</el-container>
<el-dialog title="转账信息" :visible.sync="payInfoVisible" width="30%">
<div>
<h3>您可通过网银或手机银行app向专属打款账户进行转账其中</h3>
<p><el-tag type="success">订单号:{{outOrderNo}}</el-tag></p>
<p><el-tag type="success">户名:宝付网络科技(上海)有限公司</el-tag></p>
<p><el-tag type="success">银行:支付机构备付金集中存管账户</p>
<p><el-tag type="success">开户城市:上海</el-tag></p>
<p><el-tag type="success">开户网点:宝付网络-备付金账户</el-tag></p>
<p><el-tag type="success">行号991290000793</el-tag></p>
<p><el-tag type="success">专属打款账户:{{acsNo}}</el-tag></p>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="payInfoVisible = false">确 定</el-button>
</div>
</el-dialog>
</div>
</body>
<!-- import Vue before Element -->
<script src="https://cdn.bootcdn.net/ajax/libs/vue/2.7.9/vue.min.js"></script>
<!-- import JavaScript -->
<script src="https://cdn.bootcdn.net/ajax/libs/element-ui/2.15.14/index.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/axios/1.5.0/axios.min.js"></script>
<script>
new Vue({
el: '#app',
data() {
return {
activeName: 'user',
username: '',
payForm: {
amount: 0
},
userInfo: {
realname_flag: '',
bind_card_flag: '',
mobile: '',
real_name: '',
certificate_no: '',
user_type: '',
apply_no: '',
is_platform_account: ''
},
bankCard: {
id: 0,
bank_name: '',
card_user_name: ''
},
acsNo: '',
outOrderNo: '',
payInfoVisible: false
}
},
created() {
if (!window.sessionStorage.getItem('token')) {
window.location.href = '/login.html'
return;
} else {
this.getUserInfo();
}
},
methods: {
logout() {
window.sessionStorage.removeItem('token');
window.location.href = '/login.html';
},
getUserInfo() {
axios.post('/account/user-info', {token: window.sessionStorage.getItem('token')})
.then( (response) => {
console.log(response);
let result = response.data
if (result.code != 1000) {
this.$message.error(response.data.message);
window.sessionStorage.removeItem('token');
window.location.href = '/login.html';
return;
}
this.username = result.data.username;
this.userInfo = result.data.userInfo;
this.bankCard = result.data.bankCard;
console.log('result', result);
console.log('username', this.username);
})
.catch((error) => {
this.$message.error('请求错误');
console.log(error);
});
console.log('submit!');
},
openAccount() {
axios.post('/account/open-account', {token: window.sessionStorage.getItem('token')})
.then( (response) => {
console.log(response);
let result = response.data
if (result.code != 1000) {
return this.$message.error(response.data.message);
}
window.open(result.data.url)
})
.catch((error) => {
this.$message.error('请求错误');
console.log(error);
});
console.log('submit!');
},
resetPayPassword() {
axios.post('/account/reset-pay-password', {token: window.sessionStorage.getItem('token')})
.then( (response) => {
console.log(response);
let result = response.data
if (result.code != 1000) {
return this.$message.error(response.data.message);
}
window.open(result.data.url)
})
.catch((error) => {
this.$message.error('请求错误');
console.log(error);
});
console.log('submit!');
},
setPayPassword() {
axios.post('/account/set-pay-password', {token: window.sessionStorage.getItem('token')})
.then( (response) => {
console.log(response);
let result = response.data
if (result.code != 1000) {
return this.$message.error(response.data.message);
}
window.open(result.data.url)
})
.catch((error) => {
this.$message.error('请求错误');
console.log(error);
});
console.log('submit!');
},
bindCard() {
axios.post('/account/bind-card', {token: window.sessionStorage.getItem('token')})
.then( (response) => {
console.log(response);
let result = response.data
if (result.code != 1000) {
return this.$message.error(response.data.message);
}
window.open(result.data.url)
})
.catch((error) => {
this.$message.error('请求错误');
console.log(error);
});
console.log('submit!');
},
unbindCard() {
axios.post('/account/unbind-card', {token: window.sessionStorage.getItem('token'), id: this.bankCard.id})
.then( (response) => {
console.log(response);
let result = response.data
if (result.code != 1000) {
return this.$message.error(response.data.message);
}
if (result.data.result) {
this.$message.success('解绑成功');
window.location.href = window.location.href;
} else {
return this.$message.error('解绑失败');
}
})
.catch((error) => {
this.$message.error('请求错误');
console.log(error);
});
console.log('submit!');
},
transferPay() {
axios.post('/account/transfer-pay', {token: window.sessionStorage.getItem('token'), amount: this.payForm.amount})
.then( (response) => {
console.log(response);
let result = response.data
if (result.code != 1000) {
return this.$message.error(response.data.message);
}
this.acsNo = result.data.acsNo;
this.outOrderNo = result.data.outOrderNo;
this.payInfoVisible = true;
})
.catch((error) => {
this.$message.error('请求错误');
console.log(error);
});
console.log('submit!');
},
getQueryParam(name) {
var query = window.location.search.substring(1);
console.log(query)
var vars = query.split("&");
for (var i = 0; i < vars.length; i++) {
var pair = vars[i].split("=");
console.log(pair[0], name)
if(pair[0] == name) {
return pair[1];
}
}
return undefined;
}
}
})
</script>
</html>