Commit 42d99196469776abbf8bd43490a12ccaf46019c4
1 parent
12f4a15c
赤峰小票码 -- 微信支付完成后的跳转
Showing
3 changed files
with
203 additions
and
177 deletions
src/components/orderPay.vue
| ... | ... | @@ -208,22 +208,27 @@ export default { |
| 208 | 208 | |
| 209 | 209 | |
| 210 | 210 | if (this.clientBrowser == '微信') { // 微信支付 |
| 211 | - //第一步获取openid | |
| 212 | - var codeParams = { | |
| 213 | - code: this.webAppCode, | |
| 214 | - appId: this.$utils.myVxAppId | |
| 215 | - }; | |
| 216 | - getOpenId(codeParams).then(res => { | |
| 217 | - if (res.code == 0) { | |
| 218 | - me.vxPay(res.data, this.orderId) | |
| 219 | - } else if (res.code == 40163) { //code been used, hints[重复code问题] | |
| 220 | - alert('请重新扫码') | |
| 221 | - console.log(res.message); | |
| 222 | - } else { | |
| 223 | - alert('请重新扫码') | |
| 224 | - } | |
| 225 | - }) | |
| 226 | - | |
| 211 | + let _openId = sessionStorage.getItem('openIdData') | |
| 212 | + if(_openId){ | |
| 213 | + me.vxPay(_openId, this.orderId) | |
| 214 | + }else { | |
| 215 | + //第一步获取openid | |
| 216 | + var codeParams = { | |
| 217 | + code: this.webAppCode, | |
| 218 | + appId: this.$utils.myVxAppId | |
| 219 | + }; | |
| 220 | + getOpenId(codeParams).then(res => { | |
| 221 | + if (res.code == 0) { | |
| 222 | + me.vxPay(res.data, this.orderId) | |
| 223 | + sessionStorage.setItem('openIdData', res.data) | |
| 224 | + } else if (res.code == 40163) { //code been used, hints[重复code问题] | |
| 225 | + alert('请重新扫码重复code问题') | |
| 226 | + console.log(res.message); | |
| 227 | + } else { | |
| 228 | + alert('请重新扫码') | |
| 229 | + } | |
| 230 | + }) | |
| 231 | + } | |
| 227 | 232 | } |
| 228 | 233 | |
| 229 | 234 | }, |
| ... | ... | @@ -265,125 +270,140 @@ export default { |
| 265 | 270 | } |
| 266 | 271 | }) |
| 267 | 272 | }, |
| 268 | - onBridgeReady(params) { | |
| 269 | - let me = this | |
| 270 | - console.log('调用微信支付WeixinJSBridge') | |
| 271 | - WeixinJSBridge.invoke( | |
| 272 | - 'getBrandWCPayRequest', params, | |
| 273 | - // | |
| 274 | - // 'getBrandWCPayRequest', { // 下面参数内容都是后台返回的 | |
| 275 | - // 'appId': data.appId, // 公众号名称,由商户传入 | |
| 276 | - // 'timeStamp': data.timeStamp, // 时间戳 | |
| 277 | - // 'nonceStr': data.nonceStr, // 随机串 | |
| 278 | - // 'package': data.package, // 预支付id | |
| 279 | - // 'signType': data.signType, // 微信签名方式 | |
| 280 | - // 'paySign': data.paySign // 微信签名 | |
| 281 | - // }, | |
| 282 | - function (res) { | |
| 283 | - // 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。 | |
| 284 | - if (res.err_msg === 'get_brand_wcpay_request:ok') { | |
| 285 | - console.log('成功') | |
| 286 | - var salt = me.$utils.myCommonSalt(32); | |
| 287 | - let wxparams = { | |
| 288 | - pageNum: 1, | |
| 289 | - pageSize: 10000, | |
| 290 | - parkState: 10, | |
| 291 | - terminalSource: 7, | |
| 292 | - carNumber: me.carNumber, | |
| 293 | - app_id: me.$utils.myVarAppid, | |
| 294 | - deviceInfo: me.$utils.myDeviceInfo, | |
| 295 | - salt: salt, | |
| 296 | - sign_type: "md5", | |
| 297 | - token:'', | |
| 298 | - } | |
| 299 | - wxparams.sign = me.$utils.signObject(wxparams) | |
| 300 | - queryParkingRecordPageByCarNumbers(wxparams).then(response => { | |
| 301 | - console.log(response) | |
| 302 | - me.parkList = response.data.dataList | |
| 303 | - | |
| 304 | - if(me.parkList.length == 0){ | |
| 305 | - me.$router.push({ | |
| 306 | - path:'parkRecord', | |
| 307 | - query:{ | |
| 308 | - carNumber: me.carNumber, | |
| 309 | - carNumberColor: me.carWrapBG, | |
| 310 | - parkFlag: 0 // 0表示在停 1表示历史 | |
| 311 | - } | |
| 312 | - }) | |
| 273 | + onBridgeReady(params) { | |
| 274 | + let me = this | |
| 275 | + console.log('调用微信支付WeixinJSBridge') | |
| 276 | + WeixinJSBridge.invoke( | |
| 277 | + 'getBrandWCPayRequest', params, | |
| 278 | + // | |
| 279 | + // 'getBrandWCPayRequest', { // 下面参数内容都是后台返回的 | |
| 280 | + // 'appId': data.appId, // 公众号名称,由商户传入 | |
| 281 | + // 'timeStamp': data.timeStamp, // 时间戳 | |
| 282 | + // 'nonceStr': data.nonceStr, // 随机串 | |
| 283 | + // 'package': data.package, // 预支付id | |
| 284 | + // 'signType': data.signType, // 微信签名方式 | |
| 285 | + // 'paySign': data.paySign // 微信签名 | |
| 286 | + // }, | |
| 287 | + function (res) { | |
| 288 | + // 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。 | |
| 289 | + if (res.err_msg === 'get_brand_wcpay_request:ok') { | |
| 290 | + console.log('成功') | |
| 291 | + var salt = me.$utils.myCommonSalt(32); | |
| 292 | + let wxparams = { | |
| 293 | + pageNum: 1, | |
| 294 | + pageSize: 10000, | |
| 295 | + parkState: 10, | |
| 296 | + terminalSource: 7, | |
| 297 | + carNumber: me.carNumber, | |
| 298 | + app_id: me.$utils.myVarAppid, | |
| 299 | + deviceInfo: me.$utils.myDeviceInfo, | |
| 300 | + salt: salt, | |
| 301 | + sign_type: "md5", | |
| 302 | + token:'', | |
| 313 | 303 | } |
| 314 | - | |
| 315 | - me.parkingData = me.parkList.filter(item => { | |
| 316 | - return item.parkState == '10' | |
| 317 | - }) | |
| 318 | - console.log(me.parkingData) | |
| 319 | - me.historyList = me.parkList.filter(item => { | |
| 320 | - return item.parkState == '20' | |
| 321 | - }) | |
| 322 | - console.log(me.historyList) | |
| 323 | - if(me.parkingData.length>0){ | |
| 324 | - MessageBox.confirm('', { | |
| 325 | - message: '您当前有在停订单 是否立即支付?', | |
| 326 | - title: '温馨提示', | |
| 327 | - confirmButtonText: '去支付', | |
| 328 | - cancelButtonText: '取消' | |
| 329 | - }).then(action => { | |
| 330 | - if (action == 'confirm') { //确认的回调 | |
| 331 | - console.log('确定'); | |
| 332 | - me.$router.push({ | |
| 333 | - path:'parkRecord', | |
| 334 | - query:{ | |
| 335 | - carNumber: me.carNumber, | |
| 336 | - carNumberColor: me.carWrapBG, | |
| 337 | - parkFlag: 0 // 0表示在停 1表示历史 | |
| 304 | + wxparams.sign = me.$utils.signObject(wxparams) | |
| 305 | + queryParkingRecordPageByCarNumbers(wxparams).then(response => { | |
| 306 | + console.log(response) | |
| 307 | + me.parkList = response.data.dataList | |
| 308 | + | |
| 309 | + // alert(JSON.stringify(me.parkList)) | |
| 310 | + // alert(me.parkList.length) | |
| 311 | + if(me.parkList.length == 0){ | |
| 312 | + me.$router.push({ | |
| 313 | + path:'parkRecord', | |
| 314 | + query:{ | |
| 315 | + carNumber: me.carNumber, | |
| 316 | + carNumberColor: me.carWrapBG, | |
| 317 | + parkFlag: 0 // 0表示在停 1表示历史 | |
| 318 | + } | |
| 319 | + }) | |
| 320 | + | |
| 321 | + }else{ | |
| 322 | + me.parkingData = me.parkList.filter(item => { | |
| 323 | + return item.parkState == '10' | |
| 324 | + }) | |
| 325 | + console.log(me.parkingData) | |
| 326 | + me.historyList = me.parkList.filter(item => { | |
| 327 | + return item.parkState == '20' | |
| 328 | + }) | |
| 329 | + console.log(me.historyList) | |
| 330 | + | |
| 331 | + if(me.historyList.length>0){ | |
| 332 | + MessageBox.confirm('', { | |
| 333 | + message: '您当前有历史欠费 是否立即补缴?', | |
| 334 | + title: '温馨提示', | |
| 335 | + confirmButtonText: '去补缴', | |
| 336 | + cancelButtonText: '取消' | |
| 337 | + }).then(action => { | |
| 338 | + if (action == 'confirm') { //确认的回调 | |
| 339 | + console.log('确定'); | |
| 340 | + me.$router.push({ | |
| 341 | + path:'parkRecord', | |
| 342 | + query:{ | |
| 343 | + carNumber: me.carNumber, | |
| 344 | + carNumberColor: me.carWrapBG, | |
| 345 | + parkFlag: 1 // 0表示在停 1表示历史 | |
| 346 | + } | |
| 347 | + }) | |
| 338 | 348 | } |
| 339 | - }) | |
| 340 | - } | |
| 341 | - }).catch(err => { | |
| 342 | - if (err == 'cancel') { //取消的回调 | |
| 343 | - console.log('取消'); | |
| 344 | - } | |
| 345 | - }); | |
| 346 | - } | |
| 347 | - | |
| 348 | - if(me.parkingData.length==0&&me.historyList.length>0){ | |
| 349 | - MessageBox.confirm('', { | |
| 350 | - message: '您当前有历史欠费 是否立即补缴?', | |
| 351 | - title: '温馨提示', | |
| 352 | - confirmButtonText: '去补缴', | |
| 353 | - cancelButtonText: '取消' | |
| 354 | - }).then(action => { | |
| 355 | - if (action == 'confirm') { //确认的回调 | |
| 356 | - console.log('确定'); | |
| 357 | - me.$router.push({ | |
| 358 | - path:'parkRecord', | |
| 359 | - query:{ | |
| 360 | - carNumber: me.carNumber, | |
| 361 | - carNumberColor: me.carWrapBG, | |
| 362 | - parkFlag: 1 // 0表示在停 1表示历史 | |
| 349 | + }).catch(err => { | |
| 350 | + if (err == 'cancel') { //取消的回调 | |
| 351 | + console.log('取消'); | |
| 363 | 352 | } |
| 364 | - }) | |
| 365 | - } | |
| 366 | - }).catch(err => { | |
| 367 | - if (err == 'cancel') { //取消的回调 | |
| 368 | - console.log('取消'); | |
| 353 | + }); | |
| 354 | + }else{ | |
| 355 | + | |
| 356 | + if(me.paySrcType==101){ //缴费了本次 | |
| 357 | + me.$router.push({ | |
| 358 | + path:'parkRecord', | |
| 359 | + query:{ | |
| 360 | + carNumber: me.carNumber, | |
| 361 | + carNumberColor: me.carWrapBG, | |
| 362 | + parkFlag: 0 // 0表示在停 1表示历史 | |
| 363 | + } | |
| 364 | + }) | |
| 365 | + }else{ | |
| 366 | + MessageBox.confirm('', { | |
| 367 | + message: '您当前有在停订单 是否立即支付?', | |
| 368 | + title: '温馨提示', | |
| 369 | + confirmButtonText: '去支付', | |
| 370 | + cancelButtonText: '取消' | |
| 371 | + }).then(action => { | |
| 372 | + if (action == 'confirm') { //确认的回调 | |
| 373 | + console.log('确定'); | |
| 374 | + me.$router.push({ | |
| 375 | + path:'parkRecord', | |
| 376 | + query:{ | |
| 377 | + carNumber: me.carNumber, | |
| 378 | + carNumberColor: me.carWrapBG, | |
| 379 | + parkFlag: 0 // 0表示在停 1表示历史 | |
| 380 | + } | |
| 381 | + }) | |
| 382 | + } | |
| 383 | + }).catch(err => { | |
| 384 | + if (err == 'cancel') { //取消的回调 | |
| 385 | + console.log('取消'); | |
| 386 | + } | |
| 387 | + }); | |
| 388 | + } | |
| 389 | + | |
| 369 | 390 | } |
| 370 | - }); | |
| 371 | - } | |
| 391 | + } | |
| 372 | 392 | |
| 373 | - }) | |
| 374 | 393 | |
| 375 | 394 | |
| 395 | + }) | |
| 376 | 396 | |
| 377 | 397 | |
| 378 | 398 | |
| 379 | - } else { | |
| 380 | - console.log('失败') | |
| 381 | - alert('支付失败') | |
| 382 | - me.$router.go(-2); | |
| 399 | + } else { | |
| 400 | + console.log('失败') | |
| 401 | + alert('支付失败') | |
| 402 | + me.$router.go(-2); | |
| 403 | + } | |
| 383 | 404 | } |
| 384 | - } | |
| 385 | - ) | |
| 386 | - }, | |
| 405 | + ) | |
| 406 | + }, | |
| 387 | 407 | }, |
| 388 | 408 | filters: { |
| 389 | 409 | } | ... | ... |
src/components/parkRecord.vue
| ... | ... | @@ -113,24 +113,24 @@ |
| 113 | 113 | 暂无记录 |
| 114 | 114 | </div> |
| 115 | 115 | |
| 116 | - <modal-alert ref="alert"> | |
| 117 | - <div class="trave-tip-content txt-l" slot="content"> | |
| 118 | - <div class="confirm-text"> | |
| 119 | - <p>请至少选择一笔记录</p> | |
| 120 | - </div> | |
| 121 | - </div> | |
| 122 | - <span slot="button">知道了</span> | |
| 123 | - </modal-alert> | |
| 124 | - | |
| 125 | - | |
| 126 | - <modal-alert ref="zeroAlert"> | |
| 127 | - <div class="trave-tip-content txt-l" slot="content"> | |
| 128 | - <div class="confirm-text"> | |
| 129 | - <p>停车15分钟内无需缴费,申请成功。</p> | |
| 130 | - </div> | |
| 131 | - </div> | |
| 132 | - <span slot="button">知道了</span> | |
| 133 | - </modal-alert> | |
| 116 | + <!--<modal-alert ref="alert">--> | |
| 117 | + <!--<div class="trave-tip-content txt-l" slot="content">--> | |
| 118 | + <!--<div class="confirm-text">--> | |
| 119 | + <!--<p>请至少选择一笔记录</p>--> | |
| 120 | + <!--</div>--> | |
| 121 | + <!--</div>--> | |
| 122 | + <!--<span slot="button">知道了</span>--> | |
| 123 | + <!--</modal-alert>--> | |
| 124 | + | |
| 125 | + | |
| 126 | + <!--<modal-alert ref="zeroAlert">--> | |
| 127 | + <!--<div class="trave-tip-content txt-l" slot="content">--> | |
| 128 | + <!--<div class="confirm-text">--> | |
| 129 | + <!--<p>停车15分钟内无需缴费,申请成功。</p>--> | |
| 130 | + <!--</div>--> | |
| 131 | + <!--</div>--> | |
| 132 | + <!--<span slot="button">知道了</span>--> | |
| 133 | + <!--</modal-alert>--> | |
| 134 | 134 | |
| 135 | 135 | |
| 136 | 136 | </div> |
| ... | ... | @@ -207,13 +207,18 @@ export default { |
| 207 | 207 | this.historyList = this.parkList.filter(item => { |
| 208 | 208 | return item.parkState == '20' |
| 209 | 209 | }) |
| 210 | - if(this.parkingData.length==0&&this.historyList.length>0){ | |
| 211 | - this.currentTabActive = 1 | |
| 212 | - } | |
| 213 | - this.historyList.forEach(i => { | |
| 210 | + this.historyList.forEach( i => { | |
| 214 | 211 | this.allMoney += Number(i.unPayFee) |
| 215 | 212 | }) |
| 216 | 213 | |
| 214 | + if(this.parkingData.length==0 && this.historyList.length>0){ | |
| 215 | + this.currentTabActive = 1 | |
| 216 | + } | |
| 217 | + | |
| 218 | + if(this.$route.query.parkFlag == 1){ | |
| 219 | + this.currentTabActive = 1 | |
| 220 | + this.checkedAll() | |
| 221 | + } | |
| 217 | 222 | console.log(this.historyList) |
| 218 | 223 | }) |
| 219 | 224 | }, |
| ... | ... | @@ -317,7 +322,7 @@ export default { |
| 317 | 322 | |
| 318 | 323 | } else { |
| 319 | 324 | //$('.dialog-out').show() |
| 320 | - this.$refs.zeroAlert.open() | |
| 325 | + this.$msgbox('提示', '停车15分钟内无需缴费,申请成功。') | |
| 321 | 326 | } |
| 322 | 327 | |
| 323 | 328 | }) |
| ... | ... | @@ -325,7 +330,8 @@ export default { |
| 325 | 330 | }, |
| 326 | 331 | toPayHisroryPage() { // 缴纳历史费用 |
| 327 | 332 | if (this.historyCheckedLen == 0) { |
| 328 | - this.$refs.alert.open() | |
| 333 | + this.$msgbox('提示', '请至少选择一条记录') | |
| 334 | + | |
| 329 | 335 | return |
| 330 | 336 | } |
| 331 | 337 | var salt = this.$utils.myCommonSalt(32); | ... | ... |
src/components/plateNumber.vue
| ... | ... | @@ -165,41 +165,41 @@ |
| 165 | 165 | <span>新</span> |
| 166 | 166 | </div> |
| 167 | 167 | |
| 168 | - <div class="word"> | |
| 169 | - <span>学</span> | |
| 170 | - </div> | |
| 171 | - <!--<div class="word bordernone">--> | |
| 172 | - <!--<!– <img src="../assets/images/icon-switch.png" alt=""> –>--> | |
| 168 | + <!--<div class="word">--> | |
| 169 | + <!--<span>学</span>--> | |
| 173 | 170 | <!--</div>--> |
| 171 | + <div class="word bordernone"> | |
| 172 | + <!-- <img src="../assets/images/icon-switch.png" alt=""> --> | |
| 173 | + </div> | |
| 174 | 174 | </div> |
| 175 | 175 | |
| 176 | 176 | |
| 177 | - <div class="first-word" | |
| 178 | - @click="selectFirstWord($event)"> | |
| 179 | - <div class="word"> | |
| 180 | - <span>港</span> | |
| 181 | - </div> | |
| 182 | - <div class="word"> | |
| 183 | - <span>澳</span> | |
| 184 | - </div> | |
| 185 | - <div class="word"> | |
| 186 | - <span>领</span> | |
| 187 | - </div> | |
| 177 | + <!--<div class="first-word"--> | |
| 178 | + <!--@click="selectFirstWord($event)">--> | |
| 179 | + <!--<div class="word">--> | |
| 180 | + <!--<span>港</span>--> | |
| 181 | + <!--</div>--> | |
| 182 | + <!--<div class="word">--> | |
| 183 | + <!--<span>澳</span>--> | |
| 184 | + <!--</div>--> | |
| 185 | + <!--<div class="word">--> | |
| 186 | + <!--<span>领</span>--> | |
| 187 | + <!--</div>--> | |
| 188 | 188 | |
| 189 | - <div class="word"> | |
| 190 | - <span>警</span> | |
| 191 | - </div> | |
| 189 | + <!--<div class="word">--> | |
| 190 | + <!--<span>警</span>--> | |
| 191 | + <!--</div>--> | |
| 192 | 192 | |
| 193 | 193 | |
| 194 | - <div class="word bordernone"> | |
| 195 | - </div> | |
| 196 | - <div class="word bordernone"> | |
| 197 | - </div> | |
| 198 | - <div class="word bordernone"> | |
| 199 | - </div> | |
| 200 | - <div class="word bordernone"> | |
| 201 | - </div> | |
| 202 | - </div> | |
| 194 | + <!--<div class="word bordernone">--> | |
| 195 | + <!--</div>--> | |
| 196 | + <!--<div class="word bordernone">--> | |
| 197 | + <!--</div>--> | |
| 198 | + <!--<div class="word bordernone">--> | |
| 199 | + <!--</div>--> | |
| 200 | + <!--<div class="word bordernone">--> | |
| 201 | + <!--</div>--> | |
| 202 | + <!--</div>--> | |
| 203 | 203 | |
| 204 | 204 | </div> |
| 205 | 205 | <div class="keyboard-wrap" v-if="keyBoardStatus === true"> |
| ... | ... | @@ -315,7 +315,7 @@ export default { |
| 315 | 315 | _4: ['H', 'J', 'K', 'L', 'M', 'N', 'O'], |
| 316 | 316 | _5: ['P', 'Q', 'R', 'S', 'T', 'U', 'V'], |
| 317 | 317 | _6: ['W', 'X', 'Y', 'Z'], |
| 318 | - // _7: ['港', '澳', '学', '领', '警'] | |
| 318 | + _7: ['港', '澳', '学', '领', '警'] | |
| 319 | 319 | }, |
| 320 | 320 | activeKeyWordIndex: 1, // 当前车牌号 |
| 321 | 321 | keyBoardStatus: false, | ... | ... |