|
@@ -1,8 +1,8 @@
|
1
|
1
|
<template>
|
2
|
2
|
<div class="Page">
|
3
|
|
- <MainPageContainer :ShowMainHeader="true" :MainHeaderTitle="`支付宝认证`" :ShowMainHeaderBack="true" :ShowMainHeaderMore="true" :MainHeaderMoreText="`保存`">
|
|
3
|
+ <MainPageContainer @UserInfoChange="UserInfoChange" :ShowMainHeader="true" :MainHeaderTitle="`支付宝认证`" :ShowMainHeaderBack="true" :ShowMainHeaderMore="true" :MainHeaderMoreText="`保存`">
|
4
|
4
|
<div class="Container">
|
5
|
|
- <div class="Content">
|
|
5
|
+ <div class="Content" v-if="UserInfo !== null && UserInfo.isValidAli">
|
6
|
6
|
|
7
|
7
|
<div>
|
8
|
8
|
<div class="Line flex-h">
|
|
@@ -112,6 +112,9 @@
|
112
|
112
|
</div>
|
113
|
113
|
|
114
|
114
|
</div>
|
|
115
|
+ <div class="Content" v-if="UserInfo !== null && !UserInfo.isValidAli">
|
|
116
|
+ <a class="AliShouQuan centerLabel">支付宝授权</a>
|
|
117
|
+ </div>
|
115
|
118
|
</div>
|
116
|
119
|
</MainPageContainer>
|
117
|
120
|
</div>
|
|
@@ -119,24 +122,61 @@
|
119
|
122
|
|
120
|
123
|
<script>
|
121
|
124
|
import MainPageContainer from '../../../components/common/MainPageContainer'
|
|
125
|
+import { createNamespacedHelpers } from 'vuex'
|
|
126
|
+const { mapState: mapUserState, mapActions: mapUserActions } = createNamespacedHelpers('user')
|
122
|
127
|
export default {
|
123
|
128
|
name: 'index',
|
124
|
129
|
data () {
|
125
|
130
|
return {
|
|
131
|
+ Timer: null
|
126
|
132
|
}
|
127
|
133
|
},
|
128
|
134
|
computed: {
|
|
135
|
+ ...mapUserState({
|
|
136
|
+ CurrentShopInfo: x => x.CurrentShopInfo,
|
|
137
|
+ UserInfo: x => x.UserInfo
|
|
138
|
+ })
|
129
|
139
|
},
|
130
|
140
|
components: {
|
131
|
141
|
MainPageContainer
|
132
|
142
|
},
|
133
|
143
|
created () {
|
|
144
|
+ if (this.UserInfo !== null) {
|
|
145
|
+ this.UserInfoChange()
|
|
146
|
+ }
|
134
|
147
|
},
|
135
|
148
|
mounted () {
|
136
|
149
|
this.$nextTick(() => {
|
137
|
150
|
})
|
138
|
151
|
},
|
139
|
152
|
methods: {
|
|
153
|
+ ...mapUserActions([
|
|
154
|
+ 'GetAliAppId'
|
|
155
|
+ ]),
|
|
156
|
+ UserInfoChange () {
|
|
157
|
+ if (this.UserInfo !== null && !this.UserInfo.isValidAli) {
|
|
158
|
+ let HtmlHead = document.getElementsByTagName('head')[0]
|
|
159
|
+ let Script = document.createElement('script')
|
|
160
|
+ Script.src = 'https://gw.alipayobjects.com/as/g/h5-lib/alipayjsapi/3.1.1/alipayjsapi.min.js'
|
|
161
|
+ HtmlHead.appendChild(Script)
|
|
162
|
+ window.clearInterval(this.Timer)
|
|
163
|
+ this.Timer = window.setInterval(() => {
|
|
164
|
+ if (window.ap) {
|
|
165
|
+ window.clearInterval(this.Timer)
|
|
166
|
+ this.GetAliAppId().then((res) => {
|
|
167
|
+ document.getElementsByClassName('AliShouQuan')[0].addEventListener('click', () => {
|
|
168
|
+ window.ap.getAuthCode({
|
|
169
|
+ appId: res.data.data,
|
|
170
|
+ scopes: ['auth_base']
|
|
171
|
+ }, (subRes) => {
|
|
172
|
+ console.log(subRes)
|
|
173
|
+ })
|
|
174
|
+ })
|
|
175
|
+ })
|
|
176
|
+ }
|
|
177
|
+ }, 100)
|
|
178
|
+ }
|
|
179
|
+ },
|
140
|
180
|
Refresh (done) { // 页面下拉刷新
|
141
|
181
|
window.setTimeout(() => {
|
142
|
182
|
done()
|