11 changed files with 535 additions and 236 deletions
After Width: | Height: | Size: 3.7 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 5.8 KiB |
After Width: | Height: | Size: 9.1 KiB |
@ -0,0 +1,433 @@ |
|||||
|
<template> |
||||
|
<div class="main-content12"> |
||||
|
<!-- page content --> |
||||
|
<div class="site-setting-wrap min-flex-right"> |
||||
|
<div class="siteMessage flex-common"> |
||||
|
<h3>支付授权</h3> |
||||
|
<el-form v-if="payType==payTypeTaoBao"> |
||||
|
<div class="flex-wrap"> |
||||
|
<div class="flex-left" style="max-width:100%"> |
||||
|
<div class="beforeNotice"> |
||||
|
<h4 class="flex"> <img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 前期准备事项</h4> |
||||
|
<p class="mt12 flex"> |
||||
|
请确保使用要添加的淘宝主账号登录并授权 |
||||
|
</p> |
||||
|
<p class="mt10 flex"> |
||||
|
如未购买"快乐帮手"服务或已过期,会跳转到购买服务页面 |
||||
|
</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</el-form> |
||||
|
<el-form v-else-if="payType==payTypeWeixin"> |
||||
|
<div class="flex-wrap"> |
||||
|
<div class="flex-left"> |
||||
|
<GuipFormItem column="column" class="mb24" label="1. 公司简称"> |
||||
|
<span class="desc" slot="formRight">请输入公司简称,便于您区分账号所属公司</span> |
||||
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="payinfo.short_name" prop="company_short_name" placeholder="6字以内"> |
||||
|
</GuipInput> |
||||
|
</GuipFormItem> |
||||
|
<GuipFormItem column="column" class="mb24" label="2. 支付商户号(mch_id)"> |
||||
|
<span class="desc" slot="formRight"><a href='https://pay.weixin.qq.com/' target='_blank'>微信支付平台</a>>账户中心>商户信息>微信支付商户号</span> |
||||
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="payinfo.mch_id" prop="mch_id" placeholder="请输入商户号"> |
||||
|
</GuipInput> |
||||
|
</GuipFormItem> |
||||
|
<GuipFormItem column="column" class="mb24" label="3. 微信支付秘钥"> |
||||
|
<span class="desc" slot="formRight"><a href='https://pay.weixin.qq.com/' target='_blank'>微信支付平台</a>>账号中心>账户设置>API安全>APIv2密钥;<p class="mt10">注意,支付密钥不能设置为纯数字</p></span> |
||||
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="payinfo.apiv2" prop="payinfo.apiv2" placeholder="请输入微信支付秘钥"> |
||||
|
</GuipInput> |
||||
|
</GuipFormItem> |
||||
|
<GuipFormItem column="column" class="mb24" label="4. 公众号APPID"> |
||||
|
<span class="desc" slot="formRight"><a href='https://mp.weixin.qq.com/' target='_blank'>公众平台</a>>设置与开发>基本配置>公众号开发信息>开发者ID(APPID)</span> |
||||
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="payinfo.appid" prop="payinfo.appid" placeholder="请输入公众号APPID"> |
||||
|
</GuipInput> |
||||
|
</GuipFormItem> |
||||
|
</div> |
||||
|
<div class="flex-line"></div> |
||||
|
<div class="flex-right"> |
||||
|
<div class="preview"> |
||||
|
<div class="preview-title"> |
||||
|
<p>预览支付二维码</p> |
||||
|
</div> |
||||
|
<div class="preview-content"> |
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</el-form> |
||||
|
<el-form v-else-if="payType==payTypeAlipay"> |
||||
|
<div class="flex-wrap"> |
||||
|
<div class="flex-left"> |
||||
|
<div v-if="payinfo.is_pay_public==0"> |
||||
|
<GuipFormItem column="column" class="mb24" label="1. 公司简称"> |
||||
|
<span class="desc" slot="formRight">请输入公司简称,便于您区分账号所属公司</span> |
||||
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="payinfo.short_name" placeholder="6字以内"></GuipInput> |
||||
|
</GuipFormItem> |
||||
|
<GuipFormItem column="column" class="mb24" label="2. 公司支付宝账号"> |
||||
|
<span class="desc" slot="formRight">仅支持已签约 “当面付” 功能的公司支付宝</span> |
||||
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="payinfo.account" placeholder="请输入公司支付宝账号"></GuipInput> |
||||
|
</GuipFormItem> |
||||
|
</div> |
||||
|
<div v-if="payinfo.is_pay_public==1"> |
||||
|
<div class="beforeNotice"> |
||||
|
<h4 class="flex"> <img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 须知</h4> |
||||
|
<p class="mt12">使用平台“支付宝支付”,平台收取5%的服务费</p> |
||||
|
<p class="mt12 flex">使用平台“支付宝支付”,真实姓名必须和支付宝账号实名认证姓名统一</p> |
||||
|
</div> |
||||
|
<GuipFormItem column="column" class="mb24" label="1. 收款人姓名"> |
||||
|
<span class="desc" slot="formRight">请输入支付宝绑定的银行卡的持卡人姓名</span> |
||||
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="payinfo.receive_payment_name" placeholder="6字以内"></GuipInput> |
||||
|
</GuipFormItem> |
||||
|
<GuipFormItem column="column" class="mb24" label="2. 收款支付宝账号"> |
||||
|
<span class="desc" slot="formRight">请输入有效账号</span> |
||||
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="payinfo.receive_payment_account" placeholder="请输入有效收款支付宝账号"></GuipInput> |
||||
|
</GuipFormItem> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="flex-line"></div> |
||||
|
<div class="flex-right"> |
||||
|
<div class="preview"> |
||||
|
<div class="preview-title"> |
||||
|
<p>预览支付二维码</p> |
||||
|
</div> |
||||
|
<div class="preview-content"> |
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</el-form> |
||||
|
<el-form v-else-if="payType==payTypePdd"> |
||||
|
<div class="flex-wrap"> |
||||
|
<div class="flex-left" style="max-width:100%"> |
||||
|
<div class="beforeNotice"> |
||||
|
<h4 class="flex"> <img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 前期准备事项</h4> |
||||
|
<p class="mt12 flex">主账号登录并授权。<a :href="payinfo.authurl" class="flex" target="_blank"><img src="@/assets/site/form_linkActive.svg" alt="">去授权</a></p> |
||||
|
<p class="mt12 flex gray">如未购买"快乐帮手"服务或已过期,会跳转到购买服务页面。</p> |
||||
|
<p class="mt5 flex gray">授权成功后点击下方“同步授权”。</p> |
||||
|
</div> |
||||
|
<GuipFormItem column="column" class="mb24" label="账号名称"> |
||||
|
<!-- <span class="desc" slot="formRight">账号名称</span> --> |
||||
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="payinfo.account" placeholder="请输入账号名称"></GuipInput> |
||||
|
</GuipFormItem> |
||||
|
</div> |
||||
|
</div> |
||||
|
</el-form> |
||||
|
<el-form v-else-if="payType==payTypeJingdong"> |
||||
|
<div class="flex-wrap"> |
||||
|
<div class="flex-left" style="max-width:100%"> |
||||
|
<div class="beforeNotice"> |
||||
|
<h4 class="flex"> <img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 前期准备事项</h4> |
||||
|
<p class="mt12 flex">请确保使用要添加的京东主账号登录并授权</p> |
||||
|
<p class="mt10 flex">如未购买"快乐论文检测服务"服务或已过期,会跳转到购买服务页面</p> |
||||
|
</div> |
||||
|
<GuipFormItem column="column" class="mb24" label="账号名称"> |
||||
|
<!-- <span class="desc" slot="formRight">账号名称</span> --> |
||||
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="payinfo.account" placeholder="请输入账号名称"></GuipInput> |
||||
|
</GuipFormItem> |
||||
|
</div> |
||||
|
</div> |
||||
|
</el-form> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="register-btns"> |
||||
|
<GuipButton type="system" :btnstyle="{ width: '144px', height: '46px' }" @click="cancle">取消</GuipButton> |
||||
|
<GuipButton type="primary" :btnstyle="{ width: '144px', height: '46px' }" @click="addPayment">{{ confirmText }}</GuipButton> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
</template> |
||||
|
<script> |
||||
|
// import GuipInput from '@/components/GuipInput.vue'; |
||||
|
import store from '@/store'; |
||||
|
import { mapState } from 'vuex'; |
||||
|
import GuipFormItem from '@/components/GuipFormItem.vue'; |
||||
|
import GuipInput from '@/components/GuipInput.vue'; |
||||
|
// import GuipTextarea from '@/components/GuipTextarea.vue'; |
||||
|
// import GuipRadio from '@/components/GuipRadio.vue'; |
||||
|
// import CustomDropdown from '@/components/CustomDropdown.vue'; |
||||
|
import GuipButton from '@/components/GuipButton.vue'; |
||||
|
// import GroupFormBtns from '@/components/GroupFormBtns.vue'; |
||||
|
// import {setHighActive} from '@/utils/common'; |
||||
|
|
||||
|
// 收款方式 |
||||
|
const PAY_TYPE_TAOBAO = 0; // 淘宝 |
||||
|
const PAY_TYPE_WEIXIN = 2; // 微信 |
||||
|
const PAY_TYPE_ALIPAY = 3; // 支付宝 |
||||
|
const PAY_TYPE_JINGDONG = 4; // 京东 |
||||
|
const PAY_TYPE_PDD = 11; // 拼多多 |
||||
|
|
||||
|
export default { |
||||
|
// 收款方式设置 |
||||
|
name: '', |
||||
|
props: [''], |
||||
|
components: { |
||||
|
// GuipRadio, |
||||
|
GuipFormItem, |
||||
|
GuipInput, |
||||
|
// GuipTextarea, |
||||
|
// CustomDropdown, |
||||
|
GuipButton, |
||||
|
// GroupFormBtns |
||||
|
|
||||
|
}, |
||||
|
data() { |
||||
|
return { |
||||
|
// AUTH |
||||
|
token: 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE3NTAwNTM3MjQsIm5iZiI6MTc1MDA1MzcyNCwiZXhwIjoxNzUyNjQ1NzI0LCJ1c2VyIjoic3VidXNlciIsImxvZ2luX3R5cGUiOjAsImFpZCI6IjEifQ.xyIqBLelB-k6jCifgRevBJTyg_Qrm6m1e4OcHhOpepU', |
||||
|
payinfo: [], |
||||
|
payType: -1, |
||||
|
// 收款方式 |
||||
|
payTypeTaoBao: PAY_TYPE_TAOBAO, |
||||
|
payTypeWeixin: PAY_TYPE_WEIXIN, |
||||
|
payTypeAlipay: PAY_TYPE_ALIPAY, |
||||
|
payTypeJingdong: PAY_TYPE_JINGDONG, |
||||
|
payTypePdd: PAY_TYPE_PDD, |
||||
|
confirmText: '保存', |
||||
|
} |
||||
|
}, |
||||
|
computed: { |
||||
|
...mapState(['pageTitle']) // 从Vuex映射showSidebar状态到组件的计算属性中 |
||||
|
}, |
||||
|
created() { |
||||
|
store.commit('SET_CUSTOMIZE', true); |
||||
|
store.commit('SET_SLIDER_MENU', 'paySettingData'); |
||||
|
}, |
||||
|
mounted() { |
||||
|
store.commit('SET_PAGETITLE', '支付授权'); |
||||
|
|
||||
|
this.getPayment(); |
||||
|
}, |
||||
|
methods: { |
||||
|
getPayment() { |
||||
|
this.$http('POST', '/agentnew/ajax_get_payinfo', { |
||||
|
payid: this.$route.query.payid, |
||||
|
},{ |
||||
|
headers:{ |
||||
|
'Auth': this.token |
||||
|
} |
||||
|
}).then(response => { |
||||
|
this.$nextTick(() => { |
||||
|
this.payinfo = response.data |
||||
|
this.payType = response.data.type |
||||
|
if (this.payType == PAY_TYPE_TAOBAO || this.payType == PAY_TYPE_JINGDONG) { |
||||
|
this.confirmText = '去授权'; |
||||
|
} else if (this.payType == PAY_TYPE_PDD) { |
||||
|
this.confirmText = '同步授权'; |
||||
|
} |
||||
|
}) |
||||
|
}).catch(error => { |
||||
|
console.error(error, 'error') |
||||
|
}) |
||||
|
}, |
||||
|
// 确认按钮事件 |
||||
|
addPayment() { |
||||
|
if (this.payType == PAY_TYPE_TAOBAO) { |
||||
|
window.open(this.payinfo.authurl, '_blank'); |
||||
|
|
||||
|
} else if (this.payType == PAY_TYPE_WEIXIN) { |
||||
|
this.$http('POST', '/agentnew/ajax_add_weixinpay', { |
||||
|
payid: this.$route.query.payid, |
||||
|
company_short_name: this.payinfo.short_name, |
||||
|
mch_id: this.payinfo.mch_id, |
||||
|
apiv2: this.payinfo.apiv2, |
||||
|
appid: this.payinfo.appid |
||||
|
}, { |
||||
|
headers: { |
||||
|
'Auth': this.token |
||||
|
} |
||||
|
}).then(response => { |
||||
|
this.$nextTick(() => { |
||||
|
if (response.status) { |
||||
|
this.$Message.success(response.info); |
||||
|
} else { |
||||
|
this.$Message.error(response.info); |
||||
|
} |
||||
|
}) |
||||
|
}).catch(error => { |
||||
|
console.error(error, 'error') |
||||
|
}) |
||||
|
|
||||
|
} else if (this.payType == PAY_TYPE_ALIPAY) { |
||||
|
this.$http('POST', '/agentnew/ajax_add_alipay', { |
||||
|
payid: this.$route.query.payid, |
||||
|
company_short_name: this.payinfo.short_name, |
||||
|
alipay_account: this.payinfo.account, |
||||
|
is_pay_public: this.payinfo.is_pay_public, |
||||
|
receive_payment_account: this.payinfo.receive_payment_account, |
||||
|
receive_payment_name: this.payinfo.receive_payment_name |
||||
|
}, { |
||||
|
headers: { |
||||
|
'Auth': this.token |
||||
|
} |
||||
|
}).then(response => { |
||||
|
this.$nextTick(() => { |
||||
|
if (response.status) { |
||||
|
if (this.payinfo.is_pay_public == 1) { |
||||
|
this.$Message.success(response.info); |
||||
|
} else { |
||||
|
window.open(response.data.authurl, '_blank'); |
||||
|
} |
||||
|
|
||||
|
} else { |
||||
|
this.$Message.error(response.info); |
||||
|
} |
||||
|
}) |
||||
|
}).catch(error => { |
||||
|
console.error(error, 'error') |
||||
|
}) |
||||
|
} else if (this.payType == PAY_TYPE_PDD) { |
||||
|
this.$http('POST', '/agentnew/ajax_add_pddpay', { |
||||
|
shop_name: this.payinfo.account, |
||||
|
}, { |
||||
|
headers: { |
||||
|
'Auth': this.token |
||||
|
} |
||||
|
}).then(response => { |
||||
|
this.$nextTick(() => { |
||||
|
if (response.status) { |
||||
|
this.$Message.success(response.info); |
||||
|
} else { |
||||
|
this.$Message.error(response.info); |
||||
|
} |
||||
|
}) |
||||
|
}).catch(error => { |
||||
|
console.error(error, 'error') |
||||
|
}) |
||||
|
} else if (this.payType == PAY_TYPE_JINGDONG) { |
||||
|
window.open(this.payinfo.authurl, '_blank'); |
||||
|
} |
||||
|
}, |
||||
|
handleClick(tab, event) { |
||||
|
console.log(tab, event); |
||||
|
}, |
||||
|
cancle() { |
||||
|
this.getPayment(); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
<style lang="scss" scoped> |
||||
|
a { |
||||
|
text-decoration: none; |
||||
|
color: #006AFF; |
||||
|
} |
||||
|
.register-btns { |
||||
|
// height: 78px; |
||||
|
/* 自动布局 */ |
||||
|
// width: 344px; |
||||
|
display: flex; |
||||
|
flex-direction: row; |
||||
|
justify-content: center; |
||||
|
background: #FFFFFF; |
||||
|
padding: 16px 0px; |
||||
|
/* 蓝色阴影_常规 */ |
||||
|
box-shadow: 0px 4px 16px 0px rgba(17, 55, 143, 0.12); |
||||
|
|
||||
|
button:nth-child(1) { |
||||
|
margin-right: 56px; |
||||
|
} |
||||
|
} |
||||
|
.preview { |
||||
|
background: #FAFAFA; |
||||
|
border-radius: 4px; |
||||
|
width: 100%; |
||||
|
height: 100%; |
||||
|
text-align: left; |
||||
|
} |
||||
|
|
||||
|
.preview-title { |
||||
|
padding-top: 24px; |
||||
|
padding-left: 20px; |
||||
|
} |
||||
|
.preview-title p { |
||||
|
font-size: 14px; |
||||
|
font-weight: bold; |
||||
|
line-height: normal; |
||||
|
letter-spacing: 0.08em; |
||||
|
color: #1E2226; |
||||
|
} |
||||
|
|
||||
|
.preview-content { |
||||
|
margin-top: 20px; |
||||
|
margin-left: 20px; |
||||
|
background: #FFFFFF; |
||||
|
width: 100%; |
||||
|
height: 200px; |
||||
|
} |
||||
|
|
||||
|
.beforeNotice { |
||||
|
|
||||
|
h4 { |
||||
|
margin: 0; |
||||
|
gap: 8px; |
||||
|
} |
||||
|
|
||||
|
margin-bottom: 18px; |
||||
|
text-align: left; |
||||
|
box-sizing: border-box; |
||||
|
padding: 20px 14px; |
||||
|
border-radius: 4px; |
||||
|
/* middle/middle_blue_1 */ |
||||
|
background: #F2F7FF; |
||||
|
/* middle/middle_blue_3 */ |
||||
|
border: 1px solid #BFDAFF; |
||||
|
|
||||
|
div { |
||||
|
margin-top: 2px; |
||||
|
padding-left: 23px; |
||||
|
|
||||
|
p { |
||||
|
color: #8A9099; |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
p { |
||||
|
color: #1E2226; |
||||
|
|
||||
|
i { |
||||
|
font-style: normal; |
||||
|
} |
||||
|
|
||||
|
&:last-child { |
||||
|
display: flex; |
||||
|
align-items: stretch; |
||||
|
|
||||
|
b { |
||||
|
font-weight: normal; |
||||
|
color: #8A9099; |
||||
|
display: inline-flex; |
||||
|
|
||||
|
img { |
||||
|
margin-left: 4px; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
a { |
||||
|
text-decoration: none; |
||||
|
color: #006AFF; |
||||
|
margin-right: 10px; |
||||
|
|
||||
|
img { |
||||
|
margin-left: 5px; |
||||
|
margin-right: 5px; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
.siteMessage { |
||||
|
border-radius: 4px; |
||||
|
transition: all .5s; |
||||
|
border: 1px solid transparent; |
||||
|
} |
||||
|
|
||||
|
.site-setting-wrap { |
||||
|
width: 100%; |
||||
|
} |
||||
|
|
||||
|
</style> |
Loading…
Reference in new issue