Commit 823e59cbf940a31c55586116fc055420ac251a4c
1 parent
276a64cb
Exists in
master
feat: 适老化,支付 一部分
Showing
14 changed files
with
579 additions
and
159 deletions
Show diff stats
public/index.html
| @@ -9,7 +9,7 @@ | @@ -9,7 +9,7 @@ | ||
| 9 | <link rel="icon" href="<%= BASE_URL %>favicon.ico"> | 9 | <link rel="icon" href="<%= BASE_URL %>favicon.ico"> |
| 10 | <title></title> | 10 | <title></title> |
| 11 | <!-- 埋点 --> | 11 | <!-- 埋点 --> |
| 12 | - <script src="https://d.alicdn.com/alilog/mlog/aplus.js?id=202951085"></script> | 12 | + <!-- <script src="https://d.alicdn.com/alilog/mlog/aplus.js?id=202951085"></script> --> |
| 13 | <script> | 13 | <script> |
| 14 | (function(w, d, s, q, i) { | 14 | (function(w, d, s, q, i) { |
| 15 | w[q] = w[q] || []; | 15 | w[q] = w[q] || []; |
| @@ -19,15 +19,47 @@ | @@ -19,15 +19,47 @@ | ||
| 19 | j.id = 'beacon-aplus'; | 19 | j.id = 'beacon-aplus'; |
| 20 | j.src = 'https://d.alicdn.com/alilog/mlog/aplus.js?id=202951085'; | 20 | j.src = 'https://d.alicdn.com/alilog/mlog/aplus.js?id=202951085'; |
| 21 | f.parentNode.insertBefore(j, f); | 21 | f.parentNode.insertBefore(j, f); |
| 22 | - })(window, document, 'script', 'aplus_queue') | 22 | + })(window, document, 'script', 'aplus_queue'); |
| 23 | + | ||
| 24 | + aplus_queue.push({ | ||
| 25 | + action: 'aplus.setMetaInfo', | ||
| 26 | + arguments: ['aplus-rhost-v', 'alog.zjzwfw.gov.cn'] | ||
| 27 | + }); | ||
| 28 | + | ||
| 29 | + | ||
| 30 | + aplus_queue.push({ | ||
| 31 | + action: 'aplus.setMetaInfo', | ||
| 32 | + arguments: ['aplus-rhost-g', 'alog.zjzwfw.gov.cn'] | ||
| 33 | + }); | ||
| 34 | + | ||
| 35 | + aplus_queue.push({ | ||
| 36 | + action: 'aplus.setMetaInfo', | ||
| 37 | + arguments: ['appId', '60506758'] | ||
| 38 | + }); | ||
| 39 | + aplus_queue.push({ | ||
| 40 | + 'action': 'aplus.sendPV', | ||
| 41 | + 'arguments': [{ | ||
| 42 | + is_auto: false | ||
| 43 | + }, { | ||
| 44 | + miniAppId: '2001895516', | ||
| 45 | + }] | ||
| 46 | + }) | ||
| 47 | + // aplus_queue.push({ | ||
| 48 | + // action: 'aplus.setMetaInfo', | ||
| 49 | + // arguments: ['miniAppId', '2001895516'] | ||
| 50 | + // }); | ||
| 51 | + // aplus_queue.push({ | ||
| 52 | + // action: 'aplus.setMetaInfo', | ||
| 53 | + // arguments: ['miniAppName', '红色网上游'] | ||
| 54 | + // }); | ||
| 23 | </script> | 55 | </script> |
| 24 | </head> | 56 | </head> |
| 25 | 57 | ||
| 26 | <body> | 58 | <body> |
| 27 | <noscript> | 59 | <noscript> |
| 28 | - <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. | ||
| 29 | - Please enable it to continue.</strong> | ||
| 30 | - </noscript> | 60 | + <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. |
| 61 | + Please enable it to continue.</strong> | ||
| 62 | + </noscript> | ||
| 31 | <div id="app"></div> | 63 | <div id="app"></div> |
| 32 | <!-- 地图 --> | 64 | <!-- 地图 --> |
| 33 | <script src="https://webapi.amap.com/maps?v=1.4.15&key=61af1988b71a634a59a0de29409baeb8"></script> | 65 | <script src="https://webapi.amap.com/maps?v=1.4.15&key=61af1988b71a634a59a0de29409baeb8"></script> |
src/App.vue
| 1 | <template> | 1 | <template> |
| 2 | - <div id="app"> | 2 | + <div id="app" :class="isElder?'elder':''"> |
| 3 | <keep-alive> | 3 | <keep-alive> |
| 4 | - <router-view v-if="this.$route.meta.keepAlive" /> | 4 | + <router-view v-if="this.$route.meta.keepAlive" @setElder="setElder" /> |
| 5 | </keep-alive> | 5 | </keep-alive> |
| 6 | - | ||
| 7 | - <router-view v-if="!this.$route.meta.keepAlive" /> | 6 | + |
| 7 | + <router-view v-if="!this.$route.meta.keepAlive" @setElder="setElder" /> | ||
| 8 | </div> | 8 | </div> |
| 9 | </template> | 9 | </template> |
| 10 | <script> | 10 | <script> |
| 11 | export default { | 11 | export default { |
| 12 | + data () { | ||
| 13 | + return { | ||
| 14 | + isElder: false | ||
| 15 | + } | ||
| 16 | + }, | ||
| 12 | mounted () { | 17 | mounted () { |
| 18 | + | ||
| 13 | ZWJSBridge.onReady(() => { | 19 | ZWJSBridge.onReady(() => { |
| 14 | console.log('初始化完成后,执行bridge方法') | 20 | console.log('初始化完成后,执行bridge方法') |
| 21 | + | ||
| 15 | }) | 22 | }) |
| 23 | + | ||
| 24 | + const isElder = sessionStorage.getItem('isElder') | ||
| 25 | + if (isElder) { | ||
| 26 | + this.isElder = true | ||
| 27 | + } else { | ||
| 28 | + ZWJSBridge.getUiStyle({}) | ||
| 29 | + .then((result) => { | ||
| 30 | + console.log(result); | ||
| 31 | + if (result.uiStyle == 'elder') { | ||
| 32 | + this.isElder = true; | ||
| 33 | + sessionStorage.setItem('isElder', 1) | ||
| 34 | + } | ||
| 35 | + }) | ||
| 36 | + //浙里办APP 6.11.0 版本以下版本标准模式兼容 | ||
| 37 | + .catch((error) => { console.log(error); }); | ||
| 38 | + } | ||
| 16 | }, | 39 | }, |
| 17 | methods: { | 40 | methods: { |
| 41 | + setElder (e) { | ||
| 42 | + this.isElder = e | ||
| 43 | + } | ||
| 18 | } | 44 | } |
| 19 | } | 45 | } |
| 20 | </script> | 46 | </script> |
src/component/Tabbar4.vue
| @@ -90,4 +90,20 @@ export default { | @@ -90,4 +90,20 @@ export default { | ||
| 90 | } | 90 | } |
| 91 | } | 91 | } |
| 92 | } | 92 | } |
| 93 | +</style> | ||
| 94 | +<style lang="scss"> | ||
| 95 | +// 长辈版 | ||
| 96 | +.elder { | ||
| 97 | + #tabbar { | ||
| 98 | + .tab{ | ||
| 99 | + padding: 0; | ||
| 100 | + img{ | ||
| 101 | + width: 44px; | ||
| 102 | + } | ||
| 103 | + p{ | ||
| 104 | + font-size: 34px; | ||
| 105 | + } | ||
| 106 | + } | ||
| 107 | + } | ||
| 108 | +} | ||
| 93 | </style> | 109 | </style> |
| 94 | \ No newline at end of file | 110 | \ No newline at end of file |
src/views/Home/Home.vue
| @@ -28,6 +28,16 @@ | @@ -28,6 +28,16 @@ | ||
| 28 | </div> | 28 | </div> |
| 29 | <van-icon name="arrow" /> | 29 | <van-icon name="arrow" /> |
| 30 | </div> | 30 | </div> |
| 31 | + <div class="item" @click="handelElder"> | ||
| 32 | + <div class="left"> | ||
| 33 | + <van-icon class="icon" name="discount" /> | ||
| 34 | + <span>长辈版</span> | ||
| 35 | + </div> | ||
| 36 | + <p> | ||
| 37 | + {{isElder?'已开启':'未开启'}} | ||
| 38 | + <van-icon name="arrow" /> | ||
| 39 | + </p> | ||
| 40 | + </div> | ||
| 31 | </div> | 41 | </div> |
| 32 | <HomeChildList v-if="showChildList"></HomeChildList> | 42 | <HomeChildList v-if="showChildList"></HomeChildList> |
| 33 | 43 | ||
| @@ -45,6 +55,7 @@ import HomeChildList from '@/views/Home/component/HomeChildList' | @@ -45,6 +55,7 @@ import HomeChildList from '@/views/Home/component/HomeChildList' | ||
| 45 | import HomeOrder from '@/views/Home/component/HomeOrder' | 55 | import HomeOrder from '@/views/Home/component/HomeOrder' |
| 46 | import HomeScan from '@/views/Home/component/HomeScan' | 56 | import HomeScan from '@/views/Home/component/HomeScan' |
| 47 | import Tabbar4 from '@/component/Tabbar4' | 57 | import Tabbar4 from '@/component/Tabbar4' |
| 58 | +import { Dialog } from 'vant' | ||
| 48 | export default { | 59 | export default { |
| 49 | data () { | 60 | data () { |
| 50 | return { | 61 | return { |
| @@ -64,46 +75,48 @@ export default { | @@ -64,46 +75,48 @@ export default { | ||
| 64 | headImgUrl: '', | 75 | headImgUrl: '', |
| 65 | defaultHead: require('@/assets/head.png'), | 76 | defaultHead: require('@/assets/head.png'), |
| 66 | isShow: false, | 77 | isShow: false, |
| 67 | - showChildList: false | 78 | + showChildList: false, |
| 79 | + isElder: false | ||
| 68 | } | 80 | } |
| 69 | }, | 81 | }, |
| 70 | 82 | ||
| 71 | mounted () { | 83 | mounted () { |
| 72 | - aplus_queue.push({ | ||
| 73 | - 'action': 'aplus.sendPV', | ||
| 74 | - 'arguments': [{ | ||
| 75 | - is_auto: false | ||
| 76 | - }] | ||
| 77 | - }) | ||
| 78 | - this.checkAuth() | 84 | + const isElder = sessionStorage.getItem('isElder') |
| 85 | + if (isElder) { | ||
| 86 | + this.isElder = true | ||
| 87 | + } | ||
| 88 | + this.centerNo = sessionStorage.getItem('centerNo'); | ||
| 89 | + this.getUserInfo() | ||
| 90 | + | ||
| 91 | + // this.checkAuth() | ||
| 79 | }, | 92 | }, |
| 80 | methods: { | 93 | methods: { |
| 81 | - checkAuth () { | ||
| 82 | - let centerNo = this.common.getUrlParam('center_no') || sessionStorage.getItem('centerNo'); | ||
| 83 | - if (centerNo) { | ||
| 84 | - this.centerNo = centerNo | ||
| 85 | - sessionStorage.setItem('centerNo', centerNo); | ||
| 86 | - this.getUserInfo() | ||
| 87 | - } else { | ||
| 88 | - const sUserAgent = window.navigator.userAgent.toLowerCase() | ||
| 89 | - const dtdreamweb = sUserAgent.indexOf("dtdreamweb") > -1 | ||
| 90 | - const miniprogram = sUserAgent.indexOf("miniprogram") > -1 && sUserAgent.indexOf("alipay") > -1 | ||
| 91 | - if (dtdreamweb) { | ||
| 92 | - alert('浙里办') | ||
| 93 | - window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=hswsy`; | ||
| 94 | - } | ||
| 95 | - // else if (miniprogram) { | ||
| 96 | - // alert('支付宝') | ||
| 97 | - // window.location.href = `https://puser.zjzwfw.gov.cn/sso/alipay.do?action=ssoLogin&servicecode=passp&goto=`; | ||
| 98 | - // } | ||
| 99 | - else { | ||
| 100 | - console.log('非浙里办渠道访问,显示测试用户数据') | ||
| 101 | - this.centerNo = '20210930160466993660' | ||
| 102 | - sessionStorage.setItem('centerNo', '20210930160466993660'); | ||
| 103 | - this.getUserInfo() | ||
| 104 | - } | ||
| 105 | - } | ||
| 106 | - }, | 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 | + // }, | ||
| 107 | // 研学码 | 120 | // 研学码 |
| 108 | handleYanxue () { | 121 | handleYanxue () { |
| 109 | this.$router.push({ name: 'YanxueCode' }) | 122 | this.$router.push({ name: 'YanxueCode' }) |
| @@ -125,6 +138,42 @@ export default { | @@ -125,6 +138,42 @@ export default { | ||
| 125 | this.$toast('暂未开放,敬请期待!'); | 138 | this.$toast('暂未开放,敬请期待!'); |
| 126 | // this.$router.push({ name: 'Partner' }) | 139 | // this.$router.push({ name: 'Partner' }) |
| 127 | }, | 140 | }, |
| 141 | + // 点击长辈版 | ||
| 142 | + handelElder () { | ||
| 143 | + if (this.isElder) { | ||
| 144 | + Dialog.confirm({ | ||
| 145 | + title: '长辈版', | ||
| 146 | + message: '超大字号,看的更清楚,长辈版,专为长辈设计', | ||
| 147 | + confirmButtonColor: '#ee0a24', | ||
| 148 | + confirmButtonText: '关闭长辈版模式' | ||
| 149 | + }) | ||
| 150 | + .then(() => { | ||
| 151 | + // on confirm | ||
| 152 | + this.isElder = false | ||
| 153 | + sessionStorage.removeItem('isElder') | ||
| 154 | + this.$emit('setElder', false) | ||
| 155 | + }) | ||
| 156 | + .catch(() => { | ||
| 157 | + // on cancel | ||
| 158 | + }); | ||
| 159 | + } else { | ||
| 160 | + Dialog.confirm({ | ||
| 161 | + title: '长辈版', | ||
| 162 | + message: '超大字号,看的更清楚,长辈版,专为长辈设计', | ||
| 163 | + confirmButtonColor: '#3385FF', | ||
| 164 | + confirmButtonText: '开启长辈版模式' | ||
| 165 | + }) | ||
| 166 | + .then(() => { | ||
| 167 | + // on confirm | ||
| 168 | + this.isElder = true | ||
| 169 | + sessionStorage.setItem('isElder', 1) | ||
| 170 | + this.$emit('setElder', true) | ||
| 171 | + }) | ||
| 172 | + .catch(() => { | ||
| 173 | + // on cancel | ||
| 174 | + }); | ||
| 175 | + } | ||
| 176 | + }, | ||
| 128 | // 获取用户信息 | 177 | // 获取用户信息 |
| 129 | getUserInfo: function () { | 178 | getUserInfo: function () { |
| 130 | this.mgop({ | 179 | this.mgop({ |
| @@ -265,3 +314,20 @@ export default { | @@ -265,3 +314,20 @@ export default { | ||
| 265 | z-index: 99; | 314 | z-index: 99; |
| 266 | } | 315 | } |
| 267 | </style> | 316 | </style> |
| 317 | +<style lang="scss"> | ||
| 318 | +.elder { | ||
| 319 | + .home { | ||
| 320 | + .infomation .top .right { | ||
| 321 | + .name { | ||
| 322 | + font-size: 44px; | ||
| 323 | + } | ||
| 324 | + .phone { | ||
| 325 | + font-size: 44px; | ||
| 326 | + } | ||
| 327 | + } | ||
| 328 | + .function .item .left span { | ||
| 329 | + font-size: 40px; | ||
| 330 | + } | ||
| 331 | + } | ||
| 332 | +} | ||
| 333 | +</style> |
src/views/Home/component/HomeChildList.vue
| @@ -198,4 +198,17 @@ export default { | @@ -198,4 +198,17 @@ export default { | ||
| 198 | color: #f63837; | 198 | color: #f63837; |
| 199 | } | 199 | } |
| 200 | } | 200 | } |
| 201 | +</style> | ||
| 202 | +<style lang="scss"> | ||
| 203 | +.elder { | ||
| 204 | + .home_child_list .stu_info{ | ||
| 205 | + height: auto; | ||
| 206 | + .title p{ | ||
| 207 | + font-size: 40px; | ||
| 208 | + } | ||
| 209 | + .item{ | ||
| 210 | + font-size: 38px; | ||
| 211 | + } | ||
| 212 | + } | ||
| 213 | +} | ||
| 201 | </style> | 214 | </style> |
| 202 | \ No newline at end of file | 215 | \ No newline at end of file |
src/views/Home/component/HomeOrder.vue
| @@ -79,4 +79,18 @@ export default { | @@ -79,4 +79,18 @@ export default { | ||
| 79 | } | 79 | } |
| 80 | } | 80 | } |
| 81 | } | 81 | } |
| 82 | +</style> | ||
| 83 | +<style lang="scss"> | ||
| 84 | + .elder{ | ||
| 85 | + .home_order{ | ||
| 86 | + .top{ | ||
| 87 | + p{ | ||
| 88 | + font-size: 44px; | ||
| 89 | + } | ||
| 90 | + } | ||
| 91 | + .icon_box p{ | ||
| 92 | + font-size: 34px; | ||
| 93 | + } | ||
| 94 | + } | ||
| 95 | + } | ||
| 82 | </style> | 96 | </style> |
| 83 | \ No newline at end of file | 97 | \ No newline at end of file |
src/views/Service/AbroadDetail.vue
| @@ -309,7 +309,7 @@ export default { | @@ -309,7 +309,7 @@ export default { | ||
| 309 | // 'isTestUrl': '1' | 309 | // 'isTestUrl': '1' |
| 310 | }, | 310 | }, |
| 311 | data: { | 311 | data: { |
| 312 | - "id":this.courseId, | 312 | + "id": this.courseId, |
| 313 | "cs": "绍兴市", | 313 | "cs": "绍兴市", |
| 314 | }, | 314 | }, |
| 315 | onSuccess: res => { | 315 | onSuccess: res => { |
| @@ -448,8 +448,8 @@ export default { | @@ -448,8 +448,8 @@ export default { | ||
| 448 | }, | 448 | }, |
| 449 | data: { | 449 | data: { |
| 450 | "productId": this.detailData.id, | 450 | "productId": this.detailData.id, |
| 451 | - "startDate": startDate, | ||
| 452 | - "endDate": endDate, | 451 | + "startDate": startDate, |
| 452 | + "endDate": endDate, | ||
| 453 | }, | 453 | }, |
| 454 | onSuccess: res => { | 454 | onSuccess: res => { |
| 455 | if (res.data.data) { | 455 | if (res.data.data) { |
| @@ -1176,4 +1176,104 @@ export default { | @@ -1176,4 +1176,104 @@ export default { | ||
| 1176 | } | 1176 | } |
| 1177 | } | 1177 | } |
| 1178 | } | 1178 | } |
| 1179 | +</style> | ||
| 1180 | +<style lang="scss"> | ||
| 1181 | +.elder { | ||
| 1182 | + .abroad_detail { | ||
| 1183 | + .countDown { | ||
| 1184 | + height: auto; | ||
| 1185 | + .countDownTop { | ||
| 1186 | + display: block; | ||
| 1187 | + font-size: 40px; | ||
| 1188 | + .countDownTime { | ||
| 1189 | + font-size: 40px; | ||
| 1190 | + padding: 10px 0; | ||
| 1191 | + div { | ||
| 1192 | + width: 60px; | ||
| 1193 | + } | ||
| 1194 | + .countDownFont { | ||
| 1195 | + line-height: 60px; | ||
| 1196 | + } | ||
| 1197 | + } | ||
| 1198 | + } | ||
| 1199 | + .countDownBottom { | ||
| 1200 | + display: block; | ||
| 1201 | + font-size: 40px; | ||
| 1202 | + .countDownBottomyellow { | ||
| 1203 | + height: 60px; | ||
| 1204 | + font-size: 40px; | ||
| 1205 | + } | ||
| 1206 | + } | ||
| 1207 | + } | ||
| 1208 | + .uni_text { | ||
| 1209 | + .course_price { | ||
| 1210 | + font-size: 48px; | ||
| 1211 | + .redmini, | ||
| 1212 | + .tint { | ||
| 1213 | + font-size: 36px; | ||
| 1214 | + } | ||
| 1215 | + } | ||
| 1216 | + .course_name { | ||
| 1217 | + font-size: 44px; | ||
| 1218 | + } | ||
| 1219 | + .course_info { | ||
| 1220 | + font-size: 40px; | ||
| 1221 | + } | ||
| 1222 | + .address { | ||
| 1223 | + font-size: 40px; | ||
| 1224 | + } | ||
| 1225 | + .rate > span { | ||
| 1226 | + font-size: 36px; | ||
| 1227 | + } | ||
| 1228 | + .tag_box .tag { | ||
| 1229 | + font-size: 40px; | ||
| 1230 | + } | ||
| 1231 | + } | ||
| 1232 | + .package { | ||
| 1233 | + .package_title { | ||
| 1234 | + font-size: 44px; | ||
| 1235 | + } | ||
| 1236 | + .package_item { | ||
| 1237 | + .date { | ||
| 1238 | + font-size: 40px; | ||
| 1239 | + } | ||
| 1240 | + .week { | ||
| 1241 | + font-size: 34px; | ||
| 1242 | + } | ||
| 1243 | + .price { | ||
| 1244 | + font-size: 34px; | ||
| 1245 | + } | ||
| 1246 | + } | ||
| 1247 | + } | ||
| 1248 | + .content_box .content_all { | ||
| 1249 | + font-size: 40px !important; | ||
| 1250 | + line-height: 60px !important; | ||
| 1251 | + } | ||
| 1252 | + .tag_item { | ||
| 1253 | + .tag_title { | ||
| 1254 | + font-size: 44px; | ||
| 1255 | + } | ||
| 1256 | + .tag_text { | ||
| 1257 | + font-size: 40px !important; | ||
| 1258 | + line-height: 60px !important; | ||
| 1259 | + } | ||
| 1260 | + } | ||
| 1261 | + .base .center { | ||
| 1262 | + .basename { | ||
| 1263 | + font-size: 44px !important; | ||
| 1264 | + } | ||
| 1265 | + .address { | ||
| 1266 | + font-size: 40px !important; | ||
| 1267 | + } | ||
| 1268 | + } | ||
| 1269 | + .Collection .box { | ||
| 1270 | + span { | ||
| 1271 | + font-size: 44px !important; | ||
| 1272 | + } | ||
| 1273 | + .icon { | ||
| 1274 | + font-size: 40px !important; | ||
| 1275 | + } | ||
| 1276 | + } | ||
| 1277 | + } | ||
| 1278 | +} | ||
| 1179 | </style> | 1279 | </style> |
| 1180 | \ No newline at end of file | 1280 | \ No newline at end of file |
src/views/Service/CheckOrder.vue
| @@ -181,20 +181,20 @@ export default { | @@ -181,20 +181,20 @@ export default { | ||
| 181 | }, | 181 | }, |
| 182 | onSuccess: res => { | 182 | onSuccess: res => { |
| 183 | if (res.data.data) { | 183 | if (res.data.data) { |
| 184 | - if (this.paymoney == 0) { | ||
| 185 | - // 使用后移除优惠券,防止返回继续使用 | ||
| 186 | - sessionStorage.removeItem('useCard') | 184 | + if (this.paymoney == 0) { |
| 185 | + // 使用后移除优惠券,防止返回继续使用 | ||
| 186 | + sessionStorage.removeItem('useCard') | ||
| 187 | this.$router.push({ name: 'ServiceOrderXST', query: { active: 1, showChatGroupUrl: 1 } }) | 187 | this.$router.push({ name: 'ServiceOrderXST', query: { active: 1, showChatGroupUrl: 1 } }) |
| 188 | 188 | ||
| 189 | + } else { | ||
| 190 | + // 使用后移除优惠券,防止返回继续使用 | ||
| 191 | + sessionStorage.removeItem('useCard') | ||
| 192 | + this.openPay(res.data.data); | ||
| 193 | + this.orderId = res.data.data.orderId; | ||
| 194 | + } | ||
| 189 | } else { | 195 | } else { |
| 190 | - // 使用后移除优惠券,防止返回继续使用 | ||
| 191 | - sessionStorage.removeItem('useCard') | ||
| 192 | - this.openPay(res.data.data); | ||
| 193 | - this.orderId = res.data.data.orderId; | 196 | + this.$toast.fail(res.data?.result); |
| 194 | } | 197 | } |
| 195 | - } else { | ||
| 196 | - this.$toast.fail(res.data?.result); | ||
| 197 | - } | ||
| 198 | 198 | ||
| 199 | }, | 199 | }, |
| 200 | onFail: err => { | 200 | onFail: err => { |
| @@ -203,8 +203,45 @@ export default { | @@ -203,8 +203,45 @@ export default { | ||
| 203 | }); | 203 | }); |
| 204 | }, | 204 | }, |
| 205 | openPay (data) { | 205 | openPay (data) { |
| 206 | + const sUserAgent = window.navigator.userAgent.toLowerCase() | ||
| 207 | + const dtdreamweb = sUserAgent.indexOf("dtdreamweb") > -1 | ||
| 208 | + const miniprogram = sUserAgent.indexOf("miniprogram") > -1 && sUserAgent.indexOf("alipay") > -1 | ||
| 209 | + if (dtdreamweb) { | ||
| 210 | + alert('浙里办') | ||
| 211 | + } | ||
| 212 | + else if (miniprogram) { | ||
| 213 | + alert('支付宝') | ||
| 214 | + } | ||
| 206 | let that = this; | 215 | let that = this; |
| 207 | - alert('支付') | 216 | + var payMsg = { |
| 217 | + platform: 1, | ||
| 218 | + arg: { | ||
| 219 | + "credential": JSON.stringify({ | ||
| 220 | + "appid": "2021000118637887", | ||
| 221 | + "attach": "string1", | ||
| 222 | + "body": "string23", | ||
| 223 | + "notify_url": "http://47.110.50.251:9091/api/alipay/pay", | ||
| 224 | + "outTradeNo": new Date().getTime(), | ||
| 225 | + "payType": 0, | ||
| 226 | + "payWay": 0, | ||
| 227 | + "productId": "11", | ||
| 228 | + "quit_url": "https://www.baidu.com", | ||
| 229 | + "subject": "string", | ||
| 230 | + "totalFee": "1000000" | ||
| 231 | + }), | ||
| 232 | + "inSandBox": false | ||
| 233 | + } | ||
| 234 | + }; | ||
| 235 | + ZWJSBridge.pay(payMsg).then((result) => { | ||
| 236 | + | ||
| 237 | + alert('支付成功!'); | ||
| 238 | + console.log('#### ZWJSBridge.pay() result:' + result); | ||
| 239 | + | ||
| 240 | + }).catch((error) => { | ||
| 241 | + var errorMsg = JSON.stringify(error); | ||
| 242 | + alert('支付失败:' + errorMsg); | ||
| 243 | + console.log('#### ZWJSBridge.pay() error:' + error); | ||
| 244 | + }); | ||
| 208 | return; | 245 | return; |
| 209 | 246 | ||
| 210 | Axios({ | 247 | Axios({ |
src/views/Service/DatePackage.vue
| @@ -110,7 +110,7 @@ export default { | @@ -110,7 +110,7 @@ export default { | ||
| 110 | }, | 110 | }, |
| 111 | onSuccess: res => { | 111 | onSuccess: res => { |
| 112 | if (res.data.data) { | 112 | if (res.data.data) { |
| 113 | - this.numOne = res.data.data | 113 | + this.numOne = res.data.data |
| 114 | } | 114 | } |
| 115 | }, | 115 | }, |
| 116 | onFail: err => { | 116 | onFail: err => { |
| @@ -137,7 +137,7 @@ export default { | @@ -137,7 +137,7 @@ export default { | ||
| 137 | }, | 137 | }, |
| 138 | onSuccess: res => { | 138 | onSuccess: res => { |
| 139 | if (res.data.data) { | 139 | if (res.data.data) { |
| 140 | - this.numSecond = res.data.data | 140 | + this.numSecond = res.data.data |
| 141 | } | 141 | } |
| 142 | }, | 142 | }, |
| 143 | onFail: err => { | 143 | onFail: err => { |
| @@ -225,12 +225,12 @@ export default { | @@ -225,12 +225,12 @@ export default { | ||
| 225 | // 判断是否已登录 | 225 | // 判断是否已登录 |
| 226 | checkLogin () { | 226 | checkLogin () { |
| 227 | if (process.env.NODE_ENV != "production") return true; | 227 | if (process.env.NODE_ENV != "production") return true; |
| 228 | - | 228 | + |
| 229 | const userInfo = JSON.parse(sessionStorage.getItem('userInfo')) | 229 | const userInfo = JSON.parse(sessionStorage.getItem('userInfo')) |
| 230 | const publicName = sessionStorage.getItem('publicName') | 230 | const publicName = sessionStorage.getItem('publicName') |
| 231 | if (!userInfo?.phone) { | 231 | if (!userInfo?.phone) { |
| 232 | sessionStorage.setItem('prePage', 'ServiceDatePackage'); | 232 | sessionStorage.setItem('prePage', 'ServiceDatePackage'); |
| 233 | - sessionStorage.setItem('prePageQuery', JSON.stringify({ date:this.date })); | 233 | + sessionStorage.setItem('prePageQuery', JSON.stringify({ date: this.date })); |
| 234 | this.$router.push({ name: 'LoginPublic', query: { publicName: publicName } }) | 234 | this.$router.push({ name: 'LoginPublic', query: { publicName: publicName } }) |
| 235 | return false; | 235 | return false; |
| 236 | } | 236 | } |
| @@ -277,7 +277,7 @@ export default { | @@ -277,7 +277,7 @@ export default { | ||
| 277 | .period_item { | 277 | .period_item { |
| 278 | padding: 10px 20px; | 278 | padding: 10px 20px; |
| 279 | font-size: 28px; | 279 | font-size: 28px; |
| 280 | - margin-bottom:15px; | 280 | + margin-bottom: 15px; |
| 281 | text-align: left; | 281 | text-align: left; |
| 282 | background: #f5f6fa; | 282 | background: #f5f6fa; |
| 283 | border-radius: 10px; | 283 | border-radius: 10px; |
| @@ -414,4 +414,43 @@ export default { | @@ -414,4 +414,43 @@ export default { | ||
| 414 | box-sizing: border-box; | 414 | box-sizing: border-box; |
| 415 | color: #333; | 415 | color: #333; |
| 416 | } | 416 | } |
| 417 | +</style> | ||
| 418 | +<style lang="scss"> | ||
| 419 | +.elder { | ||
| 420 | + #datePackage {.tag_item { | ||
| 421 | + .tag_title { | ||
| 422 | + font-size: 44px; | ||
| 423 | + } | ||
| 424 | + .package_name { | ||
| 425 | + font-size: 40px; | ||
| 426 | + } | ||
| 427 | + .period .period_item { | ||
| 428 | + font-size: 40px; | ||
| 429 | + } | ||
| 430 | + .tag_title_flex .count{ | ||
| 431 | + font-size: 40px; | ||
| 432 | + } | ||
| 433 | + .package_num{ | ||
| 434 | + font-size: 40px; | ||
| 435 | + .tint{ | ||
| 436 | + font-size: 40px; | ||
| 437 | + | ||
| 438 | + } | ||
| 439 | + } | ||
| 440 | + } | ||
| 441 | + .Collection {.box1 p{ | ||
| 442 | + font-size: 56px; | ||
| 443 | + span{ | ||
| 444 | + font-size: 40px; | ||
| 445 | + } | ||
| 446 | + del{ | ||
| 447 | + font-size: 40px; | ||
| 448 | + } | ||
| 449 | + } | ||
| 450 | + .box > span{ | ||
| 451 | + font-size: 44px; | ||
| 452 | + } | ||
| 453 | + } | ||
| 454 | + } | ||
| 455 | +} | ||
| 417 | </style> | 456 | </style> |
| 418 | \ No newline at end of file | 457 | \ No newline at end of file |
src/views/Service/ServiceBaseKQ.vue
| @@ -125,7 +125,7 @@ export default { | @@ -125,7 +125,7 @@ export default { | ||
| 125 | type: 'POST', | 125 | type: 'POST', |
| 126 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 | 126 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 |
| 127 | headers: { | 127 | headers: { |
| 128 | - // 'isTestUrl': '1' | 128 | + // 'isTestUrl': '1' |
| 129 | }, | 129 | }, |
| 130 | data: { | 130 | data: { |
| 131 | "area": "", | 131 | "area": "", |
| @@ -165,7 +165,7 @@ export default { | @@ -165,7 +165,7 @@ export default { | ||
| 165 | type: 'POST', | 165 | type: 'POST', |
| 166 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 | 166 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 |
| 167 | headers: { | 167 | headers: { |
| 168 | - // 'isTestUrl': '1' | 168 | + // 'isTestUrl': '1' |
| 169 | }, | 169 | }, |
| 170 | data: { | 170 | data: { |
| 171 | "area": "", | 171 | "area": "", |
| @@ -204,7 +204,7 @@ export default { | @@ -204,7 +204,7 @@ export default { | ||
| 204 | type: 'POST', | 204 | type: 'POST', |
| 205 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 | 205 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 |
| 206 | headers: { | 206 | headers: { |
| 207 | - // 'isTestUrl': '1' | 207 | + // 'isTestUrl': '1' |
| 208 | }, | 208 | }, |
| 209 | data: { | 209 | data: { |
| 210 | "area": "", | 210 | "area": "", |
| @@ -243,7 +243,7 @@ export default { | @@ -243,7 +243,7 @@ export default { | ||
| 243 | type: 'POST', | 243 | type: 'POST', |
| 244 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 | 244 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 |
| 245 | headers: { | 245 | headers: { |
| 246 | - // 'isTestUrl': '1' | 246 | + // 'isTestUrl': '1' |
| 247 | }, | 247 | }, |
| 248 | data: { | 248 | data: { |
| 249 | "area": "", | 249 | "area": "", |
| @@ -282,7 +282,7 @@ export default { | @@ -282,7 +282,7 @@ export default { | ||
| 282 | type: 'POST', | 282 | type: 'POST', |
| 283 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 | 283 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 |
| 284 | headers: { | 284 | headers: { |
| 285 | - // 'isTestUrl': '1' | 285 | + // 'isTestUrl': '1' |
| 286 | }, | 286 | }, |
| 287 | data: { | 287 | data: { |
| 288 | "area": "", | 288 | "area": "", |
| @@ -322,7 +322,7 @@ export default { | @@ -322,7 +322,7 @@ export default { | ||
| 322 | type: 'POST', | 322 | type: 'POST', |
| 323 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 | 323 | appKey: 'fuxgnukl+2001895516+edccpx', // 必须 |
| 324 | headers: { | 324 | headers: { |
| 325 | - // 'isTestUrl': '1' | 325 | + // 'isTestUrl': '1' |
| 326 | }, | 326 | }, |
| 327 | data: { | 327 | data: { |
| 328 | "area": "", | 328 | "area": "", |
| @@ -528,9 +528,6 @@ export default { | @@ -528,9 +528,6 @@ export default { | ||
| 528 | box-shadow: 0 10px 10px rgba(238, 238, 238, 0.295); | 528 | box-shadow: 0 10px 10px rgba(238, 238, 238, 0.295); |
| 529 | height: 88px; | 529 | height: 88px; |
| 530 | } | 530 | } |
| 531 | - ::v-deep .van-tabs__nav { | ||
| 532 | - background: transparent; | ||
| 533 | - } | ||
| 534 | ::v-deep .van-tab { | 531 | ::v-deep .van-tab { |
| 535 | // color: #fff; | 532 | // color: #fff; |
| 536 | color: black; | 533 | color: black; |
| @@ -586,3 +583,27 @@ export default { | @@ -586,3 +583,27 @@ export default { | ||
| 586 | background-color: #39a9ed; | 583 | background-color: #39a9ed; |
| 587 | } | 584 | } |
| 588 | </style> | 585 | </style> |
| 586 | +<style lang="scss"> | ||
| 587 | +// 长辈版 | ||
| 588 | +.elder { | ||
| 589 | + #serviceKQ { | ||
| 590 | + .container { | ||
| 591 | + .redLink { | ||
| 592 | + font-size: 44px; | ||
| 593 | + background: #ff696a; | ||
| 594 | + } | ||
| 595 | + .top_tool { | ||
| 596 | + .van-field__control { | ||
| 597 | + font-size: 44px; | ||
| 598 | + } | ||
| 599 | + } | ||
| 600 | + .van-tab{ | ||
| 601 | + font-size: 40px; | ||
| 602 | + } | ||
| 603 | + .van-tab--active{ | ||
| 604 | + font-size: 44px; | ||
| 605 | + } | ||
| 606 | + } | ||
| 607 | + } | ||
| 608 | +} | ||
| 609 | +</style> | ||
| 589 | \ No newline at end of file | 610 | \ No newline at end of file |
src/views/Service/ServiceKQ.vue
| @@ -14,12 +14,6 @@ export default { | @@ -14,12 +14,6 @@ export default { | ||
| 14 | 14 | ||
| 15 | mounted () { | 15 | mounted () { |
| 16 | console.log('xst mounted') | 16 | console.log('xst mounted') |
| 17 | - aplus_queue.push({ | ||
| 18 | - 'action': 'aplus.sendPV', | ||
| 19 | - 'arguments': [{ | ||
| 20 | - is_auto: false | ||
| 21 | - }] | ||
| 22 | - }) | ||
| 23 | this.checkAuth() | 17 | this.checkAuth() |
| 24 | 18 | ||
| 25 | }, | 19 | }, |
| @@ -33,25 +27,22 @@ export default { | @@ -33,25 +27,22 @@ export default { | ||
| 33 | if (centerNo) { | 27 | if (centerNo) { |
| 34 | this.centerNo = centerNo | 28 | this.centerNo = centerNo |
| 35 | sessionStorage.setItem('centerNo', centerNo); | 29 | sessionStorage.setItem('centerNo', centerNo); |
| 36 | - console.log(111) | ||
| 37 | this.getUserInfo() | 30 | this.getUserInfo() |
| 38 | } else { | 31 | } else { |
| 39 | - console.log(222) | ||
| 40 | const sUserAgent = window.navigator.userAgent.toLowerCase() | 32 | const sUserAgent = window.navigator.userAgent.toLowerCase() |
| 41 | const dtdreamweb = sUserAgent.indexOf("dtdreamweb") > -1 | 33 | const dtdreamweb = sUserAgent.indexOf("dtdreamweb") > -1 |
| 42 | const miniprogram = sUserAgent.indexOf("miniprogram") > -1 && sUserAgent.indexOf("alipay") > -1 | 34 | const miniprogram = sUserAgent.indexOf("miniprogram") > -1 && sUserAgent.indexOf("alipay") > -1 |
| 43 | if (dtdreamweb) { | 35 | if (dtdreamweb) { |
| 44 | - console.log(333) | ||
| 45 | alert('浙里办') | 36 | alert('浙里办') |
| 46 | - // window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=hswsy`; | ||
| 47 | - this.centerNo = '20210930160466993660' | ||
| 48 | - sessionStorage.setItem('centerNo', '20210930160466993660'); | 37 | + 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'); | ||
| 49 | this.getUserInfo() | 40 | this.getUserInfo() |
| 50 | } | 41 | } |
| 51 | - // else if (miniprogram) { | ||
| 52 | - // alert('支付宝') | ||
| 53 | - // window.location.href = `https://puser.zjzwfw.gov.cn/sso/alipay.do?action=ssoLogin&servicecode=passp&goto=`; | ||
| 54 | - // } | 42 | + else if (miniprogram) { |
| 43 | + alert('支付宝') | ||
| 44 | + window.location.href = `https://puser.zjzwfw.gov.cn/sso/alipay.do?action=ssoLogin&servicecode=hswsy`; | ||
| 45 | + } | ||
| 55 | else { | 46 | else { |
| 56 | console.log('非浙里办渠道访问,显示测试用户数据') | 47 | console.log('非浙里办渠道访问,显示测试用户数据') |
| 57 | this.centerNo = '20210930160466993660' | 48 | this.centerNo = '20210930160466993660' |
src/views/Service/component/ServiceListFour.vue
| @@ -97,6 +97,7 @@ export default { | @@ -97,6 +97,7 @@ export default { | ||
| 97 | } | 97 | } |
| 98 | .abroad { | 98 | .abroad { |
| 99 | padding: 18px 0; | 99 | padding: 18px 0; |
| 100 | + padding-bottom: 146px; | ||
| 100 | .padding_box { | 101 | .padding_box { |
| 101 | padding: 0 28px; | 102 | padding: 0 28px; |
| 102 | padding-bottom: 16px; | 103 | padding-bottom: 16px; |
| @@ -264,4 +265,37 @@ export default { | @@ -264,4 +265,37 @@ export default { | ||
| 264 | } | 265 | } |
| 265 | } | 266 | } |
| 266 | } | 267 | } |
| 268 | +</style> | ||
| 269 | +<style lang="scss"> | ||
| 270 | +// 长辈版 | ||
| 271 | +.elder { | ||
| 272 | + .abroad { | ||
| 273 | + .uni_item { | ||
| 274 | + .content{ | ||
| 275 | + .title{ | ||
| 276 | + font-size: 40px; | ||
| 277 | + } | ||
| 278 | + .active_time{ | ||
| 279 | + font-size: 32px; | ||
| 280 | + } | ||
| 281 | + .tag_box{ | ||
| 282 | + .tag{ | ||
| 283 | + font-size: 32px; | ||
| 284 | + } | ||
| 285 | + } | ||
| 286 | + .price { | ||
| 287 | + .icon { | ||
| 288 | + font-size: 34px; | ||
| 289 | + } | ||
| 290 | + .tint { | ||
| 291 | + font-size: 28px; | ||
| 292 | + } | ||
| 293 | + .limit { | ||
| 294 | + font-size: 28px; | ||
| 295 | + } | ||
| 296 | + } | ||
| 297 | + } | ||
| 298 | + } | ||
| 299 | + } | ||
| 300 | +} | ||
| 267 | </style> | 301 | </style> |
| 268 | \ No newline at end of file | 302 | \ No newline at end of file |
src/views/Service/component/ServiceListSecond.vue
| @@ -6,13 +6,13 @@ | @@ -6,13 +6,13 @@ | ||
| 6 | <div class="padding_box"> | 6 | <div class="padding_box"> |
| 7 | <template v-for="(item,index) in list"> | 7 | <template v-for="(item,index) in list"> |
| 8 | <!-- <div class="uni_item_mini" :key="index" @click="handleUniDetail(item)" v-if="index<=3"> --> | 8 | <!-- <div class="uni_item_mini" :key="index" @click="handleUniDetail(item)" v-if="index<=3"> --> |
| 9 | - <div class="uni_item_mini" :key="index" @click="handleUniDetail(item)" > | 9 | + <div class="uni_item_mini" :key="index" @click="handleUniDetail(item)"> |
| 10 | <div class="img_box"> | 10 | <div class="img_box"> |
| 11 | <!-- <img :loading="defaultImg" v-lazy="item.coverUrl" alt=""> --> | 11 | <!-- <img :loading="defaultImg" v-lazy="item.coverUrl" alt=""> --> |
| 12 | - <img :src="item.coverUrl?item.coverUrl:defaultImg" alt=""> | 12 | + <img :src="item.coverUrl?item.coverUrl:defaultImg" alt=""> |
| 13 | <template v-if="item.startDate"> | 13 | <template v-if="item.startDate"> |
| 14 | <p class="time" v-if="item.startDate==item.endDate">活动时间:{{item.startDate}} {{item.week}}</p> | 14 | <p class="time" v-if="item.startDate==item.endDate">活动时间:{{item.startDate}} {{item.week}}</p> |
| 15 | - <p class="time" v-else>活动时间:{{item.startDate}}-{{item.endDate}}</p> | 15 | + <p class="time" v-else>活动时间:{{item.startDate}}-{{item.endDate}}</p> |
| 16 | </template> | 16 | </template> |
| 17 | <div class="bottom" v-if="item.cityAddress||item.areaAddress"> | 17 | <div class="bottom" v-if="item.cityAddress||item.areaAddress"> |
| 18 | <span class="address"> | 18 | <span class="address"> |
| @@ -57,7 +57,7 @@ export default { | @@ -57,7 +57,7 @@ export default { | ||
| 57 | methods: { | 57 | methods: { |
| 58 | handleUniDetail (item) { | 58 | handleUniDetail (item) { |
| 59 | const publicName = sessionStorage.getItem('publicName'); | 59 | const publicName = sessionStorage.getItem('publicName'); |
| 60 | - this.$router.push({ name: 'ServiceAbroadDetail', query: { courseId: item.id,publicName:publicName } }) | 60 | + this.$router.push({ name: 'ServiceAbroadDetail', query: { courseId: item.id, publicName: publicName } }) |
| 61 | }, | 61 | }, |
| 62 | } | 62 | } |
| 63 | } | 63 | } |
| @@ -85,9 +85,9 @@ export default { | @@ -85,9 +85,9 @@ export default { | ||
| 85 | } | 85 | } |
| 86 | .abroad { | 86 | .abroad { |
| 87 | padding: 18px 0; | 87 | padding: 18px 0; |
| 88 | + padding-bottom: 146px; | ||
| 88 | .padding_box { | 89 | .padding_box { |
| 89 | padding: 0 28px; | 90 | padding: 0 28px; |
| 90 | - padding-bottom: 16px; | ||
| 91 | } | 91 | } |
| 92 | .uni_item_mini { | 92 | .uni_item_mini { |
| 93 | position: relative; | 93 | position: relative; |
| @@ -103,7 +103,7 @@ export default { | @@ -103,7 +103,7 @@ export default { | ||
| 103 | position: relative; | 103 | position: relative; |
| 104 | border-radius: 16px; | 104 | border-radius: 16px; |
| 105 | overflow: hidden; | 105 | overflow: hidden; |
| 106 | - width: 336px; | 106 | + width: 336px; |
| 107 | img { | 107 | img { |
| 108 | width: 448px; | 108 | width: 448px; |
| 109 | height: 336px; | 109 | height: 336px; |
| @@ -180,15 +180,15 @@ export default { | @@ -180,15 +180,15 @@ export default { | ||
| 180 | .price { | 180 | .price { |
| 181 | font-size: 34px; | 181 | font-size: 34px; |
| 182 | font-weight: bold; | 182 | font-weight: bold; |
| 183 | - color: #F64C37; | 183 | + color: #f64c37; |
| 184 | .icon { | 184 | .icon { |
| 185 | font-size: 24px; | 185 | font-size: 24px; |
| 186 | - color: #F64C37; | 186 | + color: #f64c37; |
| 187 | } | 187 | } |
| 188 | .tint { | 188 | .tint { |
| 189 | font-size: 22px; | 189 | font-size: 22px; |
| 190 | font-weight: normal; | 190 | font-weight: normal; |
| 191 | - color:#909399 | 191 | + color: #909399; |
| 192 | } | 192 | } |
| 193 | .limit { | 193 | .limit { |
| 194 | font-size: 22px; | 194 | font-size: 22px; |
| @@ -211,4 +211,12 @@ export default { | @@ -211,4 +211,12 @@ export default { | ||
| 211 | background: #f5f6fa; | 211 | background: #f5f6fa; |
| 212 | } | 212 | } |
| 213 | } | 213 | } |
| 214 | +</style> | ||
| 215 | +<style lang="scss"> | ||
| 216 | +// 长辈版 | ||
| 217 | +.elder { | ||
| 218 | + .abroad { | ||
| 219 | + | ||
| 220 | + } | ||
| 221 | +} | ||
| 214 | </style> | 222 | </style> |
| 215 | \ No newline at end of file | 223 | \ No newline at end of file |
src/views/Service/component/ServiceListThird.vue
| @@ -3,34 +3,34 @@ | @@ -3,34 +3,34 @@ | ||
| 3 | */ | 3 | */ |
| 4 | <template> | 4 | <template> |
| 5 | <div class="tab_content abroad" :class="notab?'notab':''" @scroll="orderScroll" ref="viewBox"> | 5 | <div class="tab_content abroad" :class="notab?'notab':''" @scroll="orderScroll" ref="viewBox"> |
| 6 | - <div class="padding_box" > | 6 | + <div class="padding_box"> |
| 7 | <template v-for="(item,index) in list"> | 7 | <template v-for="(item,index) in list"> |
| 8 | - <div class="cardBox" :key="index" @click="handleUniDetail(item)" > | ||
| 9 | - <div class="cardBox_pic"><img style="width:100%;height:67.5vw" :src="item.coverUrl?item.coverUrl:defaultImg" alt=""></div> | ||
| 10 | - <div class="cardBox_title"> | ||
| 11 | - <div>{{item.course_name}}</div> | ||
| 12 | - <div class="cardBox_title_red"> | ||
| 13 | - <span v-if="item.showPrice > 0">¥{{item.showPrice}}</span> | ||
| 14 | - <span v-else>免费</span> | ||
| 15 | - </div> | ||
| 16 | - </div> | ||
| 17 | - <div class="cardBox_main"> | ||
| 18 | - {{item.course_info}} | 8 | + <div class="cardBox" :key="index" @click="handleUniDetail(item)"> |
| 9 | + <div class="cardBox_pic"><img style="width:100%;height:67.5vw" :src="item.coverUrl?item.coverUrl:defaultImg" alt=""></div> | ||
| 10 | + <div class="cardBox_title"> | ||
| 11 | + <div>{{item.course_name}}</div> | ||
| 12 | + <div class="cardBox_title_red"> | ||
| 13 | + <span v-if="item.showPrice > 0">¥{{item.showPrice}}</span> | ||
| 14 | + <span v-else>免费</span> | ||
| 19 | </div> | 15 | </div> |
| 20 | - <div class="cardBox_bottom"> | ||
| 21 | - <div> | ||
| 22 | - <div class="tag_box"> | ||
| 23 | - <template v-for="(tag,index2) in item.course_labels"> | ||
| 24 | - <span class="tag" v-if="tag" :key="index2">{{tag}}</span> | ||
| 25 | - </template> | ||
| 26 | - </div> | 16 | + </div> |
| 17 | + <div class="cardBox_main"> | ||
| 18 | + {{item.course_info}} | ||
| 19 | + </div> | ||
| 20 | + <div class="cardBox_bottom"> | ||
| 21 | + <div> | ||
| 22 | + <div class="tag_box"> | ||
| 23 | + <template v-for="(tag,index2) in item.course_labels"> | ||
| 24 | + <span class="tag" v-if="tag" :key="index2">{{tag}}</span> | ||
| 25 | + </template> | ||
| 27 | </div> | 26 | </div> |
| 28 | - <div> | ||
| 29 | - <div class="count"> | ||
| 30 | - <van-icon name="eye-o" /> {{item.read_count}} | ||
| 31 | - </div> | 27 | + </div> |
| 28 | + <div> | ||
| 29 | + <div class="count"> | ||
| 30 | + <van-icon name="eye-o" /> {{item.read_count}} | ||
| 32 | </div> | 31 | </div> |
| 33 | </div> | 32 | </div> |
| 33 | + </div> | ||
| 34 | </div> | 34 | </div> |
| 35 | </template> | 35 | </template> |
| 36 | </div> | 36 | </div> |
| @@ -48,14 +48,14 @@ export default { | @@ -48,14 +48,14 @@ export default { | ||
| 48 | default: false | 48 | default: false |
| 49 | } | 49 | } |
| 50 | }, | 50 | }, |
| 51 | - mounted(){ | 51 | + mounted () { |
| 52 | // window.onscroll = function() { | 52 | // window.onscroll = function() { |
| 53 | // //为了保证兼容性,这里取两个值,哪个有值取哪一个 | 53 | // //为了保证兼容性,这里取两个值,哪个有值取哪一个 |
| 54 | // //scrollTop就是触发滚轮事件时滚轮的高度 | 54 | // //scrollTop就是触发滚轮事件时滚轮的高度 |
| 55 | // var scrollTop = document.documentElement.scrollTop || document.body.scrollTop; | 55 | // var scrollTop = document.documentElement.scrollTop || document.body.scrollTop; |
| 56 | // console.log("滚动距离" + scrollTop); | 56 | // console.log("滚动距离" + scrollTop); |
| 57 | // } | 57 | // } |
| 58 | - | 58 | + |
| 59 | // this.$refs.viewBox.addEventListener('scroll', (event) => { | 59 | // this.$refs.viewBox.addEventListener('scroll', (event) => { |
| 60 | // console.log('滚动',event) | 60 | // console.log('滚动',event) |
| 61 | // console.log(this.$refs.viewBox.scrollTop) | 61 | // console.log(this.$refs.viewBox.scrollTop) |
| @@ -71,9 +71,9 @@ export default { | @@ -71,9 +71,9 @@ export default { | ||
| 71 | methods: { | 71 | methods: { |
| 72 | handleUniDetail (item) { | 72 | handleUniDetail (item) { |
| 73 | const publicName = sessionStorage.getItem('publicName'); | 73 | const publicName = sessionStorage.getItem('publicName'); |
| 74 | - this.$router.push({ name: 'ServiceAbroadDetail', query: { courseId: item.id,publicName:publicName } }) | 74 | + this.$router.push({ name: 'ServiceAbroadDetail', query: { courseId: item.id, publicName: publicName } }) |
| 75 | }, | 75 | }, |
| 76 | - orderScroll() { | 76 | + orderScroll () { |
| 77 | // console.log(this.$refs.viewBox.scrollTop) | 77 | // console.log(this.$refs.viewBox.scrollTop) |
| 78 | } | 78 | } |
| 79 | } | 79 | } |
| @@ -86,7 +86,7 @@ export default { | @@ -86,7 +86,7 @@ export default { | ||
| 86 | overflow: auto; | 86 | overflow: auto; |
| 87 | &.notab { | 87 | &.notab { |
| 88 | // height: calc(100vh - 196px); | 88 | // height: calc(100vh - 196px); |
| 89 | - background-color: #F5F7FA !important; | 89 | + background-color: #f5f7fa !important; |
| 90 | } | 90 | } |
| 91 | } | 91 | } |
| 92 | .tab_btn_box { | 92 | .tab_btn_box { |
| @@ -107,57 +107,55 @@ export default { | @@ -107,57 +107,55 @@ export default { | ||
| 107 | } | 107 | } |
| 108 | .abroad { | 108 | .abroad { |
| 109 | padding: 18px 0; | 109 | padding: 18px 0; |
| 110 | + padding-bottom: 146px; | ||
| 110 | .padding_box { | 111 | .padding_box { |
| 111 | padding: 0 5vw; | 112 | padding: 0 5vw; |
| 112 | - padding-bottom: 16px; | 113 | + // padding-bottom: 126px; |
| 113 | } | 114 | } |
| 114 | .cardBox { | 115 | .cardBox { |
| 115 | // width: calc(100vw - 56px); | 116 | // width: calc(100vw - 56px); |
| 116 | width: 90vw; | 117 | width: 90vw; |
| 117 | - // height: 92.5vw; | ||
| 118 | - height: 70vw; | ||
| 119 | margin-bottom: 20px; | 118 | margin-bottom: 20px; |
| 120 | background-color: #fff; | 119 | background-color: #fff; |
| 121 | 120 | ||
| 122 | .cardBox_pic { | 121 | .cardBox_pic { |
| 123 | - // height: 67.5vw; | ||
| 124 | - height: 45vw; | ||
| 125 | - width: 90vw; | ||
| 126 | - flex-shrink: 0; | ||
| 127 | - border-radius: 20px; | ||
| 128 | - overflow: hidden; | 122 | + // height: 67.5vw; |
| 123 | + height: 45vw; | ||
| 124 | + width: 90vw; | ||
| 125 | + flex-shrink: 0; | ||
| 126 | + border-radius: 20px; | ||
| 127 | + overflow: hidden; | ||
| 129 | 128 | ||
| 130 | - img { | ||
| 131 | - transform: translateY(-20vw); | ||
| 132 | - } | 129 | + img { |
| 130 | + transform: translateY(-20vw); | ||
| 131 | + } | ||
| 133 | } | 132 | } |
| 134 | .cardBox_title { | 133 | .cardBox_title { |
| 135 | - height: 10vw; | ||
| 136 | - width: 100%; | ||
| 137 | - padding: 0 3vw; | ||
| 138 | - box-sizing: border-box; | ||
| 139 | - font-size: 30px; | ||
| 140 | - font-weight: bold; | ||
| 141 | - // background-color: cadetblue; | ||
| 142 | - display: flex; | ||
| 143 | - justify-content: space-between; | ||
| 144 | - align-items: center; | 134 | + height: 10vw; |
| 135 | + width: 100%; | ||
| 136 | + padding: 0 3vw; | ||
| 137 | + box-sizing: border-box; | ||
| 138 | + font-size: 30px; | ||
| 139 | + font-weight: bold; | ||
| 140 | + // background-color: cadetblue; | ||
| 141 | + display: flex; | ||
| 142 | + justify-content: space-between; | ||
| 143 | + align-items: center; | ||
| 145 | 144 | ||
| 146 | - .cardBox_title_red { | ||
| 147 | - width: 15vw; | ||
| 148 | - color: red; | ||
| 149 | - text-align: right; | ||
| 150 | - } | 145 | + .cardBox_title_red { |
| 146 | + width: 15vw; | ||
| 147 | + color: red; | ||
| 148 | + text-align: right; | ||
| 149 | + } | ||
| 151 | } | 150 | } |
| 152 | .cardBox_main { | 151 | .cardBox_main { |
| 153 | - width: 100%; | ||
| 154 | - padding: 0 3vw; | ||
| 155 | - box-sizing: border-box; | ||
| 156 | - font-size: 24px; | ||
| 157 | - color: #999; | 152 | + width: 100%; |
| 153 | + padding: 0 3vw; | ||
| 154 | + box-sizing: border-box; | ||
| 155 | + font-size: 24px; | ||
| 156 | + color: #999; | ||
| 158 | } | 157 | } |
| 159 | .cardBox_bottom { | 158 | .cardBox_bottom { |
| 160 | - height: 8vw; | ||
| 161 | width: 100%; | 159 | width: 100%; |
| 162 | padding: 0 3vw; | 160 | padding: 0 3vw; |
| 163 | box-sizing: border-box; | 161 | box-sizing: border-box; |
| @@ -172,10 +170,10 @@ export default { | @@ -172,10 +170,10 @@ export default { | ||
| 172 | display: inline-block; | 170 | display: inline-block; |
| 173 | margin-bottom: 10px; | 171 | margin-bottom: 10px; |
| 174 | margin-right: 10px; | 172 | margin-right: 10px; |
| 175 | - color: #EE5959; | 173 | + color: #ee5959; |
| 176 | font-size: 20px; | 174 | font-size: 20px; |
| 177 | border-radius: 4px; | 175 | border-radius: 4px; |
| 178 | - border: 2px solid #EE5959; | 176 | + border: 2px solid #ee5959; |
| 179 | padding: 0px 6px; | 177 | padding: 0px 6px; |
| 180 | } | 178 | } |
| 181 | } | 179 | } |
| @@ -186,4 +184,29 @@ export default { | @@ -186,4 +184,29 @@ export default { | ||
| 186 | } | 184 | } |
| 187 | } | 185 | } |
| 188 | } | 186 | } |
| 187 | +</style> | ||
| 188 | +<style lang="scss"> | ||
| 189 | +// 长辈版 | ||
| 190 | +.elder { | ||
| 191 | + .abroad { | ||
| 192 | + .cardBox { | ||
| 193 | + .cardBox_title { | ||
| 194 | + font-size: 44px; | ||
| 195 | + } | ||
| 196 | + .cardBox_main { | ||
| 197 | + font-size: 44px; | ||
| 198 | + } | ||
| 199 | + .cardBox_bottom { | ||
| 200 | + .tag_box { | ||
| 201 | + .tag { | ||
| 202 | + font-size: 40px; | ||
| 203 | + } | ||
| 204 | + } | ||
| 205 | + .count { | ||
| 206 | + font-size: 44px; | ||
| 207 | + } | ||
| 208 | + } | ||
| 209 | + } | ||
| 210 | + } | ||
| 211 | +} | ||
| 189 | </style> | 212 | </style> |
| 190 | \ No newline at end of file | 213 | \ No newline at end of file |