Commit 0f61c1adf4762c1b6c5b5b617a9aff645236caa9
1 parent
16b4c5c8
Exists in
master
feat: 支付接通
Showing
16 changed files
with
208 additions
and
290 deletions
Show diff stats
src/component/GroupCodePopup.vue
| ... | ... | @@ -1,151 +0,0 @@ |
| 1 | -<template> | |
| 2 | - <div class="group_code_popup_mask"> | |
| 3 | - <img class="share_des" v-if="showShareDes" src="@/assets/home/share.png" alt=""> | |
| 4 | - <div class="group_code_popup"> | |
| 5 | - <van-icon class="close" name="cross" @click="$emit('closeGroupCode')" /> | |
| 6 | - <img class="bg" src="@/assets/home/bg3.png" alt=""> | |
| 7 | - <img class="success" src="@/assets/home/success.png" alt=""> | |
| 8 | - <p class="success_text">支付成功</p> | |
| 9 | - <!-- <p class="des"> | |
| 10 | - <template v-if="count"> | |
| 11 | - 还差<span>{{count}}</span>人,分享链接邀请好友完成拼团吧 | |
| 12 | - </template> | |
| 13 | - <template v-else> | |
| 14 | - 分享链接邀请好友来拼团吧 | |
| 15 | - </template> | |
| 16 | - </p> --> | |
| 17 | - <img class="code_img" v-if="chatGroupUrl" :src="chatGroupUrl" alt=""> | |
| 18 | - <p class="code_des" v-if="chatGroupUrl">加入拼团群实时关注拼团情况</p> | |
| 19 | - <div class="group_btn_box"> | |
| 20 | - <div @click="showShareDes=true"> | |
| 21 | - <img class="wechat2" src="@/assets/home/wechat2.png" alt=""> | |
| 22 | - <p>分享给微信好友</p> | |
| 23 | - </div> | |
| 24 | - <div @click="showShareDes=true"> | |
| 25 | - <img class="wechat3" src="@/assets/home/wechat3.png" alt=""> | |
| 26 | - <p>分享至朋友圈</p> | |
| 27 | - </div> | |
| 28 | - </div> | |
| 29 | - </div> | |
| 30 | - </div> | |
| 31 | -</template> | |
| 32 | -<script> | |
| 33 | -export default { | |
| 34 | - props: ['chatGroupUrl'], | |
| 35 | - data () { | |
| 36 | - return { | |
| 37 | - count: '1', | |
| 38 | - showShareDes: false,//显示分享文案 | |
| 39 | - } | |
| 40 | - }, | |
| 41 | - mounted () { | |
| 42 | - }, | |
| 43 | - methods: { | |
| 44 | - | |
| 45 | - } | |
| 46 | -} | |
| 47 | -</script> | |
| 48 | -<style lang="scss" scoped> | |
| 49 | -.group_code_popup_mask { | |
| 50 | - width: 100%; | |
| 51 | - height: 100vh; | |
| 52 | - position: fixed; | |
| 53 | - top: 0; | |
| 54 | - left: 0; | |
| 55 | - background: rgba(0, 0, 0, 0.7); | |
| 56 | - z-index: 99; | |
| 57 | - .share_des { | |
| 58 | - position: absolute; | |
| 59 | - top: 50px; | |
| 60 | - right: 100px; | |
| 61 | - width: 516px; | |
| 62 | - } | |
| 63 | -} | |
| 64 | -.group_code_popup { | |
| 65 | - position: absolute; | |
| 66 | - top: 50%; | |
| 67 | - left: 50%; | |
| 68 | - width: 624px; | |
| 69 | - background: #fff; | |
| 70 | - box-sizing: border-box; | |
| 71 | - border-radius: 20px; | |
| 72 | - overflow: hidden; | |
| 73 | - transform: translate(-50%, -50%); | |
| 74 | - .close { | |
| 75 | - position: absolute; | |
| 76 | - top: 0; | |
| 77 | - right: 0; | |
| 78 | - font-size: 40px; | |
| 79 | - padding: 30px; | |
| 80 | - } | |
| 81 | - .bg { | |
| 82 | - width: 100%; | |
| 83 | - } | |
| 84 | - .success { | |
| 85 | - position: absolute; | |
| 86 | - top: 84px; | |
| 87 | - left: 50%; | |
| 88 | - width: 112px; | |
| 89 | - transform: translateX(-50%); | |
| 90 | - } | |
| 91 | - .success_text { | |
| 92 | - position: absolute; | |
| 93 | - top: 180px; | |
| 94 | - width: 100%; | |
| 95 | - text-align: center; | |
| 96 | - font-size: 32px; | |
| 97 | - font-weight: bold; | |
| 98 | - } | |
| 99 | - .des { | |
| 100 | - position: absolute; | |
| 101 | - top: 234px; | |
| 102 | - width: 100%; | |
| 103 | - text-align: center; | |
| 104 | - color: #999; | |
| 105 | - font-size: 30px; | |
| 106 | - font-weight: bold; | |
| 107 | - } | |
| 108 | - .code_img { | |
| 109 | - display: block; | |
| 110 | - width: 372px; | |
| 111 | - margin: 10px auto; | |
| 112 | - margin-top: -40px; | |
| 113 | - } | |
| 114 | - .code_des { | |
| 115 | - width: 100%; | |
| 116 | - font-size: 28px; | |
| 117 | - font-weight: bold; | |
| 118 | - text-align: center; | |
| 119 | - } | |
| 120 | - .group_btn_box { | |
| 121 | - margin-top: 26px; | |
| 122 | - border: 1px solid #eff1f4; | |
| 123 | - div { | |
| 124 | - width: 50%; | |
| 125 | - height: 186px; | |
| 126 | - display: inline-flex; | |
| 127 | - align-content: center; | |
| 128 | - justify-content: center; | |
| 129 | - flex-wrap: wrap; | |
| 130 | - img { | |
| 131 | - display: block; | |
| 132 | - width: 56px; | |
| 133 | - } | |
| 134 | - .wechat2 { | |
| 135 | - width: 64px; | |
| 136 | - height: 54px; | |
| 137 | - } | |
| 138 | - .wechat3 { | |
| 139 | - width: 56px; | |
| 140 | - height: 58px; | |
| 141 | - } | |
| 142 | - p { | |
| 143 | - width: 100%; | |
| 144 | - font-size: 28px; | |
| 145 | - color: #999; | |
| 146 | - text-align: center; | |
| 147 | - } | |
| 148 | - } | |
| 149 | - } | |
| 150 | -} | |
| 151 | -</style> | |
| 152 | 0 | \ No newline at end of file |
src/main.js
| 1 | 1 | import Vue from 'vue' |
| 2 | -import { Popup, Toast, Picker, Tag, Tab, Tabs, Area, Search, Swipe, SwipeItem, Cell, List, Collapse, CollapseItem, Button, Field, Icon, Sticky, DropdownMenu, DropdownItem, Rate, Calendar, Checkbox, Empty, Lazyload, Radio, RadioGroup, CellGroup, Dialog, CheckboxGroup } from 'vant'; | |
| 2 | +import { Popup, Toast, Picker, Tag, Tab, Tabs, Area, Search, Swipe, SwipeItem, Cell, List, Collapse, CollapseItem, Button, Field, Icon, Sticky, DropdownMenu, DropdownItem, Rate, Calendar, Checkbox, Empty, Lazyload, Radio, RadioGroup, CellGroup, Dialog, CheckboxGroup, NavBar } from 'vant'; | |
| 3 | 3 | import App from './App.vue' |
| 4 | 4 | import router from './router' |
| 5 | 5 | import store from './store' |
| ... | ... | @@ -43,6 +43,7 @@ Vue |
| 43 | 43 | .use(Lazyload) |
| 44 | 44 | .use(Toast) |
| 45 | 45 | .use(Dialog) |
| 46 | + .use(NavBar) | |
| 46 | 47 | .use(RadioGroup) |
| 47 | 48 | .use(Radio); |
| 48 | 49 | Vue.config.productionTip = false; | ... | ... |
src/views/Home/Home.vue
| ... | ... | @@ -88,35 +88,8 @@ export default { |
| 88 | 88 | this.centerNo = sessionStorage.getItem('centerNo'); |
| 89 | 89 | this.getUserInfo() |
| 90 | 90 | |
| 91 | - // this.checkAuth() | |
| 92 | 91 | }, |
| 93 | 92 | methods: { |
| 94 | - // checkAuth () { | |
| 95 | - // let centerNo = this.common.getUrlParam('center_no') || sessionStorage.getItem('centerNo'); | |
| 96 | - // if (centerNo) { | |
| 97 | - // this.centerNo = centerNo | |
| 98 | - // sessionStorage.setItem('centerNo', centerNo); | |
| 99 | - // this.getUserInfo() | |
| 100 | - // } else { | |
| 101 | - // const sUserAgent = window.navigator.userAgent.toLowerCase() | |
| 102 | - // const dtdreamweb = sUserAgent.indexOf("dtdreamweb") > -1 | |
| 103 | - // const miniprogram = sUserAgent.indexOf("miniprogram") > -1 && sUserAgent.indexOf("alipay") > -1 | |
| 104 | - // if (dtdreamweb) { | |
| 105 | - // alert('浙里办') | |
| 106 | - // window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=hswsy`; | |
| 107 | - // } | |
| 108 | - // // else if (miniprogram) { | |
| 109 | - // // alert('支付宝') | |
| 110 | - // // window.location.href = `https://puser.zjzwfw.gov.cn/sso/alipay.do?action=ssoLogin&servicecode=passp&goto=`; | |
| 111 | - // // } | |
| 112 | - // else { | |
| 113 | - // console.log('非浙里办渠道访问,显示测试用户数据') | |
| 114 | - // this.centerNo = '20210930160466993660' | |
| 115 | - // sessionStorage.setItem('centerNo', '20210930160466993660'); | |
| 116 | - // this.getUserInfo() | |
| 117 | - // } | |
| 118 | - // } | |
| 119 | - // }, | |
| 120 | 93 | // 研学码 |
| 121 | 94 | handleYanxue () { |
| 122 | 95 | this.$router.push({ name: 'YanxueCode' }) |
| ... | ... | @@ -193,7 +166,7 @@ export default { |
| 193 | 166 | if (res.data.code == 200) { |
| 194 | 167 | let userInfo = res.data.data.userInfo |
| 195 | 168 | this.userInfo = userInfo |
| 196 | - sessionStorage.setItem('userInfo', JSON.stringify(userInfo)) | |
| 169 | + localStorage.setItem('userInfo', JSON.stringify(userInfo)) | |
| 197 | 170 | } |
| 198 | 171 | this.showChildList = true |
| 199 | 172 | ... | ... |
src/views/Home/MyClassList.vue
| ... | ... | @@ -59,7 +59,7 @@ export default { |
| 59 | 59 | } |
| 60 | 60 | }, |
| 61 | 61 | mounted () { |
| 62 | - var userInfo = sessionStorage.getItem('userInfo'); | |
| 62 | + var userInfo = localStorage.getItem('userInfo'); | |
| 63 | 63 | if (userInfo) { |
| 64 | 64 | this.userInfo = JSON.parse(userInfo); |
| 65 | 65 | } |
| ... | ... | @@ -79,7 +79,7 @@ export default { |
| 79 | 79 | message: '请求中...', |
| 80 | 80 | }); |
| 81 | 81 | this.mgop({ |
| 82 | - api: 'mgop.sz.hswsy.GetStudyBaseDetail', // 必须 | |
| 82 | + api: 'mgop.sz.hswsy.AddSign', // 必须 | |
| 83 | 83 | host: 'https://mapi.zjzwfw.gov.cn/', |
| 84 | 84 | dataType: 'JSON', |
| 85 | 85 | type: 'GET', | ... | ... |
src/views/Home/component/AddChildPopupGroup.vue
| ... | ... | @@ -133,7 +133,7 @@ export default { |
| 133 | 133 | }, |
| 134 | 134 | |
| 135 | 135 | mounted () { |
| 136 | - let userInfo = sessionStorage.getItem('userInfo') | |
| 136 | + let userInfo = localStorage.getItem('userInfo') | |
| 137 | 137 | this.userInfo = JSON.parse(userInfo); |
| 138 | 138 | this.initYearArr() |
| 139 | 139 | this.GetSysAreaList() | ... | ... |
src/views/Service/CheckOrder.vue
| ... | ... | @@ -49,8 +49,6 @@ |
| 49 | 49 | </div> |
| 50 | 50 | </template> |
| 51 | 51 | <script> |
| 52 | -import Axios from 'axios'; | |
| 53 | -import wx from 'weixin-js-sdk'; | |
| 54 | 52 | export default { |
| 55 | 53 | name: 'ServiceCheckOrder', |
| 56 | 54 | data () { |
| ... | ... | @@ -70,11 +68,10 @@ export default { |
| 70 | 68 | } |
| 71 | 69 | }, |
| 72 | 70 | mounted () { |
| 73 | - let userInfo = sessionStorage.getItem('userInfo'); | |
| 71 | + let userInfo = localStorage.getItem('userInfo'); | |
| 74 | 72 | if (userInfo) { |
| 75 | 73 | this.userInfo = JSON.parse(userInfo); |
| 76 | 74 | } |
| 77 | - | |
| 78 | 75 | // 选择的出行人 |
| 79 | 76 | let selectedContactArr = sessionStorage.getItem('selectedContactArr'); |
| 80 | 77 | if (selectedContactArr) { |
| ... | ... | @@ -106,6 +103,11 @@ export default { |
| 106 | 103 | if (showCourseData) { |
| 107 | 104 | this.showCourseData = JSON.parse(showCourseData) |
| 108 | 105 | } |
| 106 | + //判断是否为支付会跳,查询订单状态 | |
| 107 | + let outTradeNo = localStorage.getItem('outTradeNo') | |
| 108 | + if (outTradeNo) { | |
| 109 | + this.getOrderStatus(outTradeNo) | |
| 110 | + } | |
| 109 | 111 | }, |
| 110 | 112 | computed: { |
| 111 | 113 | paymoney () { |
| ... | ... | @@ -164,7 +166,6 @@ export default { |
| 164 | 166 | "price": this.selectCombo.actualPrice * 1000 * this.count / 1000,//商品减掉优惠券之前的价格 |
| 165 | 167 | "travelNum": this.selectedContact,//出行人编号 |
| 166 | 168 | "couponId": this.useCard?.id || 0, |
| 167 | - "appId": 'wx1305e88d2bc74073' | |
| 168 | 169 | }, |
| 169 | 170 | onSuccess: res => { |
| 170 | 171 | if (res.data.data) { |
| ... | ... | @@ -194,39 +195,39 @@ export default { |
| 194 | 195 | const Jupiter = sUserAgent.indexOf("Jupiter") > -1 |
| 195 | 196 | if (Jupiter) { |
| 196 | 197 | alert('App') |
| 197 | - console.log('App') | |
| 198 | - this.mgop({ | |
| 199 | - api: 'mgop.sz.hswsy.appPay', // 必须 | |
| 200 | - host: 'https://mapi.zjzwfw.gov.cn/', | |
| 201 | - dataType: 'JSON', | |
| 202 | - type: 'POST', | |
| 203 | - appKey: 'fuxgnukl+2001895516+edccpx', // 必须 | |
| 204 | - headers: { | |
| 205 | - // 'isTestUrl': '1' | |
| 206 | - }, | |
| 207 | - data: { | |
| 208 | - "appid": "2021002189681626", | |
| 209 | - "attach": "string1", | |
| 210 | - "body": "string23", | |
| 211 | - "notify_url": "http://47.110.50.251:9091/api/alipay/pay", | |
| 212 | - "outTradeNo": new Date().getTime(), | |
| 213 | - "payType": 0, | |
| 214 | - "payWay": 0, | |
| 215 | - "productId": "11", | |
| 216 | - "quit_url": "https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=hswsy&goto=", | |
| 217 | - "subject": "string", | |
| 218 | - "totalFee": "0.01", | |
| 219 | - }, | |
| 220 | - onSuccess: res => { | |
| 221 | - console.log(res) | |
| 222 | - this.BridgePay(res.data.message) | |
| 223 | - }, | |
| 224 | - onFail: err => { | |
| 225 | - console.log('err', err) | |
| 226 | - } | |
| 227 | - }); | |
| 198 | + // console.log('App') | |
| 199 | + // this.mgop({ | |
| 200 | + // api: 'mgop.sz.hswsy.appPay', // 必须 | |
| 201 | + // host: 'https://mapi.zjzwfw.gov.cn/', | |
| 202 | + // dataType: 'JSON', | |
| 203 | + // type: 'POST', | |
| 204 | + // appKey: 'fuxgnukl+2001895516+edccpx', // 必须 | |
| 205 | + // headers: { | |
| 206 | + // // 'isTestUrl': '1' | |
| 207 | + // }, | |
| 208 | + // data: { | |
| 209 | + // "appid": "2021002189681626", | |
| 210 | + // "attach": "string1", | |
| 211 | + // "body": "string23", | |
| 212 | + // "notify_url": "http://47.110.50.251:9091/api/alipay/pay", | |
| 213 | + // "outTradeNo": new Date().getTime(), | |
| 214 | + // "payType": 0, | |
| 215 | + // "payWay": 0, | |
| 216 | + // "productId": "11", | |
| 217 | + // "quit_url": location.href, | |
| 218 | + // "subject": "string", | |
| 219 | + // "totalFee": "0.01", | |
| 220 | + // }, | |
| 221 | + // onSuccess: res => { | |
| 222 | + // console.log(res) | |
| 223 | + // this.BridgePay(res.data.message) | |
| 224 | + // }, | |
| 225 | + // onFail: err => { | |
| 226 | + // console.log('err', err) | |
| 227 | + // } | |
| 228 | + // }); | |
| 228 | 229 | } else { |
| 229 | - alert('H5') | |
| 230 | + // alert('H5') | |
| 230 | 231 | console.log('h5') |
| 231 | 232 | this.mgop({ |
| 232 | 233 | api: 'mgop.sz.hswsy.mobilePay', // 必须 |
| ... | ... | @@ -239,19 +240,20 @@ export default { |
| 239 | 240 | }, |
| 240 | 241 | data: { |
| 241 | 242 | "appid": "2021002189681626", |
| 242 | - "attach": "string1", | |
| 243 | - "body": "string23", | |
| 244 | - "notify_url": "http://47.110.50.251:9091/api/alipay/pay", | |
| 245 | - "outTradeNo": new Date().getTime(), | |
| 243 | + "attach": this.showCourseData.course_name + '_' + this.date, | |
| 244 | + "body": this.showCourseData.course_name + '_' + this.date, | |
| 245 | + "notify_url": "https://yanxue.myjxt.com/api/Manage/AlipayBackInfo", | |
| 246 | + "outTradeNo": data.trade_no, | |
| 246 | 247 | "payType": 0, |
| 247 | 248 | "payWay": 0, |
| 248 | - "productId": "11", | |
| 249 | - "quit_url": "https://www.baidu.com", | |
| 250 | - "subject": "string", | |
| 249 | + "productId": this.showCourseData.id, //商品id | |
| 250 | + "quit_url": location.href, | |
| 251 | + "subject": "研学产品", | |
| 251 | 252 | "totalFee": "0.01", |
| 252 | 253 | }, |
| 253 | 254 | onSuccess: res => { |
| 254 | 255 | console.log(res) |
| 256 | + localStorage.setItem('outTradeNo', data.trade_no) | |
| 255 | 257 | // res.data.data默认是我们拿到的form代码 |
| 256 | 258 | const div = document.createElement('div') |
| 257 | 259 | div.innerHTML = res.data.message |
| ... | ... | @@ -273,6 +275,37 @@ export default { |
| 273 | 275 | "inSandBox": false |
| 274 | 276 | } |
| 275 | 277 | }; |
| 278 | + }, | |
| 279 | + //判断是否为支付会跳,查询订单状态 | |
| 280 | + getOrderStatus (outTradeNo) { | |
| 281 | + console.log('getOrderStatus') | |
| 282 | + this.$toast.loading() | |
| 283 | + this.mgop({ | |
| 284 | + api: 'mgop.sz.hswsy.IsPayByTradNo', // 必须 | |
| 285 | + host: 'https://mapi.zjzwfw.gov.cn/', | |
| 286 | + dataType: 'JSON', | |
| 287 | + type: 'POST', | |
| 288 | + appKey: 'fuxgnukl+2001895516+edccpx', // 必须 | |
| 289 | + headers: { | |
| 290 | + // 'isTestUrl': '1' | |
| 291 | + }, | |
| 292 | + data: { | |
| 293 | + "tradNo": outTradeNo, | |
| 294 | + }, | |
| 295 | + onSuccess: res => { | |
| 296 | + console.log(res) | |
| 297 | + this.$toast.clear() | |
| 298 | + localStorage.removeItem('outTradeNo') | |
| 299 | + // 如果已支付就跳转 | |
| 300 | + if (res.data.data) { | |
| 301 | + sessionStorage.removeItem('selectedContactArr') | |
| 302 | + this.$router.push({ name: 'ServiceOrderXST', query: { active: 1, showChatGroupUrl: 1 } }) | |
| 303 | + } | |
| 304 | + }, | |
| 305 | + onFail: err => { | |
| 306 | + console.log('err', err) | |
| 307 | + } | |
| 308 | + }); | |
| 276 | 309 | } |
| 277 | 310 | } |
| 278 | 311 | } | ... | ... |
src/views/Service/EditContact.vue
| ... | ... | @@ -74,7 +74,7 @@ export default { |
| 74 | 74 | this.$toast('请输入正确的身份证号') |
| 75 | 75 | return; |
| 76 | 76 | } |
| 77 | - let userInfo = sessionStorage.getItem('userInfo') | |
| 77 | + let userInfo = localStorage.getItem('userInfo') | |
| 78 | 78 | userInfo = userInfo ? JSON.parse(userInfo) : userInfo; |
| 79 | 79 | let postData = { |
| 80 | 80 | userNum: this.travelerNum, | ... | ... |
src/views/Service/ServiceBaseKQ.vue
src/views/Service/ServiceKQ.vue
| ... | ... | @@ -23,27 +23,28 @@ export default { |
| 23 | 23 | }, |
| 24 | 24 | methods: { |
| 25 | 25 | checkAuth () { |
| 26 | - let centerNo = this.common.getUrlParam('center_no') || sessionStorage.getItem('centerNo'); | |
| 26 | + let centerNo = sessionStorage.getItem('centerNo'); | |
| 27 | + let ticket = this.common.getUrlParam('ticket'); | |
| 27 | 28 | if (centerNo) { |
| 28 | 29 | this.centerNo = centerNo |
| 29 | 30 | sessionStorage.setItem('centerNo', centerNo); |
| 30 | 31 | this.getUserInfo() |
| 32 | + } else if (ticket) { | |
| 33 | + this.getCenterByTicket(ticket) | |
| 31 | 34 | } else { |
| 32 | 35 | const sUserAgent = window.navigator.userAgent.toLowerCase() |
| 33 | 36 | const dtdreamweb = sUserAgent.indexOf("dtdreamweb") > -1 |
| 34 | 37 | const miniprogram = sUserAgent.indexOf("miniprogram") > -1 && sUserAgent.indexOf("alipay") > -1 |
| 35 | 38 | if (dtdreamweb) { |
| 36 | - alert('浙里办') | |
| 39 | + // alert('浙里办') | |
| 37 | 40 | window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=hswsy`; |
| 38 | - // this.centerNo = '20210930160466993660' | |
| 39 | - // sessionStorage.setItem('centerNo', '20210930160466993660'); | |
| 40 | - this.getUserInfo() | |
| 41 | 41 | } |
| 42 | 42 | else if (miniprogram) { |
| 43 | - alert('支付宝') | |
| 43 | + // alert('支付宝') | |
| 44 | 44 | window.location.href = `https://puser.zjzwfw.gov.cn/sso/alipay.do?action=ssoLogin&servicecode=hswsy`; |
| 45 | 45 | } |
| 46 | 46 | else { |
| 47 | + alert('非浙里办渠道访问,显示测试用户数据') | |
| 47 | 48 | console.log('非浙里办渠道访问,显示测试用户数据') |
| 48 | 49 | this.centerNo = '20210930160466993660' |
| 49 | 50 | sessionStorage.setItem('centerNo', '20210930160466993660'); |
| ... | ... | @@ -51,6 +52,57 @@ export default { |
| 51 | 52 | } |
| 52 | 53 | } |
| 53 | 54 | }, |
| 55 | + // 通过ticket获取centerNo | |
| 56 | + getCenterByTicket (ticket) { | |
| 57 | + this.mgop({ | |
| 58 | + api: 'mgop.sz.hswsy.getCenterNo', // 必须 | |
| 59 | + host: 'https://mapi.zjzwfw.gov.cn/', | |
| 60 | + dataType: 'JSON', | |
| 61 | + type: 'POST', | |
| 62 | + appKey: 'fuxgnukl+2001895516+edccpx', // 必须 | |
| 63 | + headers: { | |
| 64 | + // 'isTestUrl': '1' | |
| 65 | + }, | |
| 66 | + data: { | |
| 67 | + "ticket": ticket, | |
| 68 | + }, | |
| 69 | + onSuccess: res => { | |
| 70 | + console.log('通过ticket获取centerNo成功', res) | |
| 71 | + if (res.data.code == 200) { | |
| 72 | + this.centerNo = res.data.message | |
| 73 | + sessionStorage.setItem('centerNo', res.data.message); | |
| 74 | + } else { | |
| 75 | + this.reLoad() | |
| 76 | + } | |
| 77 | + }, | |
| 78 | + onFail: err => { | |
| 79 | + console.log('通过ticket获取centerNo成功失败', err) | |
| 80 | + this.reLoad() | |
| 81 | + } | |
| 82 | + }) | |
| 83 | + }, | |
| 84 | + reLoad () { | |
| 85 | + console.log('reload') | |
| 86 | + ZWJSBridge.confirm({ | |
| 87 | + "title": "警告", | |
| 88 | + "buttonLabels": [ | |
| 89 | + "重新载入" | |
| 90 | + ], | |
| 91 | + "message": "用户身份验证失败,请重新加载" | |
| 92 | + }).then(res => { | |
| 93 | + const sUserAgent = window.navigator.userAgent.toLowerCase() | |
| 94 | + const dtdreamweb = sUserAgent.indexOf("dtdreamweb") > -1 | |
| 95 | + const miniprogram = sUserAgent.indexOf("miniprogram") > -1 && sUserAgent.indexOf("alipay") > -1 | |
| 96 | + if (dtdreamweb) { | |
| 97 | + // alert('浙里办') | |
| 98 | + window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=hswsy`; | |
| 99 | + } | |
| 100 | + else if (miniprogram) { | |
| 101 | + // alert('支付宝') | |
| 102 | + window.location.href = `https://puser.zjzwfw.gov.cn/sso/alipay.do?action=ssoLogin&servicecode=hswsy`; | |
| 103 | + } | |
| 104 | + }) | |
| 105 | + }, | |
| 54 | 106 | // 获取用户信息 |
| 55 | 107 | getUserInfo: function () { |
| 56 | 108 | this.mgop({ |
| ... | ... | @@ -68,7 +120,7 @@ export default { |
| 68 | 120 | onSuccess: res => { |
| 69 | 121 | console.log('getUserInfo', res) |
| 70 | 122 | if (res.data.code == 200) { |
| 71 | - sessionStorage.setItem('userInfo', JSON.stringify(res.data.data.userInfo)) | |
| 123 | + localStorage.setItem('userInfo', JSON.stringify(res.data.data.userInfo)) | |
| 72 | 124 | } |
| 73 | 125 | }, |
| 74 | 126 | onFail: err => { | ... | ... |
src/views/Service/ServiceOrderXST.vue
| 1 | 1 | <template> |
| 2 | 2 | <div class="myOrders"> |
| 3 | + <van-nav-bar | |
| 4 | + title="" | |
| 5 | + left-text="返回首页" | |
| 6 | + left-arrow | |
| 7 | + @click-left="back" | |
| 8 | +/> | |
| 3 | 9 | <van-tabs v-model="active" :before-change="beforeTabChange"> |
| 4 | 10 | <van-tab title="待付款"> |
| 5 | 11 | <van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="onLoadpay()"> |
| ... | ... | @@ -46,10 +52,7 @@ |
| 46 | 52 | <van-icon name="clock-o" /><span class="grey"> 活动日期</span><span> {{item.startDate}} - {{ item.endDate}}</span> |
| 47 | 53 | </div> |
| 48 | 54 | <div class="btnBox"> |
| 49 | - <div class="wechat_code" @click="openGroupCodePopup(index)" style="margin-right:15px"> | |
| 50 | - <img src="@/assets/home/wechat.png" alt=""> | |
| 51 | - <span>加入拼团群</span> | |
| 52 | - </div> | |
| 55 | + <div></div> | |
| 53 | 56 | <div> |
| 54 | 57 | <van-button class="btn" type="warning" plain size="small" @click="showPintuanAbout = true" style="margin-right:15px">退款说明</van-button> |
| 55 | 58 | <!-- <van-button type="info" size="small" @click="makeCode(item.id)">核销码</van-button> --> |
| ... | ... | @@ -189,12 +192,10 @@ |
| 189 | 192 | <van-popup v-model="showPreview" round get-container="body"> |
| 190 | 193 | <img class="preview_img" :src="previewUrl" alt=""> |
| 191 | 194 | </van-popup> |
| 192 | - <GroupCodePopup v-if="showGroupCode" :chatGroupUrl="chatGroupUrl" @closeGroupCode="showGroupCode=false"></GroupCodePopup> | |
| 193 | 195 | </div> |
| 194 | 196 | </template> |
| 195 | 197 | |
| 196 | 198 | <script> |
| 197 | -import GroupCodePopup from '@/component/GroupCodePopup' | |
| 198 | 199 | import QRCode from 'qrcodejs2' // 引入qrcode |
| 199 | 200 | import html2canvas from "html2canvas" |
| 200 | 201 | // let Base64 = require('js-base64').Base64; |
| ... | ... | @@ -218,9 +219,6 @@ export default { |
| 218 | 219 | imgUrl: '', |
| 219 | 220 | previewUrl: '',//图片预览 |
| 220 | 221 | showPreview: false, |
| 221 | - showGroupCode: false,//群码 | |
| 222 | - chatGroupUrl: '',//群码图片 | |
| 223 | - showChatGroupUrlTag: false | |
| 224 | 222 | } |
| 225 | 223 | }, |
| 226 | 224 | computed: { |
| ... | ... | @@ -229,7 +227,7 @@ export default { |
| 229 | 227 | } |
| 230 | 228 | }, |
| 231 | 229 | mounted () { |
| 232 | - let userInfo = sessionStorage.getItem('userInfo'); | |
| 230 | + let userInfo = localStorage.getItem('userInfo'); | |
| 233 | 231 | if (userInfo) { |
| 234 | 232 | this.userInfo = JSON.parse(userInfo); |
| 235 | 233 | } |
| ... | ... | @@ -237,12 +235,11 @@ export default { |
| 237 | 235 | if (this.$route.query.active || this.$route.query.active == 0) { |
| 238 | 236 | this.active = this.$route.query.active |
| 239 | 237 | } |
| 240 | - // 进入页面直接显示第一个订单的群码 | |
| 241 | - if (this.$route.query.showChatGroupUrl == 1) { | |
| 242 | - this.showChatGroupUrlTag = true | |
| 243 | - } | |
| 244 | 238 | }, |
| 245 | 239 | methods: { |
| 240 | + back(){ | |
| 241 | + this.$router.push({ name: 'ServiceKQ'}) | |
| 242 | + }, | |
| 246 | 243 | beforeTabChange (item) { |
| 247 | 244 | console.log(item) |
| 248 | 245 | this.paylist = []; |
| ... | ... | @@ -316,10 +313,6 @@ export default { |
| 316 | 313 | this.movelist = res.data.data.list; |
| 317 | 314 | this.loading = false; |
| 318 | 315 | this.finished = true; |
| 319 | - if (this.showChatGroupUrlTag) { | |
| 320 | - this.showChatGroupUrlTag = false; | |
| 321 | - this.openGroupCodePopup(0) | |
| 322 | - } | |
| 323 | 316 | } else { |
| 324 | 317 | this.$toast.fail(res.data.message); |
| 325 | 318 | } |
| ... | ... | @@ -352,10 +345,6 @@ export default { |
| 352 | 345 | this.datalist = res.data.data.list; |
| 353 | 346 | this.loading = false; |
| 354 | 347 | this.finished = true; |
| 355 | - if (this.showChatGroupUrlTag) { | |
| 356 | - this.showChatGroupUrlTag = false; | |
| 357 | - this.openGroupCodePopup(0) | |
| 358 | - } | |
| 359 | 348 | } else { |
| 360 | 349 | this.$toast.fail(res.data.message); |
| 361 | 350 | } |
| ... | ... | @@ -388,10 +377,6 @@ export default { |
| 388 | 377 | this.list = res.data.data.list; |
| 389 | 378 | this.loading = false; |
| 390 | 379 | this.finished = true; |
| 391 | - if (this.showChatGroupUrlTag) { | |
| 392 | - this.showChatGroupUrlTag = false; | |
| 393 | - this.openGroupCodePopup(0) | |
| 394 | - } | |
| 395 | 380 | } else { |
| 396 | 381 | this.$toast.fail(res.data.message); |
| 397 | 382 | } |
| ... | ... | @@ -429,11 +414,6 @@ export default { |
| 429 | 414 | this.makeCode(item.id) |
| 430 | 415 | }, 1000); |
| 431 | 416 | }, |
| 432 | - // 打开群码弹窗 | |
| 433 | - openGroupCodePopup (index) { | |
| 434 | - this.chatGroupUrl = this.movelist[index]?.chatGroupUrl | |
| 435 | - this.showGroupCode = true; | |
| 436 | - }, | |
| 437 | 417 | //跳转 |
| 438 | 418 | toEdit (item) { |
| 439 | 419 | this.$router.push({ path: 'abroad_detail', query: { courseId: item.courseId } }) |
| ... | ... | @@ -455,7 +435,6 @@ export default { |
| 455 | 435 | } |
| 456 | 436 | }, |
| 457 | 437 | components: { |
| 458 | - GroupCodePopup | |
| 459 | 438 | } |
| 460 | 439 | } |
| 461 | 440 | </script> |
| ... | ... | @@ -622,20 +601,6 @@ export default { |
| 622 | 601 | display: flex; |
| 623 | 602 | justify-content: space-between; |
| 624 | 603 | align-items: center; |
| 625 | - .wechat_code { | |
| 626 | - display: flex; | |
| 627 | - align-items: center; | |
| 628 | - height: 54px; | |
| 629 | - padding: 0 16px; | |
| 630 | - background: #00c800; | |
| 631 | - border-radius: 8px; | |
| 632 | - font-size: 28px; | |
| 633 | - color: #fff; | |
| 634 | - img { | |
| 635 | - width: 40px; | |
| 636 | - margin-right: 14px; | |
| 637 | - } | |
| 638 | - } | |
| 639 | 604 | } |
| 640 | 605 | .detailsBox { |
| 641 | 606 | color: #999999; |
| ... | ... | @@ -921,9 +886,6 @@ export default { |
| 921 | 886 | font-size: 36px; |
| 922 | 887 | } |
| 923 | 888 | .btnBox { |
| 924 | - .wechat_code { | |
| 925 | - font-size: 36px; | |
| 926 | - } | |
| 927 | 889 | .btn { |
| 928 | 890 | font-size: 36px; |
| 929 | 891 | } | ... | ... |
src/views/Service/component/ServiceListFour.vue
| ... | ... | @@ -42,9 +42,12 @@ |
| 42 | 42 | </div> |
| 43 | 43 | </div> |
| 44 | 44 | </template> |
| 45 | + <about-des></about-des> | |
| 46 | + | |
| 45 | 47 | </div> |
| 46 | 48 | </template> |
| 47 | 49 | <script> |
| 50 | +import AboutDes from './aboutDes.vue' | |
| 48 | 51 | export default { |
| 49 | 52 | props: { |
| 50 | 53 | list: { |
| ... | ... | @@ -64,8 +67,11 @@ export default { |
| 64 | 67 | }, |
| 65 | 68 | methods: { |
| 66 | 69 | handleUniDetail (item) { |
| 67 | - this.$router.push({ name: 'ServiceAbroadDetail', query: { courseId: item.id} }) | |
| 70 | + this.$router.push({ name: 'ServiceAbroadDetail', query: { courseId: item.id } }) | |
| 68 | 71 | }, |
| 72 | + }, | |
| 73 | + components:{ | |
| 74 | + AboutDes | |
| 69 | 75 | } |
| 70 | 76 | } |
| 71 | 77 | </script> | ... | ... |
src/views/Service/component/ServiceListThird.vue
| ... | ... | @@ -33,10 +33,12 @@ |
| 33 | 33 | </div> |
| 34 | 34 | </div> |
| 35 | 35 | </template> |
| 36 | + <about-des></about-des> | |
| 36 | 37 | </div> |
| 37 | 38 | </div> |
| 38 | 39 | </template> |
| 39 | 40 | <script> |
| 41 | +import AboutDes from './aboutDes.vue' | |
| 40 | 42 | export default { |
| 41 | 43 | props: { |
| 42 | 44 | list: { |
| ... | ... | @@ -75,6 +77,9 @@ export default { |
| 75 | 77 | orderScroll () { |
| 76 | 78 | // console.log(this.$refs.viewBox.scrollTop) |
| 77 | 79 | } |
| 80 | + }, | |
| 81 | + components:{ | |
| 82 | + AboutDes | |
| 78 | 83 | } |
| 79 | 84 | } |
| 80 | 85 | </script> | ... | ... |
| ... | ... | @@ -0,0 +1,36 @@ |
| 1 | +<template> | |
| 2 | + <p class="bottom_about_des">本服务由浙江政务服务网、柯桥区教育体育局、浙江行之教育信息咨询有限公司提供<br>服务咨询热线:<span @click="call">400-826-2468</span></p> | |
| 3 | +</template> | |
| 4 | +<script> | |
| 5 | +export default { | |
| 6 | + methods: { | |
| 7 | + call () { | |
| 8 | + ZWJSBridge.phoneCall({ | |
| 9 | + "corpId": "400-826-2468" | |
| 10 | + }).then(res => { | |
| 11 | + console.log(res) | |
| 12 | + }).catch(err => { | |
| 13 | + console.log(err) | |
| 14 | + }) | |
| 15 | + } | |
| 16 | + } | |
| 17 | +} | |
| 18 | +</script> | |
| 19 | +<style lang="scss"> | |
| 20 | +.bottom_about_des { | |
| 21 | + font-size: 26px; | |
| 22 | + text-align: center; | |
| 23 | + padding: 40px; | |
| 24 | + | |
| 25 | + span{ | |
| 26 | + color: rgb(41, 122, 189); | |
| 27 | + } | |
| 28 | +} | |
| 29 | +</style> | |
| 30 | +<style lang="scss"> | |
| 31 | +.elder { | |
| 32 | + .bottom_about_des { | |
| 33 | + font-size: 32px; | |
| 34 | + } | |
| 35 | +} | |
| 36 | +</style> | |
| 0 | 37 | \ No newline at end of file | ... | ... |
src/views/Service/evaluateBase.vue
src/views/Service/evaluateCourse.vue
| ... | ... | @@ -67,11 +67,11 @@ export default { |
| 67 | 67 | imgCut |
| 68 | 68 | }, |
| 69 | 69 | mounted () { |
| 70 | - var userInfo = window.sessionStorage.getItem('userInfo'); | |
| 70 | + var userInfo = localStorage.getItem('userInfo'); | |
| 71 | 71 | if (userInfo) { |
| 72 | 72 | this.userInfo = JSON.parse(userInfo); |
| 73 | 73 | } |
| 74 | - var courseInfo = window.sessionStorage.getItem('courseInfo'); | |
| 74 | + var courseInfo = sessionStorage.getItem('courseInfo'); | |
| 75 | 75 | if (courseInfo) { |
| 76 | 76 | this.courseInfo = JSON.parse(courseInfo); |
| 77 | 77 | } | ... | ... |
src/views/Service/evaluatePubilc.vue
| ... | ... | @@ -67,11 +67,11 @@ export default { |
| 67 | 67 | imgCut |
| 68 | 68 | }, |
| 69 | 69 | created () { |
| 70 | - var userInfo = window.sessionStorage.getItem('userInfo'); | |
| 70 | + var userInfo = localStorage.getItem('userInfo'); | |
| 71 | 71 | if (userInfo) { |
| 72 | 72 | this.userInfo = JSON.parse(userInfo); |
| 73 | 73 | } |
| 74 | - var courseInfo = window.sessionStorage.getItem('courseInfo'); | |
| 74 | + var courseInfo = sessionStorage.getItem('courseInfo'); | |
| 75 | 75 | if (courseInfo) { |
| 76 | 76 | this.courseInfo = JSON.parse(courseInfo); |
| 77 | 77 | } | ... | ... |